diff options
author | Corey Farrell <git@cfware.com> | 2016-08-08 20:14:20 -0400 |
---|---|---|
committer | Corey Farrell <git@cfware.com> | 2016-08-08 20:05:34 -0500 |
commit | 827457dca0c9073b93822db45c859c7ae83ece76 (patch) | |
tree | 5df4450c74bf5d13fc6a6e8fc0b1d272d6ab41f9 | |
parent | 9042ad40f2a56d6cfd4117897cbc9943253d4e09 (diff) |
Produce friendly error when AST_MODULE_SELF_SYM is not defined.
Modules must define AST_MODULE_SELF_SYM to be used as the name of a
generated function. This produces a friendly error when it's not
defined.
ASTERISK-26278 #close
Change-Id: Ib9d35a08104529c516d636771365e02c6e77a45b
-rw-r--r-- | codecs/lpc10/Makefile | 2 | ||||
-rw-r--r-- | include/asterisk.h | 4 | ||||
-rw-r--r-- | main/Makefile | 2 |
3 files changed, 6 insertions, 2 deletions
diff --git a/codecs/lpc10/Makefile b/codecs/lpc10/Makefile index bdf1a3ad7..b414fd77d 100644 --- a/codecs/lpc10/Makefile +++ b/codecs/lpc10/Makefile @@ -25,7 +25,7 @@ CFLAGS+= -fPIC -Wno-comment # The code here generates lots of warnings, so compiling with -Werror # fails miserably. Remove it for the time being. -_ASTCFLAGS:=$(_ASTCFLAGS:-Werror=) +_ASTCFLAGS:=$(_ASTCFLAGS:-Werror=) -DAST_MODULE_SELF_SYM=__internal_codec_lpc10_self LIB = $(LIB_TARGET_DIR)/liblpc10.a diff --git a/include/asterisk.h b/include/asterisk.h index e509fbc39..93c7cfb28 100644 --- a/include/asterisk.h +++ b/include/asterisk.h @@ -286,6 +286,10 @@ struct ast_module; /* Internal/forward declaration, AST_MODULE_SELF should be used instead. */ struct ast_module *AST_MODULE_SELF_SYM(void); +#else + +#error "Externally compiled modules must declare AST_MODULE_SELF_SYM." + #endif /*! diff --git a/main/Makefile b/main/Makefile index 729ae9c01..663508a75 100644 --- a/main/Makefile +++ b/main/Makefile @@ -284,7 +284,7 @@ ifeq ($(GNU_LD),1) endif $(ASTPJ_LIB).$(ASTPJ_SO_VERSION): _ASTLDFLAGS+=-Wl,-soname=$(ASTPJ_LIB) $(PJ_LDFLAGS) -$(ASTPJ_LIB).$(ASTPJ_SO_VERSION): _ASTCFLAGS+=-fPIC -DAST_MODULE=\"asteriskpj\" $(PJ_CFLAGS) +$(ASTPJ_LIB).$(ASTPJ_SO_VERSION): _ASTCFLAGS+=-fPIC -DAST_MODULE=\"asteriskpj\" -DAST_NOT_MODULE $(PJ_CFLAGS) $(ASTPJ_LIB).$(ASTPJ_SO_VERSION): LIBS+=$(PJPROJECT_LDLIBS) -lssl -lcrypto -luuid -lm -lrt -lpthread ifeq ($(GNU_LD),1) $(ASTPJ_LIB).$(ASTPJ_SO_VERSION): SO_SUPPRESS_SYMBOLS=-Wl,--version-script,libasteriskpj.exports,--warn-common |