commit 6c9cf92fdb156a18c713fc7b56774725a3ce4f6a Author: Georg Koppen gk@torproject.org Date: Sat Sep 12 14:13:16 2020 +0000
Bug 26238: Move to Debian Jessie for our Linux builds
Additionally, we clean up our projects removing Linux workarounds not needed under Jessie anymore. --- README.BUILD_ERRORS | 26 -------------------------- projects/binutils/build | 5 ----- projects/clang/build | 1 - projects/container-image/config | 4 ++-- projects/debootstrap-image/config | 27 +++++++++++++-------------- projects/fenix-clang/build | 1 - projects/fenix-rust/config | 6 ++---- projects/firefox/config | 9 --------- projects/rust/config | 6 ++---- rbm.conf | 2 +- 10 files changed, 20 insertions(+), 67 deletions(-)
diff --git a/README.BUILD_ERRORS b/README.BUILD_ERRORS index 03f2450..83f2257 100644 --- a/README.BUILD_ERRORS +++ b/README.BUILD_ERRORS @@ -4,32 +4,6 @@ This file lists some common build errors and their solutions. Error starting remote ---------------------
-If you have an error like this: - ----- -Error: Error starting remote: -/bin/sh: 1: adduser: not found -Segmentation fault (core dumped) ----- - -You might be having this issue: -https://github.com/docker/docker/issues/28705 - -When the kernel is configured with CONFIG_LEGACY_VSYSCALL_NONE, running -Debian Wheezy containers fails with a segfault. This should be fixed by -adding "vsyscall=emulate"to the kernel cmdline. - -If you are building inside Qubes, you can change the kernel cmdline for -the VM you are using with something like this in dom0: - ----- -$ qvm-pref --get [vmname] kernelopts -nopat -$ qvm-pref --set [vmname] kernelopts 'nopat vsyscall=emulate' ----- - - - If you have an error like this:
---- diff --git a/projects/binutils/build b/projects/binutils/build index 6c01d27..9161192 100644 --- a/projects/binutils/build +++ b/projects/binutils/build @@ -8,11 +8,6 @@ distdir=/var/tmp/dist/binutils export DEB_BUILD_HARDENING_FORTIFY=1 export DEB_BUILD_HARDENING_FORMAT=1 export DEB_BUILD_HARDENING_PIE=1 - # The libstdc++ shipped by default is non-PIC which breaks the binutils build - # if we build with DEB_BUILD_HARDENING_PIE=1. We need to install a PIC one AND - # make sure it gets used before the non-PIC one would. - ln -s /usr/lib/gcc/x86_64-linux-gnu/4.7/libstdc++_pic.a libstdc++.a - export LDFLAGS="-L$rootdir -lstdc++" [% END %] tar xf [% project %]-[% c("version") %].tar.xz cd [% project %]-[% c("version") %] diff --git a/projects/clang/build b/projects/clang/build index 33688e5..10700ce 100644 --- a/projects/clang/build +++ b/projects/clang/build @@ -22,7 +22,6 @@ mkdir build cd build cmake .. -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$distdir \ -DCMAKE_BUILD_TYPE:STRING=Release \ - [% IF c("var/linux") -%]-DCOMPILER_RT_BUILD_CRT=OFF [% END -%] [% IF c("var/rlbox") -%]-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly [% END -%] $LLVM_HOME make -j[% c("buildconf/num_procs") %] diff --git a/projects/container-image/config b/projects/container-image/config index effcdf3..3abba6c 100644 --- a/projects/container-image/config +++ b/projects/container-image/config @@ -10,8 +10,8 @@ var:
lsb_release: id: Debian - codename: wheezy - release: 7.11 + codename: jessie + release: 8.11
targets: no_containers: diff --git a/projects/debootstrap-image/config b/projects/debootstrap-image/config index ecd55e1..7dc534a 100644 --- a/projects/debootstrap-image/config +++ b/projects/debootstrap-image/config @@ -37,24 +37,23 @@ pre: | tar -C ./base-image -czf [% dest_dir %]/[% c("filename") %] .
targets: - wheezy-amd64: + jessie-amd64: var: - minimal_apt_version: '0.9.7.9+deb7u9' - # https://deb.freexian.com/extended-lts/updates/ela-76-1-apt/ - apt_packages_baseurl: http://deb.freexian.com/extended-lts/pool/main/a/apt - apt_package_filename: apt_0.9.7.9+deb7u9_amd64.deb - apt_package_sha256sum: b8a218da2ae21979323dd02551d983938d94308ac56930a2d238e822f062dc61 - apt_utils_package_filename: apt-utils_0.9.7.9+deb7u9_amd64.deb - apt_utils_package_sha256sum: d635a166aae03b24cdabe277bb46d584156836637c0b9bef2220fb0bc0928e40 - libapt_inst_package_filename: libapt-inst1.5_0.9.7.9+deb7u9_amd64.deb - libapt_inst_package_sha256sum: 332083172e00d39e55dec4c7078c3522989e45e12b0a1306889e90b8e2c0a0db - libapt_pkg_package_filename: libapt-pkg4.12_0.9.7.9+deb7u9_amd64.deb - libapt_pkg_package_sha256sum: c3ae83c4ea691074250bf6fb175e71042c4bb7418bf19779ceda0a53eea0a257 + minimal_apt_version: 1.0.9.8.6 + # https://lists.debian.org/debian-lts-announce/2020/05/msg00013.html + apt_packages_baseurl: https://deb.freexian.com/extended-lts/pool/main/a/apt + apt_package_filename: apt_1.0.9.8.6_amd64.deb + apt_package_sha256sum: f82ba7ad03a33bed6644777260d28156a0ed0119aeafe657ef1f849330455f5b + apt_utils_package_filename: apt-utils_1.0.9.8.6_amd64.deb + apt_utils_package_sha256sum: 14cb23047ef9d83b0d026c4d5b0eb5e7b06cca36067d19155e9ea14982b09d61 + libapt_inst_package_filename: libapt-inst1.5_1.0.9.8.6_amd64.deb + libapt_inst_package_sha256sum: 332b7453774ad3d141ce459d0c7a8438f16588c0df987e13c388b45740142c76 + libapt_pkg_package_filename: libapt-pkg4.12_1.0.9.8.6_amd64.deb + libapt_pkg_package_sha256sum: c2e17b87284e8c7e162a390d8bba08870729040c2ec0e73eb6631b846dd013c0
container: - suite: wheezy + suite: jessie arch: amd64 - debootstrap_mirror: "http://archive.debian.org/debian/"
buster-amd64: var: diff --git a/projects/fenix-clang/build b/projects/fenix-clang/build index 33688e5..10700ce 100644 --- a/projects/fenix-clang/build +++ b/projects/fenix-clang/build @@ -22,7 +22,6 @@ mkdir build cd build cmake .. -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$distdir \ -DCMAKE_BUILD_TYPE:STRING=Release \ - [% IF c("var/linux") -%]-DCOMPILER_RT_BUILD_CRT=OFF [% END -%] [% IF c("var/rlbox") -%]-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly [% END -%] $LLVM_HOME make -j[% c("buildconf/num_procs") %] diff --git a/projects/fenix-rust/config b/projects/fenix-rust/config index 7dc240a..0f08463 100644 --- a/projects/fenix-rust/config +++ b/projects/fenix-rust/config @@ -46,7 +46,7 @@ targets: # # `--enable-extended` to build not only rustc but cargo as well # - # `--enable-llvm-static-stdccp` to take a libstdc++ on Wheezy into account + # `--enable-llvm-static-stdccp` to take a libstdc++ on Jessie into account # which is too old and if used gives undefined reference errors # # `--release-channel=stable` to just include stable features in the @@ -63,9 +63,7 @@ targets: # `--set=` to explicitly specify the C compiler. We need to compile the # bundled LLVM and it wants to use `cc`. However, we don't have that in # our compiled GCC resulting in weird errors due to C and C++ compiler - # version mismatch. We avoid that with this configure option. We need to - # build our own GCC in the first place as 4.7.2 is too old to get all the - # Rust pieces compiled. + # version mismatch. We avoid that with this configure option. configure_opt: --enable-local-rust --enable-vendor --enable-extended --enable-llvm-static-stdcpp --release-channel=stable --sysconfdir=etc --target=x86_64-unknown-linux-gnu,i686-unknown-linux-gnu --set=target.x86_64-unknown-linux-gnu.cc=gcc --set=target.i686-unknown-linux-gnu.cc=gcc
osx-x86_64: diff --git a/projects/firefox/config b/projects/firefox/config index 79674fb..fe5081e 100644 --- a/projects/firefox/config +++ b/projects/firefox/config @@ -54,15 +54,6 @@ targets: var: branding_directory: 'browser/branding/nightly'
- linux: - var: - post_pkginst: | - # Firefox ESR68 needs Yasm >= 1.2.0 which Debian Wheezy ships in backports. - echo 'deb http://archive.debian.org/debian/ wheezy-backports main' >> /etc/apt/sources.list - export DEBIAN_FRONTEND=noninteractive - apt-get update - apt-get install -t wheezy-backports -y yasm - linux-x86_64: var: martools_filename: mar-tools-linux64.zip diff --git a/projects/rust/config b/projects/rust/config index 4144b17..4d4cd51 100644 --- a/projects/rust/config +++ b/projects/rust/config @@ -56,7 +56,7 @@ targets: # # `--enable-extended` to build not only rustc but cargo as well # - # `--enable-llvm-static-stdccp` to take a libstdc++ on Wheezy into account + # `--enable-llvm-static-stdcpp` to take a libstdc++ on Jessie into account # which is too old and if used gives undefined reference errors # # `--release-channel=stable` to just include stable features in the @@ -73,9 +73,7 @@ targets: # `--set=` to explicitly specify the C compiler. We need to compile the # bundled LLVM and it wants to use `cc`. However, we don't have that in # our compiled GCC resulting in weird errors due to C and C++ compiler - # version mismatch. We avoid that with this configure option. We need to - # build our own GCC in the first place as 4.7.2 is too old to get all the - # Rust pieces compiled. + # version mismatch. We avoid that with this configure option. configure_opt: --enable-local-rust --enable-vendor --enable-extended --enable-llvm-static-stdcpp --release-channel=stable --sysconfdir=etc --target=x86_64-unknown-linux-gnu,i686-unknown-linux-gnu --set=target.x86_64-unknown-linux-gnu.cc=gcc --set=target.i686-unknown-linux-gnu.cc=gcc
osx-x86_64: diff --git a/rbm.conf b/rbm.conf index a68c101..ecd404f 100644 --- a/rbm.conf +++ b/rbm.conf @@ -326,7 +326,7 @@ targets: # Only build Namecoin for linux on nightly namecoin: '[% c("var/nightly") %]' container: - suite: wheezy + suite: jessie arch: amd64 pre_pkginst: dpkg --add-architecture i386 deps:
tbb-commits@lists.torproject.org