summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog13
-rwxr-xr-xdh_installdocs5
-rw-r--r--doc/README20
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");
}
diff --git a/doc/README b/doc/README
index dcc42e61..14df20e8 100644
--- a/doc/README
+++ b/doc/README
@@ -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:
-----------