From 089581f20ae5f0c460308ecf9f5ae016c1c6258f Mon Sep 17 00:00:00 2001 From: George Joseph Date: Fri, 3 May 2019 12:31:06 -0600 Subject: [PATCH] build: Pass --fno-partial-inlining to third-party when appropriate When the gcc version is >= 8.2.1, we were already setting the --fno-partial-inlining flag for Asterisk source files to get around a gcc bug but we weren't passing the flag down to the bundled builds of pjproject and jansson. ASTERISK-28392 Change-Id: I99ede9bc35408ecd096f7d5369e8192d3dc75704 --- third-party/jansson/Makefile | 7 ++++++- third-party/pjproject/Makefile | 18 ++++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/third-party/jansson/Makefile b/third-party/jansson/Makefile index a81502c449..8c9da1a468 100644 --- a/third-party/jansson/Makefile +++ b/third-party/jansson/Makefile @@ -49,6 +49,11 @@ include ../../Makefile.rules include ../Makefile.rules include Makefile.rules +OPTIMIZE_CFLAGS = -g3 +ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),) + OPTIMIZE_CFLAGS += $(OPTIMIZE) +endif + ECHO_PREFIX := $(ECHO_PREFIX) echo '[jansson] ' SHELL_ECHO_PREFIX := echo '[jansson] ' @@ -82,7 +87,7 @@ source/.unpacked: $(DOWNLOAD_DIR)/$(TARBALL_FILE) source/config.status: source/.unpacked Makefile.rules .rebuild_needed $(ECHO_PREFIX) Configuring $(CMD_PREFIX) (cd source ; ./configure $(QUIET_CONFIGURE) $(JANSSON_CONFIG_OPTS) --disable-shared \ - --enable-static --prefix=$(JANSSON_DIR)/dest --libdir=$(JANSSON_DIR)/dest/lib) + --enable-static --prefix=$(JANSSON_DIR)/dest --libdir=$(JANSSON_DIR)/dest/lib CFLAGS="$(OPTIMIZE_CFLAGS)") configure: source/config.status diff --git a/third-party/pjproject/Makefile b/third-party/pjproject/Makefile index 97835e4925..af0e9f80a4 100644 --- a/third-party/pjproject/Makefile +++ b/third-party/pjproject/Makefile @@ -45,6 +45,9 @@ ifeq ($(SPECIAL_TARGETS),) else $(warning ASTTOPDIR/menuselect hasn't been run yet. Can't find debug options.) endif + include ../../Makefile.rules + include ../Makefile.rules + include Makefile.rules all: _all install: _install @@ -64,20 +67,19 @@ ifeq ($(SPECIAL_TARGETS),) endif MALLOC_DEBUG_LIBS = source/pjsip-apps/lib/libasterisk_malloc_debug.a MALLOC_DEBUG_LDFLAGS = -L$(PJDIR)/pjsip-apps/lib -Wl,-whole-archive -lasterisk_malloc_debug -Wl,-no-whole-archive - ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),) - CF += -O3 - endif - export CFLAGS += $(CF) -g3 - export LDFLAGS += $(CC_LDFLAGS) TARGETS += pjproject.symbols else all install: endif +else + include ../../Makefile.rules + include ../Makefile.rules + include Makefile.rules endif -include ../../Makefile.rules -include ../Makefile.rules -include Makefile.rules +export PJ_CFLAGS := $(filter-out -O% -g%,$(PJ_CFLAGS)) +export CFLAGS += $(CF) +export LDFLAGS += $(CC_LDFLAGS) ECHO_PREFIX := $(ECHO_PREFIX) echo '[pjproject] ' SHELL_ECHO_PREFIX := echo '[pjproject] '