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

Re: Bug#216492: FTBFS (unstable/all) missing build-dep



On Sun, Oct 19, 2003 at 01:20:39PM +0100, Scott James Remnant wrote:
> On Sun, 2003-10-19 at 09:51, Adam Conrad wrote:
> 
> > Package: libtool
> > Version: 1.5-3
> > Severity: serious
> > 
> > libtool fails to build from source on all the buildds[1] due to a missing
> > build-dep on texi2html.
> > 
> libtool (and libtool1.4) *have* a build-dep on texi2html (and texinfo):
> 
> Build-Depends-Indep: debhelper (>= 4.0), texi2html, texinfo
> Build-Depends: debhelper (>= 4.0), file, g77 | fortran77-compiler, gcj [!hppa !mips !mipsel]
> 
> My reading of policy suggests that this is correct:
> 
>      `Build-Depends-Indep', `Build-Conflicts-Indep'
>           The `Build-Depends-Indep' and `Build-Conflicts-Indep' fields must
>           be satisfied when any of the following targets is invoked:
>           `build', `build-indep', `binary' and `binary-indep'.
>  
> [1]  If you make "build-arch" or "binary-arch", you need Build-Depends.  If
>      you make "build-indep" or "binary-indep", you need Build-Depends and
>      Build-Depends-Indep.  If you make "build" or "binary", you need both.
> 
> texinfo and texi2html are used in the "build" target.  As far as I can
> tell this means that the buildd should be ensuring both Build-Depends
> and Build-Depends-Indep are installed before running it.

Other people have covered why this breaks. Here's the solution I use:

Make your build target do nothing.

That is, make build an empty target that does _not_ depend on
build-arch and build-indep. Then make sure that binary-{arch,indep}
will result in the right things getting run anyway.

This a) preserves the desired effect of the time consuming arch-indep
stuff not being run on the buildds, and b) actually works. While it's
not strictly in accord with policy as written, it has the advantage of
doing what policy expected to happen, and I've never seen a better
idea.

Ultimately we should either deprecate the build* targets, or make
build-{arch,indep} mandatory and deprecate build.

-- 
  .''`.  ** Debian GNU/Linux ** | Andrew Suffield
 : :' :  http://www.debian.org/ |
 `. `'                          |
   `-             -><-          |

Attachment: signature.asc
Description: Digital signature


Reply to: