From: joey Date: Tue, 17 Aug 1999 04:51:06 +0000 (+0000) Subject: r85: Initial Import X-Git-Tag: debian_version_0_1~148 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=fa0b6b8309672b44488dfef0891de99ef6f09d30;p=debhelper.git r85: Initial Import --- fa0b6b8309672b44488dfef0891de99ef6f09d30 diff --cc PROGRAMMING index 22e015a,43e1554..a6078c1 --- a/PROGRAMMING +++ b/PROGRAMMING @@@ -70,14 -70,14 +70,20 @@@ switch variable descriptio --no-act DH_NO_ACT should the program not actually do anything? -i,-a,-p DH_DOPACKAGES a space delimited list of the binary packages to act on --i,-p DH_DOINDEP a space delimited list of the binary independant +-i,-p DH_DOINDEP a space delimited list of the binary independent packages to act on --a,-p DH_DOARCH a space delimited list of the binary dependant +-a,-p DH_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 - package's postinst, posrtm, etc scripts. --x DH_EXCLUDE exclude a something from processing (you + package's postinst, postrm, etc scripts. - -x DH_EXCLUDE exclude a something from processing (you ++-X DH_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 ++ separated by '|' characters, instead of spaces, ++ handy for egrep -v ++-x DH_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 diff --cc TODO index 064dcbf,de0177f..542e988 --- a/TODO +++ b/TODO @@@ -1,30 -1,6 +1,27 @@@ -shared libaries -.so files of compressed manpages change to symlinks -multiple binary packages support -edit package scripts (??) -add all other functionality of debstd (??) -documentation +* 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). +* dh_fixperms: allow listing of files not to be touched (difficult). +* add a dh_debstd, which mimics debstd, but uses debhelper tools internally. + Note that the idea here is not just another debstd. This program will have + a -v switch, that lists all the other debhelper commands it needs to run to + do what debstd had to do. The intent is to make it easy to switch from + debstd to debhelper. - * dh_compress: add --exclude "*.conf" type-thingy, since that's the change - you most often want to make to what it does, and a debian/compress file is - overkill in those cases. +* info support for debhelper (currently implemented, but I hate how I did it, + so it's not in the package.) (wishlist bug #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. +* 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. +* All debhelper programs should be checked that they output files with the + correct permissions no matter what the umask is set to. Currently, only + those programs that run after dh_fixperms have been so checked. (Checking + the rest is low priority, since dh_fixperms fixes any incorrect permissions + 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. diff --cc debian/changelog index 148c6ea,87d5263..9d007f0 --- a/debian/changelog +++ b/debian/changelog @@@ -1,627 -1,3 +1,635 @@@ ++debhelper (0.87) unstable; urgency=low ++ ++ * dh_strip: strip .comment and .note, not comment and note, when stripping ++ elf binaries. This makes for smaller output files. This has always been ++ broken in debhelper before! (#22395) ++ ++ -- Joey Hess Wed, 13 May 1998 11:54:29 -0700 ++ +debhelper (0.86) unstable; urgency=low + + * dh_compress: don't try to re-compress *.gz files. Eliminates warning + messages in some cases, shouldn't actually change the result at all. + + -- Joey Hess Mon, 27 Apr 1998 15:21:33 -0700 + +debhelper (0.85) unstable; urgency=low + + * Moved a few things around that were broken by Che's patch: + - dh_installdirs should go in install target. + - dh_clean should not run in binary targets. + * This is just a quick fix to make it work, I'm not happy with it. I'm + going to discuss my problems with it with Che, and either make a new + version fixing them, or revert to 0.83. + * So be warned that the example rules files are not currently in good + shape if you're starting a new package. + + -- Joey Hess Sat, 18 Apr 1998 23:30:38 -0700 + +debhelper (0.84) unstable; urgency=low + + * Applied Che_Fox'x patches to example rules files, which makes them use + an install target internally to move things into place in debian/tmp. + + -- Joey Hess Thu, 9 Apr 1998 12:08:45 -0700 + +debhelper (0.83) unstable; urgency=low + + * Generate symlinks in build stage of debian/rules. cvs cannot create them + properly. Note that version 0.80 and 0.81 could not build some packages + because of missing symlinks. + + -- Joey Hess Tue, 31 Mar 1998 19:27:29 -0800 + +debhelper (0.81) unstable; urgency=low + + * dh_movefiles: empty $tomove (#20495). + + -- Joey Hess Tue, 31 Mar 1998 15:36:32 -0800 + +debhelper (0.80) unstable; urgency=low + + * Moved under cvs (so I can fork a stable and an unstable version). + * dh_movefiles: first move real files, then move symlinks. (#18220) + Thanks to Bdale Garbee and Adam Heath + for help on the implementation. + * dh_installchangelogs: use debian/package.changelog files if they exist + rather than debian.changelog. It appears some people do need per-package + changelogs. + * dh_gencontrol: if debian/package.changelogs files exist, use them. + * Above 2 changes close #20442. + + -- Joey Hess Mon, 30 Mar 1998 20:54:26 -0800 + +debhelper (0.78) frozen unstable; urgency=low + + * More spelling fixes from Christian T. Steigies. (I ignored the spelling + fixes to the changelog, though - too many, and a changelog isn't meant + to be changed after the fact :-) + * dh_fixperms: remove execute bits from .la files genrated by libtool. + + -- Joey Hess Mon, 30 Mar 1998 12:44:42 -0800 + +debhelper (0.77) frozen unstable; urgency=low + + * Fixed a nasty bug in dh_makeshlibs when it was called with -V, but with + no version string after the -V. + + -- Joey Hess Sun, 29 Mar 1998 16:08:27 -0800 + +debhelper (0.76) frozen unstable; urgency=low + + * I intended version 0.75 to make it in before the freeze, and it did not. + This is just to get it into frozen. There are no changes except bug + fixes. + + -- Joey Hess Thu, 26 Mar 1998 12:25:47 -0800 + +debhelper (0.75) unstable; urgency=low + + * Actually exit if there is an unknown option on the command line (oooops!) + * Fix .so file conversion to actually work (#19933). + + -- Joey Hess Thu, 19 Mar 1998 11:54:58 -0800 + +debhelper (0.74) unstable; urgency=low + + * dh_installmanpages: convert .so links to symlinks at last (#19829). + * dh_installmanpages.1: documented that no, dh_installmanpages never + installs symlink man pages from the source package (#19831). + * dh_installmanpages: minor speedups + * PROGRAMMING: numerous spelling fixes, thanks to Christian T. Steigies. + Life is too short for me to spell check my technical documentation, but + I always welcome corrections! + + -- Joey Hess Tue, 17 Mar 1998 22:09:07 -0800 + +debhelper (0.73) unstable; urgency=low + + * Fixed typo in dh_suidregister.1 + + -- Joey Hess Thu, 12 Mar 1998 16:30:27 -0800 + +debhelper (0.72) unstable; urgency=low + + * Applied patch from Yann Dirson to add a + --init-script parameter to dh_installinit. (#19227) + * Documented this new switch. + + -- Joey Hess Mon, 9 Mar 1998 17:12:04 -0800 + +debhelper (0.71) unstable; urgency=low + + * dh_makeshlibs: -V flag was broken: if just -V was specified, + dh_makeshlibs would die. Corrected this. + * dh_lib: removed warning if the arguments passed to a debhelper command + do not apply to the main package. It's been long enough so I'm 100% sure + no packages use the old behavior. + + -- Joey Hess Mon, 9 Mar 1998 11:46:59 -0800 + +debhelper (0.70) unstable; urgency=low + + * dh_lib: autoscript(): no longer add the modification date to the + comments aurrounding debhelper-added code. I don't think this date was + gaining us anything, so let's remove it and save some disk space. + + -- Joey Hess Sun, 8 Mar 1998 21:15:13 -0800 + +debhelper (0.69) unstable; urgency=low + + * Refer to suidregister (8), not (1). Bug #19149. + * Removed junk file from debian/ dir. + + -- Joey Hess Sun, 8 Mar 1998 13:04:36 -0800 + +debhelper (0.68) unstable; urgency=low + + * Document that README.debian files are installed as README.Debian (#19089). + + -- Joey Hess Fri, 6 Mar 1998 17:48:32 -0800 + +debhelper (0.67) unstable; urgency=low + + * Added PROGRAMMING document that describes the interface of dh_lib, to + aid others in writing and understanding debhelper programs. + + -- Joey Hess Fri, 6 Mar 1998 12:45:08 -0800 + +debhelper (0.66) unstable; urgency=low + + * README, dh_testversion.1, dh_movefiles.1: more doc fixes. + * dh_movefiles: don't check for package names to see if files are being + moved from one package back into itself, instead, check tmp dir names. + If you use this behavior, you should use "dh_testversion 0.66". + + -- Joey Hess Mon, 2 Mar 1998 17:50:29 -0800 + +debhelper (0.65) unstable; urgency=low + + * dh_installdocs.1, dh_movefiles.1: clarified documentation for Che. + + -- Joey Hess Mon, 2 Mar 1998 17:20:39 -0800 + +debhelper (0.64) unstable; urgency=low + + * Removed some junk (a whole old debhelper source tree!) that had gotten + into the source package by accident. + + -- Joey Hess Mon, 23 Feb 1998 20:23:34 -0800 + +debhelper (0.63) unstable; urgency=low + + * Removed some debugging output from dh_installmanpages. + * du_du: no longer does anything, becuase it has been decided on + debian-policy that du control files are bad. + * examples/*: removed dh_du calls. + * debian/rules: removed dh_du call. + * Modified dh_gencontrol, dh_makeshlibs, and dh_md5sums to generate files + with the correct permissions even if the umask is set to unusual + values. (#18283) + + -- Joey Hess Mon, 16 Feb 1998 23:34:36 -0800 + +debhelper (0.62) unstable; urgency=low + + * dh_installmanpages: if the man page filename ends in 'x', install it in + /usr/X11R6/man/. + * TODO: expanded descriptions of stuff, in the hope someone else will get + inspired to implement some of it. + * Also added all wishlist bugs to the TODO. + + -- Joey Hess Thu, 12 Feb 1998 22:38:53 -0800 + +debhelper (0.61) unstable; urgency=low + + * dh_installmanpages: Add / to end of egrep -v regexp, fixes it so + debian/icewm.1 can be found. + + -- Joey Hess Wed, 11 Feb 1998 09:09:28 -0800 + +debhelper (0.60) unstable; urgency=low + + * dh_fixperms: make all files readable and writable by owner + (policy 3.3.8 paragraph 2). + Lintian found lots of bugs that will be fixed by this change. + + -- Joey Hess Mon, 9 Feb 1998 12:26:13 -0800 + +debhelper (0.59) unstable; urgency=low + + * Added DH_NO_ACT and --no-act, which make debhelper commands run without + actually doing anything. (Combine with -v to see what the command would + have done.) (#17598) + + -- Joey Hess Sun, 1 Feb 1998 14:51:08 -0800 + +debhelper (0.58) unstable; urgency=low + + * Fixed bug #17597 - DH_VERBOSE wasn'talways taking effect. + + -- Joey Hess Wed, 28 Jan 1998 17:18:17 -0500 + +debhelper (0.57) unstable; urgency=low + + * Depend on perl 5.004 or greater (for Getopt::Long). + + -- Joey Hess Sat, 17 Jan 1998 02:12:06 -0500 + +debhelper (0.56) unstable; urgency=low + + * dh_compress: Applied patch from Yann Dirson , + to make it not abort of one of the find's fails. + + -- Joey Hess Thu, 15 Jan 1998 19:16:48 -0500 + +debhelper (0.55) unstable; urgency=low + + * dh_clean: delete substvarsfiles probperly again (broken in 0.53). #17077 + * Added call to dh_movefiles, and a commented out call to dh_testversion, + to some of the sample rules files. #17076 + + -- Joey Hess Wed, 14 Jan 1998 12:48:43 -0500 + +debhelper (0.54) unstable; urgency=low + + * dh_lib: no longer call getopt(1) to parse options. I wrote my own + argument processor in perl. + * Added long versions of all arguments. TODO: document them. + * All parameters may now be passed values that include whitespace (ie, + dh_installinit -u"defaults 10") + * Now depends on perl (needs Getopt::Long). + + -- Joey Hess Sat, 10 Jan 1998 15:44:09 -0500 + +debhelper (0.53) unstable; urgency=low + + * dh_installmanpages: ignore all man pages installed into debian/tmp + type directories. (#16933) + * dh_*: set up alternative name for files like debian/dirs; you may now + use debian/.dirs too, for consistency. (#16934) + * dh_installdocs: if a debian/package.copyright file exists, use it in + preference to debian/copyright, so subpackages with varying copyrights + are supported. (#16935) + * Added dh_movefiles, which moves files out of debian/tmp into subpackages. + (#16932) + + -- Joey Hess Sat, 10 Jan 1998 11:30:12 -0500 + +debhelper (0.52) unstable; urgency=low + + * dh_compress: compress file belongs in debian/. It was looking in ./ + This has been broken since version 0.30. + + -- Joey Hess Tue, 6 Jan 1998 14:08:31 -0500 + +debhelper (0.51) unstable; urgency=low + + * dh_fixperms: make shared libraries non-executable, in accordance with + policy. (#16644) + * dh_makeshlibs: introduced a -V flag, which allows you to specify explicit + version requirements in the shlibs file. + * dh_{installdirs,installdocs,installexamples,suidregister,undocumented}: + Added a -A flag, which makes any files/directories specified on the + command line apply to ALL packages acted on. + * Updated Standards-Version to latest. + + -- Joey Hess Mon, 5 Jan 1998 16:15:01 -0500 + +debhelper (0.50) unstable; urgency=low + + * dh_makeshlibs: added -m parameter, which can force the major number + of the shared library if it is guessed incorrectly. + * Added dh_testversion to let your package depend on a certian version of + debhelper to build. + * dh_{installdirs,installdocs,installexamples,suidregieter,undocumented}: + behavior modification - any files/directories specified on the command + line now apply to the first package acted on. This may not be the + first package listed in debian/control, if you use -p to make it act on + a given package, or -i or -a. + * If you take advantage of the above new behavior, I suggest you add + "dh_testversion 0.50" to your debian/rules. + * Display a warning message in cases where the above behavior is triggered, + and debhelper's behavior has altered. + * I have grepped debian's source packages, and I'm quite sure this + is not going to affect any packages currently in debian. + * dh_lib: isnative() now caches its return value, which should optimize + away several more calls to dpkg-parsechangelog. + * README: explain a way to embed debhelper generated shell script into a + perl script. + * dh_installinit: A hack to work around the problem in getopt(1) that + led to bug report #16229: Any text specified on the command line that is + not a flag will be presumed to be part of the -u flag. Yuck. + + -- Joey Hess Sat, 3 Jan 1998 14:36:15 -0500 + +debhelper (0.37) unstable; urgency=low + + * dh_du: Fixed hardcoded debian/tmp. + * This change got lost by accident, redid it: Optimized out most of the + slowdown caused by using dpkg-parsechangelog - now it's only called by + 2 dh_* programs. + + -- Joey Hess Sun, 28 Dec 1997 20:45:22 -0500 + +debhelper (0.36) unstable; urgency=low + + * dh_undocumented: exit with an error message if the man page specified + does not have a section. + + -- Joey Hess Sat, 27 Dec 1997 14:14:04 -0500 + +debhelper (0.35) unstable; urgency=low + + * dh_lib: use dpkg-parsechangelog instead of parsing it by hand. This + makes a package build slower (by about 30 seconds, on average), so + I might remove it or optimize it if too many people yell at me. :-) + * dh_undocumented.1: note that it really links to undocumented.7.gz. + + -- Joey Hess Mon, 22 Dec 1997 22:19:39 -0500 + +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. + Also, use `pwd`/debian/tmp, instead of debian/tmp. + * Always substitute #DEBHELPER# in maintainer scripts, even if it expands + to nothing, for neatness and to save a few bytes. #15863 + * dh_clean: added -k parameter to not delete debian/files. #15789 + * examples/*: use dh_clean -k in the binary targets of all rules files, + for safety. + + -- Joey Hess Thu, 11 Dec 1997 19:05:41 -0500 + +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. + + -- 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. + + -- Joey Hess Fri, 5 Dec 1997 15:08:36 -0500 + +debhelper (0.29) unstable; urgency=low + + * dh_lib: don't expand text passed to doit() a second time. This fixes + #15624, and hopefully doesn't break anything else. + * A side effect of this (of interest only to the debhelper programmer) is + that doit() can no longer handle complex commands now. (ie, pipes, `;', + `&', etc separating multiple commands, or redirection) + * dh_makeshlibs, dh_md5sums, dh_installdebfiles, dh_du, dh_clean, + dh_installdirs: don't pass complex commands to doit(). + + -- Joey Hess Thu, 4 Dec 1997 13:56:14 -0500 + +debhelper (0.28) unstable; urgency=low + + * dh_makeshlibs: fixes type that caused the program to crash (#15536). + + -- Joey Hess Wed, 3 Dec 1997 13:22:48 -0500 + +debhelper (0.27) unstable; urgency=low + + * README: fixed typoes (one serious). + * Ran ispell on all the documentation. + + -- Joey Hess Sun, 30 Nov 1997 18:48:20 -0500 + +debhelper (0.26) unstable; urgency=low + + * dh_installdirs: Do not create usr/doc/$PACKAGE directory. Bug #15498 + * README: documented that $PACKAGE can be used in the arguments to some of + the dh_* programs (#15497). + * dh_du.1: no, this is not really the dh_md5sums man page (#15499). + + -- Joey Hess Sun, 30 Nov 1997 13:01:40 -0500 + +debhelper (0.25) unstable; urgency=low + + * dh_compress: was not reading debian/compress file - fixed. + * examples/*: moved dh_clean call to after make clean is run. + + -- Joey Hess Tue, 25 Nov 1997 15:43:58 -0500 + +debhelper (0.24) unstable; urgency=low + + * dh_clean: no longer clean up empty (0 byte) files (#15240). + + -- Joey Hess Tue, 25 Nov 1997 14:29:37 -0500 + +debhelper (0.23) unstable; urgency=low + + * Now depends on fileutils (>= 3.16-4), becuase with any earlier version + of fileutils, install -p will not work (#14680) + + -- Joey Hess Wed, 19 Nov 1997 23:59:43 -0500 + +debhelper (0.22) unstable; urgency=low + + * dh_installdocs: Install README.debian as README.Debian (of course, + README.Debian is installed with the same name..) + + -- Joey Hess Tue, 18 Nov 1997 01:23:53 -0500 + +debhelper (0.21) unstable; urgency=low + + * dh_installinit: on removal, fixed how update-rc.d is called. + + -- Joey Hess Sat, 15 Nov 1997 20:43:14 -0500 + +debhelper (0.20) unstable; urgency=low + + * Added dh_installinit, which installs an init.d script, and edits the + postinst, postrm, etc. + + -- Joey Hess Fri, 14 Nov 1997 00:45:53 -0500 + +debhelper (0.19) unstable; urgency=low + + * dh_installmenu.1: menufile is in section 5, not 1. + + -- Joey Hess Wed, 12 Nov 1997 19:54:48 -0500 + +debhelper (0.18) unstable; urgency=low + + * examples/*: added source, diff targets that just print an error. + * dh_clean: clean up more files - *.orig, *.rej, *.bak, .*.orig, .*.rej, + .SUMS, TAGS, and empty files. + * dh_lib: doit(): use eval on parameters, instead of directly running + them. This lets me clean up several nasty areas where I had to echo the + commands once, and then run them seperatly. + + -- Joey Hess Mon, 10 Nov 1997 19:48:36 -0500 + +debhelper (0.17) unstable; urgency=low + + * Added dh_installdirs, automatically creates subdirectories (for + compatability with debstd's debian/dirs file. + * dh_lib: fixed problem with -P flag. + + -- Joey Hess Fri, 7 Nov 1997 16:07:11 -0500 + +debhelper (0.16) unstable; urgency=low + + * dh_compress: always compress changelog and upstream changelog, no + matter what their size (#14604) (policy 5.8) + + -- Joey Hess Thu, 6 Nov 1997 19:50:36 -0500 + +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 + unchanged. + * Install examples/rules* executable. + + -- Joey Hess Mon, 27 Oct 1997 12:42:33 -0500 + +debhelper (0.13) unstable; urgency=low + + * Added dh_makeshlibs, automatically generates a shlibs file. + + -- Joey Hess Fri, 24 Oct 1997 20:33:14 -0400 + +debhelper (0.12) unstable; urgency=low + + * Fixed mispelling of dh_md5sums in examples rules files and README. + (#13990) Thanks, Adrian. + + -- Joey Hess Fri, 24 Oct 1997 14:35:30 -0400 + +debhelper (0.11) unstable; urgency=low + + * dh_md5sums: behavior modification: do not generate md5sums for conffiles. + (Thanks to Charles Briscoe-Smith ) #14048. + * dh_md5sums: can generate conffile md5sums with -x parameter. + * Added a "converting from debstd" section to the README. + * Added dh_du, generates a DEBIAN/du file with disk usage stats (#14048). + + -- Joey Hess Tue, 21 Oct 1997 13:17:28 -0400 + +debhelper (0.10) unstable; urgency=medium + + * dh_installdebfiles: fixed *bad* bug that messed up the names of all + files installed into DEBIAN/ for multiple binary packages. + * dh_md5sums: fixed another serious bug if dh_md5sums was used for + multiple binary packages. + * If you have made any multiple binary packages using debhelper, you + should rebuild them with this version. + * dh_md5sums: show cd commands in verbose mode. + + -- Joey Hess Mon, 20 Oct 1997 14:44:30 -0400 + +debhelper (0.9) unstable; urgency=low + + * Added dh_suidregister, interfaces to to the suidmanager package. + * dh_installdebfiles: fixed typo on man page. + + -- Joey Hess Sat, 18 Oct 1997 20:55:39 -0400 + +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. + * dh_installdocs: behavior modifcation: if there is a debian/TODO, it is + named like a debian/changelog file: if the package is a debian native + package, it is installed as TODO. If the package is not a native package, + it is installed as TODO.Debian. + * dh_installdocs: handle debian/README.Debian as well as + debian/README.debian. + * Added dh_undocumented program, which can set up undocumented.7 symlinks. + * Moved dh_installdebfiles to come after dh_fixperms in the example rules + files. (dh_installdebfiles makes sure it installs things with the proper + permissions, and this reorganization makes the file a bit more flexable + in a few situations.) + + -- Joey Hess Mon, 13 Oct 1997 20:08:05 -0400 + +debhelper (0.6) unstable; urgency=low + + * Got rid of bashisms - this package should work now if /bin/sh is ash. + + -- Joey Hess Fri, 10 Oct 1997 15:24:40 -0400 + +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. + * 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 + dh_installmenu and dh_installdebfiles and dh_clean. + * Removed some pointless uses of cat. + + -- Joey Hess Fri, 26 Sep 1997 21:52:53 -0400 + +debhelper (0.2) unstable; urgency=low + + * Moved out of unstable, it still has rough edges and incomplete bits, but + is ready for general use. + * Added man pages for all commands. + * Multiple binary package support. + * Support for specifying exactly what set of binary packages to act on, + by group (arch or noarch), and by package name. + * dh_clean: allow specification of additional files to remove as + parameters. + * dh_compress: fixed it to not compress doc/package/copyright + * dh_installmanpage: allow listing of man pages that should not be + auto-installed as parameters. + * dh_installdebfiles: make sure all installed files have proper ownerships + and permissions. + * dh_installdebfiles: only pass ELF files to dpkg-shlibdeps, and pass .so + files. + * Added a README. + * dh_compress: changed behavior - debian/compress script is now run inside + the package build directory it is to act on. + * Added dh_lib symlink in debian/ so the debhelper apps used in this + package's debian/rules always use the most up-to-date db_lib. + * Changed dh_cleantmp commands in the examples rules files to dh_clean. + + -- Joey Hess Tue, 23 Sep 1997 12:26:12 -0400 + debhelper (0.1) experimental; urgency=low * First release. This is a snapshot of my work so far, and it not yet diff --cc dh_compress index 27f931f,e1f8ed6..1d30c65 --- a/dh_compress +++ b/dh_compress @@@ -4,50 -4,37 +4,68 @@@ # compressed files get fixed. PATH=debian:$PATH:/usr/lib/debhelper -source dh_lib - -# The config file is a sh script that outputs the files to be compressed -# (typically using find). -if [ -f debian/compress ]; then - files=`sh debian/compress 2>/dev/null` -else - # By default fall back on what the policy manual says to compress. - files=` - find debian/tmp/usr/info debian/tmp/usr/man \ - debian/tmp/usr/X11*/man -type f 2>/dev/null ; - find debian/tmp/usr/doc -type f -size +4k \ - ! -name "*.htm*" ! -name "*.gif" \ - ! -name "debian/tmp/usr/doc/*/copyright" 2>/dev/null - ` -fi - -if [ "$files" ]; then - # This is just a cosmetic fix. - files=`echo $files | tr "\n" " "` - - doit "gzip -9 $files" || true -fi - -# Fix up symlinks that were pointing to the uncompressed files. -for file in `find debian/tmp -type l`; do - DIRECTORY=`expr $file : "\(.*\)/[^/]*"` - NAME=`expr $file : ".*/\([^/]*\)"` - LINKVAL=`ls -l $DIRECTORY/$NAME | awk '{ print $11;}'` - if [ ! -e $DIRECTORY/$LINKVAL -a -f $DIRECTORY/$LINKVAL.gz ]; then - doit "rm $DIRECTORY/$NAME" - doit "ln -s $LINKVAL.gz $DIRECTORY/$NAME.gz" +. dh_lib + ++# Returns a list of all the files that we want to compress, ++# (ignoring any files we were asked to exclude on the command ++# line). Assummes we are already in the temp directory. ++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 ++ 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 ++ find usr/doc -type f \( -size +4k -or -name "changelog*" \) \ ++ ! -name "*.htm*" ! -name "*.gif" ! -name "*.gz" \ ++ ! -name "copyright" 2>/dev/null ++ fi ++} ++ ++# Returns a list of all the files we want to compress, ++# after taking command line exclusions into account. ++# Call only if DH_EXCLUDE_GREP is non-empty. ++filelist_excluded () { ++ # Use grep -F so we don't have to worry about regexp's. ++ filelist | grep -v -F \ ++ "`echo "$DH_EXCLUDE_GREP" | tr "|" "\n"`" ++} ++ +for PACKAGE in $DH_DOPACKAGES; do + TMP=`tmpdir $PACKAGE` + compress=`pkgfile $PACKAGE compress` + + # Run the file name gathering commands from within the directory + # structure that will be effected. + olddir=`pwd` + doit "cd $TMP" + - if [ "$compress" ]; then - # The config file is a sh script that outputs the files to be compressed - # (typically using find). - files=`sh $olddir/$compress 2>/dev/null ; true` ++ # Get the list of files to compress. ++ if [ "$DH_EXCLUDE_GREP" ]; then ++ files=`filelist_excluded` + else - # By default fall back on what the policy manual says to compress. - files=` - find usr/info usr/man usr/X11*/man -type f ! -name "*.gz" 2>/dev/null ; - find usr/doc -type f \( -size +4k -or -name "changelog*" \) \ - ! -name "*.htm*" ! -name "*.gif" ! -name "*.gz" \ - ! -name "copyright" 2>/dev/null ; - true - ` ++ files=`filelist` + fi + + if [ "$files" ]; then + # This is just a cosmetic fix. - files=`echo $files | tr "\n" " "` ++ files=`echo $files | tr "\n" " "` + - doit "gzip -9 $files" || true ++ doit "gzip -f9 $files" || true fi + + # Change back to old pwd. + doit "cd $olddir" + + # Fix up symlinks that were pointing to the uncompressed files. + for file in `find $TMP -type l`; do + DIRECTORY=`expr $file : "\(.*\)/[^/]*"` + NAME=`expr $file : ".*/\([^/]*\)"` + LINKVAL=`ls -l $DIRECTORY/$NAME | awk '{ print $11;}'` + if [ ! -e $DIRECTORY/$LINKVAL -a -f $DIRECTORY/$LINKVAL.gz ]; then + doit "rm $DIRECTORY/$NAME" + doit "ln -s $LINKVAL.gz $DIRECTORY/$NAME.gz" + fi + done done diff --cc dh_compress.1 index dbb33e6,06087b8..4f2d2d0 --- a/dh_compress.1 +++ b/dh_compress.1 @@@ -3,7 -3,7 +3,7 @@@ dh_compress \- compress files and fix symlinks in package build directories .SH SYNOPSIS .B dh_compress - .I "[-v] [-a] [-i] [--no-act] [-ppackage] [-Ptmpdir]" -.I "[-v] [-a] [-i] [-ppackage]" ++.I "[-v] [-a] [-i] [-X] [--no-act] [-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 @@@ -31,24 -30,17 +31,31 @@@ customization of what files are compres ! -name "copyright" .SH OPTIONS .TP -.B \-v +.B \-v, \--verbose Verbose mode; show all commands that modify the package build directory. .TP -.B \-a +.B \-a, \--arch Compress files for all architecture dependent packages. .TP -.B \-i +.B \-i, \--indep Compress files for all architecture independent packages. .TP -.B \-ppackage +.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. ++.TP ++.B \-X=item, \--exclude=item ++Exclude files that contain "item" anywhere in their filename from being ++compressed. For example, -X=.jpeg will exclude jpeg's from compression. ++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 diff --cc dh_getopt.pl index 0c9bba0,bb7d513..b5cde77 --- a/dh_getopt.pl +++ b/dh_getopt.pl @@@ -58,6 -58,6 +58,11 @@@ sub AddPackage { my($option,$value)=@_ } } ++# Add another item to the exclude list. ++sub AddExclude { my($option,$value)=@_; ++ push @exclude,$value; ++} ++ use Getopt::Long; # Enable bundling of short command line options. @@@ -82,7 -82,7 +87,10 @@@ $ret=GetOptions "x" => \$include, # is -x for some unknown historical reason.. "include-conffiles" => \$include, -- ++ ++ "X=s" => \&AddExclude, ++ "exclude=s" => \&AddExclude, ++ "d" => \$d_flag, "remove-d" => \$d_flag, @@@ -123,17 -115,6 +131,20 @@@ if (defined($version_info)) $version_info_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) { + $verbose=1; +} + +# Check to see if DH_NO_ACT was set, if so, make sure no act mode is on. +if ($ENV{DH_NO_ACT} ne undef) { + $no_act=1; +} + ++$exclude=join ' ', @exclude; ++$exclude_grep=join '|', @exclude; ++ # 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{ @@@ -143,7 -123,7 +154,9 @@@ DH_DOPACKAGES='@packages DH_DOINDEP='$indep' DH_DOARCH='$arch' DH_NOSCRIPTS='$noscripts' --DH_EXCLUDE='$include' ++DH_INCLUDE_CONFFILES='$include' ++DH_EXCLUDE='$exclude' ++DH_EXCLUDE_GREP='$exclude_grep' DH_D_FLAG='$d_flag' DH_R_FLAG='$r_flag' DH_K_FLAG='$k_flag' diff --cc dh_md5sums index 8db0176,634e2fd..40cb7ab --- a/dh_md5sums +++ b/dh_md5sums @@@ -9,19 -9,14 +9,19 @@@ PATH=debian:$PATH:/usr/lib/debhelpe 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 "pushd debian/$TMP" >/dev/null - # Doit isn't smart enough to hande this next command so echo by hand. (sigh) - verbose_echo 'md5sum `find * -type f ! -regex "^DEBIAN/.*"` > DEBIAN/md5sums DEBIAN/md5sums /dev/null" >/dev/null + complex_doit "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 $TMP/DEBIAN/conffiles ]; then ++ if [ ! "$DH_INCLUDE" -a -r $TMP/DEBIAN/conffiles ]; then + complex_doit "sort $TMP/DEBIAN/conffiles | comm -13 - $TMP/DEBIAN/allfiles > $TMP/DEBIAN/allfiles.new" + doit "mv $TMP/DEBIAN/allfiles.new $TMP/DEBIAN/allfiles" + fi + olddir=`pwd` + complex_doit "cd $TMP ; sed 's:^/::' < DEBIAN/allfiles | xargs md5sum > DEBIAN/md5sums ; cd $olddir" + doit "chmod 644 $TMP/DEBIAN/md5sums" + doit "chown root.root $TMP/DEBIAN/md5sums" + doit "rm -f $TMP/DEBIAN/allfiles" done