Package: dgit
Version: 1.4
Severity: normal

Hi,

one of the advantages of using sbuild or pbuilder is, that I do not need
to have the potentially heavy build dependencies installed on my host
system but only temporary in the respective chroots.

So I was surprised that doing `dgit sbuild` ran dpkg-buildpackage to
build the source package which runs dpkg-checkbuilddeps which in turn
requires me to have all build dependencies installed on my host system.

The second problem with dpkg-checkbuilddeps are conflicts. I do not want
to have to remove any packages conflicting with my source package if I'm
gonna build with sbuild anyways.

Now there is the -wdd option which lets dpkg-checkbuilddeps not be run
but besides this rather being an ugly hack, I wonder why debian/rules
clean (which might require build dependencies or conflicts) has to be
run at all? If running with -wdd I might still have to remove packages
from my system (because they conflict) or install them (because the
clean target needs them).

Why is dpkg-checkbuilddeps run in the first place? Do you need it to run
the debian/rules clean target? Is my git tree not already clean?

If dpkg-buildpackage is just used to create the source package, then it
is probably better to run `dpkg-source -b .` instead. This is also
documented in the dpkg-buildpackage man page for the `-S` option.

I tried to apply the following patch:

@@ -3103,7 +3103,7 @@ sub build_source {
     $sourcechanges = "${package}_".(stripepoch $version)."_source.changes";
     $dscfn = dscfn($version);
     if ($cleanmode eq 'dpkg-source') {
-       runcmd_ordryrun_local (@dpkgbuildpackage, qw(-us -uc -S)),
+       runcmd_ordryrun_local (@dpkgsource, qw(-b .)),
            changesopts();
     } elsif ($cleanmode eq 'dpkg-source-d') {
        runcmd_ordryrun_local (@dpkgbuildpackage, qw(-us -uc -S -d)),

but it seems that later on, dgit requires a .changes file which seems to
be the reason why it is run. This is a pity because sbuild would've
created that changes file if it were able to run. Is there something in
dgit that requires something from the changes file *before* running
sbuild?

Thanks!

cheers, josch

Reply via email to