]> git.donarmstrong.com Git - debhelper.git/blobdiff - debhelper.pod
cmake: Pass CPPFLAGS in CFLAGS. Closes: #668813 Thanks, Simon Ruderich for the patch...
[debhelper.git] / debhelper.pod
index 98da7362868ed1d21ce85bc26bd4721203d9f0c3..511b21f4a09cc569d2bfeda5b03c128c28df714d 100644 (file)
@@ -69,9 +69,9 @@ Generally, these files will list files to act on, one file per line. Some
 programs in debhelper use pairs of files and destinations or slightly more
 complicated formats.
 
-Note that if a package is the first (or only) binary package listed in
-F<debian/control>, debhelper will use F<debian/foo> if no F<debian/package.foo>
-file can be found.
+Note for the first (or only) binary package listed in
+F<debian/control>, debhelper will use F<debian/foo> when there's no
+F<debian/package.foo> file.
 
 In some rare cases, you may want to have different versions of these files
 for different architectures or OSes. If files named debian/I<package>.foo.I<ARCH>
@@ -80,14 +80,19 @@ output of "B<dpkg-architecture -qDEB_HOST_ARCH>" /
 "B<dpkg-architecture -qDEB_HOST_ARCH_OS>",
 then they will be used in preference to other, more general files.
 
-In many cases, these config files are used to specify various types of
+Mostly, these config files are used to specify lists of various types of
 files. Documentation or example files to install, files to move, and so on.
 When appropriate, in cases like these, you can use standard shell wildcard
 characters (B<?> and B<*> and B<[>I<..>B<]> character classes) in the files.
-
 You can also put comments in these files; lines beginning with B<#> are
 ignored.
 
+The syntax of these files is intentionally kept very simple to make them
+easy to read, understand, and modify. If you prefer power and complexity,
+you can make the file executable, and write a program that outputs
+whatever content is appropriate for a given situation. When you do so,
+the output is not further processed to expand wildcards or strip comments.
+
 =head1 SHARED DEBHELPER OPTIONS
 
 The following command line options are supported by all debhelper programs.
@@ -252,7 +257,7 @@ is manually specified with the B<--buildsystem> option.
 
 =back
 
-=head1 COMPATABILITY LEVELS
+=head1 COMPATIBILITY LEVELS
 
 From time to time, major non-backwards-compatible changes need to be made
 to debhelper, to keep it clean and well-designed as needs change and its
@@ -262,9 +267,15 @@ introduced. You tell debhelper which compatibility level it should use, and
 it modifies its behavior in various ways.
 
 Tell debhelper what compatibility level to use by writing a number to
-F<debian/compat>. For example, to turn on v8 mode:
+F<debian/compat>. For example, to turn on v9 mode:
+
+  % echo 9 > debian/compat
+
+Your package will also need a versioned build dependency on a version of
+debhelper equal to (or greater than) the compatibility level your package
+uses. So for compatibility level 9, ensure debian/control has:
 
-  % echo 8 > debian/compat
+  Build-Depends: debhelper (>= 9)
 
 Unless otherwise indicated, all debhelper documentation assumes that you
 are using the most recent compatibility level, and in most cases does not
@@ -430,8 +441,6 @@ none is specified.
 
 =item v8
 
-This is the recommended mode of operation.
-
 Changes from v7 are:
 
 =over 8
@@ -461,7 +470,7 @@ B<dh_auto_>I<*> prefer to use Perl's B<Module::Build> in preference to F<Makefil
 
 =item v9
 
-This compatibility level is still open for development; use with caution.
+This is the recommended mode of operation.
 
 Changes from v8 are:
 
@@ -497,12 +506,36 @@ B<dh> does not default to enabling --with=python-support
 
 All of the B<dh_auto_>I<*> debhelper programs and B<dh> set
 environment variables listed by B<dpkg-buildflags>, unless
-they are already set. They support DEB_BUILD_OPTIONS=noopt too.
+they are already set.
+
+=item -
+
+B<dh_auto_configure> passes B<dpkg-buildflags> CFLAGS, CPPFLAGS, and
+LDFLAGS to perl F<Makefile.PL> and F<Build.PL>
+
+=item -
+
+B<dh_strip> puts separated debug symbols in a location based on their
+build-id.
 
 =item -
 
-B<dh_auto_configure> passes CFLAGS to perl F<Makefile.PL> and
-F<Build.PL>
+Executable debhelper config files are run and their output used as the
+configuration.
+
+=back
+
+=item v10
+
+This compatibility level is still open for development; use with caution.
+
+Changes from v9 are:
+
+=over 8
+
+=item -
+
+None yet..
 
 =back
 
@@ -588,22 +621,12 @@ act on.
 =head2 udebs
 
 Debhelper includes support for udebs. To create a udeb with debhelper,
-add "B<Package-Type: udeb>" to the package's stanza in F<debian/control>, and
-build-depend on debhelper (>= 4.2). Debhelper will try to create udebs that
-comply with debian-installer policy, by making the generated package files
-end in F<.udeb>, not installing any documentation into a udeb, skipping over
+add "B<Package-Type: udeb>" to the package's stanza in F<debian/control>.
+Debhelper will try to create udebs that comply with debian-installer
+policy, by making the generated package files end in F<.udeb>, not
+installing any documentation into a udeb, skipping over
 F<preinst>, F<postrm>, F<prerm>, and F<config> scripts, etc.
 
-=head2 Build depends
-
-Once your package uses debhelper to build, be sure to add
-debhelper to your Build-Depends line in F<debian/control>. You should
-build-depend on a version of debhelper equal to (or greater than) the
-debhelper compatibility level your package uses. So if your package used
-compatibility level 7:
-
-  Build-Depends: debhelper (>= 7)
-
 =head1 ENVIRONMENT
 
 =over 4