diff options
author | Corey Farrell <git@cfware.com> | 2017-10-29 23:00:52 -0400 |
---|---|---|
committer | Corey Farrell <git@cfware.com> | 2018-01-17 19:25:00 -0500 |
commit | 25cb1ab05b2e38db9f783a46c432ac5f863ef133 (patch) | |
tree | faeb2563be21d5b6e131a0a0c6ef52b217fe96dd /main/Makefile | |
parent | e6142a12825844ca810c17c1322d6216a1e78b73 (diff) |
loader: Add support for built-in modules.
* Add SRC_EMBEDDED variable to main/Makefile. Built-in module sources
must be listed in this variable to ensure they get the correct CFLAGS.
Change-Id: I920852bc17513a9c2627061a4ad40511e3a20499
Diffstat (limited to 'main/Makefile')
-rw-r--r-- | main/Makefile | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/main/Makefile b/main/Makefile index c724e2012..b148b6f81 100644 --- a/main/Makefile +++ b/main/Makefile @@ -17,6 +17,11 @@ all: asterisk include $(ASTTOPDIR)/Makefile.moddir_rules +# Can the MODSRC list be automated without needing built-in modules to be +# in a different directory? Would a different directory be better? +MOD_SRC:= +MOD_OBJS:=$(sort $(MOD_SRC:.c=.o)) + # Must include the extra ast_expr2.c, ast_expr2f.c, in case they need to be regenerated (because to force regeneration, we delete them) SRC:=$(wildcard *.c) ast_expr2.c ast_expr2f.c ifeq ($(AST_ASTERISKSSL),yes) @@ -25,7 +30,7 @@ endif ifeq ($(PJPROJECT_BUNDLED),yes) SRC:=$(filter-out libasteriskpj.c,$(SRC)) endif -OBJSFILTER=fskmodem_int.o fskmodem_float.o cygload.o buildinfo.o +OBJSFILTER:=$(MOD_OBJS) fskmodem_int.o fskmodem_float.o cygload.o buildinfo.o OBJS=$(filter-out $(OBJSFILTER),$(SRC:.c=.o)) # we need to link in the objects statically, not as a library, because @@ -178,6 +183,7 @@ GMIMELDFLAGS+=$(GMIME_LIB) endif $(OBJS): _ASTCFLAGS+=-DAST_MODULE=\"core\" -DAST_IN_CORE +$(MOD_OBJS): _ASTCFLAGS+=$(call MOD_ASTCFLAGS,$*) libasteriskssl.o: _ASTCFLAGS+=$(OPENSSL_INCLUDE) @@ -311,10 +317,10 @@ endif tcptls.o: _ASTCFLAGS+=$(OPENSSL_INCLUDE) -Wno-deprecated-declarations -$(MAIN_TGT): $(OBJS) $(ASTSSL_LIB) $(ASTPJ_LIB) $(LIBEDIT_OBJ) +$(MAIN_TGT): $(OBJS) $(MOD_OBJS) $(ASTSSL_LIB) $(ASTPJ_LIB) $(LIBEDIT_OBJ) @$(CC) -c -o buildinfo.o $(_ASTCFLAGS) buildinfo.c $(ASTCFLAGS) - $(ECHO_PREFIX) echo " [LD] $(OBJS) $(LIBEDIT_OBJ) -> $@" - $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(_ASTLDFLAGS) $(ASTLDFLAGS) $(OBJS) $(ASTSSL_LDLIBS) $(ASTPJ_LDLIBS) $(LIBEDIT_OBJ) buildinfo.o $(AST_LIBS) $(GMIMELDFLAGS) $(LIBEDIT_LIB) + $(ECHO_PREFIX) echo " [LD] $(OBJS) $(MOD_OBJS) $(LIBEDIT_OBJ) -> $@" + $(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(ASTLINK) $(_ASTLDFLAGS) $(ASTLDFLAGS) $(OBJS) $(MOD_OBJS) $(ASTSSL_LDLIBS) $(ASTPJ_LDLIBS) $(LIBEDIT_OBJ) buildinfo.o $(AST_LIBS) $(GMIMELDFLAGS) $(LIBEDIT_LIB) ifeq ($(GNU_LD),1) $(MAIN_TGT): asterisk.exports |