Unverified Commit c2c853e7 authored by boklm's avatar boklm
Browse files

Bug 40305: Update Linux toolchain to switch to mozilla91

parent e5c24f4f
Loading
Loading
Loading
Loading
+11 −10
Original line number Diff line number Diff line
@@ -4,14 +4,13 @@ distdir=/var/tmp/dist/[% project %]
mkdir -p /var/tmp/dist
tar -C /var/tmp/dist -xf [% c('input_files_by_name/cmake') %]
export PATH="/var/tmp/dist/cmake/bin:$PATH"
[% IF c("var/linux") || c("var/android") %]
[% IF c("var/linux") %]
  # We need a link to our GCC, otherwise the system cc gets used which points
  # to /usr/bin/gcc.
  [% pc('gcc', 'var/setup', { compiler_tarfile => c('input_files_by_name/gcc'),
                              hardened_gcc => 0 }) %]
  ln -s gcc /var/tmp/dist/gcc/bin/cc
  [% END %]
  [% pc('python', 'var/setup', { python_tarfile => c('input_files_by_name/python') }) %]
[% END -%]
[% IF c("var/linux") || c("var/android") || c("var/windows") -%]
  tar -C /var/tmp/dist -xf [% c('input_files_by_name/binutils') %]
@@ -28,13 +27,15 @@ cd build
[% IF ! c("var/ff91esr") %]
  cmake .. -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$distdir \
                               -DCMAKE_BUILD_TYPE:STRING=Release \
       [% IF c("var/rlbox") -%]-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly \[% END -%]
       [% IF c("var/rlbox") -%]-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly[% END %] \
                               $LLVM_HOME
[% ELSE %]
  cmake ../llvm -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$distdir \
                                    -DCMAKE_BUILD_TYPE=Release \
            [% IF c("var/android") -%]
                                    -DLLVM_TARGETS_TO_BUILD="X86;ARM;AArch64" \
            [% IF c("var/rlbox") -%]-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly \[% END -%]
            [% END -%]
            [% IF c("var/rlbox") -%]-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly[% END %] \
                                    -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;compiler-rt;libcxx;libcxxabi;lld"
[% END -%]
make -j[% c("buildconf/num_procs") %]
+3 −0
Original line number Diff line number Diff line
@@ -36,3 +36,6 @@ input_files:
  - project: llvm-project
    name: clang-source
    enable: '[% c("var/ff91esr") %]'
  - project: python
    name: python
    enable: '[% c("var/linux") %]'
+5 −3
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ export LLVM_CONFIG="/var/tmp/dist/clang/bin/llvm-config"
    rtdir=/var/tmp/dist/macosx-toolchain/clang/lib/clang/[% pc("clang", "version") %]/lib/wasi
  [% END-%]
  mkdir -p $rtdir
  cp /var/tmp/dist/wasi-sysroot/lib/clang/9.0.0/lib/wasi/libclang_rt.builtins-wasm32.a $rtdir
  cp /var/tmp/dist/wasi-sysroot/lib/clang/11.0.0/lib/wasi/libclang_rt.builtins-wasm32.a $rtdir
  tar -C /var/tmp/dist -xf [% c('input_files_by_name/lucetc') %]
  export PATH="/var/tmp/dist/lucetc/bin:$PATH"
  export WASM_SANDBOXED_LIBRARIES=graphite,ogg
@@ -108,6 +108,8 @@ tar -C browser/extensions -xf $rootdir/[% c('input_files_by_name/tor-launcher')
rm -f configure
rm -f js/src/configure

export MACH_USE_SYSTEM_PYTHON=1

# Android does not support --enable-bundled-fonts option
./mach configure --with-tor-browser-version=[% c("var/torbrowser_version") %] --with-distribution-id=org.torproject --enable-update-channel=[% c("var/channel") %] --enable-bundled-fonts --with-branding=[% c("var/branding_directory") %]

@@ -200,10 +202,10 @@ cd $distdir
    # No need for an unstripped geckodriver
    strip geckodriver
  [% END %]
  mkdir -p $distdir/Debug/Browser/gtk2
  mkdir -p $distdir/Debug/Browser
  # Strip and generate debuginfo for the firefox binary that we keep, all *.so
  # files, the plugin-container, and the updater (see ticket #10126)
  for LIB in Browser/*.so Browser/gtk2/*.so Browser/firefox.real Browser/plugin-container Browser/updater
  for LIB in Browser/*.so Browser/firefox.real Browser/plugin-container Browser/updater
  do
      objcopy --only-keep-debug $LIB Debug/$LIB
      strip $LIB
+1 −1
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.gz
# Now prepare the offline build
# Move the directory for hardcoding the path in .cargo/config
mv /var/tmp/build/[% project %]-[% c('version') %] $builddir
tar -C $builddir -xjf lucetc-vendor.tar.bz2
tar -C $builddir -xf [% c('input_files_by_name/lucetc-vendor') %]
cd $builddir
# .cargo exists already, let's just add to it
cat >> .cargo/config << 'EOF'
+4 −3
Original line number Diff line number Diff line
# vim: filetype=yaml sw=2
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
version: '[% c("abbrev") %]'
git_hash: a0a1ce981638109f1f76cd1eecf17a0436a20055
git_hash: d582d76bf0d17984501f3933688bf7a1eb5cf208
git_url: https://github.com/PLSysSec/lucet_sandbox_compiler/
git_submodule: 1

@@ -28,8 +28,9 @@ input_files:
  - name: wasi-sysroot
    project: wasi-sysroot
  # Use `make cargo_vendor-lucetc` to re-generate the vendor tarball
  - URL: https://people.torproject.org/~gk/mirrors/sources/lucetc-vendor.tar.bz2
    sha256sum: 12ba97fca12177e7ed5b5409fcfdbd31dc7db2e82282768d99dee5bcb1b1246a
  - name: lucetc-vendor
    URL: 'https://people.torproject.org/~boklm/mirrors/sources/lucetc-vendor-[% c("version") %].tar.bz2'
    sha256sum: 6b044ed76bc8870040174c8fbfa49c3a791b3aba7d32dd00cad541025eb16077
  - filename: Remove-march-native-from-COMMON_CFLAGS.patch

steps:
Loading