Johannes Schauer writes ("Re: Bug#800054: dgit: using dpkg-buildpackage to 
build source package requires build dependencies to be installed"):
> maybe I don't understand yet what it means for my git tree to be clean but I
> would've thought that if it is clean (no extra files, no uncommitted changes,
> no deleted files) then there is no need to run "debian/rules clean". Is that
> correct?

In theory.  The problem is that there are some packages whose clean
targets edit files in the tree (!) and do other strange things.  I
want dgit to work with those too.  So I don't think dgit can be sure
that just because the tree is clean in the git sense, that the
debian/rules idea of clean agrees.

> > Depending on your --clean mode, dgit sbuild might itself use
> dpkg-source -b.
> 
> According to the man page, it seems that --clean=git also uses
> dpkg-buildpackage. Why? Once `git clean -xdf` is run, there should be no need
> to call dpkg-buildpackage but "dpkg-source -b" should suffice, no? That would
> also then not require any special casing of passing -nc to dpkg-buildpackage.

You mean this sentence ?

  | Also, -wg causes dgit to pass -nc to dpkg-buildpackage, which
  | prevents the package's own clean target from being run.

That is indeed slightly misleading, because it only passes -nc to
dpkg-buildpackage _if dpkg-buildpackage is being run_.  This might the
case even with dgit -wgf, for example, if you do `dgit build' rather
than `dgit sbuild'.

I think you will find that dgit -wgf or -wc deal with the build-dep
problem you are.

(BTW, when we are done discussing this I will garden this bug report
into whatever changes to the docs and/or behaviour seem right.)

Thanks,
Ian.

Reply via email to