On Tue, Mar 28, 2006 at 03:29:27PM -0500, Michael Spang wrote: > Daniel Schepler wrote: > > Package: greasemonkey > > Version: 0.6.4-3 > > Severity: serious
> > From my pbuilder build log: > > ... > > debian/rules build > > dh_testdir > > dh_testroot > > dh_testroot: You must run this as root (or use fakeroot). > > make: *** [clean] Error 1 > > You are not allowed to do anything in the build target which might require > > root access (or even fakeroot access). > Perhaps it's just my interpretation, but policy seems to conflict with > itself regarding this problem. > (1) The build target must not do anything that might require root privilege. > (2) The build target may need to run the clean target first - see below This is poorly worded in policy. The intent of this requirement is "you may need to run the `clean' target before running the `build target'", or "The `build' target may need the `clean' target *to be run* first". > The package reflects (2) and (3). I suppose removing dh_testroot from > the clean rule would solve this, but it is quite handy to make sure the > build fails as soon as possible and to notify the builder that root > access is probably required. No, there's nothing wrong with having the clean target call dh_testroot; the problem here is in making the build target depend on clean. > The solution is of course quite trivial for this particular package. The > build target depends on the clean target only because it ensures that > making the binary target will build correctly without any stale files > from a previous build. Why would you do this? The normal semantics of make *deliberately* allow you to use the output of a previous make run; requiring clean before every build excludes a valid use case, whereas the standard tools (dpkg-buildpackage) account for the converse quite satisfactorily already. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/
signature.asc
Description: Digital signature