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
1.4
Kevin P. Fleming 19 years ago
parent 396ef6f9e7
commit 000ba592b2

@ -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

@ -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

@ -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

@ -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

@ -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

@ -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

@ -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

@ -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)

@ -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

@ -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

Loading…
Cancel
Save