Bug 1434316 Add 64 Bit Windows Build Targets
MozReview-Commit-ID: Gt3Ocwc1uie
copy from browser/config/mozconfigs/win32/mingw32
copy to browser/config/mozconfigs/win64/mingw32
--- a/browser/config/mozconfigs/win32/mingw32
+++ b/browser/config/mozconfigs/win64/mingw32
@@ -21,35 +21,38 @@ unset MAKECAB
# MOZ_AUTOMATION_ flags
# build/mozconfig.rust
# TOOLTOOL_DIR
# RUSTC
# CARGO
. "$topsrcdir/browser/config/mozconfigs/common"
# MinGW Stuff
-ac_add_options --target=i686-w64-mingw32
-ac_add_options --with-toolchain-prefix=i686-w64-mingw32-
+ac_add_options --target=x86_64-w64-mingw32
+ac_add_options --with-toolchain-prefix=x86_64-w64-mingw32-
# GCC compiling for Windows exposes a lot of warnings. We are tracking them in Bug 1394433
ac_add_options --disable-warnings-as-errors
# Temporary config settings until we get these working on mingw
ac_add_options --disable-accessibility # https://sourceforge.net/p/mingw-w64/bugs/648/
# Long story
ac_add_options --disable-stylo # Bug 1390583
+ac_add_options --disable-jemalloc # Bug 1466192
# 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++"
+CC="$TOOLTOOL_DIR/mingw32/bin/x86_64-w64-mingw32-gcc"
+CXX="$TOOLTOOL_DIR/mingw32/bin/x86_64-w64-mingw32-g++"
+
+CXXFLAGS="$CXXFLAGS -DWIDL_EXPLICIT_AGGREGATE_RETURNS"
# We want to make sure we use binutils and other binaries in the tooltool
# package.
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/mingw32/lib64
mk_add_options "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
copy from browser/config/mozconfigs/win32/mingw32-debug
copy to browser/config/mozconfigs/win64/mingw32-debug
--- a/browser/config/mozconfigs/win32/mingw32-debug
+++ b/browser/config/mozconfigs/win64/mingw32-debug
@@ -1,4 +1,4 @@
-. "$topsrcdir/browser/config/mozconfigs/win32/mingw32"
+. "$topsrcdir/browser/config/mozconfigs/win64/mingw32"
ac_add_options --enable-debug
ac_add_options --disable-optimize
\ No newline at end of file
--- a/taskcluster/ci/build/windows.yml
+++ b/taskcluster/ci/build/windows.yml
@@ -648,17 +648,17 @@ win32-mingw32/opt:
platform: windows-mingw32/all
symbol: WM32(Bo)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: mingw32-build}
max-run-time: 7200
env:
- PERFHERDER_EXTRA_OPTIONS: "opt"
+ PERFHERDER_EXTRA_OPTIONS: "opt 32"
run:
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
@@ -680,17 +680,17 @@ win32-mingw32/debug:
platform: windows-mingw32/all
symbol: WM32(Bd)
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
docker-image: {in-tree: mingw32-build}
max-run-time: 7200
env:
- PERFHERDER_EXTRA_OPTIONS: "debug"
+ PERFHERDER_EXTRA_OPTIONS: "debug 32"
run:
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
- builds/releng_sub_windows_configs/32_mingw_debug.py
@@ -698,8 +698,73 @@ win32-mingw32/debug:
toolchains:
- mingw32-rust
- linux64-upx
- linux64-wine
- linux64-sccache
- linux64-mingw32-gcc
- linux64-mingw32-nsis
- linux64-mingw32-fxc2
+
+win64-mingw32/opt:
+ description: "Win64 MinGW Opt"
+ index:
+ product: firefox
+ job-name: win64-mingw32-opt
+ treeherder:
+ platform: windows-mingw32/all
+ symbol: WM64(Bo)
+ tier: 2
+ worker-type: aws-provisioner-v1/gecko-{level}-b-linux
+ worker:
+ docker-image: {in-tree: mingw32-build}
+ max-run-time: 7200
+ env:
+ PERFHERDER_EXTRA_OPTIONS: "opt 64"
+ run:
+ using: mozharness
+ actions: [build]
+ script: mozharness/scripts/fx_desktop_build.py
+ config:
+ - builds/releng_base_firefox.py
+ - builds/releng_base_windows_64_mingw_builds.py
+ need-xvfb: false
+ toolchains:
+ - mingw32-rust
+ - linux64-upx
+ - linux64-wine
+ - linux64-sccache
+ - linux64-mingw32-gcc
+ - linux64-mingw32-nsis
+ - linux64-mingw32-fxc2
+
+win64-mingw32/debug:
+ description: "Win64 MinGW Debug"
+ index:
+ product: firefox
+ job-name: win64-mingw32-debug
+ treeherder:
+ platform: windows-mingw32/all
+ symbol: WM64(Bd)
+ tier: 2
+ worker-type: aws-provisioner-v1/gecko-{level}-b-linux
+ worker:
+ docker-image: {in-tree: mingw32-build}
+ max-run-time: 72000
+ env:
+ PERFHERDER_EXTRA_OPTIONS: "debug 64"
+ run:
+ using: mozharness
+ actions: [build]
+ script: mozharness/scripts/fx_desktop_build.py
+ config:
+ - builds/releng_base_firefox.py
+ - builds/releng_base_windows_64_mingw_builds.py
+ - builds/releng_sub_windows_configs/64_mingw_debug.py
+ need-xvfb: false
+ toolchains:
+ - mingw32-rust
+ - linux64-upx
+ - linux64-wine
+ - linux64-sccache
+ - linux64-mingw32-gcc
+ - linux64-mingw32-nsis
+ - linux64-mingw32-fxc2
copy from testing/mozharness/configs/builds/releng_base_windows_32_mingw_builds.py
copy to testing/mozharness/configs/builds/releng_base_windows_64_mingw_builds.py
--- a/testing/mozharness/configs/builds/releng_base_windows_32_mingw_builds.py
+++ b/testing/mozharness/configs/builds/releng_base_windows_64_mingw_builds.py
@@ -27,20 +27,20 @@ config = {
'min_scm_level': 2, 'default': 'try-build-has-no-secrets'},
],
'vcs_share_base': '/builds/hg-shared',
'enable_count_ctors': False,
#########################################################################
#########################################################################
- ###### 32 bit specific ######
+ ###### 64 bit specific ######
'base_name': 'WINNT_5.2_MINGW_%(branch)s',
- 'platform': 'win32-mingw32',
- 'stage_platform': 'win32-mingw32',
+ 'platform': 'win64-mingw32',
+ 'stage_platform': 'win64-mingw32',
'env': {
'MOZBUILD_STATE_PATH': os.path.join(os.getcwd(), '.mozbuild'),
'DISPLAY': ':2',
'HG_SHARE_BASE_DIR': '/builds/hg-shared',
'MOZ_OBJDIR': '%(abs_obj_dir)s',
'TINDERBOX_OUTPUT': '1',
'TOOLTOOL_CACHE': '/builds/worker/tooltool-cache',
'TOOLTOOL_HOME': '/builds',
@@ -48,12 +48,12 @@ config = {
'LC_ALL': 'C',
# 32 bit specific
'PATH': '/usr/local/bin:/bin:/usr/bin',
},
"check_test_env": {
'MINIDUMP_STACKWALK': '%(abs_tools_dir)s/breakpad/linux/minidump_stackwalk',
'MINIDUMP_SAVE_PATH': '%(base_work_dir)s/minidumps',
},
- 'mozconfig_platform': 'win32',
+ 'mozconfig_platform': 'win64',
'mozconfig_variant': 'mingw32',
#########################################################################
}
copy from testing/mozharness/configs/builds/releng_sub_windows_configs/32_mingw_debug.py
copy to testing/mozharness/configs/builds/releng_sub_windows_configs/64_mingw_debug.py