[Pkg-rust-maintainers] Build profiles for alpha2

Angus Lees gus at debian.org
Mon Mar 30 07:51:27 UTC 2015


I just realised I never replied to this. In case a reply is still useful,
+3 to everything below.

In particular, I think we should feel free to flip to/from vendored LLVM as
necessary going forward (preferring system LLVM of course).

On Thu, 12 Mar 2015 at 09:39 Luca Bruno <lucab at debian.org> wrote:

> Hi,
> so I think there was a bit of misunderstanding wrt. build-profiles, and
> this
> is probably the last blocker for alpha2. With this mail I'd like to try to
> get
> a consensus on how to use them, and later commit those changes.
> Below is my proposal for alpha2, with the rationale for each point.
> Rest assured that we will revisit this as the situation evolve for beta and
> stable releases, so I'm only focusing on alpha2 here.
>
> I think our bigger misunderstanding was related to stage0, so in short here
> below I'm proposing:
>  - to keep embedding/using local stage0 as we were doing in alpha1
> (otherwise
>    alpha2 default profile can't be built at all)
>  - introduce a build-profile to use a packaged stage0 (which we know
> doesn't
>    work for alpha2, but hopefully will soon)
>  - revisit this build profile in next upstream release, and hopefully start
>    using packaged stage0 as the default. Then, offer embedded/remote stage0
>    as an alternative profile.
>
> Build profiles will concern:
>
> 1) usage of packaged rustc as stage0
>  - rationale: to build rustc without external binaries
>  - status: this doesn't work yet for alpha2, but should in future stables
>  - default profile: building using upstream local stage0¹
>  - alternative profile:
>    * name: 'system-stage0'
>    * effect: add `--enable-local-rust --local-rust-root=/usr`
>    * notes: as soon as possible, change this to be the default and
> introduce
>             a complementary alternative profile 'local-stage0' for
>             bootstrappers.
>
> ¹: embedded in a multi-tarball orig, like it was in alpha1.
>
>
> 2) usage of packaged llvm
>  - rationale: to avoid building/using forked llvm
>  - status: this works for alpha2, we try our best to keep it working
>  - default: keep building against system llvm
>  - alternative profile:
>    * name: 'local-llvm'
>    * effect: remove `--llvm-root=/usr/lib/llvm-3.6`
>
>
> 3) whether to build documentation
>  - rationale: to minimize bootstrap
>  - status: a bunch of compilation options, shouldn't change too much in the
>            future
>  - default profile: build documentation package
>  - alternative profile:
>    * name: 'nodoc'²
>    * effect: don't build documentation package
>
> ²: wiki suggests without trailing 's', so renaming what we have now.
>
>
> Let me know your comments on this. If/When we reach a consensus, I'll
> commit
> new build profiles and update README.source accordingly.
>
> Cheers, Luca
>
> --
>  .''`.  ** Debian GNU/Linux **  | Luca Bruno (kaeso)
> : :'  :   The Universal O.S.    | lucab (AT) debian.org
> `. `'`                          | GPG Key ID: 0x4F3BBEBF
>   `-     http://www.debian.org  | Debian GNU/Linux Developer
> _______________________________________________
> 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/20150330/dc60b256/attachment.html>


More information about the Pkg-rust-maintainers mailing list