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

Bug#846970: Patch to document Build-Indep-Architecture field



Hello,

On Sat, Oct 14 2017, Mattia Rizzolo wrote:

> On Sat, Oct 14, 2017 at 11:15:10AM -0700, Sean Whitton wrote:
>> I am seeking seconds for the following patch.
>
> Thank you for working on this!

Thank you for the review, though I don't believe I need to update my
patch in light of your comments.  See responses below.

>> - I've included the ability to specify the architectures on which the
>> package is known /not/ to build.  This seems useful because in many
>> cases the architectures that don't work is precisely what the
>> maintainer knows, and wants to document in machine-readable form.  I
>> don't buy the argument that it creates any additional uncertainty
>
> Whilst you did this, I think the proper syntax is not clear by your
> wording.  For example, I take that
>     Build-Indep-Architecture: !amd64 means "this thing builds
> everywhere except amd64".  But then, how can I specify "it builds on
> all 32-bit architectures except i386", for example?

I copied the wording from the Architecture: field.  Just as it is not
possible to say that an architecture-dependent package is buildable on
all 32-bit archs except i386 without listing all those archs, it is not
possible to specify that architecture-independent packages are buildable
on all 32-bit archs except i386 without listing all those archs.

We want Architecture: and Build-Indep-Architecture: to use the same
format.  I don't think we should try to extend our format at this point
because there are already various parsers of Architecture:.

> See the following inline comments:
>
>> +Debian machine architectures.  If specified, it should be either
>> + +- A unique single word identifying a Debian machine architecture
>> as
>         ^^^^^^^^^^^^^^^^^^
>> + described in :ref:`s-arch-spec`.
>> + +- An architecture wildcard identifying a set of Debian machine
>> + architectures, see :ref:`s-arch-wildcard-spec`.
>
> This also implies a single word.
>
> But…
>
>> +maintainer's control.  The specification should entail that the
>> +architecture-independent packages are buildable on at least two
>> +architectures.
>
> this is not compatible with the above: both cases say that you have to
> provide at most one word, but how can you provide at least two
> architectures if you have only one word and can't use a wildcard?

It says that you /should/ provide at least two architectures.  This is
not a /must/ requirement, so it should still be possible to use a unique
single word.

> And if you can provide multiple words, you need to specify a separator
> (whitespace vs comma, I suppose).

This is detailed in the architecture wildcard spec.

> Also, I dislike the sentence in itself, I believe it should be more
> straightforward in conveying its meaning of "pretty please at least
> two arch".

It has to be that way for cases like this:

    Build-Indep-architecture: !amd64

That entails that it builds on at least two architectures, but on a
common reading of 'specify', it does not specify two archs.

-- 
Sean Whitton

Attachment: signature.asc
Description: PGP signature


Reply to: