]> git.donarmstrong.com Git - debhelper.git/blobdiff - doc/PROGRAMMING
Allow individual debhelper programs to define their own special options by passing...
[debhelper.git] / doc / PROGRAMMING
index 4b19db5eb60c43a132f7c735a1ee4fd84b04c02b..0d96457fff6cc4114d5726affe4082eef778ca0a 100644 (file)
@@ -77,6 +77,13 @@ All debhelper programs should respond to certain arguments, such as -v, -i,
 -a, and -p. To help you make this work right, Dh_Lib.pm handles argument
 processing. Just call init().
 
+You can add support for additional options to your command by passing an
+options hash to init(). The hash is then passed on the Getopt::Long to
+parse the command line options. For example, to add a --foo option, which
+sets $dh{FOO}:
+
+init(options => { foo => \$dh{FOO} });
+
 After argument processing, some global variables are used to hold the
 results; programs can use them later. These variables are elements of the
 %dh hash.
@@ -93,13 +100,18 @@ switch             variable        description
                                packages
 -n             NOSCRIPTS       if set, do not make any modifications to the 
                                package's postinst, postrm, etc scripts.
+-o             ONLYSCRIPTS     if set, only make modifications to the
+                               package's scripts, but don't look for or
+                               install associated files.
 -X             EXCLUDE         exclude a something from processing (you
                                decide what this means for your program)
                                (This is an array)
                 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)
+                               that, of course) Note that this should
+                               only be used inside complex_doit(), not in
+                               doit().
 -x             INCLUDE_CONFFILES
                                include conffiles. It's -x for obscure
                                historical reasons.
@@ -139,12 +151,12 @@ switch            variable        description
 --name         NAME            a name to use for installed files, instead of
                                the package name
 --error-handler        ERROR_HANDLER   a function to call on error
+--language     LANGUAGE        specify what language a file is in
+--add-udeb     SHLIBS_UDEB     used by dh_makeshlibs
 
 Any additional command line parameters that do not start with "-" will be 
 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:
 ----------------
 
@@ -215,6 +227,8 @@ autoscript($package, $scriptname, $snippetname, $sedcommands)
           (optional)
        This command automatically adds shell script snippets to a debian
        maintainer script (like the postinst or prerm).
+       Note that in v6 mode and up, the snippets are added in reverse
+       order for the removal scripts.
 dirname($pathname)
        Return directory part of pathname.
 basename($pathname)
@@ -245,10 +259,13 @@ udeb_filename($package)
        Returns the filename of the udeb package.
 getpackages($type)
        Returns a list of packages in the control file.
-       Must pass "arch" or "indep" or "same" to specify arch-dependant or
-       -independant or same arch packages. If nothing is specified, returns all
+       Must pass "arch" or "indep" or "same" to specify arch-dependent or
+       -independent or same arch packages. If nothing is specified, returns all
        packages.
        As a side effect, populates %package_arches and %package_types with
        the types of all packages (not only those returned).
+inhibit_log()
+       Prevent logging the program's successful finish to
+       debian/*debhelper.log
 
 -- Joey Hess <joeyh@debian.org>