[Pkg-rust-maintainers] Upstream has changed the bootstrap process

Sylvestre Ledru sylvestre at debian.org
Mon Jul 11 07:40:46 UTC 2016


I am traditionally the one doing the upload of new rust versions. However, as I haven't done anything with this release and don't deserve any credit, please upload it when you think it is ready 

Le 11 juillet 2016 04:14:52 GMT+02:00, Angus Lees <gus at debian.org> a écrit :
>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.
>
>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?
>
>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`
>
>(and thanks again!)
> - Gus
>
>On Sun, 10 Jul 2016 at 08:15 Ximin Luo <infinity0 at debian.org> wrote:
>
>> Ximin Luo:
>> > Angus Lees:
>> >> Thanks Ximin!  I've been poking at it myself over the last few
>nights,
>> and
>> >> got to roughly where you are.  The big outstanding issue for me is
>> >> verifying that we can (re)build with the same release, since this
>will
>> >> require a different path into the build system (aiui).  I think I
>know
>> how
>> >> this needs to work, but I'm only now at the point where I can
>actually
>> try
>> >> it :/
>> >
>> > 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:
>> >
>> > $ dpkg-buildpackage -b
>> > [..]
>> >
>>
>CFG_LLVM_LINKAGE_FILE=/media/xda1/data/infinity0/tmp/rust/rebuild/rustc-1.10.0+dfsg1/x86_64-unknown-linux-gnu/rt/
>> llvmdeps.rs
>>
>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/lib.rs
>> > src/libcore/lib.rs:63:1: 63:37 error: #[feature] may not be used on
>the
>> stable release channel
>> > src/libcore/lib.rs:63 #![feature(allow_internal_unstable)]
>> >                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> > [..]
>> > etc more errors like the above
>> > [..]
>> > dpkg-buildpackage: error: debian/rules build gave error exit status
>2
>> > 2
>> >
>> > 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.
>> >
>>
>> OK, I can make the build work again by applying this patch:
>>
>> --- a/src/stage0.txt
>> +++ b/src/stage0.txt
>> @@ -12,6 +12,6 @@
>>  # tarball for a stable release you'll likely see `1.x.0-$date` where
>> `1.x.0` was
>>  # released on `$date`
>>
>> -rustc: 1.9.0-2016-05-24
>> -rustc_key: d16b8f0e
>> -cargo: nightly-2016-04-10
>> +rustc: 1.10.0-2016-07-07
>> +rustc_key: e8edd0fd
>> +cargo: nightly-0
>>
>> 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.
>>
>> X
>>
>> --
>> GPG: ed25519/56034877E1F87C35
>> GPG: rsa4096/1318EFAC5FBBDBCE
>> https://github.com/infinity0/pubkeys.git
>>
>> _______________________________________________
>> Pkg-rust-maintainers mailing list
>> Pkg-rust-maintainers at lists.alioth.debian.org
>> https://lists.alioth.debian.org/mailman/listinfo/pkg-rust-maintainers
>>
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Pkg-rust-maintainers mailing list
>Pkg-rust-maintainers at lists.alioth.debian.org
>https://lists.alioth.debian.org/mailman/listinfo/pkg-rust-maintainers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-rust-maintainers/attachments/20160711/0f4fac41/attachment.html>


More information about the Pkg-rust-maintainers mailing list