Debian Bug report logs - #72335
[ACCEPTED 10/6/2001] Optional build-arch and build-indep targets for debian/rules

version graph

Package: debian-policy; Maintainer for debian-policy is Debian Policy List <debian-policy@lists.debian.org>; Source for debian-policy is src:debian-policy.

Reported by: Antti-Juhani Kaijanaho <gaia@iki.fi>

Date: Sun, 24 Sep 2000 14:33:01 UTC

Severity: normal

Tags: fixed

Found in version 3.2.1.0

Fixed in version debian-policy/3.5.6.0

Done: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>

Bug is archived. No further changes may be made.

Forwarded to debian-policy@lists.debian.org

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
New Bug report received and forwarded. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: submit@bugs.debian.org
Subject: [PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Sun, 24 Sep 2000 17:27:49 +0300
[Message part 1 (text/plain, inline)]
Package: debian-policy
Version: 3.2.1.0
Severity: wishlist

There is a problem with the current build-time dependency system.

The build-time dependency system separates between dependencies needed to
build architecture dependent and architecture independent packages via the
Build-Depends and Build-Depends-Indep fields in debian/control.  However,
since all compilation of the package must happen in the build target of
debian/rules (Packaging Manual section 3.2.1), and since Build-Depends
applies to the build target (Packaging Manual section 8.7), it means that
very rarely can Build-Depends-Indep used, and also that build daemons
building only architecture-dependent parts of the package need often
install also everything needed to build the architecture-independent
parts.  This is not good.

Therefore, I propose two new optional targets in debian/rules.  They would
be named build-arch and build-indep, mirroring the already existing
binary-arch and binary-indep targets.  When they exist, the build target
would have to depend on them; if they don't exist, the build target must
do what they would do.

Additionally, the semantics of the build-time dependency fields would be
changed so that Build-Depends-Indep would apply to the build, build-indep,
binary and binary-indep targets, and Build-Depends would apply to
the build, build-arch, binary and binary-arch targets.  Thus when
a builder wants to build only arch-dependant parts of the package,
she can invoke first the build-arch target (as non-root, if wanted)
and then the binary-arch target (as root).  Then only Build-Depends
packages would need to be installed, fixing the problem.

The reason that the targets be optional is to not make this proposal cause
a major version number increment in policy if the proposal is accepted.
Since the targets are optional, only those packages suffering from
the problem outlined above will want to change, and no packages need
to change.

This proposal requires no code changes anywhere.  However, to make use
of the proposal's improvements to the build system, dpkg-buildpackage
and the build daemons will need to be changed to detect and use the new
targets.  I will provide a patch for dpkg-buildpackage, if necessary.

This proposal affects only the packaging manual.  A diff of the SGML
source is attached.

I'm mainly looking for comments and criticism, but seconds are also
appreciated.

-- 
%%% Antti-Juhani Kaijanaho % gaia@iki.fi % http://www.iki.fi/gaia/ %%%
[diff (text/plain, attachment)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Roman Hodek <roman@caldera.de>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #10 received at 72335@bugs.debian.org (full text, mbox):

From: Roman Hodek <roman@caldera.de>
To: debian-policy@lists.debian.org
Cc: 72335@bugs.debian.org
Subject: Re: Bug#72335: [PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Mon, 25 Sep 2000 15:29:12 +0200
> it means that very rarely can Build-Depends-Indep used, and also
> that build daemons building only architecture-dependent parts of the
> package need often install also everything needed to build the
> architecture-independent parts. This is not good.

Right.

> However, to make use of the proposal's improvements to the build
> system, dpkg-buildpackage and the build daemons will need to be
> changed to detect and use the new targets. I will provide a patch
> for dpkg-buildpackage, if necessary.

A patch to dpkg-buildpackage is sufficient, as the daemons just call
dpkg-buildpackage -B. I'd say this should check for presence of
separate 'build-arch' and/or 'build-indep' target and use 'build-arch'
then instead of 'build'. Otherwise, it falls back to its old
behaviour.

> +                  A package may provide one or both of the targets
> +                  <tt>build-arch</tt> and <tt>build-indep</tt>.  The

Does it make sense to allow one 'build-*' target without the other? If
a package can utilize the separation, it needs both anyway. In extreme
cases, one of the targets still can be empty. But requiring both makes
it easier to test for them.

But besides this, I support this proposal.

Roman



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #15 received at 72335@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: Roman Hodek <roman@caldera.de>
Cc: 72335@bugs.debian.org
Subject: Re: Bug#72335: [PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Fri, 29 Sep 2000 02:40:18 +0300
On 20000925T152912+0200, Roman Hodek wrote:
> A patch to dpkg-buildpackage is sufficient, as the daemons just call
> dpkg-buildpackage -B. 

Ok.

> Does it make sense to allow one 'build-*' target without the other? If
> a package can utilize the separation, it needs both anyway. In extreme
> cases, one of the targets still can be empty. But requiring both makes
> it easier to test for them.

You're right.  I'm too tired to fix the diff now, and I'm going away
for the weekend.  Anybody willing to fix the diff for me? :-)

> But besides this, I support this proposal.

Is that a second?

-- 
%%% Antti-Juhani Kaijanaho % gaia@iki.fi % http://www.iki.fi/gaia/ %%%



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #20 received at submit@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: submit@bugs.debian.org
Cc: 72335-done@bugs.debian.org
Subject: Re: Bug#72335: [PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Mon, 30 Oct 2000 23:44:18 +0200
retitle 72335 [WITHDRAWN] Optional build-arch and build-indep targets for debian/rules
thanks

Due to lack of interest, I am withdrawing this proposal.



Changed Bug title. Request was from Antti-Juhani Kaijanaho <gaia@iki.fi> to control@bugs.debian.org. Full text and rfc822 format available.

Reply sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
You have taken responsibility. Full text and rfc822 format available.

Notification sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Bug acknowledged by developer. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #32 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: Antti-Juhani Kaijanaho <gaia@iki.fi>, 72335@bugs.debian.org
Cc: control@bugs.debian.org
Subject: Re: Bug#72335: [PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Tue, 31 Oct 2000 19:56:31 +0000
reopen 72335
retitle 72335 [PROPOSED] Optional build-arch and build-indep targets for debian/rules
thanks

On Sun, Sep 24, 2000 at 05:27:49PM +0300, Antti-Juhani Kaijanaho wrote:
> There is a problem with the current build-time dependency system.
> 
> The build-time dependency system separates between dependencies needed to
> build architecture dependent and architecture independent packages via the
> Build-Depends and Build-Depends-Indep fields in debian/control.  However,
> since all compilation of the package must happen in the build target of
> debian/rules (Packaging Manual section 3.2.1), and since Build-Depends
> applies to the build target (Packaging Manual section 8.7), it means that
> very rarely can Build-Depends-Indep used, and also that build daemons
> building only architecture-dependent parts of the package need often
> install also everything needed to build the architecture-independent
> parts.  This is not good.
> 
> Therefore, I propose two new optional targets in debian/rules.  They would
> be named build-arch and build-indep, mirroring the already existing
> binary-arch and binary-indep targets.  When they exist, the build target
> would have to depend on them; if they don't exist, the build target must
> do what they would do.
> [...]

This is obviously a necessary corollary of the
Build-Depends/Build-Depends-Indep split, and makes perfect sense.

So even though this languished for a month, I would like to reopen
this proposal and second it.  As stated, it will not cause any
existing tools to break as the build: target must still remain, but it
may help future autobuilders to do less work.

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

  Julian Gilbey, Dept of Maths, QMW, Univ. of London. J.D.Gilbey@qmw.ac.uk
        Debian GNU/Linux Developer,  see http://www.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Bug reopened, originator not changed. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Changed Bug title. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #41 received at 72335@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>, 72335@bugs.debian.org
Subject: Re: Bug#72335: PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Wed, 1 Nov 2000 17:54:19 +0200
On 20001031T195631+0000, Julian Gilbey wrote:
> So even though this languished for a month, I would like to reopen
> this proposal and second it.

Okay.  I hereby withdraw my earlier withdrawal of this proposal.
It's open again.

-- 
%%% Antti-Juhani Kaijanaho % gaia@iki.fi % http://www.iki.fi/gaia/ %%%



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #46 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: 72335@bugs.debian.org
Cc: Antti-Juhani Kaijanaho <ajk@gaia.iki.fi>
Subject: Bug#72335: [PROPOSED] Optional build-arch and build-indep targets for debian/rules
Date: Tue, 27 Feb 2001 11:18:25 +0000
One small correction to the patch provided:
                 The <tt>Build-Depends</tt> and
                <tt>Build-Conflicts</tt> fields apply to the targets
-               <tt>build</tt>, <tt>binary</tt>, <tt>binary-arch</tt>
-               and <tt>binary-indep</tt>.
+               <tt>build</tt>, <tt>build-arch</tt>, <tt>binary</tt>,
+               <tt>binary-arch</tt> and <tt>binary-indep</tt>.
              </p>

The Build-Depends and Build-Conflicts should probably also apply to
build-indep, just as they apply to binary-indep.

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Changed Bug title. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Severity set to `normal'. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #55 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: 72335@bugs.debian.org
Subject: Bug#72335: [ACCEPTED 31/10/2000] Optional build-arch and build-indep targets for debian/rules
Date: Thu, 1 Mar 2001 10:34:02 +0000
Just playing around with make, and want to suggest this tiny
modification to the proposal:  in place of:

+                  If one or both of the targets <tt>build-arch</tt>
+                  and <tt>build-indep</tt> are not provided, then
+                  invoking <tt>debian/rules</tt> with one of the
+                  not-provided targets as arguments should produce a
+                  exit status code of 2.  Usually this is provided
+                  automatically by make if the target is missing.

(and notwithstanding that we're going to require both or neither), it
should say that "debian/rules -q with one of the not-provided targets
...", because the programs which will want to test this are likely to
do something cheap like:

debian/rules -q build-arch
if [ $? -eq 2 ]; then
    debian/rules build
else
    debian/rules build-arch
fi

To try a full build only to receive an exit status of 2 would not say
whether the build failed or the target was not found.

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #60 received at 72335@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>, 72335@bugs.debian.org
Subject: Re: Bug#72335: ACCEPTED 31/10/2000] Optional build-arch and build-indep targets for debian/rules
Date: Thu, 1 Mar 2001 14:11:35 +0200
On 20010301T103402+0000, Julian Gilbey wrote:
> (and notwithstanding that we're going to require both or neither), it
> should say that "debian/rules -q with one of the not-provided targets
> ..."

Sounds like a good idea.  

-- 
%%% Antti-Juhani Kaijanaho % gaia@iki.fi % http://www.iki.fi/gaia/ %%%



Changed Bug title. Request was from Wichert Akkerman <wichert@cistron.nl> to control@bugs.debian.org. Full text and rfc822 format available.

Severity set to `wishlist'. Request was from Wichert Akkerman <wichert@cistron.nl> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #69 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: 72335@bugs.debian.org
Cc: Antti-Juhani Kaijanaho <gaia@iki.fi>, Roman Hodek <roman@caldera.de>, Wichert Akkerman <wichert@cistron.nl>
Subject: Bug#72335: [PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Thu, 29 Mar 2001 11:29:58 +0100
OK, after Wichert's comments, here is a new version of the proposed
amendment to policy.  Note that there is no mention of "debian/rules
-q <target>" giving exit status of 2 if the target does not exist;
this should really be handled as part of the question of whether
debian/rules are makefiles is mandatory or not.

Also, while this does not *require* or *need* any changes to
dpkg-buildpackage (and I was wrong to intially suggest it does), it
would certainly be enhanced by such changes.  The autobuilders, which
call dpkg-buildpackage -B, would no longer need to install both the
Build-Depends and Build-Depends-Indep if the package provides both
build-arch and build-indep targets and dpkg-buildpackage is enhanced
with the necessary simple change.  That was the original intention
of the Build-Depends/Build-Depends-Indep split; unfortunately this
implementation aspect was overlooked.

Please see the inital proposal for more details.

[I changed the inconsistent use of <prgn> and <tt> in the process as
well.  So there are a few more lines of changes than actually relevant
to this proposal.  Sorry.]

So this is now looking to be reseconded.

--- policy.sgml.orig	Thu Mar 29 11:09:27 2001
+++ policy.sgml	Thu Mar 29 11:23:08 2001
@@ -1761,10 +1761,11 @@
 	<p>
 	  The targets which must be present are:
 	  <taglist>
-	    <tag><tt>build</tt></tag>
+	      <tag><tt>build</tt>, <tt>build-arch</tt> (optional),
+		<tt>build-indep</tt> (optional)</tag>
 	    <item>
 	      <p>
-		This should perform all non-interactive
+		The <tt>build</tt> target should perform all non-interactive
 		configuration and compilation of the package.  If a
 		package has an interactive pre-build configuration
 		routine, the Debianised source package should be
@@ -1772,39 +1773,70 @@
 		built without rerunning the configuration.
 	      </p>
 
+
+	      <p>
+		A package may also provide both of the targets
+		<tt>build-arch</tt> and <tt>build-indep</tt>.  The
+		<tt>build-arch</tt> target, if provided, should
+		perform all non-interactive configuration and
+		compilation required for producing all
+		architecture-dependant binary packages (those packages
+		for which the body of the <tt>Architecture</tt> field
+		in <tt>debian/control</tt> is not <tt>all</tt>).
+		Similarly, the <tt>build-indep</tt> target, if
+		provided, should perform all non-interactive
+		configuration and compilation required for producing
+		all architecture-independent binary packages (those
+		packages for which the body of the
+		<tt>Architecture</tt> field in <tt>debian/control</tt>
+		is <tt>all</tt>).  The <tt>build</tt> target should
+		depend on those of the targets <tt>build-arch</tt> and
+		<tt>build-indep</tt> that are provided in the rules
+		file.
+	      </p>
+
 	      <p>
+		If one or both of the targets <tt>build-arch</tt> and
+		<tt>build-indep</tt> are not provided, then invoking
+		<tt>debian/rules</tt> with one of the not-provided
+		targets as arguments should produce a exit status code
+		of 2.  Usually this is provided automatically by make
+		if the target is missing.
+	      </p>
+
+   	      <p>
 		For some packages, notably ones where the same
 		source tree is compiled in different ways to produce
-		two binary packages, the <prgn>build</prgn> target
+		two binary packages, the <tt>build</tt> target
 		does not make much sense.  For these packages it is
 		good enough to provide two (or more) targets
 		(<tt>build-a</tt> and <tt>build-b</tt> or whatever)
 		for each of the ways of building the package, and a
-		<prgn>build</prgn> target that does nothing.  The
-		<prgn>binary</prgn> target will have to build the
+		<tt>build</tt> target that does nothing.  The
+		<tt>binary</tt> target will have to build the
 		package in each of the possible ways and make the
 		binary package out of each.
 	      </p>
 
 	      <p>
-		The <prgn>build</prgn> target must not do anything
-		that might require root privilege.
+		The targets <tt>build</tt>, <tt>build-arch</tt>
+		and <tt>build-indep</tt> target must not do
+		anything that might require root privilege.
 	      </p>
 
 	      <p>
-		The <prgn>build</prgn> target may need to run
-		<prgn>clean</prgn> first - see below.
+		The <tt>build</tt> target may need to run
+		<tt>clean</tt> first - see below.
 	      </p>
 
 	      <p>
-		When a package has a configuration routine that
-		takes a long time, or when the makefiles are poorly
-		designed, or when <prgn>build</prgn> needs to run
-		<prgn>clean</prgn> first, it is a good idea to
-		<tt>touch build</tt> when the build process is
-		complete.  This will ensure that if <tt>debian/rules
-		  build</tt> is run again it will not rebuild the
-		whole program.
+		When a package has a configuration routine that takes
+		a long time, or when the makefiles are poorly
+		designed, or when <tt>build</tt> needs to run
+		<tt>clean</tt> first, it is a good idea to <tt>touch
+		build</tt> when the build process is complete.  This
+		will ensure that if <tt>debian/rules build</tt> is run
+		again it will not rebuild the whole program.
 	      </p>
 	    </item>
 
@@ -1813,36 +1845,36 @@
 	    </tag>
 	    <item>
 	      <p>
-		The <prgn>binary</prgn> target must be all that is
+		The <tt>binary</tt> target must be all that is
 		necessary for the user to build the binary
 		package. All these targets are required to be
 		non-interactive.  It is split into two parts:
-		<prgn>binary-arch</prgn> builds the packages' output
+		<tt>binary-arch</tt> builds the packages' output
 		files which are specific to a particular
-		architecture, and <prgn>binary-indep</prgn> builds
+		architecture, and <tt>binary-indep</tt> builds
 		those which are not.
 	      </p>
 
 	      <p>
-		<prgn>binary</prgn> may be (and commonly is) a target
-		with no commands which simply depends on
-		<prgn>binary-arch</prgn> and
-		<prgn>binary-indep</prgn>.
+		<tt>binary</tt> may be (and commonly is) a target with
+		no commands which simply depends on
+		<tt>binary-arch</tt> and <tt>binary-indep</tt>.
 	      </p>
 
 	      <p>
-		Both <prgn>binary-*</prgn> targets should depend on
-		the <prgn>build</prgn> target, above, so that the
-		package is built if it has not been already.  It
-		should then create the relevant binary package(s),
-		using <prgn>dpkg-gencontrol</prgn> to make their
-		control files and <prgn>dpkg-deb</prgn> to build
-		them and place them in the parent of the top level
-		directory.
+		Both <tt>binary-*</tt> targets should depend on the
+		<tt>build</tt> target, or on the appropriate
+		<tt>build-arch</tt> or <tt>build-indep</tt> target, if
+		provided, so that the package is built if it has not
+		been already.  It should then create the relevant
+		binary package(s), using <tt>dpkg-gencontrol</tt> to
+		make their control files and <tt>dpkg-deb</tt> to
+		build them and place them in the parent of the top
+		level directory.
 	      </p>
 
 	      <p>
-		If one of the <prgn>binary-*</prgn> targets has
+		If one of the <tt>binary-*</tt> targets has
 		nothing to do (this will be always be the case if
 		the source generates only a single binary package,
 		whether architecture-dependent or not) it
@@ -1851,7 +1883,7 @@
 	      </p>
 
 	      <p>
-		The <prgn>binary</prgn> targets must be invoked as
+		The <tt>binary</tt> targets must be invoked as
 		root.
 	      </p>
 	    </item>
@@ -1861,29 +1893,29 @@
 
 	      <p>
 		This must undo any effects that the
-		<prgn>build</prgn> and <prgn>binary</prgn> targets
+		<tt>build</tt> and <tt>binary</tt> targets
 		may have had, except that it should leave alone any
 		output files created in the parent directory by a
-		run of <prgn>binary</prgn>. This target must be
+		run of <tt>binary</tt>. This target must be
 		non-interactive.
 	      </p>
 
 	      <p>
-		If a <prgn>build</prgn> file is touched at the end
-		of the <prgn>build</prgn> target, as suggested
+		If a <tt>build</tt> file is touched at the end
+		of the <tt>build</tt> target, as suggested
 		above, it should be removed as the first thing that
-		<prgn>clean</prgn> does, so that running
-		<prgn>build</prgn> again after an interrupted
-		<prgn>clean</prgn> doesn't think that everything is
+		<tt>clean</tt> does, so that running
+		<tt>build</tt> again after an interrupted
+		<tt>clean</tt> doesn't think that everything is
 		already done.
 	      </p>
 
 	      <p>
-		The <prgn>clean</prgn> target may need to be
-		invoked as root if <prgn>binary</prgn> has been
-		invoked since the last <prgn>clean</prgn>, or if
-		<prgn>build</prgn> has been invoked as root (since
-		<prgn>build</prgn> may create directories, for
+		The <tt>clean</tt> target may need to be
+		invoked as root if <tt>binary</tt> has been
+		invoked since the last <tt>clean</tt>, or if
+		<tt>build</tt> has been invoked as root (since
+		<tt>build</tt> may create directories, for
 		example).
 	      </p>
 	    </item>
@@ -1914,8 +1946,8 @@
 	  </taglist>
 
 	<p>
-	  The <prgn>build</prgn>, <prgn>binary</prgn> and
-	  <prgn>clean</prgn> targets must be invoked with a current
+	  The <tt>build</tt>, <tt>binary</tt> and
+	  <tt>clean</tt> targets must be invoked with a current
 	  directory of the package's top-level directory.
 	</p>
 
@@ -3332,8 +3364,9 @@
 	      <p>
                 The <tt>Build-Depends</tt> and
 		<tt>Build-Conflicts</tt> fields apply to the targets
-		<tt>build</tt>, <tt>binary</tt>, <tt>binary-arch</tt>
-		and <tt>binary-indep</tt>.
+		<tt>build</tt>, <tt>build-arch</tt>,
+		<tt>build-indep</tt>, <tt>binary</tt>,
+		<tt>binary-arch</tt> and <tt>binary-indep</tt>.
 	      </p>
 	    </item>
 	    <tag><tt>Build-Depends-Indep</tt>, <tt>Build-Conflicts-Indep</tt></tag>
@@ -3341,7 +3374,8 @@
 	      <p>
                 The <tt>Build-Depends-Indep</tt> and
 		<tt>Build-Conflicts-Indep</tt> fields apply to the
-		targets <tt>binary</tt> and <tt>binary-indep</tt>.
+		targets <tt>build</tt>, <tt>build-indep</tt>,
+		<tt>binary</tt> and <tt>binary-indep</tt>.
 	      </p>
 	    </item>
 	  </taglist>


   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #74 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: 72335@bugs.debian.org
Cc: Antti-Juhani Kaijanaho <gaia@iki.fi>, Roman Hodek <roman@caldera.de>, Wichert Akkerman <wichert@cistron.nl>
Subject: Re: Bug#72335: [PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Wed, 11 Apr 2001 19:18:23 +0100
I've just found an issue which must be resolved whether this proposal
is accepted or not.  At present, the Build-{Depends,Conflicts}-Indep
lists do not apply to the build target.  This is incorrect.  This
proposal already fixes this issue.

This is still looking for seconds: Antti-Juhani and Roman, would you
care to second it?

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #79 received at 72335@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
Cc: 72335@bugs.debian.org, Roman Hodek <roman@caldera.de>, Wichert Akkerman <wichert@cistron.nl>
Subject: Re: Bug#72335: [PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Wed, 11 Apr 2001 22:15:36 +0300
On 20010411T191823+0100, Julian Gilbey wrote:
> I've just found an issue which must be resolved whether this proposal
> is accepted or not.  At present, the Build-{Depends,Conflicts}-Indep
> lists do not apply to the build target.  This is incorrect.  This
> proposal already fixes this issue.

It was intentional: we decided back then that doing that would render
the fields useless.

(It turned out they are useless anyway, but...:-)

-- 
%%% Antti-Juhani Kaijanaho % gaia@iki.fi % http://www.iki.fi/gaia/ %%%



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #84 received at 72335@bugs.debian.org (full text, mbox):

From: Antti-Juhani Kaijanaho <gaia@iki.fi>
To: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>, 72335@bugs.debian.org
Subject: Re: Bug#72335: PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Wed, 11 Apr 2001 22:36:47 +0300
[Message part 1 (text/plain, inline)]
On 20010329T112958+0100, Julian Gilbey wrote:
> OK, after Wichert's comments, here is a new version of the proposed
> amendment to policy. 

Seconded.

-- 
%%% Antti-Juhani Kaijanaho % gaia@iki.fi % http://www.iki.fi/gaia/ %%%
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #89 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: Antti-Juhani Kaijanaho <gaia@iki.fi>
Cc: 72335@bugs.debian.org, Roman Hodek <roman@caldera.de>, Wichert Akkerman <wichert@cistron.nl>
Subject: Re: Bug#72335: [PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Wed, 11 Apr 2001 22:52:15 +0100
On Wed, Apr 11, 2001 at 10:15:36PM +0300, Antti-Juhani Kaijanaho wrote:
> On 20010411T191823+0100, Julian Gilbey wrote:
> > I've just found an issue which must be resolved whether this proposal
> > is accepted or not.  At present, the Build-{Depends,Conflicts}-Indep
> > lists do not apply to the build target.  This is incorrect.  This
> > proposal already fixes this issue.
> 
> It was intentional: we decided back then that doing that would render
> the fields useless.
> 
> (It turned out they are useless anyway, but...:-)

Fair enough.

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Peter S Galbraith <GalbraithP@dfo-mpo.gc.ca>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #94 received at 72335@bugs.debian.org (full text, mbox):

From: Peter S Galbraith <GalbraithP@dfo-mpo.gc.ca>
To: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
Cc: 72335@bugs.debian.org, debian-mentors@lists.debian.org, Peter S Galbraith <GalbraithP@dfo-mpo.gc.ca>
Subject: Re: Does debhelper handle build-indep ?
Date: Wed, 23 May 2001 13:31:21 -0400
-----BEGIN PGP SIGNED MESSAGE-----


Julian Gilbey wrote:

> On Wed, May 23, 2001 at 09:09:03AM -0400, Peter S Galbraith wrote:
> > 
> > I should probably shut up about this, but something has always
> > bugged me (which means I'm probably doing it wrong).
> > 
> > Take for example /usr/share/doc/debhelper/examples/rules.multi,
> > The targets are like so:
> > 
> > binary-indep: build install
> > 
> > binary-arch: build install
> > 
> > Both `binary-indep` and `binary-arch` depend on the build
> > target.  Why would you want to do a build (which will have
> > arch-specific components) for `binary-indep` ?
> 
> Great question!  Please check http://bugs.debian.org/72335 and
> consider seconding it, so that we can at long last begin to resolve
> this issue in a standard way.  It proposes the (optional) introduction
> of two new targets: build-arch and build-indep which do -- guess what?
> And build will depend on both.  (Of course, there may be packages for
> which splitting the build is infeasible.  But that's not a problem;
> just do it all in build-arch and have build-indep depend on
> build-arch.)
> 
>    Julian

I have read the thread, and I second it as ammended.

Peter

-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: noconv
Comment: Processed by Mailcrypt 3.5.5, an Emacs/PGP interface

iQCVAwUBOwvz5LwVH8jSqROhAQFEPAQApo5+ZLIc9x0pPTa0yrkGzrZa0Y5RxMbY
RwSVXilQ7v9Rk2XWCKKYRHg76zzCVX4H6/fEgT8MHbf5J8zZoxSSwLRY49RjlE0c
CeC8OE8WxQw7R5czeP5VdPZtY+gqsSVDxTnPHTv6o67z5OHLF2vXvRhnz3ToktdM
X3bJF+0z+qo=
=ZKIk
-----END PGP SIGNATURE-----



Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #99 received at 72335@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: 72335@bugs.debian.org
Cc: dpkg@packages.debian.org, Debian Email Bug Control <control@bugs.debian.org>
Subject: Bug#72335: [PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Wed, 23 May 2001 18:46:10 +0100
severity 72335 normal
title 72335 [AMENDMENT 23/5/2001] Optional build-arch and build-indep targets for debian/rules
thanks

Once again, this proposal (in its amended form) has gained two
seconds.  I propose a 10 day discussion period.

The question of how to handle the use of this is still a little
contentious: the simplest way is for dpkg-buildpackage to run
debian/rules -q build-arch when building arch-specific binaries only
and examine the return status.  But this assumes that debian/rules is
a makefile.  This was the subject of a flame-war some while ago which
was never resolved.  But this proposal makes sense nevertheless; if we
lose the requirement that debian/rules has to be a makefile, then we
can either stipulate that debian/rules has to behave like a makefile
wrt -q, or we can have dpkg-buildpackage checking the #! line to see
whether it is a makefile.  Either way, it has the potential of saving
autobuilders some work in some cases and resolves the
Build-Depends-Indep semantical error.

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Severity set to `normal'. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#72335; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Bill Allombert <allomber@math.u-bordeaux.fr>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #106 received at 72335@bugs.debian.org (full text, mbox):

From: Bill Allombert <allomber@math.u-bordeaux.fr>
To: 72335@bugs.debian.org
Subject: [PROPOSAL] Optional build-arch and build-indep targets for debian/rules
Date: Fri, 1 Jun 2001 19:08:35 +0200
[Message part 1 (text/plain, inline)]
I second the amended proposal.

I include a sort-of template for dh_make to help implementing it.

It may really save time to autobuilders, since more and more packages use
complex text-processing softwares to render theirs documentations, and this
often means several packages to be installed before building, and this already
take time. 

It has the added benefit that people needing to rebuild a package (against
others libs, say) will need  less packages installed in order to compile the
binary-arch target. Rebuilding the documentation is often less useful.

Regards,

Bill Allombert <ballombe@debian.org>

[rules (text/plain, attachment)]
[Message part 3 (application/pgp-signature, inline)]

Noted your statement that Bug has been forwarded to debian-policy@lists.debian.org. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Changed Bug title. Request was from Julian Gilbey <J.D.Gilbey@qmw.ac.uk> to control@bugs.debian.org. Full text and rfc822 format available.

Tags added: fixed Request was from Manoj Srivastava <srivasta@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Reply sent to Julian Gilbey <J.D.Gilbey@qmw.ac.uk>:
You have taken responsibility. Full text and rfc822 format available.

Notification sent to Antti-Juhani Kaijanaho <gaia@iki.fi>:
Bug acknowledged by developer. Full text and rfc822 format available.

Message #117 received at 72335-done@bugs.debian.org (full text, mbox):

From: Julian Gilbey <J.D.Gilbey@qmw.ac.uk>
To: 100631-done@bugs.debian.org, 102199-done@bugs.debian.org, 102204-done@bugs.debian.org, 105535-done@bugs.debian.org, 105538-done@bugs.debian.org, 105625-done@bugs.debian.org, 53849-done@bugs.debian.org, 60461-done@bugs.debian.org, 72335-done@bugs.debian.org, 98291-done@bugs.debian.org
Subject: Closed by debian-policy version 3.5.6.0
Date: Sat, 18 Aug 2001 23:28:24 +0100
These bugs were closed by debian-policy 3.5.6.0.  Here is the
.changes file.

-----BEGIN PGP SIGNED MESSAGE-----

Format: 1.7
Date: Tue, 24 Jul 2001 21:43:22 -0500
Source: debian-policy
Binary: debian-policy
Architecture: source all
Version: 3.5.6.0 
Distribution: unstable
Urgency: low
Maintainer: Debian Policy List <debian-policy@lists.debian.org>
Changed-By: Manoj Srivastava <srivasta@debian.org>
Description:
 debian-policy - Debian Policy Manual and related documents
Closes: 53849 60461 72335 98291 100631 102199 102204 105535 105538 105625
Changes:
 debian-policy (3.5.6.0) unstable; urgency=low
 .
   * Change footnote about urgency values to the now-current list: low,
     medium, high, emergency.
   * Correct note about /etc/default files being conffiles/config files,
     which I mucked up (sorry Joey) [10.3.2]
   * [AMENDMENT 2001/06/26] Downgrade emacs/tex to optional
                                                   closes: Bug#102204, Bug#53849
   * [AMENDMENT 2001/06/26] Next stage in usr/doc -> usr/share/doc transition
                                                              closes: Bug#102199
 .
   * [AMENDMENT 09/06/2001] Clarifying FHS policy   closes: Bug#98291, Bug#60461
   * Spelling correction                                      closes: Bug#105625
   * [AMMENDMENT 28/06/2001] Restrict http access to /usr/share/doc
                                                              closes: Bug#100631
   * [AMENDMENT 23/5/2001] Optional build-arch and build-indep targets for
     debian/rules                                             closes: Bug#72335
   * The old packaging manual is included in the policy document as an 
     informative appendix. It is not part of Debian Technical Policy, and
     its presence is a temporary measure until dpkg documentation includes
     ther information provided.                               closes: Bug#105535
   * Added information about optional blank lines in the chagelog format.
                                                              closes: Bug#105538
Files:
 d0a1ac17a579422cf3036a91018077db 727 doc optional debian-policy_3.5.6.0.dsc
 847698fb56a4015e8c01fff6e2549979 568045 doc optional debian-policy_3.5.6.0.tar.gz
 1c021ad67e4ca6c516ed92abf7194626 582528 doc optional debian-policy_3.5.6.0_all.deb
 9b36b824c66c396e6755932b2abc892d 91261 byhand - policy.txt.gz
 2930900bdf8160ce69a088a56af4cace 2138 byhand - menu-policy.txt.gz
 a3da1fbfdf72eca7b027057891e0a4cb 1561 byhand - mime-policy.txt.gz
 1d2430875f883293167d7485e9c6ff7f 4417 byhand - policy-process.txt.gz  
 2a62f4ed486185ba2d4dd8f9f1025e6d 4357 byhand - perl-policy.txt.gz
 2b8ceb66219172f7cb2a34bff5a395d0 99749 byhand - policy.html.tar.gz
 12c50aaf21b5607813d05eca35a75750 2759 byhand - menu-policy.html.tar.gz
 44838568cf22562f1669015d1dabfe76 2115 byhand - mime-policy.html.tar.gz  
 368690344dcee1495139ff6fff5fea81 5063 byhand - policy-process.html.tar.gz
 340c2df7326f04027844bac805c25cb6 5563 byhand - perl-policy.html.tar.gz
 4ec1bcd43a2c9f9981d2bc08dafb48ae 6120 byhand - debconf_specification.txt.gz
 753ce321854a513ff0cb3b279e548a1f 29941 byhand - debconf_specification.html
 3ed7aa5a489834b24bb28ff377a34aa9 10982 byhand - libc6-migration.txt
 b9ffc0d13d1467967d994288c4adc29b 7686 byhand - virtual-package-names-list.txt
 999105364cf441d21bb979469db2abba 174680 byhand - policy.ps.gz
 09e7a1c8473e068617d8b41a85612414 316812 byhand - policy.pdf.gz
 ebe19e49d89eb9edad98b9e6d3fc886e 16014 byhand - upgrading-checklist.txt
 93679f707ec4cbc94b6f667afb1f2600 34997 byhand - fhs-2.1.html.tar.gz
 300035e9df1e7fa8295a38fee2cf54c6 98312 byhand - fhs.txt

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE7Xk+gIbrau78kQkwRAVMzAKCXOT7MSdSx5647GudbFBmJHFzo6wCeKFkL
qC1x2fxjus05sb+yppI5IKQ=
=2C5w
-----END PGP SIGNATURE-----


   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

         Julian Gilbey, Dept of Maths, Queen Mary, Univ. of London
       Debian GNU/Linux Developer,  see http://people.debian.org/~jdg
  Donate free food to the world's hungry: see http://www.thehungersite.com/



Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Fri Apr 18 13:32:27 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.