diff options
author | joey <joey> | 2001-02-09 00:57:53 +0000 |
---|---|---|
committer | joey <joey> | 2001-02-09 00:57:53 +0000 |
commit | 053f6f8b4e7431d32511aef209188a084e8c7e79 (patch) | |
tree | 209a51c8c8fdbcce25c834198f1b3ef705dcb5b0 /doc | |
parent | ae0346306694bb2c52193f6352755c223e6e8935 (diff) | |
download | debhelper-053f6f8b4e7431d32511aef209188a084e8c7e79.tar.gz |
r420: big monsta changes
Diffstat (limited to 'doc')
-rw-r--r-- | doc/TODO | 39 | ||||
-rw-r--r-- | doc/from-debstd | 62 | ||||
-rw-r--r-- | doc/v3 | 36 |
3 files changed, 31 insertions, 106 deletions
@@ -3,14 +3,33 @@ list grows - I welcome patches to fix items on it! Wishlist items: -* Make dh_* "use strict". -* 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. (#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. +* All debhelper programs should only accept the options they are documented + to accept (rather than accepting all debhelper options). They should + be able to print breif usage summaries. + + I think this calls for a restucturing. Make a Debhelper.pm class. Each + program subclasses the class. The class provides command line parsing, + useful functions, and so on. Skeleton of a debhelper command would then + be: + + use base qw{Debhelper}; + + sub startup { + # Add initialization stuff here. + } + + sub perpackage { + my $package=shift; + + # Stuff to do for each package here. + } + + sub fini { + # And final stuff here, if any. + } + + This needs more thought. + * 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 @@ -50,3 +69,7 @@ Deprecated: them. I'd also like to depercate/remove debian/compress files, -X is a better idea. * dh_suidmanager. Once nothing in the archive uses it. +* dh_installmanpages. Only mildly deprecated right now. Once dh_installman + catches on, make it emit a warning, and then wait for it to go away. +* dh_testversion. Only mildly deprecated right now. Make it emit a warning + by jan 2002, and remove as soon as nothing uses it. diff --git a/doc/from-debstd b/doc/from-debstd deleted file mode 100644 index 3cd179b4..00000000 --- a/doc/from-debstd +++ /dev/null @@ -1,62 +0,0 @@ -Converting from debstd to debhelper: ------------------------------------ - -Debhelper is designed to be mostly backwards compatible to debstd. I say -mostly because I haven't made debhelper handle everything that debstd does -yet, and in a few cases, debhelper does things differently (and I hope, -better). - -In general, you can switch over to using debhelper as follows. In your -debian/rules, you currently will have some lines that read something like -this: - - debstd CHANGES TODO README - dpkg-gencontrol - dpkg --build debian/tmp .. - -Debhelper comes with a command called dh_debstd that mimics the behavior of -debstd, by calling various debhelper commands. So in the root directory of -your package you are converting, run: - - dh_debstd CHANGES TODO README --verbose --no-act - -Notice the parallel to the debstd command above, I just added -"--verbose --no-act" to the end. This will make dh_debstd output a list of -commands that it thinks will emulate what debstd would have done, without -actually doing anything to your package. The list will look similar to this: - - dh_installdirs - dh_installdocs TODO README - dh_installexamples - dh_installchangelogs CHANGES - dh_installmenu - dh_installcron - dh_installmanpages - dh_movefiles - dh_strip - dh_compress - dh_fixperms - dh_shlibdeps - dh_gencontrol - dh_makeshlibs - dh_installdeb - dh_md5sums - dh_builddeb - -Now copy that output into debian/rules, replacing the debstd command, as -well as any dpkg-gencontrol and dpkg --build commands. - -Finally, debstd automatically modified postinst, postrm, etc scripts. Some -of the debhelper apps do that too, but they do it differently. Debstd just -appends its commands to the end of the script. Debhelper requires that you -insert a tag into your scripts, that will tell debhelper where to insert -commands. So if you have postinst, postrm, etc scripts, add a line reading -"#DEBHELPER#" to the end of them. - -Once you think it's all set up properly, do a test build of your package. If -it works ok, I recommend that you compare the new package and the old -debstd-generated package very closely. Pay special attention to the -postinst, postrm, etc scripts, and make sure that the new package contains -all the same files as the old, with the same permissions. - --- Joey Hess <joeyh@debian.org> diff --git a/doc/v3 b/doc/v3 deleted file mode 100644 index c1833dca..00000000 --- a/doc/v3 +++ /dev/null @@ -1,36 +0,0 @@ -Debhelper v3 is a major new revision of debhelper. Currently, v3 is still -being worked on, and will change in drastic ways without notice. This -*will* break packages that use it, so don't, unless you like riding the -bleeding edge. - -To enable debhelper v3 features (do this with *caution*), set DH_COMPAT=3 in -your debian/rules. Also, it is a very good idea to add a call to your -debian/rules like this: - dh_testversion 2 -To ensure that your package won't be built with some old version of -debhelper that ignores the DH_COMPAT flag. - -Here are the changes I'm planning to make to debhelper for v3, based on -prior discussion on debian-devel. - -Items marked with a + are done. All others will happen as soon as I can code -them. - -* dh_installmanpages will be made into a non-DWIM program, so you'll have to - specify all man pages to install and possibly where to put them. This may - look something like: - dh_installmanpages -x xterm.1 xfoo.1 xbar.man - dh_installmanpages --section=8 su.man - Ok, there's a _little_ DWIM left in there, it'll be smart enough to munge - the .man filenames properly. It'll probably just assume all man pages have - an extension, and delete that extentation, and add the correct one. - -+ Every file in etc/ is automatically flagged as a conffile by dh_installdeb. - -+ Debhelper config files support globbing via * and ?, when - appropriate. To turn this off and use those characters raw, just prefix - with a backspash. - -+ dh_makeshlibs generates autoscript fragments for ldconfig. This will - require you call it before dh_installdeb. (Many old debian/rules scripts - call it after.) |