]> git.donarmstrong.com Git - debhelper.git/blob - dh_compress.1
r266: * FHS complience. Patch from Johnie Ingram <johnie@netgod.net>.
[debhelper.git] / dh_compress.1
1 .TH DH_COMPRESS 1 "" "Debhelper Commands" "Debhelper Commands"
2 .SH NAME
3 dh_compress \- compress files and fix symlinks in package build directories
4 .SH SYNOPSIS
5 .B dh_compress
6 .I "[debhelper options] [-Xitem] [-A] [file ...]"
7 .SH "DESCRIPTION"
8 dh_compress is a debhelper program that is responsible for compressing
9 the files in package build directories, and makes sure that any symlinks
10 that pointed to the files before they were compressed are updated to point
11 to the new files.
12 .P
13 By default, dh_compress compresses files that debian policy mandates should
14 be compressed, namely all files in usr/share/info, usr/share/man, 
15 usr/X11R6/man, and all files in usr/share/doc that are larger than 4k in size,
16 (except the copyright file, .html files and .gif files), and all changelog 
17 files. It skips any files that appear to be already compressed (based on their
18 extentions).
19 .P
20 If a debian/package.compress file exists (debian/compress may be used for the
21 first binary package in debian/control), however, it will be ran as a shell
22 script, and all filenames that the shell script outputs will be compressed
23 instead of the default files. Note that the shell script will be run from
24 inside the package build directory.
25 .SH EXAMPLE
26 Here is a sample debian/compress file that causes dh_compress to compress
27 the same files as it would by default. This is a good starting point for
28 customization of what files are compressed:
29 .PP
30  find usr/info usr/share/info usr/man usr/share/man usr/X11*/man -type f ! -name "*.gz"
31  find usr/doc usr/share/doc -type f \\ 
32         \\( -size +4k -or -name "changelog*" \\) \\
33         \\( -name changelog.html -or ! -name "*.htm*" \\) \\
34         ! -name "*.gif" ! -iname "*.gz" \\
35         ! -iname "*.taz" ! -iname "*.tgz" ! -iname "*.z" \\
36         ! -name "copyright"
37 .SH OPTIONS
38 .TP
39 .B debhelper options
40 See
41 .BR debhelper (1)
42 for a list of options common to all debhelper commands.
43 .TP
44 .B \-Xitem, \--exclude=item
45 Exclude files that contain "item" anywhere in their filename from being
46 compressed. For example, -X.jpeg will exclude jpeg's from compression.
47 You may use this option multiple times to build up a list of things to
48 exclude. You can accomplish the same thing by using a debian/compress file,
49 but this is easier.
50 .TP
51 .B \-A, \--all
52 Compress all files specified by command line parameters in ALL packages
53 acted on.
54 .TP
55 .B file ...
56 Add these files to the list of files to compress.
57 .SH NOTES
58 The debian/compress file applies to the first binary package listed in your
59 control file. For the other packages, you can make files named
60 debian/package.compress, where "package" is the name of the package they 
61 apply to. (This works for the first binary package too.)
62 .SH ENVIRONMENT
63 See
64 .BR debhelper (1)
65 for a list of environment variables that affect all debhelper commands.
66 .SH "SEE ALSO"
67 .BR debhelper (1)
68 .SH BUGS
69 Filenames with spaces in them may not properly be compressed.
70 .SH "CONFORMS TO"
71 Debian policy, version 3.0.0.0
72 .SH AUTHOR
73 Joey Hess <joeyh@master.debian.org>