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

Bug#536790: debian-policy: please clarify 'required target' in section 4.9



Jamie Strandboge <jamie@ubuntu.com> writes:

> Section 4.9 of http://www.debian.org/doc/debian-policy/ch-source.html
> states that there a number of required targets for debian/rules.
> Specifically:
>
> "This file must be an executable makefile, and contains the
> package-specific recipes for compiling the package and building binary
> package(s) from the source.
> ....
> At a minimum, required targets are the ones called by dpkg-buildpackage,
> namely, clean, binary, binary-arch, binary-indep, and build."
>
> If the policy is to be read very strictly, then all of the required
> targets must be present in debian/rules, however, this is either
> against the spirit of certain helper programs (eg CDBS and debhelper
> 7), or breaks the functionality of the helper (eg, using a .PHONY line
> will cause debhelper 7 to skip the target entirely).

Supplying a wildcard rule that matches those target names is a way of
providing those targets.  This is one of those things that seems to
obvious to me to write down, but certainly if people have been confused,
that's a good reason to write it down.

> Adding something like the following would greatly reduce the ambiguity
> of section 4.9:
>
> "A required target is one that is either explicitly listed in
> debian/rules or supplied by a helper program."

This would be incorrect -- the targets have to be supplied by
debian/rules.  They can, however, be implemented via wildcard rules.

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



Reply to: