diff options
-rw-r--r-- | debian/changelog | 13 | ||||
-rwxr-xr-x | dh_installdocs | 5 | ||||
-rw-r--r-- | doc/README | 20 |
3 files changed, 35 insertions, 3 deletions
diff --git a/debian/changelog b/debian/changelog index 5983a098..dc972ae7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,16 @@ +debhelper (2.0.87) unstable; urgency=low + + * README: Documented what you should do if you want to make a package that + depends on another package, use the other package's doc dir as its own, + with a symlink. Closes: #53381 + + ** TODO ** this fix is not good enough, the /usr/doc symlink needs to + be handled in the postinst, not appear in the .deb, to comply with + policy. + + + -- Joey Hess <joeyh@debian.org> Sat, 15 Jan 2000 01:31:40 -0800 + debhelper (2.0.86) unstable; urgency=low * dh_testroot: don't call init(), so it may be run even if it's not in the diff --git a/dh_installdocs b/dh_installdocs index 9e43ea8d..86b6f200 100755 --- a/dh_installdocs +++ b/dh_installdocs @@ -13,9 +13,8 @@ foreach $PACKAGE (@{$dh{DOPACKAGES}}) { $TMP=tmpdir($PACKAGE); $file=pkgfile($PACKAGE,"docs"); - # If this is a dangling symlink, leave it. The maintainer - # better know what they're doing. - if ( ! -d "$TMP/usr/share/doc/$PACKAGE" && + # If this is a symlink, leave it alone. + if ( ! -d "$TMP/usr/share/doc/$PACKAGE" && ! -l "$TMP/usr/share/doc/$PACKAGE") { doit("install","-g","root","-o","root","-d","$TMP/usr/share/doc/$PACKAGE"); } @@ -56,6 +56,26 @@ EOF system ($temp) / 256 == 0 or die "Problem with debhelper scripts: $!\n"; +Building a package that doesn't have a doc directory: +---------------------------------------------------- + +Policy says that if a package depends on some other package, and they build +from the same source, the package can make its doc directory be a symlink to +the doc directory of the package it depends on. If you want to do this with +debhelper, do the following (assumes the package is foo-doc, which depends +on foo): + +dh_link usr/share/doc/foo usr/share/doc/foo-doc \ + usr/share/doc/foo usr/doc/foo-doc +... +dh_installdocs -N foo-doc +dh_installexamples -N foo-doc +dh_installchangelogs -N foo-doc + +So the dh_link actually sets up the symlinks. Then the three debhelper commands +that normally write into doc directory are told not to act on package +foo-doc. Voila! + Other notes: ----------- |