[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bootstrappable Debian - a decision is needed, patches exist


Quoting YunQiang Su (2013-10-15 08:08:52)
> On Tue, Oct 15, 2013 at 2:03 PM, Johannes Schauer <j.schauer@email.de> wrote:
> > What is yet to be decided is the concrete format for the Build-Depends
> > syntax extension. The first proposals suggested a syntax which looked like
> >
> >     Build-Depends: foo [amd64] <!stage1>
> I'd prefer Build-Depends-Stage1 if possible.
> When bootstrap, dpkg only ask for these build-depends while for normal build,
> dpkg should merge Build-Depends-Stage1 and Build-Depends.

this approach does not work because it does not allow to specify additional
dependencies for when a source package is compiled with a certain profile

The Build-Depends-Stage1 field name was used in earlier proposals with a
different meaning. Instead of making the final build dependencies the union of
Build-Depends and Build-Depends-Stage1 as you proposed, Build-Depends-Stage1
contained all dependencies necessary for the build profile "stage1". When doing
a normal build, only the Build-Depends would be used. When building with the
build profile "stage1" activated only the Build-Depends-Stage1 would be used.
This solves the problem I explained above which your solution has.

This Build-Depends-Stage1 format was abolished in favor of the syntax additions
explained in my last email because of the following reasons:

 - it requires variable field names to match all possible profiles
 - it requires a near duplication of the Build-Depends field which is highly
   prone to bitrot
 - it does not work with multiple profiles activated at the same time

For a full history of the development of this see


cheers, josch

Reply to: