Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
On 9/17/20 9:33 PM, peter green wrote: >> I'll take a look, can't promise anything but I've had to deal with similar >> issues >> in raspbian before. > > No, my idea (treat it like a cross-build) didn't work. Not sure why rustc-1.41 should be a problem, it has built in the past: > https://buildd.debian.org/status/logs.php?pkg=rustc=armel I can take a look over the weekend if no one else manages to fix it. Adrian -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer - glaub...@debian.org `. `' Freie Universitaet Berlin - glaub...@physik.fu-berlin.de `-GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
On 17/09/2020 15:06, Emilio Pozuelo Monfort wrote: On 12/09/2020 11:09, Emilio Pozuelo Monfort wrote: This updates buster's rustc to 1.41, as needed by the new firefox 78 ESR. The bootstrap happens with the upstream binaries as we've done in the past. I have also avoided the bump to LLVM 9/10, we use buster's LLVM 7 instead. The updated rustc is in buster-proposed-updates now, but it failed to build for armel. Looks like my change to debian/architecture.mk to use arm-unknown-linux-gnueabi rather than armv5te-unknown-linux-gnueabi broke this a bit. The reason for that change was that there were no armv5te binaries upstream, and the arm ones are ARMv5 so should be good to bootstrap rustc on armel. However, rustc now defaults to ARMv6 for arm-unknown-linux-gnueabi (see vendor/cc/src/lib.rs), which could be causing some issues. Or perhaps the issue lies elsewhere. Anyway my attempts at getting rustc 1.41 bootstrapped on armel have failed so far (I have tried to lower that -march to armv5te, and also attempted to build for armv5te-unknown-linux-gnueabi while using the arm-unknown-linux-gnueabi binaries). Any help from the armel porters would be appreciated. I'll take a look, can't promise anything but I've had to deal with similar issues in raspbian before.
Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
On 12/09/2020 11:09, Emilio Pozuelo Monfort wrote: > This updates buster's rustc to 1.41, as needed by the new firefox 78 ESR. > The bootstrap happens with the upstream binaries as we've done in the past. > I have also avoided the bump to LLVM 9/10, we use buster's LLVM 7 instead. The updated rustc is in buster-proposed-updates now, but it failed to build for armel. Looks like my change to debian/architecture.mk to use arm-unknown-linux-gnueabi rather than armv5te-unknown-linux-gnueabi broke this a bit. The reason for that change was that there were no armv5te binaries upstream, and the arm ones are ARMv5 so should be good to bootstrap rustc on armel. However, rustc now defaults to ARMv6 for arm-unknown-linux-gnueabi (see vendor/cc/src/lib.rs), which could be causing some issues. Or perhaps the issue lies elsewhere. Anyway my attempts at getting rustc 1.41 bootstrapped on armel have failed so far (I have tried to lower that -march to armv5te, and also attempted to build for armv5te-unknown-linux-gnueabi while using the arm-unknown-linux-gnueabi binaries). Any help from the armel porters would be appreciated. Thanks, Emilio
Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
On 12/09/2020 12:19, Adam D. Barratt wrote: > Control: tags -1 + confirmed > > On Sat, 2020-09-12 at 11:09 +0200, Emilio Pozuelo Monfort wrote: >> This updates buster's rustc to 1.41, as needed by the new firefox 78 >> ESR. The bootstrap happens with the upstream binaries as we've done >> in the past. I have also avoided the bump to LLVM 9/10, we use >> buster's LLVM 7 instead. > > Please go ahead; thanks. > >> After this update, we'll also need cargo (trivial backport, no stage0 >> binaries required) and cbindgen. > > So rustc bootstrap build, rustc binNMUs, cargo, cbindgen? The rustc binNMU would also build with the upstream binaries. We'd need to upload a -2 package with the right build-deps and not using the available binaries. However given the compiler is first built with the stage0 binaries, but then rebuilt again with that intermediate version, I'm not sure we need to do that right away and could wait for the next update. I'm happy to do it now though if you prefer it that way. Cheers, Emilio
Processed: Re: Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
Processing control commands: > tags -1 + confirmed Bug #970132 [release.debian.org] buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1 Added tag(s) confirmed. -- 970132: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=970132 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
Control: tags -1 + confirmed On Sat, 2020-09-12 at 11:09 +0200, Emilio Pozuelo Monfort wrote: > This updates buster's rustc to 1.41, as needed by the new firefox 78 > ESR. The bootstrap happens with the upstream binaries as we've done > in the past. I have also avoided the bump to LLVM 9/10, we use > buster's LLVM 7 instead. Please go ahead; thanks. > After this update, we'll also need cargo (trivial backport, no stage0 > binaries required) and cbindgen. So rustc bootstrap build, rustc binNMUs, cargo, cbindgen? Regards, Adam
Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1
Package: release.debian.org Severity: normal Tags: buster User: release.debian@packages.debian.org Usertags: pu Hi, This updates buster's rustc to 1.41, as needed by the new firefox 78 ESR. The bootstrap happens with the upstream binaries as we've done in the past. I have also avoided the bump to LLVM 9/10, we use buster's LLVM 7 instead. After this update, we'll also need cargo (trivial backport, no stage0 binaries required) and cbindgen. Other than testing the above packages as well as firefox-esr 78 with the new rust, I have performed a mass rebuild of all of rustc's build-depends in buster main with the new rustc and cargo. Out of 458 packages (excluding those two, plus firefox/thunderbird), there were 21 failures, most of which I could identify as being caused by a change in Debian's cargo wrapper, which is called by dh-cargo to build packages. After reverting that change (which relied on debhelper setting DESTDIR in the install phase, called in some cases were there isn't a single librust-foo-dev package), the list of failing packages got down to 5. After testing those 5 against the current rustc/cargo in buster, two of them also failed (rust-simd, rust-coresimd), so there are only 3 regressions: - rust-nodrop-union - rust-rustyline - librsvg The former two have no rdeps in buster, so no big deal. librsvg is failing on one of the vendored rust deps, we can probably update to a newer 2.44.x version (which bumps those deps) or get a minimal fix. I'm attaching the 1.41.1+dfsg1-1 -> 1.41.1+dfsg1-1~deb10u1 debdiff. I doubt the other one would be useful, but if you want I can upload it somewhere. Thanks, Emilio diff -Nru rustc-1.41.1+dfsg1/debian/architecture.mk rustc-1.41.1+dfsg1/debian/architecture.mk --- rustc-1.41.1+dfsg1/debian/architecture.mk 2020-01-04 05:16:35.0 +0100 +++ rustc-1.41.1+dfsg1/debian/architecture.mk 2020-09-08 18:38:19.0 +0200 @@ -5,8 +5,7 @@ rust_cpu = $(subst i586,i686,\ $(if $(findstring -riscv64-,-$(2)-),$(subst riscv64,riscv64gc,$(1)),\ $(if $(findstring -armhf-,-$(2)-),$(subst arm,armv7,$(1)),\ -$(if $(findstring -armel-,-$(2)-),$(subst arm,armv5te,$(1)),\ -$(1) +$(1 rust_type_setvar = $(1)_RUST_TYPE ?= $(call rust_cpu,$($(1)_GNU_CPU),$($(1)_ARCH))-unknown-$($(1)_GNU_SYSTEM) $(foreach machine,BUILD HOST TARGET,\ diff -Nru rustc-1.41.1+dfsg1/debian/bin/rust-lld rustc-1.41.1+dfsg1/debian/bin/rust-lld --- rustc-1.41.1+dfsg1/debian/bin/rust-lld 2020-01-05 18:05:51.0 +0100 +++ rustc-1.41.1+dfsg1/debian/bin/rust-lld 2020-09-08 18:38:19.0 +0200 @@ -6,4 +6,4 @@ # However the tests fail for other reasons, namely we can't build rustdoc # (which runs the tests) in wasm32 yet. So this is just WIP at the moment, # it is not expect to work nor to be installed on user machines. -exec /usr/bin/lld-9 "${@/#-Wl,/}" +exec /usr/bin/lld-7 "${@/#-Wl,/}" diff -Nru rustc-1.41.1+dfsg1/debian/changelog rustc-1.41.1+dfsg1/debian/changelog --- rustc-1.41.1+dfsg1/debian/changelog 2020-04-04 00:41:11.0 +0200 +++ rustc-1.41.1+dfsg1/debian/changelog 2020-09-08 18:38:19.0 +0200 @@ -1,3 +1,15 @@ +rustc (1.41.1+dfsg1-1~deb10u1) buster; urgency=medium + + * Non-maintainer upload. + * Backport to buster. + * stage0 build. +- Use arm-unknown-linux-gnueabi target for armel. + * Use LLVM 7. + * Disable wasm. + * Reduce debugging symbols on i386 to avoid FTBFS due to OOM. + + -- Emilio Pozuelo Monfort Tue, 08 Sep 2020 18:38:19 +0200 + rustc (1.41.1+dfsg1-1) unstable; urgency=medium * Upload to unstable. diff -Nru rustc-1.41.1+dfsg1/debian/control rustc-1.41.1+dfsg1/debian/control --- rustc-1.41.1+dfsg1/debian/control 2020-03-09 00:27:03.0 +0100 +++ rustc-1.41.1+dfsg1/debian/control 2020-09-08 18:38:19.0 +0200 @@ -9,12 +9,12 @@ Build-Depends: debhelper (>= 9), dpkg-dev (>= 1.17.14), python3:native, - cargo:native (>= 0.40.0) , - rustc:native (>= 1.40.0+dfsg) , - rustc:native (<= 1.41.1++), - llvm-9-dev:native, - llvm-9-tools:native, - libllvm9 (>= 1:9.0.1-2), +# cargo:native (>= 0.40.0) , +# rustc:native (>= 1.40.0+dfsg) , +# rustc:native (<= 1.41.1++), + llvm-7-dev:native, + llvm-7-tools:native, +# libllvm7 (>= 1:9.0.1-2), autotools-dev, cmake (>= 3.0) | cmake3, # needed by some vendor crates @@ -33,9 +33,9 @@ # Extra build-deps needed for x.py to download stuff in pkg.rustc.dlstage0. curl , ca-certificates , -Build-Depends-Indep: - wasi-libc (>= 0.0~git20191220.a280fea~~) , - wasi-libc (<= 0.0~git20191220.a280fea++) , +#Build-Depends-Indep: +# wasi-libc (>= 0.0~git20191220.a280fea~~) , +# wasi-libc (<= 0.0~git20191220.a280fea++) , Build-Conflicts: gdb-minimal Standards-Version: 4.2.1 Homepage: