Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#704657: debian/rules: Inconsistent required targets

0 views
Skip to first unread message

Philipp Hahn

unread,
Apr 4, 2013, 3:40:02 AM4/4/13
to
Package: debian-policy
Severity: normal

Quoting from <http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules>
> The following targets are required... :
> clean,
> binary,
> binary-arch,
> binary-indep,
> build.
...
> build (required)
> build-arch (required), build-indep (required)

According to the lintian description in
<http://lintian.debian.org/tags/debian-rules-missing-recommended-target.html>
"build-arch" and "build-indep" should be added to the paragraph
above as required targets.

> binary (required), binary-arch (required), binary-indep (required)
> clean (required)
> get-orig-source (optional)
> patch (optional)

Or remove the introducing paragraph and mention "dpkg-buildpackage"
further down:

- The targets are as follows:
+ The targets called by dpkg-buildpackage are as follows:

-- System Information:
Debian Release: 7.0
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash


--
To UNSUBSCRIBE, email to debian-bugs-...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Adam D. Barratt

unread,
Apr 4, 2013, 4:10:02 AM4/4/13
to
On 04.04.2013 08:23, Philipp Hahn wrote:
> According to the lintian description in
>
> <http://lintian.debian.org/tags/debian-rules-missing-recommended-target.html>
> "build-arch" and "build-indep" should be added to the paragraph
> above as required targets.

The URL you quoted says that the targets are _recommended_ and "will be
required by policy in the future". I'm not sure how that equates to them
being /currently/ required?

Regards,

Adam

Bill Allombert

unread,
Apr 4, 2013, 4:10:03 AM4/4/13
to
On Thu, Apr 04, 2013 at 09:23:07AM +0200, Philipp Hahn wrote:
> Package: debian-policy
> Severity: normal
>
> Quoting from <http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules>
> > The following targets are required... :
> > clean,
> > binary,
> > binary-arch,
> > binary-indep,
> > build.
> ...
> > build (required)
> > build-arch (required), build-indep (required)
>
> According to the lintian description in
> <http://lintian.debian.org/tags/debian-rules-missing-recommended-target.html>
> "build-arch" and "build-indep" should be added to the paragraph
> above as required targets.

Lintian is wrong: the official policy is the one written in debian-policy not in
the lintian code.

Cheers,
--
Bill. <ball...@debian.org>

Imagine a large red swirl here.

Adam D. Barratt

unread,
Apr 4, 2013, 4:30:03 AM4/4/13
to
On 04.04.2013 09:04, Bill Allombert wrote:
> On Thu, Apr 04, 2013 at 09:23:07AM +0200, Philipp Hahn wrote:
>> Package: debian-policy
>> Severity: normal
>>
>> Quoting from
>> <http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules>
>> > The following targets are required... :
>> > clean,
>> > binary,
>> > binary-arch,
>> > binary-indep,
>> > build.
>> ...
>> > build (required)
>> > build-arch (required), build-indep (required)
>>
>> According to the lintian description in
>>
>> <http://lintian.debian.org/tags/debian-rules-missing-recommended-target.html>
>> "build-arch" and "build-indep" should be added to the paragraph
>> above as required targets.
>
> Lintian is wrong:

afaics, lintian is perfectly correct; the submitter's reading of the
quoted page is in error. The tag name and description both say
"recommended" and I don't see anything in the description which suggests
they are required.

> the official policy is the one written in
> debian-policy not in the lintian code.

And lintian isn't attempting to claim otherwise.

Regards,

Adam

Jakub Wilk

unread,
Apr 4, 2013, 4:40:02 AM4/4/13
to
* Bill Allombert <Bill.Al...@math.u-bordeaux1.fr>, 2013-04-04, 10:04:
>>Quoting from <http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules>
>>>The following targets are required... :
>>> clean,
>>> binary,
>>> binary-arch,
>>> binary-indep,
>>> build.
>>...
>>>build (required)
>>>build-arch (required), build-indep (required)
>>
>>According to the lintian description in
>><http://lintian.debian.org/tags/debian-rules-missing-recommended-target.html>
>>"build-arch" and "build-indep" should be added to the paragraph above
>>as required targets.
>
>Lintian is wrong: the official policy is the one written in
>debian-policy not in the lintian code.

So much confusion in a single bug...

Lintian is "wrong", because it still says that build-* are only
recommeneded. This is bug #657390.

Policy is also "wrong" because it doesn't include build-* in the list of
required targets, despite that they are described as required in other
place.

--
Jakub Wilk

Charles Plessy

unread,
Apr 4, 2013, 6:30:01 AM4/4/13
to
Le Thu, Apr 04, 2013 at 10:28:41AM +0200, Jakub Wilk a �crit :
>
> Lintian is "wrong", because it still says that build-* are only
> recommeneded. This is bug #657390.
>
> Policy is also "wrong" because it doesn't include build-* in the
> list of required targets, despite that they are described as
> required in other place.

Thank you Philipp for your bug report and Jakub for your analysis.

Indeed, it looks like an omission in the patch closing #374029.

http://anonscm.debian.org/gitweb/?p=dbnpolicy/policy.git;a=blobdiff;f=policy.sgml;h=229a8cc7e99996ecbc9f9958c6dfb4557b004822;hp=8c654d1b3b85a8da40369414278f3e359a06c6f0;hb=af73c2257019136ee0ce9180aebe6eb8be0dd76e;hpb=703e8e4101ed3f8c4c345d05b7ac730b6ff46c50

Would people be satisifed of the following change as a non-normative
correction, given that the build-arch and build-indep are already marked
required by the commit above ?


The following targets are required and must be implemented
by <file>debian/rules</file>: <tt>clean</tt>, <tt>binary</tt>,
- <tt>binary-arch</tt>, <tt>binary-indep</tt>, and <tt>build</tt>.
+ <tt>binary-arch</tt>, <tt>binary-indep</tt>, <tt>build</tt>,
+ <tt>build-arch</tt> and <tt>build-indep</tt>.
These are the targets called by <prgn>dpkg-buildpackage</prgn>.


PS: The autobuilder are still calling 'build' not 'build-arch', don't they ?

Have a nice day

--
Charles Plessy
Tsurumi, Kanagawa, Japan

Russ Allbery

unread,
Apr 4, 2013, 1:10:01 PM4/4/13
to
Charles Plessy <ple...@debian.org> writes:

> Would people be satisifed of the following change as a non-normative
> correction, given that the build-arch and build-indep are already marked
> required by the commit above ?

> The following targets are required and must be implemented
> by <file>debian/rules</file>: <tt>clean</tt>, <tt>binary</tt>,
> - <tt>binary-arch</tt>, <tt>binary-indep</tt>, and <tt>build</tt>.
> + <tt>binary-arch</tt>, <tt>binary-indep</tt>, <tt>build</tt>,
> + <tt>build-arch</tt> and <tt>build-indep</tt>.
> These are the targets called by <prgn>dpkg-buildpackage</prgn>.

Yes, it looks good to me.

> PS: The autobuilder are still calling 'build' not 'build-arch', don't
> they ?

No, I believe dpkg has been changed to probe whether the build-arch target
exists and call it by preference if it does, and I think that change is
already live on the buildds.

--
Russ Allbery (r...@debian.org) <http://www.eyrie.org/~eagle/>

Roger Leigh

unread,
Apr 4, 2013, 8:00:03 PM4/4/13
to
On Thu, Apr 04, 2013 at 09:59:06AM -0700, Russ Allbery wrote:
> Charles Plessy <ple...@debian.org> writes:
>
> > Would people be satisifed of the following change as a non-normative
> > correction, given that the build-arch and build-indep are already marked
> > required by the commit above ?
>
> > The following targets are required and must be implemented
> > by <file>debian/rules</file>: <tt>clean</tt>, <tt>binary</tt>,
> > - <tt>binary-arch</tt>, <tt>binary-indep</tt>, and <tt>build</tt>.
> > + <tt>binary-arch</tt>, <tt>binary-indep</tt>, <tt>build</tt>,
> > + <tt>build-arch</tt> and <tt>build-indep</tt>.
> > These are the targets called by <prgn>dpkg-buildpackage</prgn>.
>
> Yes, it looks good to me.

Likewise, this looks fine to me.

> > PS: The autobuilder are still calling 'build' not 'build-arch', don't
> > they ?
>
> No, I believe dpkg has been changed to probe whether the build-arch target
> exists and call it by preference if it does, and I think that change is
> already live on the buildds.

The change was implemented in dpkg 1.16.2 just over a year ago.

However, the intention is that the probing/autodetection is only
a transitional measure, and this will be removed once the transition
is complete. Once wheezy is released, lintian can make missing
build-arch and build-indep targets an error rather than a warning,
and then we can aim to fix up the remaining packages for jessie.
I'll be doing some whole-archive rebuilds once wheezy is out to
assess the scale of what percentage of the archive still needs
attention. Once we're done with the transition, dpkg can then
drop the autodetection logic by default.


Regards,
Roger

--
.''`. Roger Leigh
: :' : Debian GNU/Linux http://people.debian.org/~rleigh/
`. `' schroot and sbuild http://alioth.debian.org/projects/buildd-tools
`- GPG Public Key F33D 281D 470A B443 6756 147C 07B3 C8BC 4083 E800

Charles Plessy

unread,
Apr 6, 2013, 4:20:01 AM4/6/13
to
user debian...@packages.debian.org
tag 704657 pending
usertags 704657 informative
thanks

Le Fri, Apr 05, 2013 at 12:54:30AM +0100, Roger Leigh a �crit :
>
> The change was implemented in dpkg 1.16.2 just over a year ago.
>
> However, the intention is that the probing/autodetection is only
> a transitional measure, and this will be removed once the transition
> is complete. Once wheezy is released, lintian can make missing
> build-arch and build-indep targets an error rather than a warning,
> and then we can aim to fix up the remaining packages for jessie.
> I'll be doing some whole-archive rebuilds once wheezy is out to
> assess the scale of what percentage of the archive still needs
> attention. Once we're done with the transition, dpkg can then
> drop the autodetection logic by default.

Thanks for the information. Let's correct the footnote in section 7.7
after dpkg-buildpackage is updated.

I have updated 4.9 by adding build-arch and build-indep to the list in the
third paragraph as discussed. It will take effect with the release of the
Policy version 3.9.5.

Have a nice week-end.

--
Charles Plessy
Debian Med packaging team,
http://www.debian.org/devel/debian-med
Tsurumi, Kanagawa, Japan
0 new messages