[tbb-commits] [tor-browser-build/master] Bug 40015: Use only 64bit fxc2
sysrqb at torproject.org
sysrqb at torproject.org
Fri Jul 17 03:48:22 UTC 2020
commit bdd3275ec4291c66a7f28f2d8c772a59180109e7
Author: Georg Koppen <gk at torproject.org>
Date: Sun Jul 5 06:37:59 2020 +0000
Bug 40015: Use only 64bit fxc2
We use the somewhat surprising breakage due to
https://bugzilla.mozilla.org/show_bug.cgi?id=1619504 to clean up our
fxc2 build and usage.
Previously, we built both the 64bit and 32bit version of fxc2 and were
running them in a 64bit and 32bit Wine environment, respectively.
However, that's not needed because a) Wine is capable of running both
64bit and 32bit binaries and b) fxc2 is only used at build time to
generate shader files. As we are building both Windows flavors in a
64bit container we should easily be able to live with just a 64bit
variant.
We need, nevertheless, take care that we still bundle the correct
d3dcompiler_47.dll library for the respective architecture.
---
projects/firefox/build | 12 +++++-------
projects/firefox/config | 7 ++-----
projects/fxc2/build | 13 +++----------
projects/fxc2/config | 2 +-
rbm.conf | 2 ++
5 files changed, 13 insertions(+), 23 deletions(-)
diff --git a/projects/firefox/build b/projects/firefox/build
index 294e35a..79278c8 100644
--- a/projects/firefox/build
+++ b/projects/firefox/build
@@ -9,12 +9,6 @@ mkdir -p [% dest_dir _ '/' _ c('filename') %]
# Setting up fxc2
tar -C /var/tmp/dist -xf [% c('input_files_by_name/fxc2') %]
export PATH="/var/tmp/dist/fxc2/bin:$PATH"
- # fxc2 requires Wine.
- export WINEARCH=[% IF c("var/windows-x86_64") %]win64[% ELSE %]win32[% END %]
- export HOME=/var/tmp/home
- mkdir -p $HOME
- WINEROOT=$HOME/.wine/drive_c
- wine wineboot -i
# Setting up stack protector support
tar -C /var/tmp/dist -xf [% c('input_files_by_name/mingw-w64') %]
cp /var/tmp/dist/mingw-w64/gcclibs/{libssp.a,libssp_nonshared.a} /var/tmp/dist/mingw-w64-clang/[% c("arch") %]-w64-mingw32/lib/
@@ -192,7 +186,11 @@ rm -f js/src/configure
[% IF c("var/windows") %]
cp -a obj-*/dist/firefox/* $distdir/Browser/
- cp -a /var/tmp/dist/fxc2/bin/d3dcompiler_47.dll $distdir/Browser
+ [% IF c("var/windows-i686") %]
+ cp -a /var/tmp/dist/fxc2/bin/d3dcompiler_47_32.dll $distdir/Browser/d3dcompiler_47.dll
+ [% ELSE %]
+ cp -a /var/tmp/dist/fxc2/bin/d3dcompiler_47.dll $distdir/Browser
+ [% END %]
[% END %]
# Make MAR-based update tools available for use during the bundle phase.
diff --git a/projects/firefox/config b/projects/firefox/config
index 0ecce9d..2cc734b 100644
--- a/projects/firefox/config
+++ b/projects/firefox/config
@@ -102,11 +102,6 @@ targets:
var:
arch_deps:
- wine
- pre_pkginst: |
- [% IF c("var/windows-i686") -%]
- # We need this to install wine32
- dpkg --add-architecture i386
- [% END -%]
compiler: mingw-w64-clang
windows-i686:
@@ -152,6 +147,8 @@ input_files:
- project: fxc2
name: fxc2
enable: '[% c("var/windows") %]'
+ target_prepend:
+ - torbrowser-windows-x86_64
- name: mingw-w64
project: mingw-w64
enable: '[% c("var/windows") %]'
diff --git a/projects/fxc2/build b/projects/fxc2/build
index 46a7db8..26379f9 100644
--- a/projects/fxc2/build
+++ b/projects/fxc2/build
@@ -8,19 +8,12 @@ mkdir -p /var/tmp/build
tar -C /var/tmp/build -xf [% project %]-[% c("version") %].tar.gz
cd /var/tmp/build/[% project %]-[% c("version") %]
-[% IF c("var/windows-i686") -%]
- make x86
-[% ELSE -%]
- make x64
-[% END -%]
+make x64
mkdir -p $distdir/bin/
cp fxc2.exe $distdir/bin/
-[% IF c("var/windows-i686") -%]
- cp dll/d3dcompiler_47_32.dll $distdir/bin/d3dcompiler_47.dll
-[% ELSE -%]
- cp dll/d3dcompiler_47.dll $distdir/bin/
-[% END -%]
+cp dll/d3dcompiler_47_32.dll $distdir/bin/d3dcompiler_47_32.dll
+cp dll/d3dcompiler_47.dll $distdir/bin/
cd /var/tmp/dist
diff --git a/projects/fxc2/config b/projects/fxc2/config
index 4b9f151..d1620d9 100644
--- a/projects/fxc2/config
+++ b/projects/fxc2/config
@@ -2,7 +2,7 @@
version: '[% c("abbrev") %]'
git_url: https://github.com/mozilla/fxc2.git
git_hash: 5ace4c25b63cb5a83b58a3eae3d36256a6022cde
-filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
+filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.gz'
var:
container:
diff --git a/rbm.conf b/rbm.conf
index e1376ac..a3850d9 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -394,6 +394,7 @@ targets:
arch: x86_64
var:
windows-x86_64: 1
+ windows-i686: 0
osname: windows-x86_64
# HEASLR is 64 bit only (see bug 12968)
flag_HEASLR: '-Wl,--high-entropy-va'
@@ -401,6 +402,7 @@ targets:
arch: i686
var:
windows-i686: 1
+ windows-x86_64: 0
osname: windows-i686
windows:
var:
More information about the tbb-commits
mailing list