From 84cc5e8bd05435b7e181b4685f1d13cb74c81d7e Mon Sep 17 00:00:00 2001 From: kpfleming Date: Thu, 6 Jul 2006 21:04:28 +0000 Subject: move rules file to prepare for generic rules file git-svn-id: http://svn.digium.com/svn/asterisk/trunk@37222 f38db490-d61c-443f-a65b-d21fe96a405b --- Makefile.moddir_rules | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Makefile.moddir_rules (limited to 'Makefile.moddir_rules') diff --git a/Makefile.moddir_rules b/Makefile.moddir_rules new file mode 100644 index 000000000..a82fc99be --- /dev/null +++ b/Makefile.moddir_rules @@ -0,0 +1,53 @@ +# +# Asterisk -- A telephony toolkit for Linux. +# +# Makefile rules +# +# Copyright (C) 2006, Digium, Inc. +# +# Kevin P. Fleming +# +# This program is free software, distributed under the terms of +# the GNU General Public License +# + +define module_o_template +$(1).o: $(1).c + $$(CC) -c -o $$@ $$< $$(CFLAGS) $$(MENUSELECT_OPTS_$(1):%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_INCLUDE)) +endef + +define module_so_template +$(1).so: $(1).o + $$(CC) $$(SOLINK) -o $$@ $$^ $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LIB)) +endef + +%.o: %.c + $(CC) -c -o $@ $< $(CFLAGS) + +$(foreach mod,$(SELECTED_MODS),$(eval $(call module_o_template,$(mod)))) + +$(foreach mod,$(SELECTED_MODS),$(eval $(call module_so_template,$(mod)))) + +.PHONY: clean clean-depend depend uninstall _all + +_all: $(SELECTED_MODS:%=%.so) + +clean-depend:: + rm -f .depend + +clean:: clean-depend + rm -f *.so *.o + +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` -- cgit v1.2.3