Bug 1651680 - Support --enable-strip/--enable-install-strip on mingw. r=nalexander
☠☠ backed out by eb557787e80d ☠ ☠
authorMike Hommey <mh+mozilla@glandium.org>
Tue, 11 Aug 2020 00:08:49 +0000
changeset 544212 09a5f4dcd92ae8a3e3526ad51fb3d32785ad6e7b
parent 544211 13a881966ddab89d5848c572c22634869639267c
child 544213 c016e5af728b49654307317743a50d54675e9281
push id123893
push usermh@glandium.org
push dateTue, 11 Aug 2020 00:56:06 +0000
treeherderautoland@09a5f4dcd92a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersnalexander
bugs1651680
milestone81.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 1651680 - Support --enable-strip/--enable-install-strip on mingw. r=nalexander Differential Revision: https://phabricator.services.mozilla.com/D86649
moz.configure
--- a/moz.configure
+++ b/moz.configure
@@ -666,31 +666,39 @@ add_old_configure_assignment('enable_dtr
 
 
 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))
 
 
-@depends(compile_environment, target)
-def may_strip(compile_environment, target):
-    return compile_environment and target.kernel != 'WINNT'
+js_option('--enable-strip', help='Enable stripping of libs & executables')
 
-js_option('--enable-strip', when=may_strip, help='Enable stripping of libs & executables')
+# This should be handled as a `when` once bug 1617793 is fixed.
+@depends('--enable-strip', c_compiler)
+def enable_strip(strip, c_compiler):
+    if strip and c_compiler.type != 'clang-cl':
+        return True
 
-set_config('ENABLE_STRIP', True, when='--enable-strip')
+set_config('ENABLE_STRIP', enable_strip)
 
-js_option('--disable-install-strip', when=may_strip,
+js_option('--disable-install-strip',
           help='Enable stripping of libs & executables when packaging')
 
-set_config('PKG_STRIP', True, when='--enable-install-strip')
+# This should be handled as a `when` once bug 1617793 is fixed.
+@depends('--enable-install-strip', c_compiler)
+def enable_install_strip(strip, c_compiler):
+    if strip and c_compiler.type != 'clang-cl':
+        return True
+
+set_config('PKG_STRIP', enable_install_strip)
 
 
-@depends('--enable-strip', '--enable-install-strip', when=may_strip)
+@depends('--enable-strip', '--enable-install-strip')
 def strip(strip, install_strip):
     return strip or install_strip
 
 js_option(env='STRIP_FLAGS', nargs=1, when=strip, help='Flags for the strip command')
 
 @depends('STRIP_FLAGS', profiling, target, when=strip)
 def strip_flags(flags, profiling, target):
     if flags: