Bug#970132: buster-pu: package rustc/1.41.1+dfsg1-1~deb10u1

2020-09-17 Thread John Paul Adrian Glaubitz
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

2020-09-17 Thread peter green

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

2020-09-17 Thread Emilio Pozuelo Monfort
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

2020-09-13 Thread Emilio Pozuelo Monfort
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

2020-09-12 Thread Debian Bug Tracking System
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

2020-09-12 Thread Adam D. Barratt
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

2020-09-12 Thread Emilio Pozuelo Monfort
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: