Merge "rtp_engine.h: Remove extraneous semicolons."
[asterisk/asterisk.git] / build_tools / make_buildopts_h
index 87271ec..c96e508 100755 (executable)
@@ -1,5 +1,8 @@
 #!/bin/sh
 
+GREP=${GREP:-grep}
+MD5=${MD5:-md5sum}
+
 cat << END
 /*
  * buildopts.h 
@@ -7,28 +10,38 @@ cat << END
  */
 
 END
-TMP=`${GREP} MENUSELECT_CFLAGS menuselect.makeopts | sed 's/MENUSELECT_CFLAGS\=//g' | sed 's/-D//g'`
-for x in ${TMP}; do
-       echo "#define ${x} 1"
-done
-TMP=`${GREP} 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
+
+if ${GREP} "AST_DEVMODE" makeopts | ${GREP} -q "yes"
 then
        echo "#define AST_DEVMODE 1"
-       TMP="${TMP} AST_DEVMODE"
+       BUILDOPTS="AST_DEVMODE"
 fi
 
-case ${OSARCH} in      # actually we should check build_os
-*BSD|mingw*)
-       BUILDSUM=`echo ${TMP} | md5`
-       echo "#define AST_BUILDOPT_SUM {0x0, 0x0, 0x0, 0x0} /* dummy */"
-       ;;
-*)
-       BUILDSUM=`echo ${TMP} | md5sum`
-       echo "#define AST_BUILDOPT_SUM {0x${BUILDSUM:0:8}, 0x${BUILDSUM:8:8}, 0x${BUILDSUM:16:8}, 0x${BUILDSUM:24:8}}"
-       ;;
-esac
+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}" = "REF_DEBUG" \
+                       -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
+
+BUILDSUM=`echo ${BUILDOPTS} | ${MD5} | cut -c1-32`
+
+echo "#define AST_BUILDOPT_SUM \"${BUILDSUM}\""
+echo "#define AST_BUILDOPTS \"${BUILDOPTS}\""