Bug 1433704 - Use system GCC for host compilations on mingw32 builds. r?build draft
authorMike Hommey <mh+mozilla@glandium.org>
Sat, 27 Jan 2018 20:40:36 +0900
changeset 748075 92a3ba3ae01f3c9616fb58ab214c072746ecdeff
parent 748074 dde601ca876dc078637645d7191ebc110b17428c
push id97064
push userbmo:mh+mozilla@glandium.org
push dateSat, 27 Jan 2018 22:54:54 +0000
reviewersbuild
bugs1433704, 1427344, 1431251
milestone60.0a1
Bug 1433704 - Use system GCC for host compilations on mingw32 builds. r?build The binutils we currently use as part of our GCC toolchain artifact doesn't understand some relocations in the CRT objects on Debian stretch, making the embedded CRT objects from bug 1427344, which we want to remove in bug 1431251, necessary. OTOH, there is no benefit from using our GCC toolchain artifact for host compilations on those builds. In fact, Android builds, which are in a similar position, being built on Debian stretch and being cross-builds, don't care to use our GCC toolchain artifact. It's arguably a good thing that those builds are not tied to the version of GCC we use to build Firefox for linux, so let's remove this dependency.
browser/config/mozconfigs/win32/mingw32
taskcluster/ci/build/windows.yml
--- a/browser/config/mozconfigs/win32/mingw32
+++ b/browser/config/mozconfigs/win32/mingw32
@@ -45,24 +45,21 @@ ac_add_options --disable-stylo # Bug 139
 # These aren't supported on mingw at this time
 ac_add_options --disable-webrtc # Bug 1393901
 ac_add_options --disable-maintenance-service
 
 # Find our toolchain
 CC="$TOOLTOOL_DIR/mingw32/bin/i686-w64-mingw32-gcc"
 CXX="$TOOLTOOL_DIR/mingw32/bin/i686-w64-mingw32-g++"
 
-HOST_CC="$TOOLTOOL_DIR/gcc/bin/gcc"
-HOST_CXX="$TOOLTOOL_DIR/gcc/bin/g++"
-
 # We want to make sure we use binutils and other binaries in the tooltool
 # package.
-mk_add_options "export PATH=$TOOLTOOL_DIR/gcc/bin:$TOOLTOOL_DIR/mingw32/bin:$TOOLTOOL_DIR/wine/bin:$TOOLTOOL_DIR/upx/bin:$TOOLTOOL_DIR/fxc2/bin:$PATH"
+mk_add_options "export PATH=$TOOLTOOL_DIR/mingw32/bin:$TOOLTOOL_DIR/wine/bin:$TOOLTOOL_DIR/upx/bin:$TOOLTOOL_DIR/fxc2/bin:$PATH"
 
-LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$TOOLTOOL_DIR/gcc/lib64:$TOOLTOOL_DIR/mingw32/lib64
+LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$TOOLTOOL_DIR/mingw32/lib64
 mk_add_options "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
 
 # Do not include the visual studio related mozconfigs of course
 
 ac_add_options --with-branding=browser/branding/nightly
 
 . "$topsrcdir/build/mozconfig.common.override"
 . "$topsrcdir/build/mozconfig.cache"
--- a/taskcluster/ci/build/windows.yml
+++ b/taskcluster/ci/build/windows.yml
@@ -656,16 +656,15 @@ win32-mingw32/debug:
         using: mozharness
         actions: [build]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/releng_base_firefox.py
             - builds/releng_base_windows_32_mingw_builds.py
         need-xvfb: false
     toolchains:
-        - linux64-gcc
         - mingw32-rust
         - linux64-upx
         - linux64-wine
         - linux64-sccache
         - linux64-mingw32-gcc
         - linux64-mingw32-nsis
         - linux64-mingw32-fxc2