By default, all debhelper programs assume that the temporary directory used
for assembling the tree of files in a package is debian/tmp for the first
package listed in debian/control, and debian/<packagename> for each
-additional package.
+additional package. If DH_COMPAT=2, debian/<packagename> is always used,
+even for the first package.
.P
Sometimes, you might want to use some other temporary directory. This is
supported by the
.B Other notes
In general, if any debhelper program needs a directory to exist under
debian/, it will create it. I haven't bothered to document this in all the
-man pages, but for example, dh_installdeb knows to make debian/tmp/DEBIAN/
+man pages, but for example, dh_installdeb knows to make debian/<foo>/DEBIAN/
before trying to put files there, dh_installmenu knows you need a
-debian/tmp/usr/lib/menu/ before installing the menu files, etc.
+debian/<foo>/usr/lib/menu/ before installing the menu files, etc.
.SH "DEBHELPER COMMANDS"
Here is the complete list of available debhelper commands.
#LIST#
+debhelper (2.0.00) unstable; urgency=low
+
+ * Don't let the version number fool you. Debhelper v2 is here, but just
+ barely. That's what all the zero's mean. :-)
+ * If DH_COMPAT=2, then debian/<package> will be used for the temporary
+ build directory for all packages. debian/tmp is no more! (Well, except
+ dh_movefiles still uses it.)
+ * debhelper.1: documented this.
+ * Dh_lib.pm: added compat(), pass in a number, it returns true if the
+ current compatability level is equal to that number.
+ * doc/PROGRAMMING: documented that.
+ * debhelper itself now builds using DH_COMPAT=2.
+ * dh_debstd forces DH_COMPAT=1, because it needs to stay compatable with
+ debstd after all.
+
+ -- Joey Hess <joeyh@master.debian.org> Thu, 1 Jul 1999 13:37:58 -0700
+
debhelper (1.9.00) unstable; urgency=low
* This is a release of debhelper in preparation for debhelper v2.
# be sure to use the new templates from this package.
export DH_AUTOSCRIPTDIR=autoscripts
+# Living dangerously :-)
+export DH_COMPAT=2
+
# Figure out the current debhelper version.
VERSION=$(shell expr "`dpkg-parsechangelog 2>/dev/null |grep Version:`" : '.*Version: \(.*\)')
test:
./dh_clean
- perl -MTest::Harness -e 'runtests @ARGV' t/*
- -rm -rf debian/tmp
+ DH_VERSION=10 perl -MTest::Harness -e 'runtests @ARGV' t/*
+ ./dh_clean
# Build architecture-dependent files here.
binary-arch: build
./dh_clean -k
./dh_installdirs usr/bin usr/lib/debhelper
- echo -e "package Dh_Version;\n\$$version='$(VERSION)';" > debian/tmp/usr/lib/debhelper/Dh_Version.pm
+ echo -e "package Dh_Version;\n\$$version='$(VERSION)';" > debian/debhelper/usr/lib/debhelper/Dh_Version.pm
find . -perm +111 -maxdepth 1 -type f -not -name "*.pl" \
- -exec install -p {} debian/tmp/usr/bin \;
- cp -a Dh_*.pm debian/tmp/usr/lib/debhelper
- cp -a autoscripts debian/tmp/usr/lib/debhelper
+ -exec install -p {} debian/debhelper/usr/bin \;
+ cp -a Dh_*.pm debian/debhelper/usr/lib/debhelper
+ cp -a autoscripts debian/debhelper/usr/lib/debhelper
./dh_installdocs doc/TODO doc/README doc/PROGRAMMING doc/from-debstd
./dh_installexamples examples/*
open (OUT,">$$f"); \
print OUT @lines; \
close OUT; \
- }' debian/tmp/usr/man/man1/*.1
+ }' debian/debhelper/usr/man/man1/*.1
# Fix up the debhelper.1 man page, substituting in a list of all
# debhelper commands. eek!
perl -ne ' \
$$collect.=".TP\n.BR $$_" if $$. eq 3 && /^dh_/; \
close(ARGV) if eof; \
END { \
- open(I,"debian/tmp/usr/man/man1/debhelper.1"); \
+ open(I,"debian/debhelper/usr/man/man1/debhelper.1"); \
@lines=<I>; \
close I; \
- open(O,">debian/tmp/usr/man/man1/debhelper.1"); \
+ open(O,">debian/debhelper/usr/man/man1/debhelper.1"); \
foreach (@lines) { \
s/#LIST#/$$collect/; \
print O; \
close O; \
}' *.1
./dh_installchangelogs
- ./dh_movefiles
+# ./dh_movefiles
./dh_link
./dh_compress
./dh_fixperms
# This has been gutted and extensively rewritten to function as a debhelper
# command by Joey Hess. And then completly rewritten in perl.
+# Need to stay compatable with debstd, so force use of level 1.
+$ENV{DH_COMAPT}=1;
+
# Pre-parse command line before we load Dh_lib, becuase we use a
# different style of arguments.
@argv=();
Items marked with a + are done. All others will happen as soon as I can code
them.
-* Standardize on the name used for the temporary build directory of a
++ Standardize on the name used for the temporary build directory of a
package. Currently it's debian/tmp/ for the first package and
debian/<package>/ for other packages of a multi-binary package. I've
decided after much agonizing to to use debian/<package>. The main thing this
# It used to not make absolute links in this situation, and it should.
# #37774
system("./dh_link","etc/foo","usr/lib/bar");
-ok("/etc/foo",readlink("debian/tmp/usr/lib/bar"));
+ok("/etc/foo",readlink("debian/debhelper/usr/lib/bar"));
# let's make sure it makes simple relative links ok.
system("./dh_link","usr/bin/foo","usr/bin/bar");
-ok("foo",readlink("debian/tmp/usr/bin/bar"));
+ok("foo",readlink("debian/debhelper/usr/bin/bar"));
# ok, more complex relative links.
system("./dh_link","usr/lib/1","usr/bin/2");
-ok("../lib/1",readlink("debian/tmp/usr/bin/2"));
+ok("../lib/1",readlink("debian/debhelper/usr/bin/2"));
# this was bug #40159. Absolute links passes to dh_link.
system("./dh_link","/etc/X11/dfm/system.dfmext","usr/share/dfm/dfmext");
-ok("/etc/X11/dfm/system.dfmext",readlink("debian/tmp/usr/share/dfm/dfmext"));
+ok("/etc/X11/dfm/system.dfmext",readlink("debian/debhelper/usr/share/dfm/dfmext"));