mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 14:58:25 +00:00
build: Turn FORTIFY_SOURCE off if DONT_OPTIMIZE is set.
AST_FORTIFY_SOURCE is automatically set in ./Makefile even if DONT_OPTIMIZE is set in menuselect. This causes gcc to complain that _FORTIFY_SOURCE requires optimization and the build will fail. You can specify "make AST_FORTIFY_SOURCE=''" but I always forget. This patch moves the set of AST_FORTIFY_SOURCE to Makefile.rules and only sets it if DONT_OPTIMIZE is "no". The move is necessary because the top-level Makefile doesn't include menuselect.makeopts. This doesn't solve the entire problem however because res_config_mysql seems to force _FORTIFY_SOURCE so res_config_mysql has to be disabled for now if DONT_OPTIMIZE is set. Tested by: George Joseph Review: https://reviewboard.asterisk.org/r/3664/ ........ Merged revisions 417016 from http://svn.asterisk.org/svn/asterisk/branches/1.8 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@417017 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
1
Makefile
1
Makefile
@@ -186,7 +186,6 @@ ifeq ($(AST_DEVMODE),yes)
|
||||
_ASTCFLAGS+=-Werror
|
||||
_ASTCFLAGS+=-Wunused
|
||||
_ASTCFLAGS+=$(AST_DECLARATION_AFTER_STATEMENT)
|
||||
_ASTCFLAGS+=$(AST_FORTIFY_SOURCE)
|
||||
_ASTCFLAGS+=$(AST_TRAMPOLINES)
|
||||
_ASTCFLAGS+=-Wundef
|
||||
_ASTCFLAGS+=-Wmissing-format-attribute
|
||||
|
||||
@@ -82,6 +82,8 @@ CXX_LIBS=$(PTHREAD_LIBS) $(LIBS)
|
||||
# and if that doesn't fail then compile again with optimizer disabled
|
||||
ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS))$(AST_DEVMODE),DONT_OPTIMIZEyes)
|
||||
COMPILE_DOUBLE=yes
|
||||
else
|
||||
_ASTCFLAGS+=$(AST_FORTIFY_SOURCE)
|
||||
endif
|
||||
|
||||
ifeq ($(findstring BUILD_NATIVE,$(MENUSELECT_CFLAGS)),BUILD_NATIVE)
|
||||
|
||||
Reference in New Issue
Block a user