Bug 1639815 - Move --disable-icf to python configure. r=froydnj
☠☠ backed out by 2a8a0e281e27 ☠ ☠
authorMike Hommey <mh+mozilla@glandium.org>
Thu, 21 May 2020 10:13:48 +0000
changeset 531529 d48eea557b6db5ada1dbb041d5f23e3a22d1da34
parent 531528 6fba10f61bd281045b292791cffdf314b5215f8a
child 531530 04a1388fc17d77914e3196c7616ec8f25754ef3a
push id37440
push userabutkovits@mozilla.com
push dateFri, 22 May 2020 09:43:16 +0000
treeherdermozilla-central@fbf71e4d2e21 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersfroydnj
bugs1639815
milestone78.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1639815 - Move --disable-icf to python configure. r=froydnj Differential Revision: https://phabricator.services.mozilla.com/D76290
build/autoconf/compiler-opts.m4
build/moz.configure/old.configure
moz.configure
--- a/build/autoconf/compiler-opts.m4
+++ b/build/autoconf/compiler-opts.m4
@@ -89,21 +89,16 @@ if test "$GNU_CC"; then
     CFLAGS="$CFLAGS -fno-math-errno"
     CXXFLAGS="$CXXFLAGS -fno-exceptions -fno-math-errno"
 fi
 
 dnl ========================================================
 dnl = Identical Code Folding
 dnl ========================================================
 
-MOZ_ARG_DISABLE_BOOL(icf,
-[  --disable-icf          Disable Identical Code Folding],
-    MOZ_DISABLE_ICF=1,
-    MOZ_DISABLE_ICF= )
-
 if test "$GNU_CC" -a "$GCC_USE_GNU_LD" -a -z "$MOZ_DISABLE_ICF" -a -z "$DEVELOPER_OPTIONS"; then
     AC_CACHE_CHECK([whether the linker supports Identical Code Folding],
         LD_SUPPORTS_ICF,
         [echo 'int foo() {return 42;}' \
               'int bar() {return 42;}' \
               'int main() {return foo() - bar();}' > conftest.${ac_ext}
         # If the linker supports ICF, foo and bar symbols will have
         # the same address
--- a/build/moz.configure/old.configure
+++ b/build/moz.configure/old.configure
@@ -210,17 +210,16 @@ def old_configure_options(*options):
 @old_configure_options(
     '--cache-file',
     '--datadir',
     '--enable-crashreporter',
     '--enable-dbus',
     '--enable-debug-js-modules',
     '--enable-dump-painting',
     '--enable-extensions',
-    '--enable-icf',
     '--enable-install-strip',
     '--enable-libproxy',
     '--enable-logrefcnt',
     '--enable-mobile-optimize',
     '--enable-necko-wifi',
     '--enable-negotiateauth',
     '--enable-nspr-build',
     '--enable-official-branding',
--- a/moz.configure
+++ b/moz.configure
@@ -640,16 +640,22 @@ js_option('--enable-dtrace', help='Build
 
 dtrace = check_header('sys/sdt.h', when='--enable-dtrace',
                       onerror=lambda: die('dtrace enabled but sys/sdt.h not found'))
 
 set_config('HAVE_DTRACE', True, when=dtrace)
 set_define('INCLUDE_MOZILLA_DTRACE', True, when=dtrace)
 add_old_configure_assignment('enable_dtrace', 'yes', when=dtrace)
 
+
+js_option('--disable-icf', help='Disable Identical Code Folding')
+
+add_old_configure_assignment(
+    'MOZ_DISABLE_ICF', '1', when=depends('--enable-icf')(lambda x: not x))
+
 # Please do not add configure checks from here on.
 
 # Fallthrough to autoconf-based configure
 include('build/moz.configure/old.configure')
 
 # JS Subconfigure.
 include('js/sub.configure', when=compile_environment & toolkit)