From 4a03496417f521caa06f7f4e02592aa5f0b6a390 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:21:03 +0000 Subject: r5: Initial Import --- dh_installdebfiles.1 | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'dh_installdebfiles.1') diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 1f62084a..3f639868 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -22,6 +22,16 @@ the DEBIAN directory: prefix these filenames with then name of the "package.", for example, "foo.postinst".) .P +The files postinst, preinst, postrm, and prerm are handled specially: If a +corresponding file named debian/script.debhelper exists, the contents of that +file are merged into the script as follows: If the script exists, then +anywhere in it that "#DEBHELPER#" appears, the text of the .debhelper file is +inserted. If the script does not exist, then a script is generated from the +.debhelper file. The .debhelper files are created by other debhelper programs, +such as +.BR dh_installmenu (1) +, and are shell scripts. +.P In addition, it will generate a DEBIAN/control file, by running .BR dpkg-shlibdeps (1) and -- cgit v1.2.3 From 93a4b4298d7ec022216f403674583dd04b7f4f5e Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:24:34 +0000 Subject: r8: Initial Import --- TODO | 2 +- debian/changelog | 7 +++++++ dh_fixperms.1 | 2 +- dh_installcron | 20 ++++++++++++++++++++ dh_installcron.1 | 44 ++++++++++++++++++++++++++++++++++++++++++++ dh_installdebfiles | 2 +- dh_installdebfiles.1 | 2 +- dh_installmanpages.1 | 2 +- dh_installmenu.1 | 2 +- dh_strip | 30 ++++++++++++++++++++++++++++++ dh_testdir.1 | 2 +- dh_testroot.1 | 2 +- examples/rules | 1 + examples/rules.multi | 1 + 14 files changed, 111 insertions(+), 8 deletions(-) create mode 100755 dh_installcron create mode 100644 dh_installcron.1 create mode 100755 dh_strip (limited to 'dh_installdebfiles.1') diff --git a/TODO b/TODO index 078a1d4e..8bf234fd 100644 --- a/TODO +++ b/TODO @@ -1,4 +1,4 @@ .so files of compressed manpages change to symlinks -edit package scripts (??) add all other functionality of debstd (??) dh_fixperms: allow listing of files not to be touched (diffucult). +add suidregister support diff --git a/debian/changelog b/debian/changelog index f9041021..27594de9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +debhelper (0.4) unstable; urgency=low + + * Added dh_strip to strip binaries and libraries. + * Fixed several man pages. + + -- Joey Hess Sun, 28 Sep 1997 20:46:32 -0400 + debhelper (0.3) unstable; urgency=low * Added support for automatic generation of debian install scripts to diff --git a/dh_fixperms.1 b/dh_fixperms.1 index 6722bd11..b5cb4e13 100644 --- a/dh_fixperms.1 +++ b/dh_fixperms.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_FIXPERMS 1 .SH NAME dh_fixperms \- fix permissions of files in package build directories .SH SYNOPSIS diff --git a/dh_installcron b/dh_installcron new file mode 100755 index 00000000..7db8cdc6 --- /dev/null +++ b/dh_installcron @@ -0,0 +1,20 @@ +#!/bin/sh -e +# +# Install cron scripts into the appropriate places. + +PATH=debian:$PATH:/usr/lib/debhelper +source dh_lib + +for PACKAGE in $DH_DOPACKAGES; do + TMP=`tmpdir $PACKAGE` + EXT=`pkgext $PACKAGE` + + for type in daily weekly monthly; do + if [ -e debian/${EXT}cron.$type ]; then + if [ ! -d debian/$TMP/etc/cron.$type ]; then + doit "install -o root -g root -d debian/$TMP/etc/cron.$type" + fi + doit "install debian/${EXT}cron.$type debian/$TMP/etc/cron.$type/$PACKAGE" + fi + done +done diff --git a/dh_installcron.1 b/dh_installcron.1 new file mode 100644 index 00000000..2819958b --- /dev/null +++ b/dh_installcron.1 @@ -0,0 +1,44 @@ +.TH DH_INSTALLCRON 1 +.SH NAME +dh_installcron \- install cron scripts into etc/cron.* +.SH SYNOPSIS +.B dh_installcron +.I "[-v] [-a] [-i] [-ppackage]" +.SH "DESCRIPTION" +dh_installcron is a debhelper program that is responsible for installing +cron scripts into etc/cron.* in package build directories. The files +debian/cron.daily, debian/cron.weekly, and debian/cron.monthly are +installed. If your package generates multiple binary packages, you can also +use filenames like debian/package.cron.daily, where "package" is replaced +with the name of the binary package this cron script goes into. +.SH OPTIONS +.TP +.B \-v +Verbose mode; show all commands that modify the package build directory. +.TP +.B \-a +Install cron files for all architecture dependent packages. +.TP +.B \-i +Install cron files for all architecture independent packages. +.TP +.B \-ppackage +Install cron files for the package named "package". +.SH NOTES +The +.B \-a +.B \-i +and +.B \-p +arguments are cumulative. If none are specified, then all packages listed in +the control file will be effected. +.SH ENVIRONMENT +.TP +.I DH_VERBOSE +Enables verbose mode +.SH "SEE ALSO" +.BR /usr/doc/debhelper/README +.SH "CONFORMS TO" +Debian policy, version 2.3.0.0 +.SH AUTHOR +Joey Hess diff --git a/dh_installdebfiles b/dh_installdebfiles index a09cd128..37c63089 100755 --- a/dh_installdebfiles +++ b/dh_installdebfiles @@ -50,7 +50,7 @@ for PACKAGE in $DH_DOPACKAGES; do # Run dpkg-shlibdeps to generate dependancies. filelist="" - for file in `find debian/$TMP -type f \( -perm +111 \) -or -name "*.so.*" | tr "\n" " "` ; do + for file in `find debian/$TMP -type f \( -perm +111 -or -name "*.so*" \) | tr "\n" " "` ; do case "`file $file`" in *ELF*) filelist="$file $filelist" diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 3f639868..3a7e93c5 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_INSTALLDEBFILES 1 .SH NAME dh_installdebfiles \- install files into the DEBIAN directory .SH SYNOPSIS diff --git a/dh_installmanpages.1 b/dh_installmanpages.1 index 5fbad2b1..bb08181b 100644 --- a/dh_installmanpages.1 +++ b/dh_installmanpages.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_INSTALLMANPAGES 1 .SH NAME dh_installmanpages \- install man pages into package build directories .SH SYNOPSIS diff --git a/dh_installmenu.1 b/dh_installmenu.1 index f3eba625..e26c84e5 100644 --- a/dh_installmenu.1 +++ b/dh_installmenu.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_INSTALLMENU 1 .SH NAME dh_installmenu \- install debian menu files into package build directories .SH SYNOPSIS diff --git a/dh_strip b/dh_strip new file mode 100755 index 00000000..2ecdcd2c --- /dev/null +++ b/dh_strip @@ -0,0 +1,30 @@ +#!/bin/sh -e +# +# Strip files. + +PATH=debian:$PATH:/usr/lib/debhelper +source dh_lib + +for PACKAGE in $DH_DOPACKAGES; do + TMP=`tmpdir $PACKAGE` + + # Handle executables and shared libraries. + for file in `find debian/$TMP -type f \( -perm +111 -or -name "*.so*" \) 2>/dev/null` ; do + case "`file $file`" in + *ELF*shared*) + doit "strip --strip-unneeded $file" + ;; + *ELF*executable*) + doit "strip --remove-section=comment --remove-section=note $file" + ;; + esac + done + + # Handle static libraries. + for file in `find debian/$TMP -type f -name "lib*.a" 2>/dev/null` ; do + # Don't strip debug libraries. + if ! expr "$file" : ".*_g\.a" >/dev/null ; then + doit "strip --strip-debug $file" + fi + done +done diff --git a/dh_testdir.1 b/dh_testdir.1 index 569a580b..da245542 100644 --- a/dh_testdir.1 +++ b/dh_testdir.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_TESTDIR 1 .SH NAME dh_testdir \- test directory before building debian package .SH SYNOPSIS diff --git a/dh_testroot.1 b/dh_testroot.1 index f4dca2e5..78caa7e9 100644 --- a/dh_testroot.1 +++ b/dh_testroot.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_TESTROOT 1 .SH NAME dh_testroot \- ensure that a package is built as root .SH SYNOPSIS diff --git a/examples/rules b/examples/rules index b18213c3..efd4b76c 100755 --- a/examples/rules +++ b/examples/rules @@ -35,6 +35,7 @@ binary-arch: build dh_installmenu dh_installmanpages dh_installchangelogs + dh_strip dh_compress dh_installdebfiles dh_fixperms diff --git a/examples/rules.multi b/examples/rules.multi index 118737cb..b31578e6 100755 --- a/examples/rules.multi +++ b/examples/rules.multi @@ -51,6 +51,7 @@ binary-arch: build dh_installmenu -a dh_installmanpages -a dh_installchangelogs -a + dh_strip -a dh_compress -a dh_installdebfiles -a dh_fixperms -a -- cgit v1.2.3 From dd838eee7e75da018b2722f0ce4dbccd9f6d1a5d Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:24:34 +0000 Subject: r10: Initial Import --- debian/changelog | 6 ++++++ dh_installdebfiles.1 | 2 +- examples/rules | 1 + examples/rules.multi | 2 ++ 4 files changed, 10 insertions(+), 1 deletion(-) (limited to 'dh_installdebfiles.1') diff --git a/debian/changelog b/debian/changelog index 27594de9..99a22f79 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +debhelper (0.5) unstable; urgency=low + + * Added dh_installcron to install cron jobs. + + -- Joey Hess Tue, 30 Sep 1997 19:37:41 -0400 + debhelper (0.4) unstable; urgency=low * Added dh_strip to strip binaries and libraries. diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 3a7e93c5..9827656a 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -7,7 +7,7 @@ dh_installdebfiles \- install files into the DEBIAN directory .SH "DESCRIPTION" dh_installdebfiles is a debhelper program that is responsible for installing files into the DEBIAN directory in package build directories with the -correct prmissions. +correct permissions. .P dh_installdocs automatically installs the following files from debian/ into the DEBIAN directory: diff --git a/examples/rules b/examples/rules index efd4b76c..65e6878e 100755 --- a/examples/rules +++ b/examples/rules @@ -33,6 +33,7 @@ binary-arch: build dh_installdocs dh_installexamples dh_installmenu + dh_installcron dh_installmanpages dh_installchangelogs dh_strip diff --git a/examples/rules.multi b/examples/rules.multi index b31578e6..f5e82597 100755 --- a/examples/rules.multi +++ b/examples/rules.multi @@ -32,6 +32,7 @@ binary-indep: build dh_installdocs -i dh_installexamples -i dh_installmenu -i + dh_installcron -i # dh_installmanpages -i dh_installchangelogs -i dh_compress -i @@ -49,6 +50,7 @@ binary-arch: build dh_installdocs -a dh_installexamples -a dh_installmenu -a + dh_installcron -a dh_installmanpages -a dh_installchangelogs -a dh_strip -a -- cgit v1.2.3 From be3ec728c4139e5b550bcd3e8fa352f95d581891 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:36:18 +0000 Subject: r14: Initial Import --- TODO | 3 +-- debian/changelog | 7 +++++++ debian/rules | 3 ++- dh_clean | 7 +++---- dh_installdebfiles.1 | 6 +++--- dh_md5sums | 4 ++-- examples/rules | 1 + examples/rules.multi | 2 ++ 8 files changed, 21 insertions(+), 12 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/TODO b/TODO index 8bf234fd..07796f92 100644 --- a/TODO +++ b/TODO @@ -1,4 +1,3 @@ -.so files of compressed manpages change to symlinks +.so files of compressed manpages -- change to symlinks add all other functionality of debstd (??) dh_fixperms: allow listing of files not to be touched (diffucult). -add suidregister support diff --git a/debian/changelog b/debian/changelog index e865dc67..c06f0be1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +debhelper (0.8) unstable; urgency=low + + * Added dh_md5sum, generates a md5sums file. + * dh_clean: fixed to echo all commands when verbose mode is on. + + -- Joey Hess Fri, 17 Oct 1997 14:18:26 -0400 + debhelper (0.7) unstable; urgency=low * Sped up some things by removing unnecesary for loops. diff --git a/debian/rules b/debian/rules index 55fd8e98..8b635e7b 100755 --- a/debian/rules +++ b/debian/rules @@ -42,8 +42,9 @@ binary-indep: build ./dh_installmanpages ./dh_installchangelogs ./dh_compress - ./dh_installdebfiles ./dh_fixperms + ./dh_suidregister + ./dh_installdebfiles ./dh_md5sums ./dh_builddeb diff --git a/dh_clean b/dh_clean index 964eec3d..76522dda 100755 --- a/dh_clean +++ b/dh_clean @@ -14,8 +14,7 @@ for PACKAGE in $DH_DOPACKAGES; do done doit "rm -f debian/files* debian/*.debhelper $*" -# Remove other temp files. I don't run this through doit becuase -# I haven't figured out what I have to esacape to put it in quotes. -# However, it doesn't modify debian/$TMP, so I guess it's ok to not run it -# through doit. +# Remove other temp files. doit isn't smart enough to handle this, so I echo +# by hand (sigh). +verbose_echo "find . \( -name "\#*\#" -o -name "*~" -o -name "DEADJOE" \) -exec rm -f {} \;" find . \( -name "\#*\#" -o -name "*~" -o -name "DEADJOE" \) -exec rm -f {} \; diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 9827656a..924e04b4 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -26,9 +26,9 @@ The files postinst, preinst, postrm, and prerm are handled specially: If a corresponding file named debian/script.debhelper exists, the contents of that file are merged into the script as follows: If the script exists, then anywhere in it that "#DEBHELPER#" appears, the text of the .debhelper file is -inserted. If the script does not exist, then a script is generated from the -.debhelper file. The .debhelper files are created by other debhelper programs, -such as +inserted. If the script does not exist, then a script is generated from +the .debhelper file. The .debhelper files are created by other debhelper +programs, such as .BR dh_installmenu (1) , and are shell scripts. .P diff --git a/dh_md5sums b/dh_md5sums index 634e2fd6..8b37bc29 100755 --- a/dh_md5sums +++ b/dh_md5sums @@ -1,7 +1,7 @@ #!/bin/sh -e # -# Generate a DEBIAN/md5sums file, that lists the md5sums of all -# non-conffiles in the package +# Generate a DEBIAN/md5sums file, that lists the md5sums of all files in the +# package. PATH=debian:$PATH:/usr/lib/debhelper . dh_lib diff --git a/examples/rules b/examples/rules index 961ab459..4b4d69d3 100755 --- a/examples/rules +++ b/examples/rules @@ -41,6 +41,7 @@ binary-arch: build dh_compress dh_fixperms dh_installdebfiles + dh_m5dsums dh_builddeb binary: binary-indep binary-arch diff --git a/examples/rules.multi b/examples/rules.multi index fd9bf5de..15ed5a4b 100755 --- a/examples/rules.multi +++ b/examples/rules.multi @@ -39,6 +39,7 @@ binary-indep: build dh_compress -i dh_fixperms -i dh_installdebfiles -i + dh_md5sums -i dh_builddeb -i # Build architecture-dependent files here. @@ -59,6 +60,7 @@ binary-arch: build dh_compress -a dh_fixperms -a dh_installdebfiles -a + dh_md5sums -a dh_builddeb -a binary: binary-indep binary-arch -- cgit v1.2.3 From 0c4875b3fecb5b376257e248b129537dd148e0c4 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:37:02 +0000 Subject: r21: Initial Import --- README | 23 +++++++++++++++++++++++ debian/changelog | 9 +++++++++ dh_builddeb | 2 +- dh_builddeb.1 | 5 ++++- dh_clean | 4 ++-- dh_clean.1 | 5 ++++- dh_compress | 4 ++-- dh_compress.1 | 5 ++++- dh_du | 8 ++++---- dh_du.1 | 5 ++++- dh_fixperms | 12 ++++++------ dh_fixperms.1 | 5 ++++- dh_installchangelogs | 8 ++++---- dh_installchangelogs.1 | 5 ++++- dh_installcron | 6 +++--- dh_installcron.1 | 5 ++++- dh_installdebfiles | 34 +++++++++++++++++----------------- dh_installdebfiles.1 | 5 ++++- dh_installdocs | 16 ++++++++-------- dh_installdocs.1 | 5 ++++- dh_installexamples | 6 +++--- dh_installexamples.1 | 5 ++++- dh_installmanpages | 12 ++++++------ dh_installmanpages.1 | 5 ++++- dh_installmenu | 16 ++++++++-------- dh_installmenu.1 | 5 ++++- dh_lib | 25 +++++++++++++++++++------ dh_makeshlibs | 18 +++++++++--------- dh_makeshlibs.1 | 5 ++++- dh_md5sums | 24 ++++++++++++------------ dh_md5sums.1 | 5 ++++- dh_strip | 4 ++-- dh_strip.1 | 5 ++++- dh_suidregister | 6 +++--- dh_suidregister.1 | 5 ++++- dh_undocumented | 6 +++--- dh_undocumented.1 | 5 ++++- 37 files changed, 212 insertions(+), 116 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/README b/README index d84add45..2f2e7c2c 100644 --- a/README +++ b/README @@ -102,4 +102,27 @@ effecting all packages. See examples/rules.multi for an example of how to use this. + +Package build directories -- debian/tmp, etc: +-------------------------------------------- + +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/ for each +additional package. + +Sometimes, you might want to use some other temporary directory. This is +supported by the -P flag. The direcotry to use is specified after -P, for +example, "dh_installdocs -Pdebian/tmp", will use debian/tmp as the temporary +directory. Note that if you use -P, the debhelper programs can only be +acting on a single package at a time. So if you have a package that builds +many binary packages, you will need to use the -p flag to specify which +binary package the debhelper program will act on. For example: + + dh_installdocs -pfoolib1 -Pdebian/tmp-foolib1 + dh_installdocs -pfoolib1-dev -Pdebian/tmp-foolib1-dev + dh_installdocs -pfoolib-bin -Pdebian/tmp-foolib-bin + +This uses debian/tmp- as the package build directory. + -- Joey Hess diff --git a/debian/changelog b/debian/changelog index a33224d9..f7d47b17 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +debhelper (0.15) unstable; urgency=low + + * README: documented what temporary directories are used by default for + installing package files into. + * dh_*: added -P flag, to let a different package build directory be + specified. + + -- Joey Hess Thu, 6 Nov 1997 15:51:22 -0500 + debhelper (0.14) unstable; urgency=low * dh_fixperms: leave permissions on files in /usr/doc/packages/examples diff --git a/dh_builddeb b/dh_builddeb index aea8a1b1..9ddd21dc 100755 --- a/dh_builddeb +++ b/dh_builddeb @@ -7,5 +7,5 @@ PATH=debian:$PATH:/usr/lib/debhelper for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` - doit "dpkg --build debian/$TMP .." + doit "dpkg --build $TMP .." done diff --git a/dh_builddeb.1 b/dh_builddeb.1 index bfe72e72..8a51a8f4 100644 --- a/dh_builddeb.1 +++ b/dh_builddeb.1 @@ -3,7 +3,7 @@ dh_builddeb \- build debian packages .SH SYNOPSIS .B dh_builddeb -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_builddeb simply calls .BR dpkg (8) @@ -21,6 +21,9 @@ Build all architecture independent packages. .TP .B \-ppackage Build the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_clean b/dh_clean index 76522dda..874604ed 100755 --- a/dh_clean +++ b/dh_clean @@ -1,6 +1,6 @@ #!/bin/sh -e # -# Clean up debian/$TMP and other tepmorary files generated by the +# Clean up $TMP and other tepmorary files generated by the # build process. PATH=debian:$PATH:/usr/lib/debhelper @@ -9,7 +9,7 @@ PATH=debian:$PATH:/usr/lib/debhelper for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` EXT=`pkgext $PACKAGE` - doit "rm -rf debian/$TMP" + doit "rm -rf $TMP" doit "rm -f debian/${EXT}substvars" done doit "rm -f debian/files* debian/*.debhelper $*" diff --git a/dh_clean.1 b/dh_clean.1 index e387c4eb..651b5b08 100644 --- a/dh_clean.1 +++ b/dh_clean.1 @@ -3,7 +3,7 @@ dh_clean \- clean up package build directories .SH SYNOPSIS .B dh_clean -.I "[-v] [-a] [-i] [-ppackage] [file ...]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [file ...]" .SH "DESCRIPTION" dh_clean is a debhelper program that is responsible for cleaning up after a package is built. It removes the package build directories, and removes some @@ -23,6 +23,9 @@ Clean up the package build directory for all architecture independent packages. .B \-ppackage Clean up the package build directory for the package named "package". .TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. +.TP .B file ... Delete these files too. .SH NOTES diff --git a/dh_compress b/dh_compress index 347f0f5f..86ab8373 100755 --- a/dh_compress +++ b/dh_compress @@ -13,7 +13,7 @@ for PACKAGE in $DH_DOPACKAGES; do # Run the file name gatering commands from within the directory # structure that will be effected. olddir=`pwd` - cd debian/$TMP + cd $TMP if [ -f debian/${EXT}compress ]; then # The config file is a sh script that outputs the files to be compressed @@ -40,7 +40,7 @@ for PACKAGE in $DH_DOPACKAGES; do cd $olddir # Fix up symlinks that were pointing to the uncompressed files. - for file in `find debian/$TMP -type l`; do + for file in `find $TMP -type l`; do DIRECTORY=`expr $file : "\(.*\)/[^/]*"` NAME=`expr $file : ".*/\([^/]*\)"` LINKVAL=`ls -l $DIRECTORY/$NAME | awk '{ print $11;}'` diff --git a/dh_compress.1 b/dh_compress.1 index 06087b8e..d7e8dc5c 100644 --- a/dh_compress.1 +++ b/dh_compress.1 @@ -3,7 +3,7 @@ dh_compress \- compress files and fix symlinks in package build directories .SH SYNOPSIS .B dh_compress -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_compress is a debhelper program that is responsible for compressing the files in package build directories, and makes sure that any symlinks @@ -41,6 +41,9 @@ Compress files for all architecture independent packages. .TP .B \-ppackage Compress files for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_du b/dh_du index a7ec6f48..5fcb1418 100755 --- a/dh_du +++ b/dh_du @@ -9,11 +9,11 @@ PATH=debian:$PATH:/usr/lib/debhelper for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` - if [ ! -d "debian/$TMP/DEBIAN" ]; then - doit "install -d debian/$TMP/DEBIAN" + if [ ! -d "$TMP/DEBIAN" ]; then + doit "install -d $TMP/DEBIAN" fi - verbose_echo "du -k debian/$TMP | sed \"s: debian/$TMP/: :\" | grep -v \" DEBIAN$\" | grep -v \" debian/$TMP$\" > debian/$TMP/DEBIAN/du" - du -k debian/$TMP | sed "s: debian/$TMP/: :" | grep -v " DEBIAN$" | grep -v " debian/$TMP$" >debian/$TMP/DEBIAN/du + verbose_echo "du -k $TMP | sed \"s: $TMP/: :\" | grep -v \" DEBIAN$\" | grep -v \" $TMP$\" > $TMP/DEBIAN/du" + du -k $TMP | sed "s: $TMP/: :" | grep -v " DEBIAN$" | grep -v " $TMP$" >$TMP/DEBIAN/du doit "chown root.root debian/tmp/DEBIAN/du" done diff --git a/dh_du.1 b/dh_du.1 index 98a9c80a..42509a50 100644 --- a/dh_du.1 +++ b/dh_du.1 @@ -3,7 +3,7 @@ dh_du \- generate DEBIAN/du file .SH SYNOPSIS .B dh_md5sums -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_du is a debhelper program that is responsible for generating a DEBIAN/du file, which lists the disk usage of directories in the package. @@ -24,6 +24,9 @@ Generate du files for all architecture independent packages. .TP .B \-ppackage Generate du file for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_fixperms b/dh_fixperms index 1c4fef7c..0534549c 100755 --- a/dh_fixperms +++ b/dh_fixperms @@ -10,24 +10,24 @@ for PACKAGE in $DH_DOPACKAGES; do EXT=`pkgext $PACKAGE` # General things.. - if [ -d debian/$TMP ]; then - doit "chown -R root.root debian/$TMP" - doit "chmod -R go=rX debian/$TMP" + if [ -d $TMP ]; then + doit "chown -R root.root $TMP" + doit "chmod -R go=rX $TMP" fi # Fix up premissions in usr/doc, setting everything to not exectable # by default, but leave examples directories alone. - files=`find debian/$TMP/usr/doc -type f 2>/dev/null | grep -v /examples/ | tr "\n" " "` || true + files=`find $TMP/usr/doc -type f 2>/dev/null | grep -v /examples/ | tr "\n" " "` || true if [ "$files" ]; then doit "chmod 644 $files" fi - files=`find debian/$TMP/usr/doc -type d 2>/dev/null | tr "\n" " "` || true + files=`find $TMP/usr/doc -type d 2>/dev/null | tr "\n" " "` || true if [ "$files" ]; then doit "chmod 755 $files" fi # Executable man pages are a bad thing. - files=`find debian/$TMP/usr/man/ debian/$TMP/usr/X11*/man/ -type f 2>/dev/null | tr "\n" " "` || true + files=`find $TMP/usr/man/ $TMP/usr/X11*/man/ -type f 2>/dev/null | tr "\n" " "` || true if [ "$files" ]; then doit "chmod 644 $files" fi diff --git a/dh_fixperms.1 b/dh_fixperms.1 index cfba6481..8ae36def 100644 --- a/dh_fixperms.1 +++ b/dh_fixperms.1 @@ -3,7 +3,7 @@ dh_fixperms \- fix permissions of files in package build directories .SH SYNOPSIS .B dh_fixperms -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_fixperms is a debhelper program that is responsible for setting the permissions of files in package build directories to a sane state. @@ -25,6 +25,9 @@ Fix permissions for all architecture independent packages. .TP .B \-ppackage Fix permissions for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_installchangelogs b/dh_installchangelogs index 17ff7312..7405daae 100755 --- a/dh_installchangelogs +++ b/dh_installchangelogs @@ -25,12 +25,12 @@ fi for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` - if [ ! -d debian/$TMP/usr/doc/$PACKAGE ]; then - doit "install -d debian/$TMP/usr/doc/$PACKAGE" + if [ ! -d $TMP/usr/doc/$PACKAGE ]; then + doit "install -d $TMP/usr/doc/$PACKAGE" fi - doit "install -p -m644 debian/changelog debian/$TMP/usr/doc/$PACKAGE/$CHANGELOG_NAME" + doit "install -p -m644 debian/changelog $TMP/usr/doc/$PACKAGE/$CHANGELOG_NAME" if [ "$UPSTREAM" ]; then - doit "install -p -m644 $UPSTREAM debian/$TMP/usr/doc/$PACKAGE/changelog" + doit "install -p -m644 $UPSTREAM $TMP/usr/doc/$PACKAGE/changelog" fi done diff --git a/dh_installchangelogs.1 b/dh_installchangelogs.1 index 2371af17..8c42a011 100644 --- a/dh_installchangelogs.1 +++ b/dh_installchangelogs.1 @@ -3,7 +3,7 @@ dh_installchangelogs \- install changelogs into package build directories .SH SYNOPSIS .B dh_installchangelogs -.I "[-v] [-a] [-i] [-ppackage] upstream" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] upstream" .SH "DESCRIPTION" dh_installchangelogs is a debhelper program that is responsible for installing changelogs into package build directories. @@ -29,6 +29,9 @@ Install changelogs for all architecture independent packages. .TP .B \-ppackage Install changelogs for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_installcron b/dh_installcron index f5c4f8b8..6ea5daa3 100755 --- a/dh_installcron +++ b/dh_installcron @@ -11,10 +11,10 @@ for PACKAGE in $DH_DOPACKAGES; do for type in daily weekly monthly; do if [ -e debian/${EXT}cron.$type ]; then - if [ ! -d debian/$TMP/etc/cron.$type ]; then - doit "install -o root -g root -d debian/$TMP/etc/cron.$type" + if [ ! -d $TMP/etc/cron.$type ]; then + doit "install -o root -g root -d $TMP/etc/cron.$type" fi - doit "install debian/${EXT}cron.$type debian/$TMP/etc/cron.$type/$PACKAGE" + doit "install debian/${EXT}cron.$type $TMP/etc/cron.$type/$PACKAGE" fi done done diff --git a/dh_installcron.1 b/dh_installcron.1 index 2819958b..ff76760b 100644 --- a/dh_installcron.1 +++ b/dh_installcron.1 @@ -3,7 +3,7 @@ dh_installcron \- install cron scripts into etc/cron.* .SH SYNOPSIS .B dh_installcron -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_installcron is a debhelper program that is responsible for installing cron scripts into etc/cron.* in package build directories. The files @@ -24,6 +24,9 @@ Install cron files for all architecture independent packages. .TP .B \-ppackage Install cron files for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_installdebfiles b/dh_installdebfiles index 403375f4..ad08f8d3 100755 --- a/dh_installdebfiles +++ b/dh_installdebfiles @@ -10,8 +10,8 @@ for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` EXT=`pkgext $PACKAGE` - if [ ! -d debian/$TMP/DEBIAN ]; then - doit "install -o root -g root -d debian/$TMP/DEBIAN" + if [ ! -d $TMP/DEBIAN ]; then + doit "install -o root -g root -d $TMP/DEBIAN" fi # Install debian install scripts. @@ -20,23 +20,23 @@ for PACKAGE in $DH_DOPACKAGES; do if [ -f debian/$EXT$file ]; then # Add this into the script, where it has #DEBHELPER# if [ -f debian/$EXT$file.debhelper ]; then - verbose_echo "perl -pe \"s~#DEBHELPER#~qx{cat debian/$EXT$file.debhelper}~eg\" < debian/$EXT$file > debian/$TMP/DEBIAN/$file" - perl -pe "s~#DEBHELPER#~qx{cat debian/$EXT$file.debhelper}~eg" < debian/$EXT$file > debian/$TMP/DEBIAN/$file - doit "chown root.root debian/$TMP/DEBIAN/$file" - doit "chmod 755 debian/$TMP/DEBIAN/$file" + verbose_echo "perl -pe \"s~#DEBHELPER#~qx{cat debian/$EXT$file.debhelper}~eg\" < debian/$EXT$file > $TMP/DEBIAN/$file" + perl -pe "s~#DEBHELPER#~qx{cat debian/$EXT$file.debhelper}~eg" < debian/$EXT$file > $TMP/DEBIAN/$file + doit "chown root.root $TMP/DEBIAN/$file" + doit "chmod 755 $TMP/DEBIAN/$file" else - doit "install -o root -g root -p debian/$EXT$file debian/$TMP/DEBIAN/$file" + doit "install -o root -g root -p debian/$EXT$file $TMP/DEBIAN/$file" fi else # Auto-generate script header and add .debhelper # content to it. if [ -f debian/$EXT$file.debhelper ]; then - verbose_echo "echo '#!/bin/sh -e' > debian/$TMP/DEBIAN/$file" - echo '#!/bin/sh -e' > debian/$TMP/DEBIAN/$file - verbose_echo "cat debian/$EXT$file.debhelper >> debian/$TMP/DEBIAN/$file" - cat debian/$EXT$file.debhelper >> debian/$TMP/DEBIAN/$file - doit "chown root.root debian/$TMP/DEBIAN/$file" - doit "chmod 755 debian/$TMP/DEBIAN/$file" + verbose_echo "echo '#!/bin/sh -e' > $TMP/DEBIAN/$file" + echo '#!/bin/sh -e' > $TMP/DEBIAN/$file + verbose_echo "cat debian/$EXT$file.debhelper >> $TMP/DEBIAN/$file" + cat debian/$EXT$file.debhelper >> $TMP/DEBIAN/$file + doit "chown root.root $TMP/DEBIAN/$file" + doit "chmod 755 $TMP/DEBIAN/$file" fi fi done @@ -44,13 +44,13 @@ for PACKAGE in $DH_DOPACKAGES; do # Install non-executable files for file in shlibs conffiles; do if [ -f debian/$EXT$file ]; then - doit "install -o root -g root -m 644 -p debian/$EXT$file debian/$TMP/DEBIAN/$file" + doit "install -o root -g root -m 644 -p debian/$EXT$file $TMP/DEBIAN/$file" fi done # Run dpkg-shlibdeps to generate dependancies. filelist="" - for file in `find debian/$TMP -type f \( -perm +111 -or -name "*.so*" \) | tr "\n" " "` ; do + for file in `find $TMP -type f \( -perm +111 -or -name "*.so*" \) | tr "\n" " "` ; do case "`file $file`" in *ELF*) filelist="$file $filelist" @@ -62,6 +62,6 @@ for PACKAGE in $DH_DOPACKAGES; do fi # Generate and install control file. - doit "dpkg-gencontrol -p$PACKAGE -Tdebian/${EXT}substvars -Pdebian/$TMP" - doit "chown root.root debian/$TMP/DEBIAN/control" + doit "dpkg-gencontrol -p$PACKAGE -Tdebian/${EXT}substvars -P$TMP" + doit "chown root.root $TMP/DEBIAN/control" done diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 924e04b4..429481f4 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -3,7 +3,7 @@ dh_installdebfiles \- install files into the DEBIAN directory .SH SYNOPSIS .B dh_installdebfils -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_installdebfiles is a debhelper program that is responsible for installing files into the DEBIAN directory in package build directories with the @@ -49,6 +49,9 @@ Install files for all architecture independent packages. .TP .B \-ppackage Install files for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_installdocs b/dh_installdocs index 3859d34b..bcc26342 100755 --- a/dh_installdocs +++ b/dh_installdocs @@ -10,8 +10,8 @@ for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` EXT=`pkgext $PACKAGE` - if [ ! -d debian/$TMP/usr/doc/$PACKAGE ]; then - doit "install -d debian/$TMP/usr/doc/$PACKAGE" + if [ ! -d $TMP/usr/doc/$PACKAGE ]; then + doit "install -d $TMP/usr/doc/$PACKAGE" fi docs="" @@ -25,27 +25,27 @@ for PACKAGE in $DH_DOPACKAGES; do fi if [ "$docs" ]; then - doit "cp -a $docs debian/$TMP/usr/doc/$PACKAGE/" + doit "cp -a $docs $TMP/usr/doc/$PACKAGE/" fi # Install these files only into the main package by default. if [ "$PACKAGE" = "$MAINPACKAGE" ]; then if [ -f debian/README.debian ]; then - doit "install -m 644 -p debian/README.debian debian/$TMP/usr/doc/$PACKAGE/" + doit "install -m 644 -p debian/README.debian $TMP/usr/doc/$PACKAGE/" fi if [ -f debian/README.Debian ]; then - doit "install -m 644 -p debian/README.Debian debian/$TMP/usr/doc/$PACKAGE/" + doit "install -m 644 -p debian/README.Debian $TMP/usr/doc/$PACKAGE/" fi if [ -f debian/TODO ]; then if [ "$NATIVE" ]; then - doit "install -m 655 -p debian/TODO debian/$TMP/usr/doc/$PACKAGE/TODO" + doit "install -m 655 -p debian/TODO $TMP/usr/doc/$PACKAGE/TODO" else - doit "install -m 644 -p debian/TODO debian/$TMP/usr/doc/$PACKAGE/TODO.Debian" + doit "install -m 644 -p debian/TODO $TMP/usr/doc/$PACKAGE/TODO.Debian" fi fi fi if [ -f debian/copyright ]; then - doit "install -m 644 -p debian/copyright debian/$TMP/usr/doc/$PACKAGE/" + doit "install -m 644 -p debian/copyright $TMP/usr/doc/$PACKAGE/" fi done diff --git a/dh_installdocs.1 b/dh_installdocs.1 index 4b5f068e..fc001130 100644 --- a/dh_installdocs.1 +++ b/dh_installdocs.1 @@ -3,7 +3,7 @@ dh_installdocs \- install documentation into package build directories .SH SYNOPSIS .B dh_installdocs -.I "[-v] [-a] [-i] [-ppackage] [file ...]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [file ...]" .SH "DESCRIPTION" dh_installdocs is a debhelper program that is responsible for installing documentation into usr/doc/package in package build directories. @@ -35,6 +35,9 @@ Install files for all architecture independent packages. .B \-ppackage Install files for the package named "package". .TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. +.TP .B file ... Install these files as documentation into the first binary package listed in debian/control, if we are acting on that package. diff --git a/dh_installexamples b/dh_installexamples index 61ceae20..bc16991a 100755 --- a/dh_installexamples +++ b/dh_installexamples @@ -21,10 +21,10 @@ for PACKAGE in $DH_DOPACKAGES; do fi if [ "$examples" ]; then - if [ ! -d debian/$TMP/usr/doc/$PACKAGE/examples ]; then - doit "install -d debian/$TMP/usr/doc/$PACKAGE/examples" + if [ ! -d $TMP/usr/doc/$PACKAGE/examples ]; then + doit "install -d $TMP/usr/doc/$PACKAGE/examples" fi - doit "cp -a $examples debian/$TMP/usr/doc/$PACKAGE/examples/" + doit "cp -a $examples $TMP/usr/doc/$PACKAGE/examples/" fi done diff --git a/dh_installexamples.1 b/dh_installexamples.1 index e7ad6c62..5c8ce8c0 100644 --- a/dh_installexamples.1 +++ b/dh_installexamples.1 @@ -3,7 +3,7 @@ dh_installexamples \- install example files into package build directories .SH SYNOPSIS .B dh_installexamples -.I "[-v] [-a] [-i] [-ppackage] [file ...]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [file ...]" .SH "DESCRIPTION" dh_installexamples is a debhelper program that is responsible for installing examples into usr/doc/package/examples in package build directories. @@ -29,6 +29,9 @@ Install files for all architecture independent packages. .B \-ppackage Install files for the package named "package". .TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. +.TP .B file ... Install these files as documentation into the first binary package listed in debian/control, if we are acting on that package. diff --git a/dh_installmanpages b/dh_installmanpages index 304c3b12..4a0ffb47 100755 --- a/dh_installmanpages +++ b/dh_installmanpages @@ -13,7 +13,7 @@ for PACKAGE in $DH_DOPACKAGES; do # Find all filenames that look like man pages. # .ex files are examples installed by deb-make, we don't want those, or # .in files, which are from configure. - for file in `find * -name "*.[1-9]*" ! -name "*.ex" ! -name "*.in" | grep -v ^debian/$TMP`; do + for file in `find * -name "*.[1-9]*" ! -name "*.ex" ! -name "*.in" | grep -v ^$TMP`; do # Make sure file thinks they are man pages. if file $file|grep -q roff; then if echo $file|grep -q /; then @@ -32,12 +32,12 @@ for PACKAGE in $DH_DOPACKAGES; do done if [ "$install" ]; then SECTION=man`expr $NAME : '.*\.\([123456789]\)'` - if [ ! -e debian/$TMP/usr/man/$SECTION/$NAME -a \ - ! -e debian/$TMP/usr/X11*/man/$SECTION/$NAME ]; then - if [ ! -d debian/$TMP/usr/man/$SECTION ]; then - doit "install -d debian/$TMP/usr/man/$SECTION" + if [ ! -e $TMP/usr/man/$SECTION/$NAME -a \ + ! -e $TMP/usr/X11*/man/$SECTION/$NAME ]; then + if [ ! -d $TMP/usr/man/$SECTION ]; then + doit "install -d $TMP/usr/man/$SECTION" fi - doit "install -p -m644 $file debian/$TMP/usr/man/$SECTION/$NAME" + doit "install -p -m644 $file $TMP/usr/man/$SECTION/$NAME" fi fi fi diff --git a/dh_installmanpages.1 b/dh_installmanpages.1 index bb08181b..06794044 100644 --- a/dh_installmanpages.1 +++ b/dh_installmanpages.1 @@ -3,7 +3,7 @@ dh_installmanpages \- install man pages into package build directories .SH SYNOPSIS .B dh_installmanpages -.I "[-v] [-a] [-i] [-ppackage] [file ...]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [file ...]" .SH "DESCRIPTION" dh_installmanpages is a debhelper program that is responsible for automatically installing man pages into usr/man/ and usr/X11R6/man/ in @@ -32,6 +32,9 @@ Install man pages into all architecture independent packages. .B \-ppackage Install man pages into the package named "package". .TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. +.TP .B file ... Do not install these files as man pages, even if they look like valid man pages. diff --git a/dh_installmenu b/dh_installmenu index c837e04f..5071a2f3 100755 --- a/dh_installmenu +++ b/dh_installmenu @@ -2,9 +2,9 @@ # # Integration with debian menu system: # -# If debian/menu file exists, save it to debian/$TMP/usr/lib/menu/$PACKAGE +# If debian/menu file exists, save it to $TMP/usr/lib/menu/$PACKAGE # If debian/menu-method file exists, save it to -# debian/$TMP/etc/menu-methods/$PACKAGE +# $TMP/etc/menu-methods/$PACKAGE # # Also, add to postinst and postrm. @@ -16,10 +16,10 @@ for PACKAGE in $DH_DOPACKAGES; do EXT=`pkgext $PACKAGE` if [ -e debian/${EXT}menu ]; then - if [ ! -d debian/$TMP/usr/lib/menu ]; then - doit "install -d debian/$TMP/usr/lib/menu" + if [ ! -d $TMP/usr/lib/menu ]; then + doit "install -d $TMP/usr/lib/menu" fi - doit "install -p -m644 debian/${EXT}menu debian/$TMP/usr/lib/menu/$PACKAGE" + doit "install -p -m644 debian/${EXT}menu $TMP/usr/lib/menu/$PACKAGE" # Add the scripts if a menu-method file doesn't exist. # The scripts for menu-method handle everything these do, too. @@ -30,10 +30,10 @@ for PACKAGE in $DH_DOPACKAGES; do fi if [ -e debian/${EXT}menu-method ]; then - if [ ! -d debian/$TMP/etc/menu-methods ]; then - doit "install -d debian/$TMP/etc/menu-methods" + if [ ! -d $TMP/etc/menu-methods ]; then + doit "install -d $TMP/etc/menu-methods" fi - doit "install -p debian/${EXT}menu-method debian/$TMP/etc/menu-methods/$PACKAGE" + doit "install -p debian/${EXT}menu-method $TMP/etc/menu-methods/$PACKAGE" if [ ! "$DH_NOSCRIPTS" ]; then autoscript "postinst" "postinst-menu-method" "s/#PACKAGE#/$PACKAGE/" diff --git a/dh_installmenu.1 b/dh_installmenu.1 index e26c84e5..b5337f30 100644 --- a/dh_installmenu.1 +++ b/dh_installmenu.1 @@ -3,7 +3,7 @@ dh_installmenu \- install debian menu files into package build directories .SH SYNOPSIS .B dh_installmenu -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_installmenu is a debhelper program that is responsible for installing fils used by the debian menu package into package build directories. @@ -40,6 +40,9 @@ Install menu files into the package named "package". .TP .B \-n Do not automatically generate code. +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_lib b/dh_lib index 1cc7e308..c2dd9777 100644 --- a/dh_lib +++ b/dh_lib @@ -1,7 +1,7 @@ # Library functions for debhelper programs. # Run a command, and display the command to stdout if verbose mode is on. -# All commands that modifiy files in debian/$TMP should be ran via this +# All commands that modifiy files in $TMP should be ran via this # function. # Unfortunatly, this function doesn't work if your command uses redirection, # you will have to call verbose_echo by hand then. @@ -24,13 +24,15 @@ error() { } # Pass it a name of a binary package, it returns the name of the tmp dir to -# use, for that package, relative to debian/ +# use, for that package. # This is for back-compatability with the debian/tmp tradition. tmpdir() { - if [ "$1" = "$MAINPACKAGE" ]; then - echo tmp + if [ "$DH_TMPDIR" ]; then + echo "$DH_TMPDIR" + elif [ "$1" = "$MAINPACKAGE" ]; then + echo debian/tmp else - echo "$PACKAGE" + echo "debian/$PACKAGE" fi } @@ -77,7 +79,7 @@ autoscript() { # Argument processing and global variable initialization is below. # Parse command line. -set -- `getopt xvianp: $*` +set -- `getopt xvianp:P: $*` for i; do case "$i" @@ -107,6 +109,11 @@ for i; do DH_EXCLUDE=1 shift ;; + -P) + DH_TMPDIR="$2" + shift + shift + ;; --) shift break @@ -172,3 +179,9 @@ if [ ! "$DH_DOPACKAGES" -o "$DH_DOPACKAGES" = " " ]; then fi DH_DOPACKAGES=`grep ^Package: debian/control | cut -d " " -f 2` fi + +# Check to see if -P was specified. If so, we can only act on a single +# package. +if [ "$DH_TMPDIR" ] && echo "$DH_DOPACKAGES" | grep -q " "; then + error "-P was specified, but multiple packages would be acted on." +fi diff --git a/dh_makeshlibs b/dh_makeshlibs index a09e26f6..f1ab8899 100755 --- a/dh_makeshlibs +++ b/dh_makeshlibs @@ -8,23 +8,23 @@ PATH=debian:$PATH:/usr/lib/debhelper for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` - if [ -e "debian/$TMP/DEBIAN/shlibs" ]; then - error "debian/$TMP/DEBIAN/shlibs already exists." + if [ -e "$TMP/DEBIAN/shlibs" ]; then + error "$TMP/DEBIAN/shlibs already exists." fi - for file in `find debian/$TMP -type f -name "*.so*" | tr "\n" " "` ; do + for file in `find $TMP -type f -name "*.so*" | tr "\n" " "` ; do LIBRARY=`expr $file : ".*/\(.*\)\.so\..*"` || true VERSION=`expr $file : ".*/.*\.so\.\(.*\)"` || true MAJOR=`expr $VERSION : "\([0-9]*\)\."` || true LIBSTUB=`expr $file : "\(.*\/.*\.so\)\..*"` || true - if [ ! -d "debian/$TMP/DEBIAN" ] ; then - doit "install -d debian/$TMP/DEBIAN" + if [ ! -d "$TMP/DEBIAN" ] ; then + doit "install -d $TMP/DEBIAN" fi - verbose_echo "echo \"$LIBRARY $MAJOR $PACKAGE\" >>debian/$TMP/DEBIAN/shlibs" - echo "$LIBRARY $MAJOR $PACKAGE" >>debian/$TMP/DEBIAN/shlibs + verbose_echo "echo \"$LIBRARY $MAJOR $PACKAGE\" >>$TMP/DEBIAN/shlibs" + echo "$LIBRARY $MAJOR $PACKAGE" >>$TMP/DEBIAN/shlibs done - if [ -e "debian/$TMP/DEBIAN/shlibs" ]; then - doit "chown root.root debian/$TMP/DEBIAN/shlibs" + if [ -e "$TMP/DEBIAN/shlibs" ]; then + doit "chown root.root $TMP/DEBIAN/shlibs" fi done diff --git a/dh_makeshlibs.1 b/dh_makeshlibs.1 index 51ba8fee..e4296e47 100644 --- a/dh_makeshlibs.1 +++ b/dh_makeshlibs.1 @@ -3,7 +3,7 @@ dh_makeshlibs \- automatically create shlibs file .SH SYNOPSIS .B dh_makeshlibs -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-Ptmpdir] [-ppackage]" .SH "DESCRIPTION" dh_makeshlibs is a debhelper program that automatically scans for shared libraries, and generates a shlibs file for the libraries it finds. @@ -23,6 +23,9 @@ Generate shlibs files for all architecture independent packages. .TP .B \-ppackage Generate shlibs file for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_md5sums b/dh_md5sums index 5400bad9..f71ab529 100755 --- a/dh_md5sums +++ b/dh_md5sums @@ -9,21 +9,21 @@ PATH=debian:$PATH:/usr/lib/debhelper for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` - if [ ! -d "debian/$TMP/DEBIAN" ]; then - doit "install -d debian/$TMP/DEBIAN" + if [ ! -d "$TMP/DEBIAN" ]; then + doit "install -d $TMP/DEBIAN" fi # Doit isn't smart enough to hande this next command so echo by hand. (sigh) - verbose_echo 'find debian/$TMP/* -type f ! -regex "^debian/$TMP/DEBIAN/.*" | sed s:debian/$TMP/:: | sort > debian/$TMP/DEBIAN/allfiles' - find debian/$TMP/* -type f ! -regex "^debian/$TMP/DEBIAN/.*" | sed s:debian/$TMP:: | sort > debian/$TMP/DEBIAN/allfiles + verbose_echo 'find $TMP/* -type f ! -regex "^$TMP/DEBIAN/.*" | sed s:$TMP/:: | sort > $TMP/DEBIAN/allfiles' + find $TMP/* -type f ! -regex "^$TMP/DEBIAN/.*" | sed s:$TMP:: | sort > $TMP/DEBIAN/allfiles # Check if we should exclude conffiles. - if [ ! "$DH_EXCLUDE" -a -r debian/$TMP/DEBIAN/conffiles ]; then - verbose_echo "sort debian/$TMP/DEBIAN/conffiles | comm -13 - debian/$TMP/DEBIAN/allfiles > debian/$TMP/DEBIAN/allfiles.new" - sort debian/$TMP/DEBIAN/conffiles | comm -13 - debian/$TMP/DEBIAN/allfiles > debian/$TMP/DEBIAN/allfiles.new - doit "mv debian/$TMP/DEBIAN/allfiles.new debian/$TMP/DEBIAN/allfiles" + if [ ! "$DH_EXCLUDE" -a -r $TMP/DEBIAN/conffiles ]; then + verbose_echo "sort $TMP/DEBIAN/conffiles | comm -13 - $TMP/DEBIAN/allfiles > $TMP/DEBIAN/allfiles.new" + sort $TMP/DEBIAN/conffiles | comm -13 - $TMP/DEBIAN/allfiles > $TMP/DEBIAN/allfiles.new + doit "mv $TMP/DEBIAN/allfiles.new $TMP/DEBIAN/allfiles" fi - verbose_echo "cd debian/$TMP ; sed 's:^/::' < DEBIAN/allfiles | xargs md5sum > DEBIAN/md5sums ; cd ../.." - cd debian/$TMP ; sed 's:^/::' < DEBIAN/allfiles | xargs md5sum > DEBIAN/md5sums ; cd ../.. - doit "chown root.root debian/$TMP/DEBIAN/md5sums" - doit "rm -f debian/$TMP/DEBIAN/allfiles" + verbose_echo "cd $TMP ; sed 's:^/::' < DEBIAN/allfiles | xargs md5sum > DEBIAN/md5sums ; cd ../.." + cd $TMP ; sed 's:^/::' < DEBIAN/allfiles | xargs md5sum > DEBIAN/md5sums ; cd ../.. + doit "chown root.root $TMP/DEBIAN/md5sums" + doit "rm -f $TMP/DEBIAN/allfiles" done diff --git a/dh_md5sums.1 b/dh_md5sums.1 index a54c1c15..28f7fe45 100644 --- a/dh_md5sums.1 +++ b/dh_md5sums.1 @@ -3,7 +3,7 @@ dh_md5sums \- generate DEBIAN/md5sums file .SH SYNOPSIS .B dh_md5sums -.I "[-x] [-v] [-a] [-i] [-ppackage]" +.I "[-x] [-v] [-a] [-i] [-Ptmpdir] [-ppackage]" .SH "DESCRIPTION" dh_md5sums is a debhelper program that is responsible for generating a DEBIAN/md5sums file, which lists the md5sums of each file in the package. @@ -29,6 +29,9 @@ Generate md5sums file for the package named "package". .B \-x Include conffiles in the md5sums list. Note that this is redundant, and included elsewhere in debian packages. +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_strip b/dh_strip index 77d670a6..57725d70 100755 --- a/dh_strip +++ b/dh_strip @@ -9,7 +9,7 @@ for PACKAGE in $DH_DOPACKAGES; do TMP=`tmpdir $PACKAGE` # Handle executables and shared libraries. - for file in `find debian/$TMP -type f \( -perm +111 -or -name "*.so*" \) 2>/dev/null` ; do + for file in `find $TMP -type f \( -perm +111 -or -name "*.so*" \) 2>/dev/null` ; do case "`file $file`" in *ELF*shared*) doit "strip --strip-unneeded $file" @@ -21,7 +21,7 @@ for PACKAGE in $DH_DOPACKAGES; do done # Handle static libraries. - for file in `find debian/$TMP -type f -name "lib*.a" 2>/dev/null` ; do + for file in `find $TMP -type f -name "lib*.a" 2>/dev/null` ; do # Don't strip debug libraries. if ! expr "$file" : ".*_g\.a" >/dev/null ; then doit "strip --strip-debug $file" diff --git a/dh_strip.1 b/dh_strip.1 index 2eba9914..fa3c7694 100644 --- a/dh_strip.1 +++ b/dh_strip.1 @@ -3,7 +3,7 @@ dh_strip \- strip executables, shared libraries, and some static libraries. .SH SYNOPSIS .B dh_strip -.I "[-v] [-a] [-i] [-ppackage]" +.I "[-v] [-a] [-i] [-Ptmpdir] [-ppackage]" .SH "DESCRIPTION" dh_strip is a debhelper program that is responsible for stripping executables, shared libraries, and static libraries that are not used for @@ -25,6 +25,9 @@ pointless :-). .TP .B \-ppackage Strip files for the package named "package". +.TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. .SH NOTES The .B \-a diff --git a/dh_suidregister b/dh_suidregister index 4ca72a1c..e03379f6 100755 --- a/dh_suidregister +++ b/dh_suidregister @@ -26,11 +26,11 @@ for PACKAGE in $DH_DOPACKAGES; do if [ ! "$files" -a ! -e debian/${EXT}suid ]; then # No files specified (and no empty debian/suid file), so # guess what files to process. - files=`find debian/$TMP -type f -perm +6000` + files=`find $TMP -type f -perm +6000` # We will strip the debian working directory off of the # filenames. - tostrip="debian/$TMP/" + tostrip="$TMP/" else # We will strip leading /'s, so the user can feed this # program either absolute filenames, or relative filenames, @@ -49,7 +49,7 @@ for PACKAGE in $DH_DOPACKAGES; do # Create the sed string that will be used to # fill in the blanks in the autoscript files. # Fill with the owner, group, and perms of the file. - sedstr=`find debian/$TMP/$file -printf "s:#FILE#:$file:;s/#PACKAGE#/$PACKAGE/;s/#OWNER#/%u/;s/#GROUP#/%g/;s/#PERMS#/%m/"` + sedstr=`find $TMP/$file -printf "s:#FILE#:$file:;s/#PACKAGE#/$PACKAGE/;s/#OWNER#/%u/;s/#GROUP#/%g/;s/#PERMS#/%m/"` autoscript "postinst" "postinst-suid" "$sedstr" autoscript "postrm" "postrm-suid" "$sedstr" diff --git a/dh_suidregister.1 b/dh_suidregister.1 index e15e6d5f..97dcb24b 100644 --- a/dh_suidregister.1 +++ b/dh_suidregister.1 @@ -3,7 +3,7 @@ dh_suidregister \- set up package to register files with suidregister .SH SYNOPSIS .B dh_suidregister -.I "[-v] [-a] [-i] [-ppackage] [file ...]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [file ...]" .SH "DESCRIPTION" dh_suidregister is a debhelper program that is responsible for modifying the postinst and postrm scripts of a package so the package will register files @@ -39,6 +39,9 @@ Register files for all architecture independent packages. .B \-ppackage Register files for the package named "package". .TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. +.TP .B file ... Register these files in the first binary package listed in debian/control, if we are acting on that package. diff --git a/dh_undocumented b/dh_undocumented index ebde8904..fe1dbf2d 100755 --- a/dh_undocumented +++ b/dh_undocumented @@ -41,11 +41,11 @@ for PACKAGE in $DH_DOPACKAGES; do reldir=.. fi - if [ ! -d debian/$TMP/$dir ]; then - doit "install -d debian/$TMP/$dir" + if [ ! -d $TMP/$dir ]; then + doit "install -d $TMP/$dir" fi - doit ln -s $reldir/man7/undocumented.7.gz debian/$TMP/$dir/$file.gz + doit ln -s $reldir/man7/undocumented.7.gz $TMP/$dir/$file.gz done fi done diff --git a/dh_undocumented.1 b/dh_undocumented.1 index ab45baad..d6ec21bf 100644 --- a/dh_undocumented.1 +++ b/dh_undocumented.1 @@ -3,7 +3,7 @@ dh_undocumented \- make symlinks to undocumented.7 man page .SH SYNOPSIS .B dh_undocumented -.I "[-v] [-a] [-i] [-ppackage] [manpage ...]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [manpage ...]" .SH "DESCRIPTION" dh_undocumented is a debhelper program that is responsible for making symlinks to the @@ -42,6 +42,9 @@ Install undocumented man page symlinks for all architecture independent packages .B \-ppackage Install undocumented man page symlinks for the package named "package". .TP +.B \-Ptmpdir +Use "tmpdir" for package build directory. +.TP .B manpage ... Install undocumented man page symlinks for each of these man pages into the first binary package listed in debian/control, if we are acting on -- cgit v1.2.3 From 99b34ff691012e69828ea2167b7a3089ac4953f3 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:39:16 +0000 Subject: r37: Initial Import --- README | 6 +++-- debian/changelog | 6 +++++ dh_installdebfiles | 64 +++++----------------------------------------------- dh_installdebfiles.1 | 2 +- dh_installinit.1 | 4 ++-- examples/rules | 4 +++- examples/rules.multi | 9 +++++--- 7 files changed, 28 insertions(+), 67 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/README b/README index e192504d..280da781 100644 --- a/README +++ b/README @@ -35,7 +35,9 @@ Remove that and replace it with something like: dh_compress dh_fixperms dh_suidregister - dh_installdebfiles + dh_installdeb + dh_shlibdeps + dh_gencontrol dh_makeshlibs dh_md5sums dh_builddeb @@ -68,7 +70,7 @@ Some debhelper commands will automatically generate parts of debian install scripts. If you want these automatically generated things included in your debian install scripts, then you need to add "#DEBHELPER#" to your scripts, in the place the code should be added. "#DEBHELPER#" will be replaced by any -autogenerated code when you run dh_installdebfiles. +autogenerated code when you run dh_installdeb. All scripts that automatically generate code in this way let it be disabled by the -n parameter. diff --git a/debian/changelog b/debian/changelog index d2f17f96..96c4971b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +debhelper (0.31) unstable; urgency=low + + * Fixed man page typos #15685. + + -- Joey Hess Sat, 6 Dec 1997 21:44:58 -0500 + debhelper (0.30) unstable; urgency=low * dh_md5sumes, dh_installdirs, dh_compress: fixed assorted cd bugs. diff --git a/dh_installdebfiles b/dh_installdebfiles index 825c9ee5..8b1e0962 100755 --- a/dh_installdebfiles +++ b/dh_installdebfiles @@ -1,64 +1,12 @@ #!/bin/sh -e # -# Install files from debian/ into the package's DEBIAN directory. -# Also generates the control file. +# This program is depricated, but left in the package for backwards +# compatability. It simply calls the 3 programs that replaced it. PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib -for PACKAGE in $DH_DOPACKAGES; do - TMP=`tmpdir $PACKAGE` - EXT=`pkgext $PACKAGE` +echo "* Note: dh_installdebfiles is depricated." >&2 - if [ ! -d $TMP/DEBIAN ]; then - doit "install -o root -g root -d $TMP/DEBIAN" - fi - - # Install debian install scripts. - # If any .debhelper files exist, add them into the scripts. - for file in postinst preinst prerm postrm; do - if [ -f debian/$EXT$file ]; then - # Add this into the script, where it has #DEBHELPER# - if [ -f debian/$EXT$file.debhelper ]; then - complex_doit "perl -pe 's~#DEBHELPER#~qx{cat debian/$EXT$file.debhelper}~eg' < debian/$EXT$file > $TMP/DEBIAN/$file" - doit "chown root.root $TMP/DEBIAN/$file" - doit "chmod 755 $TMP/DEBIAN/$file" - else - doit "install -o root -g root -p debian/$EXT$file $TMP/DEBIAN/$file" - fi - else - # Auto-generate script header and add .debhelper - # content to it. - if [ -f debian/$EXT$file.debhelper ]; then - complex_doit "echo '#!/bin/sh -e' > $TMP/DEBIAN/$file" - complex_doit "cat debian/$EXT$file.debhelper >> $TMP/DEBIAN/$file" - doit "chown root.root $TMP/DEBIAN/$file" - doit "chmod 755 $TMP/DEBIAN/$file" - fi - fi - done - - # Install non-executable files - for file in shlibs conffiles; do - if [ -f debian/$EXT$file ]; then - doit "install -o root -g root -m 644 -p debian/$EXT$file $TMP/DEBIAN/$file" - fi - done - - # Run dpkg-shlibdeps to generate dependancies. - filelist="" - for file in `find $TMP -type f \( -perm +111 -or -name "*.so*" \) | tr "\n" " "` ; do - case "`file $file`" in - *ELF*) - filelist="$file $filelist" - ;; - esac - done - if [ "$filelist" ]; then - doit "dpkg-shlibdeps -Tdebian/${EXT}substvars $filelist" - fi - - # Generate and install control file. - doit "dpkg-gencontrol -p$PACKAGE -Tdebian/${EXT}substvars -P$TMP" - doit "chown root.root $TMP/DEBIAN/control" -done +dh_installdeb $* +dh_shlibdeps $* +dh_gencontrol $* diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 429481f4..8b34b910 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -2,7 +2,7 @@ .SH NAME dh_installdebfiles \- install files into the DEBIAN directory .SH SYNOPSIS -.B dh_installdebfils +.B dh_installdebfiles .I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_installdebfiles is a debhelper program that is responsible for installing diff --git a/dh_installinit.1 b/dh_installinit.1 index f87c0c58..e0daac42 100644 --- a/dh_installinit.1 +++ b/dh_installinit.1 @@ -3,7 +3,7 @@ dh_installinit \- install init scripts into package build directories .SH SYNOPSIS .B dh_installinit -.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [-n] [-r] [-d] [-u params]" +.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir] [-n] [-r] [-d] [-uparams]" .SH "DESCRIPTION" dh_installinit is a debhelper program that is responsible for installing init scripts into package build directories. @@ -47,7 +47,7 @@ Remove trailing "d" from the name of the package, and use the result for the filename the init script is installed as in etc/init.d/ . This may be useful for daemons with named ending in "d". .TP -.B \-u params +.B \-uparams Pass "params" to .BR update-rc.d (8) If not specified, "default" will be passed to diff --git a/examples/rules b/examples/rules index 10661223..87692ccd 100755 --- a/examples/rules +++ b/examples/rules @@ -43,7 +43,9 @@ binary-arch: build dh_compress dh_fixperms dh_suidregister - dh_installdebfiles + dh_installdeb + dh_shlibdeps + dh_gencontrol # dh_makeshlibs dh_du dh_md5sums diff --git a/examples/rules.multi b/examples/rules.multi index 496c3366..f0bd78a6 100755 --- a/examples/rules.multi +++ b/examples/rules.multi @@ -41,8 +41,9 @@ binary-indep: build dh_compress -i dh_fixperms -i dh_suidregister -i - dh_installdebfiles -i - dh_du -a + dh_installdeb -i + dh_gencontrol -i + dh_du -i dh_md5sums -i dh_builddeb -i @@ -66,7 +67,9 @@ binary-arch: build dh_compress -a dh_fixperms -a dh_suidregister -a - dh_installdebfiles -a + dh_installdeb -a + dh_shlibdeps -a + dh_gencontrol -a # dh_makeshlibs -a dh_du -a dh_md5sums -a -- cgit v1.2.3 From 918dbc752efd1d35a3ef667524062d4a0dcd3e3e Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:39:21 +0000 Subject: r38: Initial Import --- TODO | 2 ++ debian/changelog | 10 ++++++++ debian/rules | 4 ++- dh_clean | 12 ++++++--- dh_installdeb | 11 +++++--- dh_installdebfiles.1 | 71 +++++++++++----------------------------------------- dh_installmenu.1 | 2 +- dh_lib | 6 ++++- dh_suidregister.1 | 2 +- examples/rules | 4 +-- examples/rules.indep | 4 +-- examples/rules.multi | 8 +++--- 12 files changed, 59 insertions(+), 77 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/TODO b/TODO index 5ed6f9bb..3118ab95 100644 --- a/TODO +++ b/TODO @@ -4,3 +4,5 @@ * add a dh_debstd, which mimics debstd, but uses debhelper tools internally. * dh_du: change it so it doesn't grep for things with tabs in them. That's nasty. (and makes cut-and-paste from dh_du -v not work). +* dh_compress: add --exclude "*.conf" type-thingy +* info support for debhelper diff --git a/debian/changelog b/debian/changelog index 96c4971b..f739f89b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +debhelper (0.32) unstable; urgency=low + + * Split dh_installdebfiles into 3 programs (dh_installdeb, dh_shlibdeps, + and dh_gencontrol). dh_installdebfiles still works, but is depricated. + * Added an examples/rules.indep file. + * examples/rules.multi: changed dh_du -a to dh_du -i in binary-indep + section. + + -- Joey Hess Wed, 10 Dec 1997 19:53:13 -0500 + debhelper (0.31) unstable; urgency=low * Fixed man page typos #15685. diff --git a/debian/rules b/debian/rules index e2d4da03..8a240f9b 100755 --- a/debian/rules +++ b/debian/rules @@ -43,7 +43,9 @@ binary-indep: build ./dh_compress ./dh_fixperms ./dh_suidregister - ./dh_installdebfiles + ./dh_installdeb + ./dh_shlibdeps + ./dh_gencontrol ./dh_du ./dh_md5sums ./dh_builddeb diff --git a/dh_clean b/dh_clean index b170494b..6306adda 100755 --- a/dh_clean +++ b/dh_clean @@ -12,11 +12,15 @@ for PACKAGE in $DH_DOPACKAGES; do doit "rm -rf $TMP" doit "rm -f debian/${EXT}substvars" done -doit "rm -f debian/files* debian/*.debhelper $*" +doit "rm -f debian/*.debhelper $*" +if [ ! "$DH_K_FLAG" ]; then + doit "rm -f debian/files*" +fi # Remove other temp files. # Use complex_doit so we can properly escape things. -complex_doit "find . \( -name '#*#' -o -name '*~' -o -name DEADJOE -o -name '*.orig' \ - -o -name '*.rej' -o -name '*.bak' -o -name '.*.orig' \ - -o -name '.*.rej' -o -name .SUMS -o -name TAGS -o -name core \ +complex_doit "find . \( -name '#*#' -o -name '*~' -o -name DEADJOE \ + -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \ + -o -name '.*.orig' -o -name '.*.rej' -o -name .SUMS \ + -o -name TAGS -o -name core \ \) -exec rm -f {} \;" diff --git a/dh_installdeb b/dh_installdeb index 43aca902..d9e1e7b3 100755 --- a/dh_installdeb +++ b/dh_installdeb @@ -17,14 +17,17 @@ for PACKAGE in $DH_DOPACKAGES; do # If any .debhelper files exist, add them into the scripts. for file in postinst preinst prerm postrm; do if [ -f debian/$EXT$file ]; then - # Add this into the script, where it has #DEBHELPER# if [ -f debian/$EXT$file.debhelper ]; then + # Add this into the script, where it has + # #DEBHELPER# complex_doit "perl -pe 's~#DEBHELPER#~qx{cat debian/$EXT$file.debhelper}~eg' < debian/$EXT$file > $TMP/DEBIAN/$file" - doit "chown root.root $TMP/DEBIAN/$file" - doit "chmod 755 $TMP/DEBIAN/$file" else - doit "install -o root -g root -p debian/$EXT$file $TMP/DEBIAN/$file" + # Just get rid of any #DEBHELOPER# in the + # script. + complex_doit "sed s/#DEBHELPER#// < debian/$EXT$file > $TMP/DEBIAN/$file" fi + doit "chown root.root $TMP/DEBIAN/$file" + doit "chmod 755 $TMP/DEBIAN/$file" else # Auto-generate script header and add .debhelper # content to it. diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 8b34b910..0240f938 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -3,70 +3,27 @@ dh_installdebfiles \- install files into the DEBIAN directory .SH SYNOPSIS .B dh_installdebfiles -.I "[-v] [-a] [-i] [-ppackage] [-Ptmpdir]" .SH "DESCRIPTION" dh_installdebfiles is a debhelper program that is responsible for installing files into the DEBIAN directory in package build directories with the -correct permissions. +correct permissions, canculating shared library dependancies, and creating a +control file. .P -dh_installdocs automatically installs the following files from debian/ into -the DEBIAN directory: -.IP postinst -.IP preinst -.IP postrm -.IP prerm -.IP shlibs -.IP conffiles +This program is depricated. It is now merely a wrapper around three other +programs, and you may replace any calls to this program by: .P -(For packages other than the first binary package listed in debian/control, -prefix these filenames with then name of the "package.", for example, -"foo.postinst".) -.P -The files postinst, preinst, postrm, and prerm are handled specially: If a -corresponding file named debian/script.debhelper exists, the contents of that -file are merged into the script as follows: If the script exists, then -anywhere in it that "#DEBHELPER#" appears, the text of the .debhelper file is -inserted. If the script does not exist, then a script is generated from -the .debhelper file. The .debhelper files are created by other debhelper -programs, such as -.BR dh_installmenu (1) -, and are shell scripts. -.P -In addition, it will generate a DEBIAN/control file, by running -.BR dpkg-shlibdeps (1) -and -.BR dpkg-gencontrol (1) + dh_installdeb + dh_shlibdeps + dh_gencontrol +.SH WARNING +This program will be removed at some time in the furture. .SH OPTIONS -.TP -.B \-v -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a -Install files for all architecture dependent packages. -.TP -.B \-i -Install files for all architecture independent packages. -.TP -.B \-ppackage -Install files for the package named "package". -.TP -.B \-Ptmpdir -Use "tmpdir" for package build directory. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. -.SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode +Any options passed to this program will be sent to each of the 3 programs +listed above. .SH "SEE ALSO" .BR /usr/doc/debhelper/README -.SH "CONFORMS TO" -Debian policy, version 2.3.0.0 +.BR dh_installdeb (1) +.BR dh_shlibdeps (1) +.BR dh_gencontrol (1) .SH AUTHOR Joey Hess diff --git a/dh_installmenu.1 b/dh_installmenu.1 index abbff8de..11bc71b8 100644 --- a/dh_installmenu.1 +++ b/dh_installmenu.1 @@ -10,7 +10,7 @@ files used by the debian menu package into package build directories. .P It also automatically generates the postinst and postrm commands needed to interface with the debian menu package. See -.BR dh_installdebfiles (1) +.BR dh_installdeb (1) for an explanation of how this works. .P If a file named debian/menu exists, then it is installed into diff --git a/dh_lib b/dh_lib index 4c8c68c6..388b7f72 100644 --- a/dh_lib +++ b/dh_lib @@ -82,7 +82,7 @@ autoscript() { # Argument processing and global variable initialization is below. # Parse command line. -set -- `getopt xvidrnap:P:u: $*` +set -- `getopt xvidrnakp:P:u: $*` for i; do case "$i" @@ -120,6 +120,10 @@ for i; do DH_R_FLAG=1 shift ;; + -k) + DH_K_FLAG=1 + shift + ;; -P) DH_TMPDIR="$2" shift diff --git a/dh_suidregister.1 b/dh_suidregister.1 index c69f6128..b66c2140 100644 --- a/dh_suidregister.1 +++ b/dh_suidregister.1 @@ -23,7 +23,7 @@ scan the package build directory for files that have suid permissions, and will automatically register all files it finds. .P Note that this package modifies your postinst and postrm files. See -.BR dh_installdebfiles (1) +.BR dh_installdeb (1) for an explanation of how this works. .SH OPTIONS .TP diff --git a/examples/rules b/examples/rules index 87692ccd..105d91c0 100755 --- a/examples/rules +++ b/examples/rules @@ -27,10 +27,10 @@ binary-indep: build binary-arch: build dh_testdir dh_testroot - dh_clean + dh_clean -k dh_installdirs # Add here commands to install the files into debian/tmp - #$(MAKE) PREFIX=debian/tmp install + #$(MAKE) prefix=`pwd`/debian/tmp install dh_installdocs dh_installexamples dh_installmenu diff --git a/examples/rules.indep b/examples/rules.indep index a257a197..5bd756de 100755 --- a/examples/rules.indep +++ b/examples/rules.indep @@ -24,10 +24,10 @@ clean: binary-indep: build dh_testdir dh_testroot - dh_clean + dh_clean -k dh_installdirs # Add here commands to install the files into debian/tmp - #$(MAKE) PREFIX=debian/tmp install + #$(MAKE) prefix=`pwd`/debian/tmp install dh_installdocs dh_installexamples dh_installmenu diff --git a/examples/rules.multi b/examples/rules.multi index f0bd78a6..eceee350 100755 --- a/examples/rules.multi +++ b/examples/rules.multi @@ -26,10 +26,10 @@ clean: binary-indep: build dh_testdir -i dh_testroot -i - dh_clean -i + dh_clean -i -k dh_installdirs -i # Add here commands to install the files into debian/tmp - #$(MAKE) PREFIX=debian/tmp install + #$(MAKE) prefix=`pwd`/debian/tmp install dh_installdocs -i dh_installexamples -i dh_installmenu -i @@ -51,10 +51,10 @@ binary-indep: build binary-arch: build dh_testdir -a dh_testroot -a - dh_clean -a + dh_clean -a -k dh_installdirs -a # Add here commands to install the files into debian/tmp - #$(MAKE) PREFIX=debian/tmp install + #$(MAKE) prefix=`pwd`/debian/tmp install dh_installdocs -a dh_installexamples -a dh_installmenu -a -- cgit v1.2.3 From e7b15707fd400a1775864ea61f4a2665932c7c88 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:39:32 +0000 Subject: r40: Initial Import --- debian/changelog | 6 ++++++ dh_installdebfiles.1 | 2 +- dh_lib | 10 +++++++--- 3 files changed, 14 insertions(+), 4 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/debian/changelog b/debian/changelog index 506a35e5..689ff71c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +debhelper (0.34) unstable; urgency=low + + * Fixed typo #16215. + + -- Joey Hess Mon, 22 Dec 1997 14:41:46 -0500 + debhelper (0.33) unstable; urgency=low * examples/*: use prefix, instead of PREFIX, becuase autoconf uses that. diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 0240f938..cf1580d0 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -9,7 +9,7 @@ files into the DEBIAN directory in package build directories with the correct permissions, canculating shared library dependancies, and creating a control file. .P -This program is depricated. It is now merely a wrapper around three other +This program is deprecated. It is now merely a wrapper around three other programs, and you may replace any calls to this program by: .P dh_installdeb diff --git a/dh_lib b/dh_lib index 388b7f72..7a56c156 100644 --- a/dh_lib +++ b/dh_lib @@ -141,9 +141,13 @@ for i; do esac done -# Get the package version from the changelog. -LINE=`head -1 debian/changelog` -VERSION=`expr "$LINE" : '.* (\(.*\))'` +# Get the package version. +# Note that the 2>/dev/null is because a bug in dpkg-parsechangelog makes it +# output a bogus error message to stderr. +# If it actually has a real error, then the expr will fail, and this whole +# script will come crashing to a halt, which is good enough to inform +# the user something's wrong. :-) +VERSION=`expr "\`dpkg-parsechangelog 2>/dev/null\`" : '.*Version: \(.*\).*Distribution:'` # Get the name of the main binary package. MAINPACKAGE=`grep ^Package: debian/control | cut -d " " -f 2 | head -1` -- cgit v1.2.3 From e348bcc96f206a25afc2ad1d4f004c74b7f8ab37 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:56:24 +0000 Subject: r104: Initial Import --- Dh_Getopt.pm | 148 ++++++++++++++++++++++++++ Dh_Lib.pm | 248 +++++++++++++++++++++++++++++++++++++++++++ autoscripts/postinst-emacsen | 1 + autoscripts/prerm-emacsen | 1 + debhelper.1 | 104 ++++++++++++++++++ debian/changelog | 14 +++ debian/control | 6 +- debian/cron.d | 0 debian/cron.daily | 0 debian/docs | 1 + debian/menu | 0 dh_builddeb.1 | 45 ++------ dh_clean.1 | 45 ++------ dh_compress | 2 +- dh_compress.1 | 45 ++------ dh_debstd.1 | 13 ++- dh_du.1 | 4 +- dh_fixperms | 6 +- dh_fixperms.1 | 45 ++------ dh_gencontrol.1 | 51 +++------ dh_getopt.pl | 22 +++- dh_installchangelogs.1 | 45 ++------ dh_installcron.1 | 47 ++------ dh_installdeb.1 | 45 ++------ dh_installdebfiles.1 | 8 +- dh_installdirs.1 | 49 +++------ dh_installdocs | 2 +- dh_installdocs.1 | 45 ++------ dh_installemacsen | 34 ++++++ dh_installemacsen.1 | 42 ++++++++ dh_installexamples.1 | 45 ++------ dh_installinit.1 | 45 ++------ dh_installmanpages.1 | 45 ++------ dh_installmenu.1 | 46 ++------ dh_makeshlibs.1 | 47 ++------ dh_md5sums.1 | 45 ++------ dh_movefiles.1 | 45 ++------ dh_shlibdeps.1 | 50 +++------ dh_strip.1 | 46 ++------ dh_suidregister.1 | 48 +++------ dh_testdir.1 | 19 ++-- dh_testroot.1 | 19 ++-- dh_testversion | 24 +++++ dh_testversion.1 | 29 ++--- dh_undocumented.1 | 45 ++------ doc/README | 64 +---------- doc/TODO | 63 ++++++++--- 47 files changed, 976 insertions(+), 867 deletions(-) create mode 100644 Dh_Getopt.pm create mode 100644 Dh_Lib.pm create mode 100644 autoscripts/postinst-emacsen create mode 100644 autoscripts/prerm-emacsen create mode 100644 debhelper.1 create mode 100644 debian/cron.d create mode 100644 debian/cron.daily create mode 100644 debian/docs create mode 100644 debian/menu create mode 100755 dh_installemacsen create mode 100644 dh_installemacsen.1 create mode 100755 dh_testversion (limited to 'dh_installdebfiles.1') diff --git a/Dh_Getopt.pm b/Dh_Getopt.pm new file mode 100644 index 00000000..eb6aef98 --- /dev/null +++ b/Dh_Getopt.pm @@ -0,0 +1,148 @@ +#!/usr/bin/perl -w +# +# Debhelper option processing library. +# +# Joey Hess GPL copyright 1998. + +package Dh_Getopt; +use strict; + +use Exporter; +my @ISA=qw(Exporter); +my @EXPORT=qw(&parseopts); + +use Dh_Lib; +use Getopt::Long; + +my (%options, %exclude_package); + +# Passed an option name and an option value, adds packages to the list +# of packages. We need this so the list will be built up in the right +# order. +sub AddPackage { my($option,$value)=@_; + if ($option eq 'i' or $option eq 'indep') { + push @{$options{DOPACKAGES}}, GetPackages('indep'); + $options{DOINDEP}=1; + } + elsif ($option eq 'a' or $option eq 'arch') { + push @{$options{DOPACKAGES}}, GetPackages('arch'); + $options{DOARCH}=1; + } + elsif ($option eq 'p' or $option eq 'package') { + push @{$options{DOPACKAGES}}, $value; + } + else { + error("bad option $option - should never happen!\n"); + } +} + +# Add a package to a list of packages that should not be acted on. +sub ExcludePackage { my($option,$value)=@_; + $exclude_package{$value}=1; +} + +# Add another item to the exclude list. +sub AddExclude { my($option,$value)=@_; + push @{$options{EXCLUDE}},$value; +} + +sub import { + # Enable bundling of short command line options. + Getopt::Long::config("bundling"); +} + +# Parse options and return a hash of the values. +sub parseopts { + undef %options; + + my $ret=GetOptions( + "v" => \$options{VERBOSE}, + "verbose" => \$options{VERBOSE}, + + "i" => \&AddPackage, + "indep" => \&AddPackage, + + "a" => \&AddPackage, + "arch" => \&AddPackage, + + "p=s" => \&AddPackage, + "package=s" => \&AddPackage, + + "N=s" => \&ExcludePackage, + "no-package=s" => \&ExcludePackage, + + "n" => \$options{NOSCRIPTS}, +# "noscripts" => \$options(NOSCRIPTS}, + + "x" => \$options{INCLUDE_CONFFILES}, # is -x for some unknown historical reason.. + "include-conffiles" => \$options{INCLUDE_CONFFILES}, + + "X=s" => \&AddExclude, + "exclude=s" => \&AddExclude, + + "d" => \$options{D_FLAG}, + "remove-d" => \$options{D_FLAG}, + + "r" => \$options{R_FLAG}, + "no-restart-on-upgrade" => \$options{R_FLAG}, + + "k" => \$options{K_FLAG}, + "keep" => \$options{K_FLAG}, + + "P=s" => \$options{TMPDIR}, + "tmpdir=s" => \$options{TMPDIR}, + + "u=s", => \$options{U_PARAMS}, + "update-rcd-params=s", => \$options{U_PARAMS}, + "dpkg-shlibdeps-params=s", => \$options{U_PARAMS}, + + "m=s", => \$options{M_PARAMS}, + "major=s" => \$options{M_PARAMS}, + + "V:s", => \$options{V_FLAG}, + "version-info:s" => \$options{V_FLAG}, + + "A" => \$options{PARAMS_ALL}, + "all" => \$options{PARAMS_ALL}, + + "no-act" => \$options{NO_ACT}, + + "init-script=s" => \$options{INIT_SCRIPT}, + ); + + if (!$ret) { + error("unknown option; aborting"); + } + + # Check to see if -V was specified. If so, but no parameters were + # passed, the variable will be defined but empty. + if (defined($options{V_FLAG})) { + $options{V_FLAG_SET}=1; + } + + # Check to see if DH_VERBOSE environment variable was set, if so, + # make sure verbose is on. + if ($ENV{DH_VERBOSE} ne undef) { + $options{VERBOSE}=1; + } + + # Check to see if DH_NO_ACT environment variable was set, if so, + # make sure no act mode is on. + if ($ENV{DH_NO_ACT} ne undef) { + $options{NO_ACT}=1; + } + + # Remove excluded packages from the list of packages to act on. + my @package_list; + my $package; + foreach $package (@{$options{DOPACKAGES}}) { + if (! $exclude_package{$package}) { + push @package_list, $package; + } + } + @{$options{DOPACKAGES}}=@package_list; + + return %options; +} + +1 diff --git a/Dh_Lib.pm b/Dh_Lib.pm new file mode 100644 index 00000000..c9b964c1 --- /dev/null +++ b/Dh_Lib.pm @@ -0,0 +1,248 @@ +#!/usr/bin/perl -w +# +# Library functions for debhelper programs, perl version. +# +# Joey Hess, GPL copyright 1997, 1998. + +package Dh_Lib; + +use Exporter; +use vars qw(%dh); +@ISA=qw(Exporter); +@EXPORT=qw(&init &doit &complex_doit &verbose_print &error &warning &tmpdir + &pkgfile &pkgext &isnative &autoscript &filearray &GetPackages + %dh); + +sub init { + # Check to see if an argument on the command line starts with a dash. + # if so, we need to pass this off to the resource intensive Getopt::Long, + # which I'd prefer to avoid loading at all if possible. + my $parseopt=undef; + foreach $arg (@ARGV) { + if ($arg=~m/^-/) { + $parseopt=1; + last; + } + } + if ($parseopt) { + eval "use Dh_Getopt"; + error($!) if $@; + %dh=Dh_Getopt::parseopts(); + } + + # Get the name of the main binary package (first one listed in + # debian/control). + my @allpackages=GetPackages(); + $dh{MAINPACKAGE}=$allpackages[0]; + + # Check if packages to build have been specified, if not, fall back to + # the default, doing them all. + if (! @{$dh{DOPACKAGES}}) { + if ($dh{DH_DOINDEP} || $dh{DH_DOARCH}) { + error("I have no package to build."); + } + push @{$dh{DOPACKAGES}},@allpackages; + } + + # Check to see if -P was specified. If so, we can only act on a single + # package. + if ($dh{TMPDIR} || $#{$dh{DOPACKAGES}} > 0) { + error("-P was specified, but multiple packages would be acted on."); + } + + # Figure out which package is the first one we were instructed to build. + # This package gets special treatement: files and directories specified on + # the command line may affect it. + $dh{FIRSTPACKAGE}=${$dh{DOPACKAGES}}[0]; +} + +# Run a command, and display the command to stdout if verbose mode is on. +# All commands that modifiy files in $TMP should be ran via this +# function. +# +# Note that this cannot handle complex commands, especially anything +# involving redirection. Use complex_doit instead. +sub doit { + verbose_print(join(" ",,@_)); + + if (! $dh{NO_ACT}) { + system(@_) == 0 + || error("command returned error code"); + + } +} + +# This is an identical command to doit, except the parameters passed to it +# can include complex shell stull like redirection and compound commands. +sub complex_doit { + error("complex_doit() not yet supported"); +} + +# Print something if the verbose flag is on. +sub verbose_print { my $message=shift; + if ($dh{VERBOSE}) { + print "\t$message\n"; + } +} + +# Output an error message and exit. +sub error { my $message=shift; + warning($message); + exit 1; +} + +# Output a warning. +sub warning { my $message=shift; + my $fn=$0; + $fn=~s:.*/(.*?):$1:; + print STDERR "$fn: $message\n"; +} + +# Pass it a name of a binary package, it returns the name of the tmp dir to +# use, for that package. +# This is for back-compatability with the debian/tmp tradition. +sub tmpdir { my $package=shift; + if ($dh{TMPDIR}) { + return $dh{TMPDIR}; + } + elsif ($package eq $dh{MAINPACKAGE}) { + return "debian/tmp"; + } + else { + return "debian/$package"; + } +} + +# Pass this the name of a binary package, and the name of the file wanted +# for the package, and it will return the actual filename to use. For +# example if the package is foo, and the file is somefile, it will look for +# debian/somefile, and if found return that, otherwise, if the package is +# the main package, it will look for debian/foo, and if found, return that. +# Failing that, it will return nothing. +sub pkgfile { my $package=shift; my $filename=shift; + if (-e "debian/$package.$filename") { + return "debian/$package.$filename"; + } + elsif ($package eq $dh{MAINPACKAGE} && -e "debian/$filename") { + return "debian/$filename"; + } + return ""; +} + +# Pass it a name of a binary package, it returns the name to prefix to files +# in debian for this package. +sub pkgext { my $package=shift; + if ($package ne $MAINPACKAGE) { + return "$package."; + } + return ""; +} + +# Returns 1 if the package is a native debian package, null otherwise. +# As a side effect, sets $dh{VERSION} to the version of this package. +{ + # Caches return code so it only needs to run dpkg-parsechangelog once. + my $isnative_cache; + + sub isnative { my $package=shift; + if ($isnative_cache eq undef) { + # Make sure we look at the correct changelog. + my $isnative_changelog=pkgfile($package,"changelog"); + if (! $isnative_changelog) { + $isnative_changelog="debian/changelog"; + } + + # Get the package version. + my $version=`dpkg-parsechangelog -l$isnative_changelog`; + ($dh{VERSION})=$version=~s/[^|\n]Version: \(.*\)\n//m; + + # Is this a native Debian package? + if ($dh{VERSION}=~m/.*-/) { + $isnative_cache=1; + } + else { + $isnative_cache=0; + } + } + + return $isnative_cache; + } +} + +# Automatically add a shell script snippet to a debian script. +# Only works if the script has #DEBHELPER# in it. +# +# Parameters: +# 1: script to add to +# 2: filename of snippet +# 3: sed commands to run on the snippet. Ie, s/#PACKAGE#/$PACKAGE/ +sub autoscript { + error "autoscript() not yet implemented (lazy, lazy!)"; +# autoscript_script=$1 +# autoscript_filename=$2 +# autoscript_sed=$3 +# autoscript_debscript=debian/`pkgext $PACKAGE`$autoscript_script.debhelper +# +# if [ -e "$DH_AUTOSCRIPTDIR/$autoscript_filename" ]; then +# autoscript_filename="$DH_AUTOSCRIPTDIR/$autoscript_filename" +# else +# if [ -e "/usr/lib/debhelper/autoscripts/$autoscript_filename" ]; then +# autoscript_filename="/usr/lib/debhelper/autoscripts/$autoscript_filename" +# else +# error "/usr/lib/debhelper/autoscripts/$autoscript_filename does not exist" +# fi +# fi +# +# complex_doit "echo \"# Automatically added by `basename $0`\" >> $autoscript_debscript" +# complex_doit "sed \"$autoscript_sed\" $autoscript_filename >> $autoscript_debscript" +# complex_doit "echo '# End automatically added section' >> $autoscript_debscript" +} + +# Reads in the specified file, one word at a time, and returns an array of +# the result. +sub filearray { $file=shift; + my @ret; + open (DH_FARRAY_IN,"<$file") || error("cannot read $file: $1"); + while () { + push @ret,split(/\s/,$_); + } + close DH_ARRAY; + + return @ret; +} + +# Returns a list of packages in the control file. +# Must pass "arch" or "indep" to specify arch-dependant or -independant +# packages. If nothing is specified, returns all packages. +sub GetPackages { $type=shift; + my $package; + my $arch; + my @list; + open (CONTROL,") { + chomp; + s/\s+$//; + if (/^Package:\s+(.*)/) { + $package=$1; + } + if (/^Architecture:\s+(.*)/) { + $arch=$1; + } + if (!$_ or eof) { # end of stanza. + if ($package && + (($type eq 'indep' && $arch eq 'all') || + ($type eq 'arch' && $arch ne 'all') || + ! $type)) { + push @list, $package; + undef $package; + undef $arch; + } + } + } + close CONTROL; + + return @list; +} + +1 diff --git a/autoscripts/postinst-emacsen b/autoscripts/postinst-emacsen new file mode 100644 index 00000000..45f1deec --- /dev/null +++ b/autoscripts/postinst-emacsen @@ -0,0 +1 @@ +/usr/lib/emacsen-common/emacs-package-install #PACKAGE# diff --git a/autoscripts/prerm-emacsen b/autoscripts/prerm-emacsen new file mode 100644 index 00000000..d11dafab --- /dev/null +++ b/autoscripts/prerm-emacsen @@ -0,0 +1 @@ +/usr/lib/emacsen-common/emacs-package-remove #PACKAGE# diff --git a/debhelper.1 b/debhelper.1 new file mode 100644 index 00000000..f3296666 --- /dev/null +++ b/debhelper.1 @@ -0,0 +1,104 @@ +.TH DEBHELPER 1 "" "Debhelper Commands" "Debhelper Commands" +.SH NAME +debhelper \- overview of the debhelper commands +.SH SYNOPSIS +.B dh_* +.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Npackage] [-Ptmpdir]" +.SH "DESCRIPTION" +Debhelper is a collection of programs that can be used in debian/rules files +to automate common tasks related to building debian binary packages. All the +debhelper commands accept a set of options, and this man page is here to +document those options and to document debhelper as a whole. For additional +options, and documentation for each individual command, see the commands' own +man pages. +.SH "SHARED DEBHLPER OPTIONS" +.TP +.B \-v, \--verbose +Verbose mode: show all commands that modify the package build directory. +.TP +.B \--no-act +Do not really do anything. If used with -v, the result is that the command +will output a list of what it would have done. +.TP +.B \-a, \--arch +Act on all architecture dependent packages. +.TP +.B \-i, \--indep +Act on all architecture independent packages. +.TP +.B \-ppackage, \--package=package +Act on the package named "package". +.TP +.B \-Npackage, \--no-package=package +Do not act on the specified package even if an -a, -i, or -p option lists +the package as one that should be acted on. +.TP +.B \-Ptmpdir, \--tmpdir=tmpdir +Use "tmpdir" for package build directory. +.SH NOTES +.TP +.B Multiple binary package support +.RS +If your source package generates more than one binary package, debhelper +programs will default to acting on all binary packages when run. If your +source package happens to generate one architecture dependent package, and +another architecture independent package, this is not the correct behavior, +because you need to generate the architecture dependent packages in the +binary-arch debian/rules target, and the architecture independent packages +in the binary-indep debian/rules target. + +To facilitate this, as well as give you more control over which packages +are acted on by debhelper programs, all debhelper programs accept the +.B -a +, +.B -i +, and +.B -p +parameters. These parameters are cumulative. If none are given, +debhelper programs default to acting on all packages listed in the control +file. +.P +See +.BR /usr/doc/debhelper/examples/rules.multi +for an example of how to use this. +.RE +.TP +.B Package build directories +.RS +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/ for each +additional package. +.P +Sometimes, you might want to use some other temporary directory. This is +supported by the +.B -P +flag. For example, "dh_installdocs -Pdebian/tmp", will use debian/tmp as the +temporary directory. Note that if you use -P, the debhelper programs can only +be acting on a single package at a time. So if you have a package that builds +many binary packages, you will need to use the -p flag to specify which +binary package the debhelper program will act on. +.RE +.TP +.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/ +before trying to put files there, dh_installmenu knows you need a +debian/tmp/usr/lib/menu/ before installing the menu files, etc. +.SH ENVIRONMENT +.TP +.I DH_VERBOSE +Enables verbose mode. +.TP +.I DH_NO_ACT +Enables no-act mode. +.SH "SEE ALSO" +.TP +.BR /usr/doc/debhelper/README +An introduction to debhelper. +.TP +.BR /usr/doc/debhelper/examples/ +A set of example debian/rules files that use debhelper. +.SH AUTHOR +Joey Hess diff --git a/debian/changelog b/debian/changelog index db56690c..10b81798 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,17 @@ +debhelper (1.0.1) unstable; urgency=low + + * Backported bug fixes from the 1.1 tree: + * dh_installdocs: used -m 655 for a TODO file. (minor, dh_fixperms cleans + up after it) + * dh_fixperms: had a problem with removing x bits on examples files + * dh_compress: since version 0.88 or so, dh_compress has bombed out if + a debian/compress file returned an error code. This was actually + unintentional - in fact, the debian/compress example in the man page + will fail this way if usr/info or usr/X11R6 is not present. Corrected + the program to not fail. (#26214) + + -- Joey Hess Sun, 30 Aug 1998 22:21:26 -0700 + debhelper (1.0) stable unstable; urgency=low * 1.0 at last! diff --git a/debian/control b/debian/control index c4dccd95..0a97ae80 100644 --- a/debian/control +++ b/debian/control @@ -9,6 +9,6 @@ Architecture: all Depends: perl (>= 5.004), fileutils (>= 3.16-4), file Description: helper programs for debian/rules A collection of programs that can be used in a debian/rules file to - automate common tasks. Programs are included to install various files into - your package, compress files, fix file permissions, integrate your package - with the debian menu system, etc. + automate common tasks related to building binary debian packages. Programs + are included to install various files into your package, compress files, fix + file permissions, integrate your package with the debian menu system, etc. diff --git a/debian/cron.d b/debian/cron.d new file mode 100644 index 00000000..e69de29b diff --git a/debian/cron.daily b/debian/cron.daily new file mode 100644 index 00000000..e69de29b diff --git a/debian/docs b/debian/docs new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/debian/docs @@ -0,0 +1 @@ + diff --git a/debian/menu b/debian/menu new file mode 100644 index 00000000..e69de29b diff --git a/dh_builddeb.1 b/dh_builddeb.1 index ecbbfa6c..cf492b4c 100644 --- a/dh_builddeb.1 +++ b/dh_builddeb.1 @@ -1,49 +1,24 @@ -.TH DH_BUILDDEB 1 +.TH DH_BUILDDEB 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_builddeb \- build debian packages .SH SYNOPSIS .B dh_builddeb -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir]" +.I "[debhelper options]" .SH "DESCRIPTION" dh_builddeb simply calls .BR dpkg (8) to build a .deb package or packages. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory, etc. -.TP -.B \-a, \--arch -Build all architecture dependent packages. -.TP -.B \-i, \--indep -Build all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B -ppackage, \--package=package -Build the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be built. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_clean.1 b/dh_clean.1 index cb437e9c..333fa174 100644 --- a/dh_clean.1 +++ b/dh_clean.1 @@ -1,9 +1,9 @@ -.TH DH_CLEAN 1 +.TH DH_CLEAN 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_clean \- clean up package build directories .SH SYNOPSIS .B dh_clean -.I "[-v] [-a] [-i] [-k] [--no-act] [-ppackage] [-Ptmpdir] [file ...]" +.I "[debhelper options] [-k] [file ...]" .SH "DESCRIPTION" dh_clean is a debhelper program that is responsible for cleaning up after a package is built. It removes the package build directories, and removes some @@ -11,24 +11,10 @@ other files, such as debian/substvars, debian/files, DEADJOE, emacs backup files, etc. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Clean up the package build directory for all architecture dependent packages. -.TP -.B \-i, \--indep -Clean up the package build directory for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Clean up the package build directory for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-k, \--keep Do not delete debian/files. When do you want to use this? Anytime you have a @@ -41,23 +27,12 @@ was built. .TP .B file ... Delete these files too. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will have their package build directories cleaned up. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS Filenames with spaces in them will not currently be deleted when specified as parameters. diff --git a/dh_compress b/dh_compress index 7d6e4979..1b58f70a 100755 --- a/dh_compress +++ b/dh_compress @@ -13,7 +13,7 @@ filelist () { if [ "$compress" ]; then # The config file is a sh script that outputs the files to be compressed # (typically using find). - sh $olddir/$compress 2>/dev/null || true + sh $olddir/$compress 2>/dev/null else # By default fall back on what the policy manual says to compress. find usr/info usr/man usr/X11*/man -type f ! -name "*.gz" 2>/dev/null || true diff --git a/dh_compress.1 b/dh_compress.1 index c78291ee..ec0def52 100644 --- a/dh_compress.1 +++ b/dh_compress.1 @@ -1,9 +1,9 @@ -.TH DH_COMPRESS 1 +.TH DH_COMPRESS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_compress \- compress files and fix symlinks in package build directories .SH SYNOPSIS .B dh_compress -.I "[-v] [-a] [-i] [-Xitem] [--no-act] [-ppackage] [-Ptmpdir]" +.I "[debhelper options] [-Xitem]" .SH "DESCRIPTION" dh_compress is a debhelper program that is responsible for compressing the files in package build directories, and makes sure that any symlinks @@ -31,24 +31,10 @@ customization of what files are compressed: ! -name "copyright" .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Compress files for all architecture dependent packages. -.TP -.B \-i, \--indep -Compress files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Compress files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-Xitem, \--exclude=item Exclude files that contain "item" anywhere in their filename from being @@ -57,27 +43,16 @@ You may use this option multiple times to build up a list of things to exclude. You can accomplish the same thing by using a debian/compress file, but this is easier. .SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will have their files compressed. -.P The debian/compress file applies to the first binary package listed in your control file. For the other packages, you can make files named debian/package.compress, where "package" is the name of the package they apply to. (This works for the first binary package too.) .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS Filenames with spaces in them may not properly be compressed. .SH "CONFORMS TO" diff --git a/dh_debstd.1 b/dh_debstd.1 index e3568eb6..e47e64aa 100644 --- a/dh_debstd.1 +++ b/dh_debstd.1 @@ -5,7 +5,7 @@ dh_debstd \- mimic debstd with debhelper commands .B dh_debstd .I "[-v] [--no-act] [-m] [-c] [-u] [-s] [[changelog] file ...]" .SH "DESCRIPTION" -dh_debstd is a debhelper command that mimics the behavior of debstd, by +dh_debstd is a program that mimics the behavior of debstd, by calling other debhelper commands. Its behavior is not a complete nor an exact copy of what debstd does, but it should be close enough to be usable. .P @@ -59,14 +59,17 @@ generated if dh_debstd notices scripts without "#DEBHELPER#" in them. Enables verbose mode .TP .I DH_NO_ACT -Enables no-act mode (see above). +Enables no-act mode .SH "SEE ALSO" +.TP .BR /usr/doc/debhelper/from-debstd -, +.TP .BR debstd (1) +.TP +.BR debhelper (1) .SH BUGS It doesn't completly mimic debstd. Some things debstd handles are not supported -by debhelper. With the exception of buildinfo.Debian files, everything that -is not supported will generate a warning message. +by debhelper. Everything that is not supported will generate a warning +message if you try to use it. .SH AUTHOR Joey Hess diff --git a/dh_du.1 b/dh_du.1 index 9497a61d..670e371d 100644 --- a/dh_du.1 +++ b/dh_du.1 @@ -1,4 +1,4 @@ -.TH DH_DU 1 +.TH DH_DU 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_du \- generate DEBIAN/du file .SH SYNOPSIS @@ -11,6 +11,6 @@ This program is now depricated, and does nothing, after a decision by the debian developers that du control files should not exit. It will simply output a warning message now. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_fixperms b/dh_fixperms index 0e845335..544ee9be 100755 --- a/dh_fixperms +++ b/dh_fixperms @@ -18,7 +18,7 @@ for PACKAGE in $DH_DOPACKAGES; do doit "chmod -R u+rw $TMP" fi - FIND_OPTIONS="" + FIND_OPTIONS= else # Do it the hard way. complex_doit "find $TMP ! \( $DH_EXCLUDE_FIND \) -print0 \ @@ -33,8 +33,8 @@ for PACKAGE in $DH_DOPACKAGES; do # Fix up premissions in usr/doc, setting everything to not exectable # by default, but leave examples directories alone. - complex_doit "find $TMP/usr/doc -type f $FIND_OPTIONS ! -regex .\*/examples/.\* -print0 \ - 2>/dev/null | xargs -0r chmod 644" + complex_doit "find $TMP/usr/doc -type f $FIND_OPTIONS -print0 \ + 2>/dev/null | xargs -0r chmod 644" complex_doit "find $TMP/usr/doc -type d $FIND_OPTIONS -print0 \ 2>/dev/null | xargs -0r chmod 755" diff --git a/dh_fixperms.1 b/dh_fixperms.1 index 19f89d11..fd304c70 100644 --- a/dh_fixperms.1 +++ b/dh_fixperms.1 @@ -1,9 +1,9 @@ -.TH DH_FIXPERMS 1 +.TH DH_FIXPERMS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_fixperms \- fix permissions of files in package build directories .SH SYNOPSIS .B dh_fixperms -.I "[-v] [-a] [-i] [-Xitem] [--no-act] [-ppackage] [-Ptmpdir]" +.I "[debhelper options] [-Xitem]" .SH "DESCRIPTION" dh_fixperms is a debhelper program that is responsible for setting the permissions of files in package build directories to a sane state. @@ -15,46 +15,21 @@ root, and it removes group and other write permission from all files. Finally, it removes execute permissions from any libraries that have it set. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Fix permissions for all architecture dependent packages. -.TP -.B \-i, \--indep -Fix permissions for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Fix permissions for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-Xitem, \--exclude=item Exclude files that contain "item" anywhere in their filename from having their permissions changed. You may use this option multiple times to build up a list of things to exclude. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will have their permissions fixed. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.1 .SH AUTHOR diff --git a/dh_gencontrol.1 b/dh_gencontrol.1 index b0cc783c..2bfade49 100644 --- a/dh_gencontrol.1 +++ b/dh_gencontrol.1 @@ -1,57 +1,34 @@ -.TH DH_INSTALLDEBFILES 1 +.TH DH_GENCONTROL 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_gencontrol \- generate and install control file .SH SYNOPSIS .B dh_gencontrol -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-uparams]" +.I "[debhelper options] [-uparams]" .SH "DESCRIPTION" -dh_gencontrol is a debhelper program that is responsible for generating and -installing control files, and installing them into the DEBIAN directory with -the proper permissions. +dh_gencontrol is a debhelper program that is responsible for generating +control files, and installing them into the DEBIAN directory with the proper +permissions. .P This program is merely a wrapper around .BR dpkg-gencontrol (1) .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install files for all architecture dependent packages. -.TP -.B \-i, \--indep -Install files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-uparams, \--update-rcd-params=params Pass "params" to .BR dpkg-gencontrol (1) -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. +.SH "SEE ALSO" .TP -.I DH_VERBOSE -Enables verbose mode +.BR debhelper (1) .TP -.I DH_NO_ACT -Enables no-act mode (see above). -.SH "SEE ALSO" -.BR /usr/doc/debhelper/README .BR dpkg-shlibdeps (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 diff --git a/dh_getopt.pl b/dh_getopt.pl index b7a856c4..f1aa7cec 100755 --- a/dh_getopt.pl +++ b/dh_getopt.pl @@ -58,6 +58,11 @@ sub AddPackage { my($option,$value)=@_; } } +# Add a package to a list of packages that should not be acted on. +sub ExcludePackage { my($option,$value)=@_; + $exclude_package{$value}=1; +} + # Add another item to the exclude list. sub AddExclude { my($option,$value)=@_; push @exclude,$value; @@ -80,7 +85,10 @@ $ret=GetOptions( "arch" => \&AddPackage, "p=s" => \&AddPackage, - "package=s" => \&AddPackage, + "package=s" => \&AddPackage, + + "N=s" => \&ExcludePackage, + "no-package=s" => \&ExcludePackage, "n" => \$noscripts, "noscripts" => \$noscripts, @@ -105,7 +113,7 @@ $ret=GetOptions( "u=s", => \$u_params, "update-rcd-params=s", => \$u_params, - "dpkg-shlibdeps-params=s", => \$u_params, + "dpkg-shlibdeps-params=s", => \$u_params, "m=s", => \$major, "major=s" => \$major, @@ -149,12 +157,20 @@ foreach (@exclude) { } $exclude_find=~s/ -or $//; +# Remove excluded packages from the list of packages to act on. +undef @package_list; +foreach $package (@packages) { + if (! $exclude_package{$package}) { + push @package_list, $package; + } +} + # Now output everything, in a format suitable for a shell to eval it. # Note the last line sets $@ in the shell to whatever arguements remain. print qq{ DH_VERBOSE='$verbose' DH_NO_ACT='$no_act' -DH_DOPACKAGES='@packages' +DH_DOPACKAGES='@package_list' DH_DOINDEP='$indep' DH_DOARCH='$arch' DH_NOSCRIPTS='$noscripts' diff --git a/dh_installchangelogs.1 b/dh_installchangelogs.1 index 84fb6b46..70822338 100644 --- a/dh_installchangelogs.1 +++ b/dh_installchangelogs.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLCHANGELOGS 1 +.TH DH_INSTALLCHANGELOGS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installchangelogs \- install changelogs into package build directories .SH SYNOPSIS .B dh_installchangelogs -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [upstream]" +.I "[debhelper options] [upstream]" .SH "DESCRIPTION" dh_installchangelogs is a debhelper program that is responsible for installing changelogs into package build directories. @@ -20,47 +20,22 @@ not a native debian package, then this upstream changelog will be installed as usr/doc/package/changelog in the package build directory. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install changelogs for all architecture dependent packages. -.TP -.B \-i, \--indep -Install changelogs for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install changelogs for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B upstream Instal this file as the upstream changelog. .SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will have the changelogs installed into them. -.P It is an error to specify an upstream changelog file for a debian native package. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 .SH AUTHOR diff --git a/dh_installcron.1 b/dh_installcron.1 index 20bdc82f..adda0711 100644 --- a/dh_installcron.1 +++ b/dh_installcron.1 @@ -1,12 +1,12 @@ -.TH DH_INSTALLCRON 1 +.TH DH_INSTALLCRON 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installcron \- install cron scripts into etc/cron.* .SH SYNOPSIS .B dh_installcron -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir]" +.I "[debhelper options]" .SH "DESCRIPTION" dh_installcron is a debhelper program that is responsible for installing -cron scripts into etc/cron.* in package build directories. The files +cron scripts into etc/cron.* in package build directories. The files debian/cron.daily, debian/cron.weekly, debian/cron.monthly, and debian/cron.d are installed. If your package generates multiple binary packages (or if you just prefer to do it), you can also use filenames like @@ -14,41 +14,16 @@ debian/package.cron.daily, where "package" is replaced with the name of the binary package this cron script goes into. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install cron files for all architecture dependent packages. -.TP -.B \-i, \--indep -Install cron files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install cron files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 .SH AUTHOR diff --git a/dh_installdeb.1 b/dh_installdeb.1 index fc7b8dee..03fa1068 100644 --- a/dh_installdeb.1 +++ b/dh_installdeb.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLDEBFILES 1 +.TH DH_INSTALLDEB 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installdeb \- install files into the DEBIAN directory .SH SYNOPSIS .B dh_installdeb -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir]" +.I "[debhelper options]" .SH "DESCRIPTION" dh_installdeb is a debhelper program that is responsible for installing files into the DEBIAN directory in package build directories with the @@ -34,41 +34,16 @@ programs, such as , and are shell script fragments. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install files for all architecture dependent packages. -.TP -.B \-i, \--indep -Install files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 .SH AUTHOR diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index cf1580d0..ae4782d2 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -1,4 +1,4 @@ -.TH DH_INSTALLDEBFILES 1 +.TH DH_INSTALLDEBFILES 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installdebfiles \- install files into the DEBIAN directory .SH SYNOPSIS @@ -21,9 +21,13 @@ This program will be removed at some time in the furture. Any options passed to this program will be sent to each of the 3 programs listed above. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.TP +.BR debhelper (1) +.TP .BR dh_installdeb (1) +.TP .BR dh_shlibdeps (1) +.TP .BR dh_gencontrol (1) .SH AUTHOR Joey Hess diff --git a/dh_installdirs.1 b/dh_installdirs.1 index 8ae440c6..77c992d9 100644 --- a/dh_installdirs.1 +++ b/dh_installdirs.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLDIRS 1 +.TH DH_INSTALLDIRS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installdirs \- create subdirectories in package build directories .SH SYNOPSIS .B dh_installdirs -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-A] [dir ...]" +.I "[debhelper options] [-A] [dir ...]" .SH "DESCRIPTION" dh_installdirs is a debhelper program that is responsible for creating subdirectories in package build directories. @@ -21,50 +21,25 @@ Be sure to only use directory names relative to the package build directory. Ie, "/usr/bin" should not be used, use "usr/bin" instead. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Create directories for all architecture dependent packages. -.TP -.B \-i, \--indep -Create directories for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Create directories for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-A, \--all Create any directories specified by command line parameters in ALL packages -acted on. +acted on, not just the first. .TP .B dir ... Create these directories in the package build directory of the first package acted on. (Or in all packages if -A is specified.) -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS -Directories with spaces in them will not currently be installed. +Directories with spaces in them will not currently be installed properly. .SH AUTHOR Joey Hess diff --git a/dh_installdocs b/dh_installdocs index 7a11b7f7..fcdedc50 100755 --- a/dh_installdocs +++ b/dh_installdocs @@ -41,7 +41,7 @@ for PACKAGE in $DH_DOPACKAGES; do todo=`pkgfile $PACKAGE TODO` if [ "$todo" ]; then if isnative; then - doit "install -m 644 -p $todo $TMP/usr/doc/$PACKAGE/TODO" + doit "install -m 655 -p $todo $TMP/usr/doc/$PACKAGE/TODO" else doit "install -m 644 -p $todo $TMP/usr/doc/$PACKAGE/TODO.Debian" fi diff --git a/dh_installdocs.1 b/dh_installdocs.1 index 98737606..ffae1623 100644 --- a/dh_installdocs.1 +++ b/dh_installdocs.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLDOCS 1 +.TH DH_INSTALLDOCS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installdocs \- install documentation into package build directories .SH SYNOPSIS .B dh_installdocs -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-A] [file ...]" +.I "[debhelper options] [-A] [file ...]" .SH "DESCRIPTION" dh_installdocs is a debhelper program that is responsible for installing documentation into usr/doc/package in package build directories. @@ -31,24 +31,10 @@ A file named debian/package.docs (debian/docs may be used for the first binary package in debian/control) can list other files to be installed. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install files for all architecture dependent packages. -.TP -.B \-i, \--indep -Install files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-A, \--all Install all files specified by command line parameters in ALL packages @@ -58,26 +44,15 @@ acted on. Install these files as documentation into the first package acted on. (Or in all packages if -A is specified). .SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. -.P Note that dh_installdocs will happily copy entire directory hierarchies if you ask it to (it uses cp -a internally). If it is asked to install a directory, it will install the complete contents of the directory. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS Filenames with spaces in them will not currently be installed. .SH "CONFORMS TO" diff --git a/dh_installemacsen b/dh_installemacsen new file mode 100755 index 00000000..e87cecef --- /dev/null +++ b/dh_installemacsen @@ -0,0 +1,34 @@ +#!/bin/sh -e +# +# Registration with emacsen-common. + +PATH=debian:$PATH:/usr/lib/debhelper +. dh_lib + +for PACKAGE in $DH_DOPACKAGES; do + TMP=`tmpdir $PACKAGE` + + emacsen_install=`pkgfile $PACKAGE emacsen-install` + emacsen_remove=`pkgfile $PACKAGE emacsen-remove` + + if [ "$emacsen_install" ]; then + if [ ! -d "$TMP/usr/lib/emacsen-common/packages/install" ]; then + doit "install -d $TMP/usr/lib/emacsen-common/packages/install" + fi + doit "install $emacsen_install $TMP/usr/lib/emacsen-common/packages/install/$PACKAGE" + fi + + if [ "$emacsen_remove" ]; then + if [ ! -d "$TMP/usr/lib/emacsen-common/packages/remove" ]; then + doit "install -d $TMP/usr/lib/emacsen-common/packages/remove" + fi + doit "install $emacsen_remove $TMP/usr/lib/emacsen-common/packages/remove/$PACKAGE" + fi + + if [ "$emacsen_install" -o "$emacsen_remove" ]; then + if [ ! "$DH_NOSCRIPTS" ]; then + autoscript "postinst" "postinst-emacsen" + autoscript "prerm" "prerm-emacsen" + fi + fi +done diff --git a/dh_installemacsen.1 b/dh_installemacsen.1 new file mode 100644 index 00000000..15ec575a --- /dev/null +++ b/dh_installemacsen.1 @@ -0,0 +1,42 @@ +.TH DH_INSTALLEMACSEN 1 "" "Debhelper Commands" "Debhelper Commands" +.SH NAME +dh_installemacsen \- register an emacs add on package +.SH SYNOPSIS +.B dh_installemacsen +.I "[debhelper options] [-n]" +.SH "DESCRIPTION" +dh_installemacsen is a debhelper program that is responsible for installing +files used by the debian emacsen-common package into package build directories. +.P +It also automatically generates the postinst and prerm commands needed to +register a package as an emacs add on package. See +.BR dh_installdeb (1) +for an explanation of how this works. +.P +If a file named debian/package.emacsen-install exists, then it is installed into +usr/lib/emacsen-common/packages/install/package in the package build +directory. Similarly, debian/package.emacsen-remove is installed into +usr/lib/emacsen-common/packages/remove/package +.P +For the first first binary package listed in the control file, you may use +debian/emacsen-install and debian/emacsen-remove instead. +.SH OPTIONS +.TP +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. +.TP +.B \-n, \--noscripts +Do not modify postinst/prerm scripts. +.SH ENVIRONMENT +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. +.SH "SEE ALSO" +.TP +.BR debhelper (1) +.TP +.BR /usr/doc/emacsen-common/debian-emacs-policy.gz +.SH AUTHOR +Joey Hess diff --git a/dh_installexamples.1 b/dh_installexamples.1 index be0b4cc3..776aef79 100644 --- a/dh_installexamples.1 +++ b/dh_installexamples.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLEXAMPLES 1 +.TH DH_INSTALLEXAMPLES 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installexamples \- install example files into package build directories .SH SYNOPSIS .B dh_installexamples -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-A] [file ...]" +.I "[debhelper options] [-A] [file ...]" .SH "DESCRIPTION" dh_installexamples is a debhelper program that is responsible for installing examples into usr/doc/package/examples in package build directories. @@ -17,24 +17,10 @@ A file named debian/package.examples (debian/examples may be used for the first binary package in debian/control) can list other files to be installed. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install files for all architecture dependent packages. -.TP -.B \-i, \--indep -Install files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-A, \--all Install any files specified by command line parameters in ALL packages @@ -44,26 +30,15 @@ acted on. Install these files as examples into the first package acted on. (Or into all packages if -A is specified.) .SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. -.P Note that dh_installexamples will happily copy entire directory hierarchies if you ask it to (it uses cp -a internally). If it is asked to install a directory, it will install the complete contents of the directory. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS Filenames with spaces in them will not currently be installed. .SH "CONFORMS TO" diff --git a/dh_installinit.1 b/dh_installinit.1 index 99222bc4..f76ec917 100644 --- a/dh_installinit.1 +++ b/dh_installinit.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLINIT 1 +.TH DH_INSTALLINIT 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installinit \- install init scripts into package build directories .SH SYNOPSIS .B dh_installinit -.I "[-v] [-a] [-i] [--no-act] [--init-script=scriptname] [-ppackage] [-Ptmpdir] [-n] [-r] [-d] [-uparams]" +.I "[debhelper options] [--init-script=scriptname] [-n] [-r] [-d] [-uparams]" .SH "DESCRIPTION" dh_installinit is a debhelper program that is responsible for installing init scripts into package build directories. @@ -19,24 +19,10 @@ by the packagename. (You may use debian/init for the first binary package listed in the control file.) .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install init scripts into all architecture dependent packages. -.TP -.B \-i, \--indep -Install init scripts into all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install init scripts into the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-n, \--noscripts Do not modify postinst/postrm/prerm scripts. @@ -60,22 +46,11 @@ If not specified, "default" will be passed to Use "scriptname" as for the filename the init script is installed as in etc/init.d/ . This is useful if you need to have an init script with a name different from the package's name. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_installmanpages.1 b/dh_installmanpages.1 index 7053dbc6..edc37c21 100644 --- a/dh_installmanpages.1 +++ b/dh_installmanpages.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLMANPAGES 1 +.TH DH_INSTALLMANPAGES 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installmanpages \- install man pages into package build directories .SH SYNOPSIS .B dh_installmanpages -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [file ...]" +.I "[debhelper options] [file ...]" .SH "DESCRIPTION" dh_installmanpages is a debhelper program that is responsible for automatically installing man pages into usr/man/ and usr/X11R6/man/ in @@ -24,50 +24,25 @@ After the man page installation step, dh_installmanpages will check to see if any of the man pages are ".so" links. If so, it changes them to symlinks. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install man pages into all architecture dependent packages. -.TP -.B \-i, \--indep -Install man pages into all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install man pages into the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B file ... Do not install these files as man pages, even if they look like valid man pages. .SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. -.P dh_installmanpages will install the man pages it finds into .B all packages you tell it to act on, since it can't tell what package the man pages belong in. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS Man pages with the extension .B .man diff --git a/dh_installmenu.1 b/dh_installmenu.1 index 7147b49f..d9d8296a 100644 --- a/dh_installmenu.1 +++ b/dh_installmenu.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLMENU 1 +.TH DH_INSTALLMENU 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_installmenu \- install debian menu files into package build directories .SH SYNOPSIS .B dh_installmenu -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-n]" +.I "[debhelper options] [-n]" .SH "DESCRIPTION" dh_installmenu is a debhelper program that is responsible for installing files used by the debian menu package into package build directories. @@ -25,45 +25,21 @@ For the first first binary package listed in the control file, you may use debian/menu and debian/menu-method instead. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install menu files into all architecture dependent packages. -.TP -.B \-i, \--indep -Install menu files into all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install menu files into the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-n, \--noscripts Do not modify postinst/postrm scripts. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. +.SH "SEE ALSO" .TP -.I DH_VERBOSE -Enables verbose mode +.BR debhelper (1) .TP -.I DH_NO_ACT -Enables no-act mode (see above). -.SH "SEE ALSO" -.BR /usr/doc/debhelper/README -, .BR menufile (5) .SH AUTHOR Joey Hess diff --git a/dh_makeshlibs.1 b/dh_makeshlibs.1 index bad72c4e..282d54fe 100644 --- a/dh_makeshlibs.1 +++ b/dh_makeshlibs.1 @@ -1,9 +1,9 @@ -.TH DH_MAKESHLIBS 1 +.TH DH_MAKESHLIBS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_makeshlibs \- automatically create shlibs file .SH SYNOPSIS .B dh_makeshlibs -.I "[-v] [-a] [-i] [--no-act] [-mmajor] [-Ptmpdir] [-ppackage] [-V[dependancies]]" +.I "[debhelper options] [-mmajor] [-V[dependancies]]" .SH "DESCRIPTION" dh_makeshlibs is a debhelper program that automatically scans for shared libraries, and generates a shlibs file for the libraries it finds. @@ -12,24 +12,10 @@ For this program to work, you cannot have already installed a DEBIAN/shlibs file. If such a file exits, the program will exit with an error. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Generate shlibs files for all architecture dependent packages. -.TP -.B \-i, \--indep -Generate shlibs files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Generate shlibs file for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-mmajor, \--major=major Instead of trying to guess the major number of the library from the filename @@ -56,26 +42,15 @@ Assuming the current version of the package is 1.0-3, generates a shlibs file that looks something like: libfoobar 1 libfoobar1 (>= 1.0-3) .TP -.B dh_makeshlibs \-V "libfoobar1 (>= 1.0)" +.B dh_makeshlibs \-V "'libfoobar1 (>= 1.0)'" Generates a shlibs file that looks something like: libfoobar 1 libfoobar1 (>= 1.0) -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS There is no guarantee that the program will get the shlibs file right. For example, it may not correctly guess the major number of your package. In diff --git a/dh_md5sums.1 b/dh_md5sums.1 index f432fed2..22b4fe28 100644 --- a/dh_md5sums.1 +++ b/dh_md5sums.1 @@ -1,9 +1,9 @@ -.TH DH_MD5SUMS 1 +.TH DH_MD5SUMS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_md5sums \- generate DEBIAN/md5sums file .SH SYNOPSIS .B dh_md5sums -.I "[-x] [-v] [-a] [-i] [--no-act] [-Ptmpdir] [-ppackage]" +.I "[debhelper options] [-x]" .SH "DESCRIPTION" dh_md5sums is a debhelper program that is responsible for generating a DEBIAN/md5sums file, which lists the md5sums of each file in the package. @@ -14,44 +14,19 @@ All files in DEBIAN/ are omitted from the md5sums file, as are all conffiles The md5sums file is installed with proper permissions and ownerships. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Generate md5sums files for all architecture dependent packages. -.TP -.B \-i, \--indep -Generate md5sums files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Generate md5sums file for the package named "package". +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-x, \--include-conffiles Include conffiles in the md5sums list. Note that this is redundant, and included elsewhere in debian packages. -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_movefiles.1 b/dh_movefiles.1 index 1c27f968..260d5069 100644 --- a/dh_movefiles.1 +++ b/dh_movefiles.1 @@ -1,9 +1,9 @@ -.TH DH_MOVEFILES 1 +.TH DH_MOVEFILES 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_movefiles \- moves files out of debian/tmp into subpackages .SH SYNOPSIS .B dh_movefiles -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [file ..]" +.I "[debhelper options] [file ..]" .SH "DESCRIPTION" dh_movefiles is a debhelper program that is responsible for moving files out of debian/tmp and into other package build directories. This may be useful @@ -22,46 +22,21 @@ symlinks. This is done becuase it tends to be a good thing to have symlinks last in debian packages, particularly in shared library packages. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Move files for all architecture dependent packages. -.TP -.B \-i, \--indep -Move files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Move files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B file .. Lists files to move. The filenames listed should be relative to debian/tmp/. You can also list directory names, and the whole directory will be moved. You can even use wildcards if you like. It is an error to list files here unless you use -p, -i, or -a to tell dh_movefiles which subpackage to put them in. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_shlibdeps.1 b/dh_shlibdeps.1 index b976f8c9..f9f6f3e4 100644 --- a/dh_shlibdeps.1 +++ b/dh_shlibdeps.1 @@ -1,9 +1,9 @@ -.TH DH_INSTALLDEBFILES 1 +.TH DH_SHLIBDEPS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_shlibdeps \- calculate shared library dependancies .SH SYNOPSIS .B dh_shlibdeps -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-uparams]" +.I "[debhelper options] [-uparams]" .SH "DESCRIPTION" dh_shlibdeps is a debhelper program that is responsible for calculating shared library dependancies for all executables found in the package build @@ -11,51 +11,25 @@ directory. .P This program is merely a wrapper around .BR dpkg-shlibdeps (1) -that calls it once for each package listed in the control file. You may -prefer to simply run -.BR dpkg-shlibdeps (1) -by hand. +that calls it once for each package listed in the control file. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Install files for all architecture dependent packages. -.TP -.B \-i, \--indep -Install files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-uparams, \--dpkg-shlibdeps-params=params Pass "params" to .BR dpkg-shlibdeps (1) -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. +.SH "SEE ALSO" .TP -.I DH_VERBOSE -Enables verbose mode +.BR debhelper (1) .TP -.I DH_NO_ACT -Enables no-act mode (see above). -.SH "SEE ALSO" -.BR /usr/doc/debhelper/README .BR dpkg-shlibdeps (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 diff --git a/dh_strip.1 b/dh_strip.1 index 9ae97c60..960dc72e 100644 --- a/dh_strip.1 +++ b/dh_strip.1 @@ -1,9 +1,9 @@ -.TH DH_STRIP 1 +.TH DH_STRIP 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_strip \- strip executables, shared libraries, and some static libraries. .SH SYNOPSIS .B dh_strip -.I "[-v] [-a] [-i] [--no-act] [-Ptmpdir] [-ppackage]" +.I "[debhelper options]" .SH "DESCRIPTION" dh_strip is a debhelper program that is responsible for stripping executables, shared libraries, and static libraries that are not used for @@ -13,42 +13,16 @@ It assumes that files that have names like lib*_g.a are static libraries used in debugging, and will not strip them. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Strip files in all architecture dependent packages. -.TP -.B \-i, \--indep -Strip files in all architecture independent packages (likely, this is -pointless :-). -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Strip files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will have their files stripped. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode -.TP -.I DH_NO_ACT -Enables no-act mode (see above). +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 .SH AUTHOR diff --git a/dh_suidregister.1 b/dh_suidregister.1 index 57694956..edce61d0 100644 --- a/dh_suidregister.1 +++ b/dh_suidregister.1 @@ -1,9 +1,9 @@ -.TH DH_SUIDREGISTER 1 +.TH DH_SUIDREGISTER 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_suidregister \- set up package to register files with suidregister .SH SYNOPSIS .B dh_suidregister -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-A] [file ...]" +.I "[debhelper options] [-A] [file ...]" .SH "DESCRIPTION" dh_suidregister is a debhelper program that is responsible for modifying the postinst and postrm scripts of a package so the package will register files @@ -23,29 +23,15 @@ If neither of these methods is used to specify files, dh_suidregister will scan the package build directory for files that have suid permissions, and will automatically register all files it finds. .P -Note that this package modifies your postinst and postrm files. See +Note that this program modifies your postinst and postrm files. See .BR dh_installdeb (1) for an explanation of how this works. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -.TP -.B \-a, \--arch -Register files for all architecture dependent packages. -.TP -.B \-i, \--indep -Register files for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Register files for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-A, \--all Register any files specified by command line parameters in ALL packages @@ -55,24 +41,14 @@ with other debhelper programs. .B file ... Register these files in the first package acted on. (Or in all packages if -A is specified.) -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. +.SH "SEE ALSO" .TP -.I DH_VERBOSE -Enables verbose mode +.BR debhelper (1) .TP -.I DH_NO_ACT -Enables no-act mode (see above). -.SH "SEE ALSO" -.BR /usr/doc/debhelper/README -, .BR suidregister (8) .SH AUTHOR Joey Hess diff --git a/dh_testdir.1 b/dh_testdir.1 index 17561acc..309a7d94 100644 --- a/dh_testdir.1 +++ b/dh_testdir.1 @@ -1,9 +1,9 @@ -.TH DH_TESTDIR 1 +.TH DH_TESTDIR 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_testdir \- test directory before building debian package .SH SYNOPSIS .B dh_testdir -.I "[-v] [file ...]" +.I "[debhelper options] [file ...]" .SH "DESCRIPTION" dh_testdir tries to make sure that you are in the correct directory when building a debian package. It makes sure that the file debian/control @@ -11,18 +11,19 @@ exists, as well as any other files you specify. If not, it exits with an error. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -This currently has no effect. +.B [debhelper options] +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B file ... Test for the existence of these files. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH BUGS Files with spaces in their names will not be processed correctly. .SH AUTHOR diff --git a/dh_testroot.1 b/dh_testroot.1 index 605dae4c..6fcdf4f2 100644 --- a/dh_testroot.1 +++ b/dh_testroot.1 @@ -1,9 +1,9 @@ -.TH DH_TESTROOT 1 +.TH DH_TESTROOT 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_testroot \- ensure that a package is built as root .SH SYNOPSIS .B dh_testroot -.I "[-v]" +.I "[debhelper options]" .SH "DESCRIPTION" dh_testroot simply checks to see if you are root. If not, it exits with an error. Debian packages must be built as root, though you can use @@ -11,14 +11,15 @@ error. Debian packages must be built as root, though you can use to work around this. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. -This currently has no effect. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode. +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_testversion b/dh_testversion new file mode 100755 index 00000000..57c0e588 --- /dev/null +++ b/dh_testversion @@ -0,0 +1,24 @@ +#!/usr/bin/perl -w +# +# Debhelper version check. + +BEGIN { push @INC, "debian", "/usr/lib/debhelper" } +use Dh_Lib; +use Dh_Version; # contains the version number of debhelper. +init(); + +my($compare, $ver); + +if ($#ARGV > 0) { + $compare=shift; + $ver=shift; +} +elsif ($#ARGV eq 0) { + $compare=">="; + $ver=shift; +} + +if (defined $compare and defined $ver) { + system('dpkg','--compare-versions',$Dh_Version::version,$compare,$ver) == 0 || + error("debhelper version $Dh_Version::version is installed, but a version $compare $ver is needed to build this package."); +} diff --git a/dh_testversion.1 b/dh_testversion.1 index 5fb7332b..19ded263 100644 --- a/dh_testversion.1 +++ b/dh_testversion.1 @@ -1,8 +1,8 @@ -.TH DH_TESTROOT 1 +.TH DH_TESTVERSION 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_testversion \- ensure that the correct version of debhelper is installed .SH SYNOPSIS -.B dh_testversion [operator] [version] +.B dh_testversion [debhelper options] [operator] [version] .SH "DESCRIPTION" dh_testversion compares the version of debhelper against the version you specify, and if the condition is not met, exits with an error message. @@ -18,6 +18,11 @@ dh_autofixbugs cannot be found, so there is no need for you to use dh_testversion. .SH OPTIONS .TP +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. +.TP .B operator Optional comparison operator used in comparing the versions. If not specified, ">=" is used. For descriptions of the comparison operators, see @@ -28,19 +33,19 @@ Version number to compare against the current version of debhelper. If not specified, dh_testversion does nothing. .SH EXAMPLES .TP -.I dh_testversion 0.50 -Make sure debhelper version 0.50 or higher is installed. +.I dh_testversion 1.0 +Make sure debhelper version 1.0 or higher is installed. .TP -.I dh_testversion ge 0.50 -Another way to make sure debhelper version 0.50 or higher is installed. +.I dh_testversion ge 1.0 +Another way to make sure debhelper version 1.0 or higher is installed. .TP -.I dh_testversion le 0.50 -Make sure a version of debhelper less than version 0.50 is installed. +.I dh_testversion lt 1.0 +Make sure a version of debhelper less than version 1.0 is installed. .SH ENVIRONMENT -.TP -.I DH_VERBOSE -Enables verbose mode. +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" -.BR /usr/doc/debhelper/README +.BR debhelper (1) .SH AUTHOR Joey Hess diff --git a/dh_undocumented.1 b/dh_undocumented.1 index 69d2150a..25654ed5 100644 --- a/dh_undocumented.1 +++ b/dh_undocumented.1 @@ -1,9 +1,9 @@ -.TH DH_UNDOCUMENTED 1 +.TH DH_UNDOCUMENTED 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME dh_undocumented \- make symlinks to undocumented.7.gz man page .SH SYNOPSIS .B dh_undocumented -.I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir] [-A] [manpage ...]" +.I "[debhelper options [-A] [manpage ...]" .SH "DESCRIPTION" dh_undocumented is a debhelper program that is responsible for making symlinks to the @@ -32,24 +32,11 @@ the first binary package in debian/control) can list other man page names to set up. .SH OPTIONS .TP -.B \-v, \--verbose -Verbose mode; show all commands that modify the package build directory. .TP -.B \-a, \--arch -Install undocumented man page symlinks for all architecture dependent packages. -.TP -.B \-i, \--indep -Install undocumented man page symlinks for all architecture independent packages. -.TP -.B \--no-act -Do not really do anything. If used with -v, the result is that this command -will output a list of what it would have done. -.TP -.B \-ppackage, \--package=package -Install undocumented man page symlinks for the package named "package". -.TP -.B \-Ptmpdir, \--tmpdir=tmpdir -Use "tmpdir" for package build directory. +.B debhelper options +See +.BR debhelper (1) +for a list of options common to all debhelper commands. .TP .B \-A, \--all Install undocumented man page symlinks for any man pages specified by @@ -60,24 +47,14 @@ this useful, it's here for consitency with other debhelper programs. Install undocumented man page symlinks for each of these man pages into the first package acted on. (Or in all packages acted on if -A is specified.) -.SH NOTES -The -.B \-a -.B \-i -and -.B \-p -arguments are cumulative. If none are specified, then all packages listed in -the control file will be effected. .SH ENVIRONMENT +See +.BR debhelper (1) +for a list of environment variables that affect all debhelper commands. +.SH "SEE ALSO" .TP -.I DH_VERBOSE -Enables verbose mode +.BR debhelper (1) .TP -.I DH_NO_ACT -Enables no-act mode (see above). -.SH "SEE ALSO" -.BR /usr/doc/debhelper/README -, .BR undocumented (7) .SH "CONFORMS TO" Debian policy, version 2.3.0.0 diff --git a/doc/README b/doc/README index 986eb02c..845f94ef 100644 --- a/doc/README +++ b/doc/README @@ -1,6 +1,7 @@ Debhelper is a collection of programs that can be used in debian/rules files -to automate common tasks. For further documentation, see the man pages for -dh_* commands. +to automate common tasks related to building debian binary packages. For +further documentation, see the man pages for dh_* commands. For an overview +of debhelper, see the debhelper man page. To help you get started, I've included examples of debian/rules files that use debhelper commands extensively. See /usr/doc/debhelper/examples/ . @@ -34,67 +35,10 @@ by the -n parameter. Note that it will be shell code, so you cannot directly use it in a perl script. If you would like to embed it into a perl script, here is one way to -do that: +do that (note the tricky use of backquotes): print << `EOF` #DEBHELPER# EOF - -Notes on multiple binary packages: ---------------------------------- - -If your source package generates more than one binary package, debhelper -programs will default to acting on all binary packages when run. If your -source package happens to generate one architecture dependent package, and -another architecture independent package, this is not the correct behavior, -because you need to generate the architecture dependent packages in the -binary-arch debian/rules target, and the architecture independent packages -in the binary-indep debian/rules target. - -To facilitate this, as well as give you more control over which packages -are acted on by debhelper programs, all debhelper programs accept the -following parameters: - --a Act on architecture dependent packages --i Act on architecture independent packages --ppackage Act on the package named "package" (may be repeated multiple - times) - -These parameters are cumulative. If none are given, the tools default to -affecting all packages. - -See examples/rules.multi for an example of how to use this. - -Package build directories -- debian/tmp, etc: --------------------------------------------- - -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/ for each -additional package. - -Sometimes, you might want to use some other temporary directory. This is -supported by the -P flag. The directory to use is specified after -P, for -example, "dh_installdocs -Pdebian/tmp", will use debian/tmp as the temporary -directory. Note that if you use -P, the debhelper programs can only be -acting on a single package at a time. So if you have a package that builds -many binary packages, you will need to use the -p flag to specify which -binary package the debhelper program will act on. For example: - - dh_installdocs -pfoolib1 -Pdebian/tmp-foolib1 - dh_installdocs -pfoolib1-dev -Pdebian/tmp-foolib1-dev - dh_installdocs -pfoolib-bin -Pdebian/tmp-foolib-bin - -This uses debian/tmp- as the package build directory. - -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/ - before trying to put files there, dh_installmenu knows you need a - debian/tmp/usr/lib/menu/ before installing the menu files, etc. - -- Joey Hess diff --git a/doc/TODO b/doc/TODO index 188e3c6c..dbfc2771 100644 --- a/doc/TODO +++ b/doc/TODO @@ -1,19 +1,29 @@ -* add all other functionality of debstd (??) - - add a program to generate file similar to buildinfo.Debian generated by - debmake (wishlist bug #17043). I just never saw the point of that file.. - - Make dh_movefiles remove emptied directories after it's moved all the - files out of them (wishlist bug #17111). -* something should add ldconfig calls properly to the postinst of packages - that contain shared libraries. maybe dh_makeshlibs? But it wasn't designed - to do that originally, and even worse, it is often run after - dh_installdeb, so the fragements wouldn't go into the postinst. So maybe a - new script is called for. +This is the TODO for debhelper. As more and more people use debhelper, this +list grows - I welcome patches to fix items on it! + +Bugs: + +* dh_movefiles bombs if the argument is a wildcard pattern that matches + nothing (reported by Drow). +* dh_installdocs fails if debian/docs is empty except for a blank line. + There are probably other instances of this. Debhelper should behave better + (#24686). +* all commands should print a warning message if non-cumulative parameters + are given more than once (ie, two -u's to dh_gencontrol). + +Wishlist items: + +* Add option to dh_compress to allow addition of files to compress besides + the default ones. +* Add emacsen support to debhelper. (#21401) +* Make dh_movefiles remove emptied directories after it's moved all the + files out of them (#17111). * info support for debhelper (currently implemented, but I hate how I did it, - so it's not in the package.) (wishlist bug #15717) + so it's not in the package.) (#15717) * enhance dh_installmanpages so it associates binaries and man pages and installs the man pages into the correct areas to suit the binaries they document. I may need to make this only happen when a switch is given, to - preserve backward compatibility. + preserve backward compatibility. (#16933, #17061) * maybe make dh_installmanpages look at the .TH line of man pages whose filenames end in .man, to figure out what section they go it. This would require a switch to turn on, for backwards compatibility. @@ -24,3 +34,32 @@ they might have; still it would be nice to check them too, just to make debhelper more flexible.) One easy fix is to add umask 022 to dh_lib, however, there may be unforeseen ramifications of such a change. +* something should add ldconfig calls properly to the postinst of packages + that contain shared libraries. maybe dh_makeshlibs? But it wasn't designed + to do that originally, and even worse, it is often run after + dh_installdeb, so the fragements wouldn't go into the postinst. So maybe a + new script is called for. +* docbase support (#25233). Waiting for docbase to stabalize and be used + widly. +* Support /etc/X11/window-managers, by making it easy for window managers to + add themselves to it in the postinst. Not high priority because there are + few window managers. (#20971) +* dhelp support. Currently pending on dhelp use becoming widespead (#18342) +* Support use of environment variables in data taken from user, ie, in + debian/dirs. The problem with doing this is that we really want to allow + any filenames in that input, even those that look like environment + variables. However, it may be worth adding a switch to make it parse + environment variables. (#20964) +* It's possible to speed up debhelper by having it cache some values that + multiple commands call. One way to do this would be to write dh_cache, + that generates the cache. The catch is that if the user runs that program, + they are stating that they don't do anything later to invalidate the cache, + without calling ch_cache again. (#23792) +* Add a switch to dh_installdeb to allow it to do user definied + substitutions. (#25235) + +Depricated: + +* remove dh_installdebfiles, dh_du. + - need to wait a reasonable length of time. I'm currently planning + on doing this after slink is released. -- cgit v1.2.3 From 03d1a2e0c10456c65fbf36e1f38619803f4f2bfd Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 04:57:23 +0000 Subject: r110: Initial Import --- Dh_Lib.pm | 24 +++++---- debian/changelog | 20 ++++++++ dh_builddeb | 15 +++--- dh_du | 17 +------ dh_installchangelogs | 58 +++++++++++---------- dh_installchangelogs.1 | 2 +- dh_installdebfiles | 2 +- dh_installdebfiles.1 | 2 +- dh_installdirs | 79 ++++++++++++++-------------- dh_installdirs.1 | 3 +- dh_installexamples.1 | 3 +- doc/PROGRAMMING | 136 +++++++++++++++++++++++++++++-------------------- doc/TODO | 4 +- 13 files changed, 204 insertions(+), 161 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/Dh_Lib.pm b/Dh_Lib.pm index c58d5c08..49e337a9 100644 --- a/Dh_Lib.pm +++ b/Dh_Lib.pm @@ -72,6 +72,12 @@ sub init { $dh{FIRSTPACKAGE}=${$dh{DOPACKAGES}}[0]; } +# Escapes out shell metacharacters in a word of shell script. +sub escape_shell { my $word=shift; + $word=~s/([\s><&!\[\]\{\}\(\)\$])/\\$1/g; + return $word; +} + # Run a command, and display the command to stdout if verbose mode is on. # All commands that modifiy files in $TMP should be ran via this # function. @@ -79,7 +85,7 @@ sub init { # Note that this cannot handle complex commands, especially anything # involving redirection. Use complex_doit instead. sub doit { - verbose_print(join(" ",@_)); + verbose_print(join(" ",map { escape_shell($_) } @_)); if (! $dh{NO_ACT}) { system(@_) == 0 @@ -171,30 +177,30 @@ sub pkgext { my $package=shift; # As a side effect, sets $dh{VERSION} to the version of this package. { # Caches return code so it only needs to run dpkg-parsechangelog once. - my $isnative_cache; + my %isnative_cache; sub isnative { my $package=shift; - if ($isnative_cache eq undef) { + if (! defined $isnative_cache{$package}) { # Make sure we look at the correct changelog. my $isnative_changelog=pkgfile($package,"changelog"); if (! $isnative_changelog) { $isnative_changelog="debian/changelog"; } - + # Get the package version. my $version=`dpkg-parsechangelog -l$isnative_changelog`; - ($dh{VERSION})=$version=~s/[^|\n]Version: \(.*\)\n//m; - + ($dh{VERSION})=$version=~m/Version: (.*)/m; + # Is this a native Debian package? if ($dh{VERSION}=~m/.*-/) { - $isnative_cache=1; + $isnative_cache{$package}=0; } else { - $isnative_cache=0; + $isnative_cache{$package}=1; } } - return $isnative_cache; + return $isnative_cache{$package}; } } diff --git a/debian/changelog b/debian/changelog index 22b55879..06f1f332 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,23 @@ +debhelper (1.1.4) unstable; urgency=low + + * dh_movefiles: fixed bug introduced in 1.1.1 where it would fail in some + cases if you tried to move a broken symlink. + * dh_installdocs: was only operating on the first package. + * dh_installexamples: rewritten in perl. + * Dh_Lib.pm: all multiple package operations were broken. + * Dh_Lib.pm: implemented complex_doit() and autoscript(). + * Made all perl code work with use strict and -w (well, except + dh_getopt.pl, but that's a hack that'll go away one day). + * I didn't realize, but rewriting dh_installdocs in perl fixed bug #24686, + although this same problem applies to other debhelper programs... like + dh_installexamples, which had the same bug fixed when I rewrote it in + perl just now. + * Dh_Lib.pm: accidentially didn't check DH_VERBOSE if commands were not + passed any switches. + * Dh_Getopt.pm: --noscripts was broken. + + -- Joey Hess Tue, 11 Aug 1998 12:44:04 -0700 + debhelper (1.1.3) unstable; urgency=low * dh_md5sums: -x was broken since version 1.1.1 - fixed. diff --git a/dh_builddeb b/dh_builddeb index 9ddd21dc..06cc1beb 100755 --- a/dh_builddeb +++ b/dh_builddeb @@ -1,11 +1,12 @@ -#!/bin/sh -e +#!/usr/bin/perl -w # # Build the .deb package, assuming all the files are set up. -PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib +BEGIN { push @INC, "debian", "/usr/lib/debhelper" } +use Dh_Lib; +init(); -for PACKAGE in $DH_DOPACKAGES; do - TMP=`tmpdir $PACKAGE` - doit "dpkg --build $TMP .." -done +foreach $PACKAGE (@{$dh{DOPACKAGES}}) { + $TMP=tmpdir($PACKAGE); + doit("dpkg","--build",$TMP,".."); +} diff --git a/dh_du b/dh_du index 73df2a0b..9e641a27 100755 --- a/dh_du +++ b/dh_du @@ -5,19 +5,4 @@ # # No longer - it was decided these files are a bad idea. -PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib - -echo "* Note: dh_du does nothing and is deprecated. Remove it from debian/rules." >&2 - -#for PACKAGE in $DH_DOPACKAGES; do -# TMP=`tmpdir $PACKAGE` -# -# if [ ! -d "$TMP/DEBIAN" ]; then -# doit "install -d $TMP/DEBIAN" -# fi -# -# # Note that the tabs in this next line are important. -# complex_doit "du -k $TMP | sed 's: $TMP/: :' | grep -v ' DEBIAN$' | grep -v ' $TMP$' >$TMP/DEBIAN/du" -# doit "chown root.root $TMP/DEBIAN/du" -#done +echo "dh_du: this program does nothing and is deprecated. Remove it from debian/rules." >&2 diff --git a/dh_installchangelogs b/dh_installchangelogs index 15a42c09..0024fc10 100755 --- a/dh_installchangelogs +++ b/dh_installchangelogs @@ -1,4 +1,4 @@ -#!/bin/sh -e +#!/usr/bin/perl -w # # Installs debian/changelog. If another filename is passed to it, installs # that file as the upstream changelog. @@ -7,35 +7,41 @@ # if so, the debian changelog is just installed as "changelog", and it is an # error to specify an upstream changelog on the command line. -PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib +BEGIN { push @INC, "debian", "/usr/lib/debhelper" } +use Dh_Lib; +init(); -UPSTREAM=$1 +$upstream=shift; -if isnative && [ "$UPSTREAM" ]; then - error "Cannot specify an upstream changelog for a native debian package." -fi +if (isnative($dh{MAINPACKAGE}) && defined $upstream) { + error("Cannot specify an upstream changelog for a native debian package."); +} -if isnative; then - CHANGELOG_NAME=changelog -else - CHANGELOG_NAME=changelog.Debian -fi +if (isnative($dh{MAINPACKAGE})) { + $changelog_name='changelog'; +} +else { + $changelog_name='changelog.Debian'; +} -for PACKAGE in $DH_DOPACKAGES; do - TMP=`tmpdir $PACKAGE` +foreach $PACKAGE (@{$dh{DOPACKAGES}}) { + $TMP=tmpdir($PACKAGE); + $changelog=pkgfile($PACKAGE,"changelog"); - changelog=`pkgfile $PACKAGE changelog` - if [ ! "$changelog" ]; then - changelog=debian/changelog - fi + if (!$changelog) { + $changelog="debian/changelog"; + } - if [ ! -d $TMP/usr/doc/$PACKAGE ]; then - doit "install -d $TMP/usr/doc/$PACKAGE" - fi - doit "install -p -m644 $changelog $TMP/usr/doc/$PACKAGE/$CHANGELOG_NAME" + if (! -e $changelog) { + error("could not find changelog $changelog"); + } - if [ "$UPSTREAM" ]; then - doit "install -p -m644 $UPSTREAM $TMP/usr/doc/$PACKAGE/changelog" - fi -done + if (! -d "$TMP/usr/doc/$PACKAGE") { + doit("install","-d","$TMP/usr/doc/$PACKAGE"); + } + doit("install","-p","-m644",$changelog,"$TMP/usr/doc/$PACKAGE/$changelog_name"); + + if ($upstream) { + doit("install","-p","-m644",$upstream,"$TMP/usr/doc/$PACKAGE/changelog"); + } +} diff --git a/dh_installchangelogs.1 b/dh_installchangelogs.1 index 70822338..9a579a65 100644 --- a/dh_installchangelogs.1 +++ b/dh_installchangelogs.1 @@ -26,7 +26,7 @@ See for a list of options common to all debhelper commands. .TP .B upstream -Instal this file as the upstream changelog. +Install this file as the upstream changelog. .SH NOTES It is an error to specify an upstream changelog file for a debian native package. diff --git a/dh_installdebfiles b/dh_installdebfiles index 0fba35a5..d999c91b 100755 --- a/dh_installdebfiles +++ b/dh_installdebfiles @@ -5,7 +5,7 @@ PATH=debian:$PATH:/usr/lib/debhelper -warn "Note: use of this program is deprecated." +echo "dh_installdebfiles: use of this program is deprecated, see man page." >&2 dh_installdeb $* dh_shlibdeps $* diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index ae4782d2..5e41117a 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -16,7 +16,7 @@ programs, and you may replace any calls to this program by: dh_shlibdeps dh_gencontrol .SH WARNING -This program will be removed at some time in the furture. +This program will be removed at some time in the future. .SH OPTIONS Any options passed to this program will be sent to each of the 3 programs listed above. diff --git a/dh_installdirs b/dh_installdirs index 725cdb2c..2d12b76b 100755 --- a/dh_installdirs +++ b/dh_installdirs @@ -1,43 +1,42 @@ -#!/bin/sh -e +#!/usr/bin/perl -w # -# Reads debian/dirs, creates the directories listed there there +# Reads debian/dirs, creates the directories listed there + +BEGIN { push @INC, "debian", "/usr/lib/debhelper" } +use Dh_Lib; +init(); + +foreach $PACKAGE (@{$dh{DOPACKAGES}}) { + $TMP=tmpdir($PACKAGE); + $file=pkgfile($PACKAGE,"dirs"); + + if (! -e $TMP) { + doit("install","-d",$TMP); + } + + undef @dirs; + + if ($file) { + @dirs=filearray($file) + } + + if (($PACKAGE eq $dh{FIRSTPACKAGE} || $dh{PARAMS_ALL}) && @ARGV) { + push @dirs, @ARGV; + } + + if (@dirs) { + # Stick the $TMP onto the front of all the dirs. + # This is necessary, for 2 reasons, one to make them + # be in the right directory, but more importantly, it + # protects against the danger of absolute dirs being + # specified. + @dirs=map { + $_="$TMP/$_"; + tr:/:/:s; # just beautification. + $_ + } @dirs; -PATH=debian:$PATH:/usr/lib/debhelper -. dh_lib - -for PACKAGE in $DH_DOPACKAGES; do - TMP=`tmpdir $PACKAGE` - file=`pkgfile $PACKAGE dirs` - - if [ ! -d $TMP ]; then - doit "install -d $TMP" - fi - - dirs="" - - if [ "$file" ]; then - dirs=`tr "\n" " " < $file` - fi - - if [ \( "$PACKAGE" = "$DH_FIRSTPACKAGE" -o "$DH_PARAMS_ALL" \) \ - -a "$*" ]; then - dirs="$* $dirs" - fi - - if [ "$dirs" ]; then - # Check to see if any of the dirs are absolute. - for dir in "$dirs" ; do - if expr "$dir" : "/" >/dev/null ; then - error "Absolute directory name \"$dir\" specified." - fi - done # Create dirs. - olddir=`pwd` - verbose_echo "cd $TMP" - cd "$TMP" - doit "install -d $dirs" - verbose_echo "cd $olddir" - cd "$olddir" - fi -done - + doit("install","-d",@dirs); + } +} diff --git a/dh_installdirs.1 b/dh_installdirs.1 index 77c992d9..95be7151 100644 --- a/dh_installdirs.1 +++ b/dh_installdirs.1 @@ -40,6 +40,7 @@ for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" .BR debhelper (1) .SH BUGS -Directories with spaces in them will not currently be installed properly. +It's impossible to specify filenames with spaces or other whitespace in them +in debian/dirs file. This is more a historical design flaw than a bug. .SH AUTHOR Joey Hess diff --git a/dh_installexamples.1 b/dh_installexamples.1 index 776aef79..91d9988b 100644 --- a/dh_installexamples.1 +++ b/dh_installexamples.1 @@ -40,7 +40,8 @@ for a list of environment variables that affect all debhelper commands. .SH "SEE ALSO" .BR debhelper (1) .SH BUGS -Filenames with spaces in them will not currently be installed. +It's impossible to specify filenames with spaces or other whitespace in them +in debian/examples file. This is more a historical design flaw than a bug. .SH "CONFORMS TO" Debian policy, version 2.3.0.0 .SH AUTHOR diff --git a/doc/PROGRAMMING b/doc/PROGRAMMING index 878c5a2e..e514095d 100644 --- a/doc/PROGRAMMING +++ b/doc/PROGRAMMING @@ -36,15 +36,18 @@ merge these modifications into the actual postinst scripts. There are always exceptions. Just ask me. -Introducing dh_lib: ------------------- +Introducing dh_lib and Dh_Lib.pm: +-------------------------------- -All debhelper programs use the dh_lib library (actually it's a shell script) -to parse their arguments and set some useful variables. It's not mandatory -that your program use dh_lib, but it will make it a lot easier to keep it in +dh_lib/Dh_lib.pm is the library used by all debhelper programs to parse +their arguments and set some useful variables. It's not mandatory that your +program use dh_lib/Dh_lib.pm, but it will make it a lot easier to keep it in sync with the rest of debhelper if it does, so this is highly encouraged. +There are two versions of this library - dh_lib is a shell library, while +Dh_Lib.pm is a perl module. -Typically, you invoke dh_lib like this: +Typically, you invoke dh_lib like this if your debhelper program is a shell +script: PATH=debian:$PATH:/usr/lib/debhelper . dh_lib @@ -53,74 +56,93 @@ The path statement is there to make your program look first in debian/ for dh_lib (so users can install a modified version there if necessary), then the rest of the path, then the canonical location of dh_lib, /usr/lib/debhelper. +If you are writing a perl program instead, use Dh_lib.pm like this: + +BEGIN { push @INC, "debian", "/usr/lib/debhelper" } +use Dh_Lib; +init(); + +The BEGIN block is there to make perl look for the module in all the right +places. + +Notice the init() function in the perl version. dh_lib automatically parses +the command line and does some other initialization tasks. Dh_Lib.pm +requires you to run init() to accomplish the same task. + Argument processing: ------------------- All debhelper programs should respond to certain arguments, such as -v, -i, --a, and -p. To help you make this work right, dh_lib handles argument -processing. +-a, and -p. To help you make this work right, dh_lib/Dh_Lib.pm handles +argument processing. As soon as dh_lib loads, it processes any arguments that have been passed to -your program. The following variables may be set during this stage; your -program can use them later: +your program. On the other hand, you need to call init() in Dh_Lib.pm before +it will parse arguments. + +After argument processing, some global variables are used to hold the +results; program can use them later. If using dh_lib, prefix DH_ to the name +of each of these variables to get the name of the environment variable that +is set. If using Dh_lib.pm, these variables are in the %dh hash. switch variable description --v DH_VERBOSE should the program verbosely output what it is +-v VERBOSE should the program verbosely output what it is doing? ---no-act DH_NO_ACT should the program not actually do anything? --i,-a,-p,-N DH_DOPACKAGES a space delimited list of the binary packages - to act on --i,-p,-N DH_DOINDEP a space delimited list of the binary independent +--no-act NO_ACT should the program not actually do anything? +-i,-a,-p,-N DOPACKAGES a space delimited list of the binary packages + to act on (in Dh_Lib.pm, this is an array) +-i,-p,-N DOINDEP a space delimited list of the binary independent packages to act on --a,-p,-N DH_DOARCH a space delimited list of the binary dependent +-a,-p,-N DOARCH a space delimited list of the binary dependent packages to act on --n DH_NOSCRIPTS if set, do not make any modifications to the +-n NOSCRIPTS if set, do not make any modifications to the package's postinst, postrm, etc scripts. --X DH_EXCLUDE exclude a something from processing (you +-X EXCLUDE exclude a something from processing (you decide what this means for your program) - DH_EXCLUDE_GREP same as DH_EXCLUDE, except all items are + (In Dh_Lib.pm, this is an array) + EXCLUDE_GREP same as DH_EXCLUDE, except all items are separated by '|' characters, instead of spaces, - handy for egrep -v - DH_EXCLUDE_FIND same as DH_EXCLUDE, except all items are put + handy for egrep -v (only available to dh_lib) + EXCLUDE_FIND same as DH_EXCLUDE, except all items are put into a string in a way that they will make find find them. (Use ! in front to negate - that, of course) --x DH_INCLUDE_CONFFILES + that, of course) (only available to dh_lib) +-x INCLUDE_CONFFILES include conffiles. It's -x for obscure historical reasons. --d DH_D_FLAG you decide what this means to your program --r DH_R_FLAG you decide what this means to your program --k DH_K_FLAG you decide what this means to your program --P DH_TMPDIR package build directory (implies only one +-d D_FLAG you decide what this means to your program +-r R_FLAG you decide what this means to your program +-k K_FLAG you decide what this means to your program +-P TMPDIR package build directory (implies only one package is being acted on) --u DH_U_PARAMS will be set to a string, that is typically +-u U_PARAMS will be set to a string, that is typically parameters your program passes on to some other program. --m DH_M_PARAMS will be set to a string, you decide what it +-m M_PARAMS will be set to a string, you decide what it means to your program --V DH_V_FLAG will be set to a string, you decide what it +-V V_FLAG will be set to a string, you decide what it means to your program --V DH_V_FLAG_SET will be 1 if -V was specified, even if no +-V V_FLAG_SET will be 1 if -V was specified, even if no parameters were passed along with the -V --A DH_PARAMS_ALL generally means that additional command line +-A PARAMS_ALL generally means that additional command line parameters passed to the program (other than those processed here), will apply to all binary packages the program acts on, not just the first ---init-script DH_INIT_SCRIPT will be set to a string, which specifies an +--init-script INIT_SCRIPT will be set to a string, which specifies an init script name (probably only dh_installinit will ever use this) Any additional command line parameters that do not start with "-" will be -ignored, and you can access them later just as you normally would ($1, $2, -etc). +ignored, and you can access them later just as you normally would. If you need a new command line option, just ask me, and I will add it. Global variables: ---------------- -The following variables are also set, you can use any of them: +If using dh_lib, the following variables are also set as soon as you load +the library: MAINPACKAGE the name of the first binary package listed in debian/control @@ -128,21 +150,28 @@ DH_FIRSTPACKAGE the first package we were instructed to act on. This package typically gets special treatment, additional arguments specified on the command line may effect it. +If using Dh_Lib.pm, these are only set after init(), and they are named +$dh{MAINPACKAGE} and $dh{FIRSTPACKAGE}, instead. + Functions: --------- -Dh_lib also contains a number of functions you may find useful. +dh_lib/Dh_Lib.pm also contains a number of functions you may find useful. +Note that the functions calling conventions are slightly different between +the two versions of the library. doit() - Pass this function a string that is a shell command. It will run the - command (unless DH_NO_ACT is set), and if DH_VERBOSE is set, it will - also output the command to stdout. You should use this function for - almost all commands your program performs that manipulate files in - the package build directories. + Pass this function a string (dh_lib) or array (Dh_Lib.pm) that is a + shell command. It will run the command (unless DH_NO_ACT is set), and + if DH_VERBOSE is set, it will also output the command to stdout. You + should use this function for almost all commands your program performs + that manipulate files in the package build directories. complex_doit() - This is the same as doit(), except you can pass more complicated - commands to it (ie, commands involving piping redirection) -verbose_echo() + Pass this function a string that is a shell command, it will run it + similarly to how doit() does. You can pass more complicated commands + to this (ie, commands involving piping redirection) +verbose_echo() (dh_lib) +verbose_print() (Dh_Lib.pm) Pass this command a string, and it will echo it if DH_VERBOSE is set. error() Pass this command a string, it will output it to standard error and @@ -174,18 +203,13 @@ isnative() As a side effect, VERSION is set to the version number of the package. autoscript() - Pass 3 parameters: - 1: script to add to - 2: filename of snippet - 3: sed commands to run on the snippet. Ie, s/#PACKAGE#/$PACKAGE/ - (optional) + Pass parameters: + - package to be affected (Dh_Lib.pm only) + - script to add to + - filename of snippet + - sed commands to run on the snippet. Ie, s/#PACKAGE#/$PACKAGE/ + (optional) This command automatically adds shell script snippets to a debian maintainer script (like the postinst or prerm). -Notes: ------ - -Dh_lib is still evolving. -There will probably be a perl version too, in the future. - -- Joey Hess diff --git a/doc/TODO b/doc/TODO index 756eb4bd..a4e4a10d 100644 --- a/doc/TODO +++ b/doc/TODO @@ -9,7 +9,6 @@ Bugs: Wishlist items: -* update PROGRAMMING to cover new perl interface. * Make dh_movefiles remove emptied directories after it's moved all the files out of them (#17111). * info support for debhelper (currently implemented, but I hate how I did it, @@ -50,7 +49,8 @@ Wishlist items: they are stating that they don't do anything later to invalidate the cache, without calling ch_cache again. (#23792) * Add a switch to dh_installdeb to allow it to do user definied - substitutions. (#25235) + substitutions. TOH, maybe it's better if peopld just sed + postinst.in before debhelper gets it's hands on it... (#25235) Depricated: -- cgit v1.2.3 From e96e7085e3c88f2dba9f44a490e5fcda62e76323 Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 17 Aug 1999 05:11:27 +0000 Subject: r181: Initial Import --- debhelper.1 | 3 +++ debian/changelog | 6 ++++++ dh_du.1 | 2 +- dh_installdebfiles.1 | 2 +- dh_installwm.1 | 6 +++--- dh_md5sums.1 | 2 +- dh_movefiles.1 | 2 +- doc/README | 3 ++- 8 files changed, 18 insertions(+), 8 deletions(-) (limited to 'dh_installdebfiles.1') diff --git a/debhelper.1 b/debhelper.1 index 62906dc5..7bf55855 100644 --- a/debhelper.1 +++ b/debhelper.1 @@ -97,6 +97,9 @@ 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/ before trying to put files there, dh_installmenu knows you need a debian/tmp/usr/lib/menu/ before installing the menu files, etc. +.SH "DEBHELPER COMMANDS" +Here is the complete list of available debhelper commands. +#LIST# .SH ENVIRONMENT .TP .I DH_VERBOSE diff --git a/debian/changelog b/debian/changelog index d32c2826..7726e2e7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +debhelper (1.2.44) unstable; urgency=medium + + * dh_fixperms: has been mostly broken when used with -X, corrected this. + + -- Joey Hess Sat, 13 Mar 1999 17:25:59 -0800 + debhelper (1.2.43) unstable; urgency=low * dh_compress.1: man page fixes (Closes: #33858). diff --git a/dh_du.1 b/dh_du.1 index 38d3d7bd..aa3849e4 100644 --- a/dh_du.1 +++ b/dh_du.1 @@ -1,6 +1,6 @@ .TH DH_DU 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME -dh_du \- generate DEBIAN/du file +dh_du \- generate DEBIAN/du file (deprecated) .SH SYNOPSIS .B dh_du .SH "DESCRIPTION" diff --git a/dh_installdebfiles.1 b/dh_installdebfiles.1 index 5e41117a..bb66ed5b 100644 --- a/dh_installdebfiles.1 +++ b/dh_installdebfiles.1 @@ -1,6 +1,6 @@ .TH DH_INSTALLDEBFILES 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME -dh_installdebfiles \- install files into the DEBIAN directory +dh_installdebfiles \- install files into the DEBIAN directory (deprecated) .SH SYNOPSIS .B dh_installdebfiles .SH "DESCRIPTION" diff --git a/dh_installwm.1 b/dh_installwm.1 index bc6ea446..d319d755 100644 --- a/dh_installwm.1 +++ b/dh_installwm.1 @@ -2,13 +2,13 @@ .SH NAME dh_installwm \- register a window manager .SH SYNOPSIS -.B dh_installmenu +.B dh_installwm .I "[debhelper options] [-n] wmfilename" .SH "DESCRIPTION" dh_installwm is a debhelper program that is responsible for generating the postinst and postrm commands needed to interface with the the -.BR register-window-manager (1) +.BR register-window-manager (8) command. This results in a window manager being registered when it is installed. .SH OPTIONS @@ -37,6 +37,6 @@ for a list of environment variables that affect all debhelper commands. .TP .BR debhelper (1) .TP -.BR register-window-manager (1) +.BR register-window-manager (8) .SH AUTHOR Joey Hess diff --git a/dh_md5sums.1 b/dh_md5sums.1 index 22b4fe28..6489a6c4 100644 --- a/dh_md5sums.1 +++ b/dh_md5sums.1 @@ -1,6 +1,6 @@ .TH DH_MD5SUMS 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME -dh_md5sums \- generate DEBIAN/md5sums file +dh_md5sums \- generate DEBIAN/md5sums file (deprecated) .SH SYNOPSIS .B dh_md5sums .I "[debhelper options] [-x]" diff --git a/dh_movefiles.1 b/dh_movefiles.1 index 6ec525a8..de8ecd65 100644 --- a/dh_movefiles.1 +++ b/dh_movefiles.1 @@ -1,6 +1,6 @@ .TH DH_MOVEFILES 1 "" "Debhelper Commands" "Debhelper Commands" .SH NAME -dh_movefiles \- moves files out of debian/tmp into subpackages +dh_movefiles \- move files out of debian/tmp into subpackages .SH SYNOPSIS .B dh_movefiles .I "[debhelper options] [--sourcedir=dir] [file ..]" diff --git a/doc/README b/doc/README index 774f9fd4..07048e35 100644 --- a/doc/README +++ b/doc/README @@ -1,7 +1,8 @@ Debhelper is a collection of programs that can be used in debian/rules files to automate common tasks related to building debian binary packages. For further documentation, see the man pages for dh_* commands. For an overview -of debhelper, see the debhelper(1) man page. +of debhelper, inclusing a list of all the available commands, see the +debhelper(1) man page. To help you get started, I've included examples of debian/rules files that use debhelper commands extensively. See /usr/doc/debhelper/examples/ . -- cgit v1.2.3