2006-06-24 23:26:19 +00:00
|
|
|
#
|
|
|
|
# Asterisk -- A telephony toolkit for Linux.
|
|
|
|
#
|
|
|
|
# Makefile rules
|
|
|
|
#
|
|
|
|
# Copyright (C) 2006, Digium, Inc.
|
|
|
|
#
|
|
|
|
# Kevin P. Fleming <kpfleming@digium.com>
|
|
|
|
#
|
|
|
|
# This program is free software, distributed under the terms of
|
|
|
|
# the GNU General Public License
|
|
|
|
#
|
|
|
|
|
2006-07-06 23:18:45 +00:00
|
|
|
include $(ASTTOPDIR)/Makefile.rules
|
|
|
|
|
|
|
|
define module_o_c_template
|
2006-06-24 23:26:19 +00:00
|
|
|
$(1).o: $(1).c
|
2006-07-06 23:18:45 +00:00
|
|
|
$(1).o: CFLAGS+=$$(MENUSELECT_OPTS_$(1):%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_INCLUDE))
|
|
|
|
endef
|
|
|
|
|
|
|
|
define module_oo_cc_template
|
|
|
|
$(1).oo: $(1).cc
|
|
|
|
$(1).oo: CFLAGS+=$$(MENUSELECT_OPTS_$(1):%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_INCLUDE))
|
2006-06-24 23:26:19 +00:00
|
|
|
endef
|
|
|
|
|
2006-07-06 23:18:45 +00:00
|
|
|
define module_so_o_template
|
2006-06-24 23:26:19 +00:00
|
|
|
$(1).so: $(1).o
|
2006-07-15 16:40:05 +00:00
|
|
|
$(1).so: LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LIB))
|
|
|
|
$(1).so: LDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LDFLAGS))
|
2006-06-24 23:26:19 +00:00
|
|
|
endef
|
|
|
|
|
2006-07-06 23:18:45 +00:00
|
|
|
define module_so_oo_template
|
|
|
|
$(1).so: $(1).oo
|
2006-07-15 16:40:05 +00:00
|
|
|
$(1).so: LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LIB))
|
|
|
|
$(1).so: LDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LDFLAGS))
|
2006-07-06 23:18:45 +00:00
|
|
|
endef
|
|
|
|
|
2006-07-15 19:59:35 +00:00
|
|
|
$(foreach mod,$(C_MODS),$(eval $(call module_o_c_template,$(mod))))
|
2006-07-06 23:18:45 +00:00
|
|
|
|
2006-07-15 19:59:35 +00:00
|
|
|
$(foreach mod,$(C_MODS),$(eval $(call module_so_o_template,$(mod))))
|
2006-06-24 23:26:19 +00:00
|
|
|
|
2006-07-15 19:59:35 +00:00
|
|
|
$(foreach mod,$(CC_MODS),$(eval $(call module_oo_cc_template,$(mod))))
|
2006-06-24 23:26:19 +00:00
|
|
|
|
2006-07-15 19:59:35 +00:00
|
|
|
$(foreach mod,$(CC_MODS),$(eval $(call module_so_oo_template,$(mod))))
|
2006-06-24 23:26:19 +00:00
|
|
|
|
|
|
|
.PHONY: clean clean-depend depend uninstall _all
|
|
|
|
|
|
|
|
_all: $(SELECTED_MODS:%=%.so)
|
|
|
|
|
|
|
|
clean-depend::
|
|
|
|
rm -f .depend
|
|
|
|
|
|
|
|
clean:: clean-depend
|
2006-07-06 23:18:45 +00:00
|
|
|
rm -f *.so *.o *.oo
|
2006-06-24 23:26:19 +00:00
|
|
|
|
|
|
|
install:: all
|
|
|
|
for x in $(SELECTED_MODS:%=%.so); do $(INSTALL) -m 755 $$x $(DESTDIR)$(MODULES_DIR) ; done
|
|
|
|
|
|
|
|
uninstall::
|
|
|
|
|
|
|
|
ifneq ($(wildcard .depend),)
|
|
|
|
include .depend
|
|
|
|
endif
|
|
|
|
|
|
|
|
depend: .depend
|
|
|
|
|
|
|
|
.depend:
|
|
|
|
../build_tools/mkdep $(CFLAGS) `ls *.c`
|