<div dir="ltr">So long as we can build from both rustc-1.9 and rebuild the resulting rustc-1.10 from rustc-1.10 (ie: once rustc-1.9 is replaced in the archive), then I agree, there's no reason to delay an upload.<div><br></div><div>You have a bunch of make_orig-dl_tarball changes in your commit - are we still using a dl tarball at all with this release?</div><div><br></div><div>Re bootstrap key: yes, that's the one.  Chasing through where CFG_BOOTSTRAP_KEY is used in the makefiles, I *think* we can avoid modifying stage0.txt by using ./configure --enable-local-rebuild if rebuilding with the same version.  If that doesn't work, we may be able to just pass CFG_BOOTSTRAP_KEY=e8edd0fd env var to makefiles directly, or patch the makefiles until one of those works ;)    That key is the same CFG_FILENAME_EXTRA used on libraries, fwiw.  If we want to calculate it ourselves, it's: `printf '%s' 1.10.0 | md5sum | cut -c 1-8`</div><div><br></div><div>(and thanks again!)</div><div> - Gus</div></div><br><div class="gmail_quote"><div dir="ltr">On Sun, 10 Jul 2016 at 08:15 Ximin Luo <<a href="mailto:infinity0@debian.org">infinity0@debian.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ximin Luo:<br>
> Angus Lees:<br>
>> Thanks Ximin!  I've been poking at it myself over the last few nights, and<br>
>> got to roughly where you are.  The big outstanding issue for me is<br>
>> verifying that we can (re)build with the same release, since this will<br>
>> require a different path into the build system (aiui).  I think I know how<br>
>> this needs to work, but I'm only now at the point where I can actually try<br>
>> it :/<br>
><br>
> I just built 1.10.0 by bootstrapping from 1.9.0. Then I installed this 1.10.0 and tried to build the same version again by bootstrapping from itself. This is what I got:<br>
><br>
> $ dpkg-buildpackage -b<br>
> [..]<br>
> CFG_LLVM_LINKAGE_FILE=/media/xda1/data/infinity0/tmp/rust/rebuild/rustc-1.10.0+dfsg1/x86_64-unknown-linux-gnu/rt/<a href="http://llvmdeps.rs" rel="noreferrer" target="_blank">llvmdeps.rs</a> LD_LIBRARY_PATH=/media/xda1/data/infinity0/tmp/rust/rebuild/rustc-1.10.0+dfsg1/x86_64-unknown-linux-gnu/stage0/lib:/usr/lib/llvm-3.7/lib:$LD_LIBRARY_PATH   x86_64-unknown-linux-gnu/stage0/bin/rustc --cfg stage0 -C link-args=-Wl,-z,relro -O --cfg rtopt -C rpath -C prefer-dynamic -C no-stack-check --target=x86_64-unknown-linux-gnu   -L "x86_64-unknown-linux-gnu/rt" -L native="/usr/lib/llvm-3.7/lib"     --out-dir x86_64-unknown-linux-gnu/stage0/lib/rustlib/x86_64-unknown-linux-gnu/lib -C extra-filename=-e8edd0fd -C metadata=e8edd0fd src/libcore/<a href="http://lib.rs" rel="noreferrer" target="_blank">lib.rs</a><br>
> src/libcore/lib.rs:63:1: 63:37 error: #[feature] may not be used on the stable release channel<br>
> src/libcore/<a href="http://lib.rs:63" rel="noreferrer" target="_blank">lib.rs:63</a> #![feature(allow_internal_unstable)]<br>
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
> [..]<br>
> etc more errors like the above<br>
> [..]<br>
> dpkg-buildpackage: error: debian/rules build gave error exit status 2<br>
> 2<br>
><br>
> which sounds like the problem I ran into a few emails ago. There is something called a "bootstrap key" that lets you "unlock" unstable features of a particular compiler, so we would have to do something with this - see my earlier email for more details.<br>
><br>
<br>
OK, I can make the build work again by applying this patch:<br>
<br>
--- a/src/stage0.txt<br>
+++ b/src/stage0.txt<br>
@@ -12,6 +12,6 @@<br>
 # tarball for a stable release you'll likely see `1.x.0-$date` where `1.x.0` was<br>
 # released on `$date`<br>
<br>
-rustc: 1.9.0-2016-05-24<br>
-rustc_key: d16b8f0e<br>
-cargo: nightly-2016-04-10<br>
+rustc: 1.10.0-2016-07-07<br>
+rustc_key: e8edd0fd<br>
+cargo: nightly-0<br>
<br>
This seems fairly easy to automate in a generic way in debian/rules, I will have a go at it soon. After that, I'd suggest we upload, then figure out how to automate the build+testing (that you mentioned) separately.<br>
<br>
X<br>
<br>
--<br>
GPG: ed25519/56034877E1F87C35<br>
GPG: rsa4096/1318EFAC5FBBDBCE<br>
<a href="https://github.com/infinity0/pubkeys.git" rel="noreferrer" target="_blank">https://github.com/infinity0/pubkeys.git</a><br>
<br>
_______________________________________________<br>
Pkg-rust-maintainers mailing list<br>
<a href="mailto:Pkg-rust-maintainers@lists.alioth.debian.org" target="_blank">Pkg-rust-maintainers@lists.alioth.debian.org</a><br>
<a href="https://lists.alioth.debian.org/mailman/listinfo/pkg-rust-maintainers" rel="noreferrer" target="_blank">https://lists.alioth.debian.org/mailman/listinfo/pkg-rust-maintainers</a><br>
</blockquote></div>