Bug#840425: mkosi: FTBFS when built with dpkg-buildpackage -A (debian/mkosi.1: No such file or directory)
Felipe Sateler
fsateler at debian.org
Tue Oct 11 15:52:14 BST 2016
On 11 October 2016 at 11:41, Santiago Vila <sanvila at unex.es> 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
More information about the Pkg-systemd-maintainers
mailing list