[tor-commits] [tor-browser-build/master] Bug 30323: Adapt macOS toolchain for esr68
boklm at torproject.org
boklm at torproject.org
Wed Aug 21 09:05:43 UTC 2019
commit 1877dbbdf499e51beb6dd5be2d53e74f57428130
Author: Georg Koppen <gk at torproject.org>
Date: Mon Aug 19 18:18:22 2019 +0000
Bug 30323: Adapt macOS toolchain for esr68
There are already included some simplifications as done in
https://bugzilla.mozilla.org/show_bug.cgi?id=1513798 but not all of them
as some break our current setup. This needs to get investigated in a
different bug.
---
projects/firefox/build | 48 +++++++++++++++--------------------
projects/firefox/config | 1 -
projects/firefox/mozconfig-osx-x86_64 | 15 +++++------
projects/macosx-toolchain/build | 7 ++---
projects/macosx-toolchain/config | 4 +--
5 files changed, 31 insertions(+), 44 deletions(-)
diff --git a/projects/firefox/build b/projects/firefox/build
index 18db7b9..5d4d2a3 100644
--- a/projects/firefox/build
+++ b/projects/firefox/build
@@ -52,24 +52,23 @@ EOF
wine wineboot -i
[% END -%]
+mkdir -p /var/tmp/dist
+tar -C /var/tmp/dist -xf [% c('input_files_by_name/rust') %]
+tar -C /var/tmp/dist -xf [% c('input_files_by_name/cbindgen') %]
+tar -C /var/tmp/dist -xf [% c('input_files_by_name/nasm') %]
+tar -C /var/tmp/dist -xf [% c('input_files_by_name/python') %]
+tar -C /var/tmp/dist -xf [% c('input_files_by_name/node') %]
+export PATH="/var/tmp/dist/rust/bin:/var/tmp/dist/cbindgen:/var/tmp/dist/nasm/bin:/var/tmp/dist/python/bin:/var/tmp/dist/node/bin:$PATH"
+tar -C /var/tmp/dist -xf [% c('input_files_by_name/clang') %]
+export LLVM_CONFIG="/var/tmp/dist/clang/bin/llvm-config"
+
[% IF c("var/linux") %]
- mkdir -p /var/tmp/dist
tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/binutils') %]
- tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/python') %]
- tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/node') %]
- export PATH="/var/tmp/dist/binutils/bin:/var/tmp/dist/python/bin:/var/tmp/dist/node/bin:$PATH"
+ export PATH="/var/tmp/dist/binutils/bin:$PATH"
# Use clang for everything on Linux now.
- tar -C /var/tmp/dist -xf [% c('input_files_by_name/clang') %]
- export LLVM_CONFIG="/var/tmp/dist/clang/bin/llvm-config"
export PATH="/var/tmp/dist/clang/bin:$PATH"
[% END -%]
-mkdir -p /var/tmp/dist
-tar -C /var/tmp/dist -xf [% c('input_files_by_name/rust') %]
-tar -C /var/tmp/dist -xf [% c('input_files_by_name/cbindgen') %]
-tar -C /var/tmp/dist -xf [% c('input_files_by_name/nasm') %]
-export PATH="/var/tmp/dist/rust/bin:/var/tmp/dist/cbindgen:/var/tmp/dist/nasm/bin:$PATH"
-
tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.gz
[% IF c("var/osx") %]
@@ -226,27 +225,22 @@ cp -p config/createprecomplete.py $MARTOOLS/
cp -p tools/update-packaging/*.sh $MARTOOLS/
cp -p obj-*/dist/host/bin/mar $MARTOOLS/
cp -p obj-*/dist/host/bin/mbsdiff $MARTOOLS/
-[% IF c("var/linux") %]
+[% IF c("var/linux") || c("var/osx") %]
cp -p obj-*/dist/bin/signmar $MARTOOLS/
cp -p obj-*/dist/bin/certutil $MARTOOLS/
cp -p obj-*/dist/bin/modutil $MARTOOLS/
cp -p obj-*/dist/bin/pk12util $MARTOOLS/
cp -p obj-*/dist/bin/shlibsign $MARTOOLS/
- NSS_LIBS="libfreeblpriv3.so libmozsqlite3.so libnss3.so libnssckbi.so libnssdbm3.so libnssutil3.so libsmime3.so libsoftokn3.so libssl3.so"
- NSPR_LIBS="libnspr4.so libplc4.so libplds4.so"
+ [% IF c("var/linux") %]
+ NSS_LIBS="libfreeblpriv3.so libmozsqlite3.so libnss3.so libnssckbi.so libnssdbm3.so libnssutil3.so libsmime3.so libsoftokn3.so libssl3.so"
+ NSPR_LIBS="libnspr4.so libplc4.so libplds4.so"
+ [% ELSE %]
+ NSS_LIBS="libfreebl3.dylib libmozglue.dylib libnss3.dylib libnssckbi.dylib libnssdbm3.dylib libsoftokn3.dylib"
+ # No NSPR_LIBS for macOS
+ NSPR_LIBS=""
+ [% END %]
for LIB in $NSS_LIBS $NSPR_LIBS; do
- cp -p obj-*/dist/bin/$LIB $MARTOOLS/
- done
-[% END %]
-[% IF c("var/osx") %]
- cp -p obj-*/modules/libmar/tool/signmar $MARTOOLS/
- cp -p obj-*/security/nss/cmd/certutil/certutil_certutil/certutil $MARTOOLS/
- cp -p obj-*/security/nss/cmd/modutil/modutil_modutil/modutil $MARTOOLS/
- cp -p obj-*/security/nss/cmd/pk12util/pk12util_pk12util/pk12util $MARTOOLS/
- cp -p obj-*/security/nss/cmd/shlibsign/shlibsign_shlibsign/shlibsign $MARTOOLS/
- NSS_LIBS="libfreebl3.dylib libmozglue.dylib libnss3.dylib libnssckbi.dylib libnssdbm3.dylib libsoftokn3.dylib"
- for LIB in $NSS_LIBS; do
- cp -p obj-*/dist/bin/$LIB $MARTOOLS/
+ cp -p obj-*/dist/bin/$LIB $MARTOOLS/
done
[% END %]
[% IF c("var/windows") %]
diff --git a/projects/firefox/config b/projects/firefox/config
index a481815..a1073d5 100644
--- a/projects/firefox/config
+++ b/projects/firefox/config
@@ -152,7 +152,6 @@ input_files:
name: python
- project: clang
name: clang
- enable: '[% c("var/linux") %]'
- project: fxc2
name: fxc2
enable: '[% c("var/windows") %]'
diff --git a/projects/firefox/mozconfig-osx-x86_64 b/projects/firefox/mozconfig-osx-x86_64
index a87bf35..5d82d12 100644
--- a/projects/firefox/mozconfig-osx-x86_64
+++ b/projects/firefox/mozconfig-osx-x86_64
@@ -11,21 +11,18 @@ FLAGS="-target x86_64-apple-darwin11 -B $CROSS_CCTOOLS_PATH/bin -isysroot $CROSS
export CC="$TOOLCHAIN_DIR/clang/bin/clang $FLAGS"
export CXX="$TOOLCHAIN_DIR/clang/bin/clang++ $FLAGS"
-export CPP="$TOOLCHAIN_DIR/clang/bin/clang $FLAGS -E"
export LLVMCONFIG=$TOOLCHAIN_DIR/clang/bin/llvm-config
-export LDFLAGS="-Wl,-syslibroot,$CROSS_SYSROOT -Wl,-dead_strip -Wl,-pie"
+export LDFLAGS="-Wl,-syslibroot,$CROSS_SYSROOT -Wl,-pie"
export BINDGEN_CFLAGS="$FLAGS"
export TOOLCHAIN_PREFIX=$CROSS_CCTOOLS_PATH/bin/x86_64-apple-darwin11-
-export DSYMUTIL="$TOOLCHAIN_DIR/clang/bin/llvm-dsymutil"
+export DSYMUTIL="$TOOLCHAIN_DIR/clang/bin/dsymutil"
-export HOST_CC="$TOOLCHAIN_DIR/clang/bin/clang"
-export HOST_CXX="$TOOLCHAIN_DIR/clang/bin/clang++"
-export HOST_CPP="$TOOLCHAIN_DIR/clang/bin/clang -E"
export HOST_CFLAGS="-g"
export HOST_CXXFLAGS="-g"
export HOST_LDFLAGS="-g"
-ac_add_options --target=x86_64-apple-darwin
+ac_add_options --target=x86_64-apple-darwin11
+ac_add_options --with-macos-sdk=$CROSS_SYSROOT
ac_add_options --with-macos-private-frameworks=$CROSS_PRIVATE_FRAMEWORKS
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-macos
@@ -41,14 +38,14 @@ ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --enable-tor-browser-data-outside-app-dir
-ac_add_options --enable-tor-browser-update
+#ac_add_options --enable-tor-browser-update
ac_add_options --enable-signmar
ac_add_options --enable-verify-mar
ac_add_options --disable-crashreporter
-ac_add_options --disable-maintenance-service
ac_add_options --disable-webrtc
ac_add_options --disable-tests
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+ac_add_options --enable-proxy-bypass-protection
# ac_add_options --disable-ctypes
diff --git a/projects/macosx-toolchain/build b/projects/macosx-toolchain/build
index d1d8c34..c9cd282 100644
--- a/projects/macosx-toolchain/build
+++ b/projects/macosx-toolchain/build
@@ -4,15 +4,12 @@ distdir="/var/tmp/dist/[% project %]"
mkdir -p "$distdir"
tar xjf [% c('input_files_by_name/SDK') %]
mv MacOSX10.11.sdk "$distdir/SDK"
-tar xf [% c('input_files_by_name/llvm') %]
-mv llvm "$distdir/clang"
+tar xf [% c('input_files_by_name/clang') %]
+mv clang "$distdir/clang"
tar -C $distdir -xf [% c('input_files_by_name/cctools') %]
cd $distdir/cctools/bin
ln -s ../../clang/bin/clang x86_64-apple-darwin11-clang
ln -s ../../clang/bin/clang++ x86_64-apple-darwin11-clang++
-# "go link", libevent, and the jemalloc cross-compilation during the Rust build
-# expect to find a program called "dsymutil" exactly.
-ln -s ../../clang/bin/llvm-dsymutil dsymutil
cd "/var/tmp/dist"
[% c('tar', {
diff --git a/projects/macosx-toolchain/config b/projects/macosx-toolchain/config
index 8502f57..57e471f 100644
--- a/projects/macosx-toolchain/config
+++ b/projects/macosx-toolchain/config
@@ -17,8 +17,8 @@ var:
input_files:
- project: container-image
- - name: llvm
- project: llvm
+ - name: clang
+ project: clang
- name: cctools
project: cctools
- name: SDK
More information about the tor-commits
mailing list