Hi,
On Mon, Oct 19, 2015 at 12:51:08PM +1100, Ben Finney wrote:
> Package: git-buildpackage
> Version: 0.6.32
> Severity: normal
>
> When building a package in “overlay” mode, the upstream source is by
> definition not in the VCS working tree until the overlay is assembled.
>
> So commands such as ‘debian/rules clean’ will not work, if issued
> before the overlay is assembled:
>
> $ gbp config buildpackage.overlay
> buildpackage.overlay=true
>
> $ ls -1F
> debian/
>
> $ gbp buildpackage --source
> dh clean --with python3 --buildsystem=pybuild
> dh_testdir -O--buildsystem=pybuild
> debian/rules override_dh_auto_clean
> make[1]: Entering directory
> '/home/bignose/Projects/debian/python-adventure/trunk'
> dh_auto_clean
> E: pybuild pybuild:88: cannot detect build system, please use --system
> option or set PYBUILD_SYSTEM env. variable
> dh_auto_clean: pybuild --clean -i python{version} -p 3.4 --dir . returned
> exit code 11
> debian/rules:97: recipe for target 'override_dh_auto_clean' failed
> […]
>
> The ‘gbp buildpackage’ command, for a package in “overlay” mode,
> should not assume any of the ‘debian/rules’ commands will work in the
> absence of the upstream source. That includes ‘clean’.
>
> Instead, before issuing the ‘debian/rules clean’ command, the overlay
> needs to be assembled: get the upstream source for the package, then
> overlay the Debian packaging files onto it. Only after that can
> ‘debian/rules clean’ be expected to work in the exported tree.
I somehow agree here although I don't think the clean command makes much
sense in the overlay case so just setting the cleaner to /bin/true works
around this and maybe we should just skip it in overlay mode altogether?
Cheers,
-- Guido