Your message dated Mon, 12 Sep 2011 03:02:31 +0000
with message-id <[email protected]>
and subject line Bug#640965: fixed in debhelper 8.9.7
has caused the Debian Bug report #640965,
regarding difficulty writing install-arch/indep targets with dh
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
640965: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=640965
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: debhelper
Version: 8.9.7
Severity: normal
dh's improved support for running build-arch/build-indep is good from a
least surprise POV, but it's not clear writing such targets is necessarily
the best way to handle a arch/indep source build. The problem lies not
with build, but with install.
%:
dh $@
build-indep:
make -C doc
install-arch:
dh $@
dh_auto_install
install-indep:
dh $@
make -C doc install DESTDIR=$(CURDIR)/debian/install
override_dh_auto_install:
The above is broken, because it does the actual installation
only after dh has run dh_install*, dh_fixperms, etc.
But, dh has to come first in the install-* targets, in order for the
build targets to be run first. Otherwise, the install-* targets would
need to explicitly depend on them.
%:
dh $@
build-indep:
make -C doc
install-arch: build-arch
dh_auto_install
dh $@
install-indep: build-indep
make -C doc install DESTDIR=$(CURDIR)/debian/install
dh $@
override_dh_auto_install:
Well, that works, but it's back to explicit targets. The need to
override dh_auto_install into a no-op, so that "make install"
isn't run in install-indep, and then explicitly run it in install-arch,
is also ugly and not an obvious solution.
So split install-arch/indep targets seems to only bring complexity.
An alternate way is to keep the explicit build target(s), and make
the override check what's being installed:
%:
dh $@
build-indep:
make -C doc
override_dh_auto_install:
ifneq (,$(shell dh_listpackages -a 2>/dev/null))
dh_auto_install
endif
ifneq (,$(shell dh_listpackages -i 2>/dev/null))
make -C doc install DESTDIR=$(CURDIR)/debian/install
endif
I've considered before adding a dh_do command, which allows some
simplification:
override_dh_auto_install:
dh_do -a -- dh_auto_install
dh_do -i -- make -C doc install DESTDIR=$(CURDIR)/debian/install
Or, override targets could get -arch and -indep variants:
override_dh_auto_install-indep:
make -C doc install DESTDIR=$(CURDIR)/debian/install
This seems better than dh_do, since the -arch case can be left implicit
when it just needs to run dh_auto_install.
They could be used for building too, instead of specifying
the traditional build-arch/indep targets.
%:
dh $@
override_dh_auto_configure-indep:
# nothing to do
override_dh_auto_build-indep:
make -C doc
override_dh_auto_test-indep:
# nothing to do
override_dh_auto_install-indep:
make -C doc install DESTDIR=$(CURDIR)/debian/install/
override_dh_fixperms-arch:
dh_fixperms
chmod +s usr/sbin/food
While this is a more consistent style, that nicely continues through to
other arch/indep tweaks like fixperms, the need to no-op configure and
test suggests a build-indep target might be better, even if
install-indep/arch arn't.
--
see shy jo
signature.asc
Description: Digital signature
--- End Message ---
--- Begin Message ---
Source: debhelper
Source-Version: 8.9.7
We believe that the bug you reported is fixed in the latest version of
debhelper, which is due to be installed in the Debian FTP archive:
debhelper_8.9.7.dsc
to main/d/debhelper/debhelper_8.9.7.dsc
debhelper_8.9.7.tar.gz
to main/d/debhelper/debhelper_8.9.7.tar.gz
debhelper_8.9.7_all.deb
to main/d/debhelper/debhelper_8.9.7_all.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Joey Hess <[email protected]> (supplier of updated debhelper package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Sun, 11 Sep 2011 20:29:22 -0400
Source: debhelper
Binary: debhelper
Architecture: source all
Version: 8.9.7
Distribution: unstable
Urgency: low
Maintainer: Joey Hess <[email protected]>
Changed-By: Joey Hess <[email protected]>
Description:
debhelper - helper programs for debian/rules
Closes: 639341 640586 640965
Changes:
debhelper (8.9.7) unstable; urgency=low
.
* dh: Now you can use override_dh_command-arch and override_dh_command-indep
to run different overrides when building arch and indep packages. This
allows for a much simplified form of rules file in this situation, where
build-arch/indep and binary-arch/indep targets do not need to be manually
specified. See man page for examples. Closes: #640965
.
Note that if a rules file has say, override_dh_fixperms-arch,
but no corresponding override_dh_fixperms-indep, then the unoverridden
dh_fixperms will be run on the indep packages.
.
Note that the old override_dh_command takes precidence over the new
overrides, because mixing the two types of overrides would have been
too complicated. In particular, it's difficult to ensure an
old override target will work if it's sometimes constrained to only
acting on half the packages it would normally run on. This would be
a source of subtle bugs, so is avoided.
* dh: Don't bother running dh_shlibdebs, dh_makeshlibs, or dh_strip
in the binary target when all packages being acted on are indep.
* dh: Avoid running install sequence a third time in v9 when the
rules file has explicit binary-indep and binary-arch targets.
Closes: #639341 Thanks, Yann Dirson for test case.
* debhelper no longer build-depends on man-db or file, to ease bootstrapping.
* Remove obsolete versioned dependency on perl-base.
* Avoid writing debhelper log files in no-act mode. Closes: #640586
* Tighten parsing of DEB_BUILD_OPTIONS.
Checksums-Sha1:
15aa173f8567519a517e342d98c58e876d63cb15 1512 debhelper_8.9.7.dsc
81005b29ba61cbebfe81fd4905a74a86d2c5fc54 381733 debhelper_8.9.7.tar.gz
a540ed7f22c6ae042eb188f4c2b65305a8c7b501 552280 debhelper_8.9.7_all.deb
Checksums-Sha256:
b7066a190cbf2d414356230e38632145578c25c81ab19d2cddb5d3b998798fd1 1512
debhelper_8.9.7.dsc
0658869fa8fc7425e44b487e5f20c8e501c945b0ce5ae086ee03e8bbb3275028 381733
debhelper_8.9.7.tar.gz
a19a1cd140381afd3053754b4912d68923ccbfc6f7770e371fd1015fb8a91cfe 552280
debhelper_8.9.7_all.deb
Files:
bc844c4c36a22dc1f86795272d18a61c 1512 devel optional debhelper_8.9.7.dsc
2fdba95f55b234a1cc9f5581d6b990e2 381733 devel optional debhelper_8.9.7.tar.gz
6a8143523ffee3bac7fb1c583fb4fed4 552280 devel optional debhelper_8.9.7_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQIVAwUBTm1lNckQ2SIlEuPHAQjaBQ/+Nd6q/q/6MnBbWFzwINskC30pZ1xD8uwD
mElFcsj9eHAXdjrmU25UwSZgnDZ5uExsnAJlip4yhIBN25o6LfUEcUzY+rg2VOOo
5wrreMHaxaqdY8nPtrDjsnnJbyRQVI9ANA2xcMW8q9K+vT5gCpYF/U3+QQLpwnNG
Wr87lo/IcRRhufjt6lF+MGfwF4xRes8bhg733PeQrhOTRNsVrjtd5E0FKyVBe/U/
de/wfU/4pmtXVLZBnvGMuMV6iirzBCJ9Uv4/6K9U1Vh7PkB5L6wGe7es78M145rl
Y98l3evcaJW7KEGY36Q94E61Vrr1Li5Of5AzrZDoM8J+G+UnVIpHuPdReQZTZfKk
8P2A0AigV85sjfPbn6WiWjVhPO9R+iTYxtV6J5FQgoj4pF6Rzmhsw3ultL5ysI6n
zV62ymoL0kypuDmwAltOiUMfTDcPEH0zJ3WZCNSAysqFo18gpbOSXWYIgQQJ/bA5
h6fc4DWI7Zbe6Td0oic8u3vr7wq7abgcgXcH2YkOxoKG3V9cxcXQ3Q/3EZVUZqyu
Csq09CAZUAiwVFE1pI8PS1rbWE4JXA16L2Bzq481CqG5iS7SCJDqWhVjp8FxdEu7
FmzdPluCXBQoBLYa9Wn403gg5Bh0ZJRDggL3qr8KpSaXXc6VAbdTTCNc6hxL06qz
bOtJeJkeNdU=
=d9Hq
-----END PGP SIGNATURE-----
--- End Message ---