On 11 October 2016 at 11:41, Santiago Vila <[email protected]> wrote: > On Tue, Oct 11, 2016 at 11:30:04AM -0300, Felipe Sateler wrote: > >> > If your intention is that "debian/rules build" builds everything from >> > scratch again if you do it a second time, you can't even do that >> > with dh because of dh's own stamping system. >> > >> > For example, try "debian/rules build" on the hello package, then try >> > "debian/rules build" again, you will see that it does not do anything >> > the second time. >> >> Debhelper compat level 10 introduced a new stamping system that is >> reasonable now. Because mkosi uses level 10, all I need to do is `rm >> debian/debhelper-build-stamp`. If I don't do the .PHONY thing, the >> only thing that will work is deleting the build dir. > > Sorry, I still don't get it. > > "all you need to do" for what?
For dh to reexecute its sequence again. > > If you want the build to happen again, you should "debian/rules clean" first, > with or without debhelper. > > Am I missing anything? There are several disadvantages to having build target not be phony: 1. I have to clean and rebuild the world when testing patches. 2. I have to clean and rebuild the world when testing overriden targets in d/rules. 3. Killing a build halfway and resuming becomes impossible, as the build directory causes make to consider `build` as done. Granted, in this particular case the discussion is a bit academic, since this is a single python script. But in general having `build` be phony is a great thing. -- Saludos, Felipe Sateler

