]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Build System: Prevent unneeded changes to asterisk/buildopts.h. 30/330/1
authorCorey Farrell <git@cfware.com>
Wed, 29 Apr 2015 08:03:00 +0000 (04:03 -0400)
committerCorey Farrell <git@cfware.com>
Fri, 1 May 2015 20:51:06 +0000 (16:51 -0400)
* 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 #close
Reported by: Corey Farrell

Change-Id: I2c516d93df9f6aaa09ae079a8168c887a6ff93a2

build_tools/make_buildopts_h

index 4f02896e4185b325604f4c6ef5eaedfee53cd790..3f7843ba6ef4126e09588f1a5e649cd3ffcefe46 100755 (executable)
@@ -7,27 +7,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}\""