# Kamailio build system

# Makefile targets that should be treated specially, 
# e.g.:  non obj/executable affecting targets => don't build dependencies for
#  them or don't try any action that would be useful only for generating
#  actual code

ifeq (,$(strip $(modules_dirs)))
include $(COREPATH)/Makefile.dirs

clean_targets:=	clean proper distclean-old realclean maintainer-clean local-clean \
				clean-all proper-all distclean-all realclean-all \
				clean_cfg clean-cfg clean_modules_cfg clean-modules-cfg \
				clean-modules proper-modules realclean-modules \
				distclean-modules maintainer-clean-modules \
				clean-utils proper-utils realclean-utils distclean-utils \
				maintaner-clean-utils \
				clean-libs proper-libs realclean-libs distclean-libs \
				maintainer-clean-libs \
				clean-tmp clean_doxygen clean-extra-names \
				pure distclean
doc_targets:=	README man install-doc install-man install-ser-man \
		install-every-module-doc install-every-module-man \
		$(foreach m,$(modules_dirs),$(m)-doc $(m)-readme $(m)-man) \
		$(foreach m,$(modules_dirs),install-$(m)-doc install-$(m)-man)

# auxiliary: maintance, debugging, etc. (don't affect code/objects)
aux_targets:=	TAGS tar dist cfg-defs cfg config config.mak print-modules \
		dbg dbinstall librpath.lst makecfg.lst modules.lst modules-cfg \
		modules-list modules-lst mk-install_dirs autover.h deb
# other targets that don't produce code in the current directory ("external")
ext_targets:=	every-module modules-all $(modules_dirs) libs utils \
		install-cfg install-utils  install-modules-all install-every-module\
		$(foreach m,$(modules_dirs),install-$(m)) \

# all the targets that don't require code dependecies in the current dir.
nodep_targets:=	$(clean_targets) $(doc_targets) $(aux_targets) $(ext_targets)