From 000ba592b2475507c0c5a655f3eac2daf93d2fe0 Mon Sep 17 00:00:00 2001 From: "Kevin P. Fleming" Date: Sat, 15 Jul 2006 19:59:35 +0000 Subject: more Makefile cleanup and consistency stuff don't reuse LIBS variable from top-level Makefile (oops) build Asterisk binary after subdirs (preparing for embedded modules) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37661 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- Makefile | 28 ++++++++++++++-------------- Makefile.moddir_rules | 8 ++++---- apps/Makefile | 8 +++++--- cdr/Makefile | 5 ++++- channels/Makefile | 11 ++++++----- codecs/Makefile | 5 ++++- formats/Makefile | 5 ++++- funcs/Makefile | 5 ++++- pbx/Makefile | 11 +++++------ res/Makefile | 10 ++++------ 10 files changed, 54 insertions(+), 42 deletions(-) diff --git a/Makefile b/Makefile index 84cf32979..34f9a27b3 100644 --- a/Makefile +++ b/Makefile @@ -238,7 +238,7 @@ endif ifeq ($(OSARCH),FreeBSD) BSDVERSION=$(shell make -V OSVERSION -f $(CROSS_COMPILE_TARGET)/usr/share/mk/bsd.port.subdir.mk) ASTCFLAGS+=$(shell if test $(BSDVERSION) -lt 500016 ; then echo "-D_THREAD_SAFE"; fi) - LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) + AST_LIBS+=$(shell if test $(BSDVERSION) -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi) endif # FreeBSD ifeq ($(OSARCH),NetBSD) @@ -311,13 +311,13 @@ ifeq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/dlfcn.h),) endif ifeq ($(OSARCH),Linux) - LIBS+=-ldl -lpthread $(EDITLINE_LIB) -lm -lresolv #-lnjamd + AST_LIBS+=-ldl -lpthread $(EDITLINE_LIB) -lm -lresolv #-lnjamd else - LIBS+=$(EDITLINE_LIB) -lm + AST_LIBS+=$(EDITLINE_LIB) -lm endif ifeq ($(OSARCH),Darwin) - LIBS+=-lresolv + AST_LIBS+=-lresolv ASTCFLAGS+=-D__Darwin__ AUDIO_LIBS=-framework CoreAudio ASTLINK=-Wl,-dynamic @@ -337,19 +337,19 @@ else endif ifeq ($(OSARCH),FreeBSD) - LIBS+=-lcrypto + AST_LIBS+=-lcrypto endif ifeq ($(OSARCH),NetBSD) - LIBS+=-lpthread -lcrypto -lm -L$(CROSS_COMPILE_TARGET)/usr/pkg/lib $(EDITLINE_LIB) + AST_LIBS+=-lpthread -lcrypto -lm -L$(CROSS_COMPILE_TARGET)/usr/pkg/lib $(EDITLINE_LIB) endif ifeq ($(OSARCH),OpenBSD) - LIBS+=-lcrypto -lpthread -lm $(EDITLINE_LIB) + AST_LIBS+=-lcrypto -lpthread -lm $(EDITLINE_LIB) endif ifeq ($(OSARCH),SunOS) - LIBS+=-lpthread -ldl -lnsl -lsocket -lresolv -L$(CROSS_COMPILE_TARGET)/opt/ssl/lib -L$(CROSS_COMPILE_TARGET)/usr/local/ssl/lib + AST_LIBS+=-lpthread -ldl -lnsl -lsocket -lresolv -L$(CROSS_COMPILE_TARGET)/opt/ssl/lib -L$(CROSS_COMPILE_TARGET)/usr/local/ssl/lib OBJS+=strcompat.o ASTLINK= SOLINK=-shared -fpic -L$(CROSS_COMPILE_TARGET)/usr/local/ssl/lib @@ -377,7 +377,7 @@ _all: all @echo " + make install +" @echo " +-------------------------------------------+" -all: cleantest config.status menuselect.makeopts depend asterisk $(SUBDIRS) +all: cleantest config.status menuselect.makeopts depend $(SUBDIRS) asterisk $(MOD_SUBDIRS): @CFLAGS="$(MOD_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) -C $@ @@ -413,10 +413,10 @@ all: TAGS endif editline/config.h: - cd editline && unset CFLAGS LIBS && CFLAGS="$(OPTIMIZE)" ./configure ; \ + cd editline && unset CFLAGS AST_LIBS && CFLAGS="$(OPTIMIZE)" ./configure ; \ editline/libedit.a: - cd editline && unset CFLAGS LIBS && test -f config.h || CFLAGS="$(OPTIMIZE)" ./configure + cd editline && unset CFLAGS AST_LIBS && test -f config.h || CFLAGS="$(OPTIMIZE)" ./configure $(MAKE) -C editline libedit.a db1-ast/libdb1.a: @@ -492,8 +492,8 @@ asterisk: include/asterisk/buildopts.h editline/libedit.a db1-ast/libdb1.a $(OBJ fi @rm -f include/asterisk/build.h.tmp @$(CC) -c -o buildinfo.o $(CFLAGS) buildinfo.c - @echo " [LD] $(OBJS) buildinfo.o $(LIBEDIT) db1-ast/libdb1.1 $(LIBS) -> $@" - @$(CC) $(DEBUG) $(ASTOBJ) $(ASTLINK) $(OBJS) buildinfo.o $(LIBEDIT) db1-ast/libdb1.a $(LIBS) + @echo " [LD] $(OBJS) buildinfo.o $(LIBEDIT) db1-ast/libdb1.1 $(AST_LIBS) -> $@" + @$(CC) $(DEBUG) $(ASTOBJ) $(ASTLINK) $(OBJS) buildinfo.o $(LIBEDIT) db1-ast/libdb1.a $(AST_LIBS) muted: muted.o muted: LIBS+=$(AUDIO_LIBS) @@ -892,7 +892,7 @@ menuselect/menuselect: menuselect/menuselect.c menuselect/menuselect_curses.c me @CFLAGS="-include $(ASTTOPDIR)/include/asterisk/autoconfig.h -I$(ASTTOPDIR)/include" PARENTSRC="$(ASTTOPDIR)" $(MAKE) -C menuselect menuselect mxml/libmxml.a: - @cd mxml && unset CFLAGS LIBS && test -f config.h || ./configure + @cd mxml && unset CFLAGS AST_LIBS && test -f config.h || ./configure $(MAKE) -C mxml libmxml.a makeopts.xml: $(foreach dir,$(MOD_SUBDIRS),$(wildcard $(dir)/*.c) $(wildcard $(dir)/*.cc)) build_tools/cflags.xml sounds/sounds.xml diff --git a/Makefile.moddir_rules b/Makefile.moddir_rules index 15beec313..0a82471e4 100644 --- a/Makefile.moddir_rules +++ b/Makefile.moddir_rules @@ -35,13 +35,13 @@ $(1).so: LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LIB)) $(1).so: LDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LDFLAGS)) endef -$(foreach mod,$(filter-out $(CC_MODS),$(SELECTED_MODS)),$(eval $(call module_o_c_template,$(mod)))) +$(foreach mod,$(C_MODS),$(eval $(call module_o_c_template,$(mod)))) -$(foreach mod,$(filter-out $(CC_MODS),$(SELECTED_MODS)),$(eval $(call module_so_o_template,$(mod)))) +$(foreach mod,$(C_MODS),$(eval $(call module_so_o_template,$(mod)))) -$(foreach mod,$(filter $(CC_MODS),$(SELECTED_MODS)),$(eval $(call module_oo_cc_template,$(mod)))) +$(foreach mod,$(CC_MODS),$(eval $(call module_oo_cc_template,$(mod)))) -$(foreach mod,$(filter $(CC_MODS),$(SELECTED_MODS)),$(eval $(call module_so_oo_template,$(mod)))) +$(foreach mod,$(CC_MODS),$(eval $(call module_so_oo_template,$(mod)))) .PHONY: clean clean-depend depend uninstall _all diff --git a/apps/Makefile b/apps/Makefile index 58a093514..df5f60a44 100644 --- a/apps/Makefile +++ b/apps/Makefile @@ -14,7 +14,10 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_APPS),$(patsubst %.c,%,$(wildcard app_*.c))) +C_MODS:=$(filter-out $(MENUSELECT_APPS),$(patsubst %.c,%,$(wildcard app_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_APPS),$(patsubst %.cc,%,$(wildcard app_*.cc))) + +SELECTED_MODS:=$(C_MODS) $(CC_MODS) ifneq ($(findstring ODBC_STORAGE,$(MENUSELECT_OPTS_app_voicemail)),) MENUSELECT_DEPENDS_app_voicemail+=$(MENUSELECT_DEPENDS_ODBC_STORAGE) @@ -31,6 +34,5 @@ all: _all include $(ASTTOPDIR)/Makefile.moddir_rules ifeq (SunOS,$(shell uname)) -app_chanspy.so: app_chanspy.o - $(CC) $(SOLINK) -o $@ $< -lrt +app_chanspy.so: LIBS+=-lrt endif diff --git a/cdr/Makefile b/cdr/Makefile index ef877e879..49fc0e3d5 100644 --- a/cdr/Makefile +++ b/cdr/Makefile @@ -14,7 +14,10 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_CDR),$(patsubst %.c,%,$(wildcard cdr_*.c))) +C_MODS:=$(filter-out $(MENUSELECT_CDR),$(patsubst %.c,%,$(wildcard cdr_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_CDR),$(patsubst %.cc,%,$(wildcard cdr_*.cc))) + +SELECTED_MODS:=$(C_MODS) $(CC_MODS) all: _all diff --git a/channels/Makefile b/channels/Makefile index 55fa4ae47..d7bf9ac30 100644 --- a/channels/Makefile +++ b/channels/Makefile @@ -14,9 +14,8 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_CHANNELS),$(patsubst %.c,%,$(wildcard chan_*.c)) $(patsubst %.cc,%,$(wildcard chan_*.cc))) - -CC_MODS=chan_vpb +C_MODS:=$(filter-out $(MENUSELECT_CHANNELS),$(patsubst %.c,%,$(wildcard chan_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_CHANNELS),$(patsubst %.cc,%,$(wildcard chan_*.cc))) ifeq ($(OSARCH),OpenBSD) PTLIB=-lpt_OpenBSD_x86_r @@ -41,11 +40,11 @@ ifeq ($(OSARCH),NetBSD) endif ifeq ($(wildcard h323/libchanh323.a),) - SELECTED_MODS:=$(filter-out chan_h323,$(SELECTED_MODS)) + CC_MODS:=$(filter-out chan_h323,$(CC_MODS)) endif ifeq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/mISDNuser/mISDNlib.h),) - SELECTED_MODS:=$(filter-out chan_misdn,$(SELECTED_MODS)) + C_MODS:=$(filter-out chan_misdn,$(C_MODS)) endif ifndef OPENH323DIR @@ -56,6 +55,8 @@ ifndef PWLIBDIR PWLIBDIR=$(HOME)/pwlib endif +SELECTED_MODS:=$(C_MODS) $(CC_MODS) + all: _all include $(ASTTOPDIR)/Makefile.moddir_rules diff --git a/codecs/Makefile b/codecs/Makefile index 2e856a52b..bb0de7582 100644 --- a/codecs/Makefile +++ b/codecs/Makefile @@ -16,7 +16,10 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.c,%,$(wildcard codec_*.c))) +C_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.c,%,$(wildcard codec_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_CODECS),$(patsubst %.cc,%,$(wildcard codec_*.cc))) + +SELECTED_MODS:=$(C_MODS) $(CC_MODS) LIBILBC:=ilbc/libilbc.a LIBLPC10:=lpc10/liblpc10.a diff --git a/formats/Makefile b/formats/Makefile index 582390054..5a01cea3d 100644 --- a/formats/Makefile +++ b/formats/Makefile @@ -14,7 +14,10 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_FORMATS),$(patsubst %.c,%,$(wildcard format_*.c))) +C_MODS:=$(filter-out $(MENUSELECT_FORMATS),$(patsubst %.c,%,$(wildcard format_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_FORMATS),$(patsubst %.cc,%,$(wildcard format_*.cc))) + +SELECTED_MODS:=$(C_MODS) $(CC_MODS) all: _all diff --git a/funcs/Makefile b/funcs/Makefile index 97b8e38cf..b16355c03 100644 --- a/funcs/Makefile +++ b/funcs/Makefile @@ -14,7 +14,10 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_FUNCS),$(patsubst %.c,%,$(wildcard func_*.c))) +C_MODS:=$(filter-out $(MENUSELECT_FUNCS),$(patsubst %.c,%,$(wildcard func_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_FUNCS),$(patsubst %.cc,%,$(wildcard func_*.cc))) + +SELECTED_MODS:=$(C_MODS) $(CC_MODS) # TODO This check needs to be handled with autoconf ifeq ($(OSARCH),SunOS) diff --git a/pbx/Makefile b/pbx/Makefile index 747843ff4..395702090 100644 --- a/pbx/Makefile +++ b/pbx/Makefile @@ -14,11 +14,10 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.c,%,$(wildcard pbx_*.c)) $(patsubst %.cc,%,$(wildcard pbx_*.cc))) +C_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.c,%,$(wildcard pbx_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.cc,%,$(wildcard pbx_*.cc))) -MODS:=$(patsubst %,%.so,$(SELECTED_MODS)) - -CC_MODS:=pbx_kdeconsole +SELECTED_MODS:=$(C_MODS) $(CC_MODS) all: _all @@ -33,7 +32,7 @@ ael/aelflex.o: CFLAGS+=-I. $(eval $(call ast_make_o_c,ael/aelbison.o,ael/ael.tab.c ael/ael.tab.h ../include/asterisk/ael_structs.h)) ael/aelbison.o: CFLAGS+=-I. -pbx_ael.so: pbx_ael.o ael/aelbison.o ael/aelflex.o +pbx_ael.so: ael/aelbison.o ael/aelflex.o ael/ael_lex.c: (cd ael; flex ael.flex; sed -i -e "/begin standard C headers/i#include \"asterisk.h\"" ael_lex.c) @@ -44,4 +43,4 @@ ael/ael.tab.c ael/ael.tab.h: $(eval $(call ast_make_o_c,dundi-parser.o,dundi-parser.c dundi-parser.h)) dundi-parser.o: CFLAGS+=-I. -pbx_dundi.so: pbx_dundi.o dundi-parser.o +pbx_dundi.so: dundi-parser.o diff --git a/res/Makefile b/res/Makefile index 22f266abb..178130820 100644 --- a/res/Makefile +++ b/res/Makefile @@ -14,18 +14,16 @@ ifneq ($(wildcard ../menuselect.makeopts),) include ../menuselect.makedeps endif -SELECTED_MODS:=$(filter-out $(MENUSELECT_RES),$(patsubst %.c,%,$(wildcard res_*.c))) +C_MODS:=$(filter-out $(MENUSELECT_RES),$(patsubst %.c,%,$(wildcard res_*.c))) +CC_MODS:=$(filter-out $(MENUSELECT_RES),$(patsubst %.cc,%,$(wildcard res_*.cc))) -ifeq ($(OSARCH),FreeBSD) - SELECTED_MODS:=$(filter-out $(shell if test ${BSDVERSION} -lt 500000 ; then echo "res_config_odbc"; fi),$(SELECTED_MODS)) -endif +SELECTED_MODS:=$(C_MODS) $(CC_MODS) all: _all include $(ASTTOPDIR)/Makefile.moddir_rules -res_snmp.so: res_snmp.o snmp/agent.o +res_snmp.so: snmp/agent.o clean:: rm -f snmp/*.o - -- cgit v1.2.3