On Tue, Jun 07, 2011 at 08:12:15AM -0400, Joey Hess wrote: > Roger Leigh wrote: > > I think I may have proposed something similar to this patch before, but > > I can't find it in the BTS. > > It caused significant slowdown (due to running every debhelper command > twice with -a and -i) and quite likely broke packages due to > running make install twice, so was removed. > > http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=604563#77 > > 657852b56b0d835afd4e45407d6e8d217c63ab20
Ah, thanks. I'm sure we can improve the performance with some additional work. For me, I'm more concerned about the correctness (not bypassing the policy-defined targets), but I do see your point. Currently we have the "sequence dependencies" as a separate list, not associated with the sequences themselves. It would be possible to put them directly into the sequence list, e.g. with a prefix such as "rules:build" which would make dh invoke "debian/rules build" rather than the command directly. This would permit the rules targets to be run at any point in a sequence. We could, for the build sequence, then run the build-arch and build-indep rules targets /after/ the build sequence (they would appear right at the end of the list). Because the sequence will have been run for both -a and -i, when the build-indep and build-arch sequences are subsequently run, it will then skip them because they will already have been run. This provides the best of both approaches: when you run the build sequence you only run each command once, but you still run the individual arch and indep sequences (and call the rules targets) which allows the user to customise them. When the build-arch and -indep rules are invoked individually, you still get the correct behaviour. For the install rule, we can do exactly the same, so the dh_* commands are only run once. Do all of these commands create .log files or are there any exceptions? I'll give this a go and make a new patch. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `- GPG Public Key: 0x25BFB848 Please GPG sign your mail.
signature.asc
Description: Digital signature

