Package: debhelper
Version: 13.14.1
Severity: normal
Hello,
supporting build-profiles like nodoc with dh_install seems to cumbersome.
If the not-always-built files were listed in debian/foo.install the
build would fail when the build profile was active (because they were
not built/available).
As second plan I tried to conditionally install them directly using
command-line arguments to dh_install like this:
override_dh_install:
ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),)
dh_install
else
dh_install -Ngnupg-l10n
dh_install -pgnupg-l10n --autodest \
'usr/share/gnupg/help.*.txt' \
usr/share/gnupg/help.txt
endif
This also failed, since for a --build=any build debhelper decides that
"dh_install -pgnupg-l10n ..." is a noop and does not add the files to
debian/.debhelper/generated/gnupg-l10n/installed-by-dh_install, in turn
causing a build-error by dh_missing.
The third plan was to make evaluation of debian/gnupg-l10n.install dynamic
by using substitutions. I tried these in the install files
* ${env:LISTOFSTUFF} (with LISTOFSTUFF being set to a file or directory or
an empty string (nodoc-case)
* "${env:DISABLE}usr/share/foo" and setting DISABLE='# ' for the nodoc
case.
Neither of these worked, comment and empty-line processing seems to be
disabled for expanded stuff.
The whole thing was a little bit frustrating by being too complicated
and I think that plan #3 should have worked according to the docs. Which
is why this bug-report is about this case.
cu Andreas
PS: I ended up using an executable debian/gnupg-l10n.install, which
works, but I' d rather keep all nodoc processing in one place in
debian/rules.