From ac1f0090eb5f93f8d37f512a94aa6b16affb77e1 Mon Sep 17 00:00:00 2001 From: Corey Farrell Date: Wed, 29 Apr 2015 04:03:00 -0400 Subject: Build System: Prevent unneeded changes to asterisk/buildopts.h. * Add AST_DEVMODE to BUILDOPTS * Remove CFLAGS that do not effect ABI from BUILDOPTS. * Use BUILDOPTS to generate AST_BUILDOPT_SUM. * Remove loop that defined AST_MODULE_* These changes ensure that only ABI effecting options are considered for AST_BUILDOPT_SUM. This also reduces unneeded full system rebuilds caused by enabling or disabling one module that another is dependent on. ASTERISK-25028 Reported by: Corey Farrell Change-Id: I2c516d93df9f6aaa09ae079a8168c887a6ff93a2 --- build_tools/make_buildopts_h | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'build_tools') diff --git a/build_tools/make_buildopts_h b/build_tools/make_buildopts_h index 55d08ba71..b9f9af2cb 100755 --- a/build_tools/make_buildopts_h +++ b/build_tools/make_buildopts_h @@ -10,27 +10,37 @@ cat << END */ END + +if ${GREP} "AST_DEVMODE" makeopts | ${GREP} -q "yes" +then + echo "#define AST_DEVMODE 1" + BUILDOPTS="AST_DEVMODE" +fi + TMP=`${GREP} -e "^MENUSELECT_CFLAGS" menuselect.makeopts | sed 's/MENUSELECT_CFLAGS\=//g' | sed 's/-D//g'` for x in ${TMP}; do echo "#define ${x} 1" + if test "${x}" = "DONT_OPTIMIZE" \ + -o "${x}" = "BETTER_BACKTRACES" \ + -o "${x}" = "LOTS_OF_SPANS" \ + -o "${x}" = "BUILD_NATIVE" \ + -o "${x}" = "AO2_DEBUG" \ + -o "${x}" = "REBUILD_PARSERS" \ + -o "${x}" = "RADIO_RELAX" \ + -o "${x}" = "DEBUG_SCHEDULER" \ + -o "${x}" = "DETECT_DEADLOCKS" \ + -o "${x}" = "DUMP_SCHEDULER" ; then + # These aren't ABI affecting options, keep them out of AST_BUILDOPTS + continue + fi if test "x${BUILDOPTS}" != "x" ; then BUILDOPTS="${BUILDOPTS}, ${x}" else BUILDOPTS="${x}" fi done -TMP=`${GREP} -e "^MENUSELECT_BUILD_DEPS" menuselect.makeopts | sed 's/MENUSELECT_BUILD_DEPS\=//g'` -for x in ${TMP}; do - x2=`echo ${x} | tr a-z A-Z` - echo "#define AST_MODULE_${x2} 1" -done -if ${GREP} "AST_DEVMODE" makeopts | ${GREP} -q "yes" -then - echo "#define AST_DEVMODE 1" - TMP="${TMP} AST_DEVMODE" -fi -BUILDSUM=`echo ${TMP} | ${MD5} | cut -c1-32` +BUILDSUM=`echo ${BUILDOPTS} | ${MD5} | cut -c1-32` echo "#define AST_BUILDOPT_SUM \"${BUILDSUM}\"" echo "#define AST_BUILDOPTS \"${BUILDOPTS}\"" -- cgit v1.2.3