Provided by: dh-make_0.63_all bug

NAME

       dh_make - prepare Debian packaging for an original source archive

SYNOPSIS

       dh_make  [-nlsmiadhry]  [-c  license]  [-e  address]  [-f  file]  [-t directory] [-o directory] [-p name]
       [--copyright license]  [--email  address]  [--native]  [--file  file]  [--library]  [--single]  [--indep]
       [--multi]  [--kmod]  [--kpatch] [--addmissing] [--yes] [--templates directory] [--defaultless] [--overlay
       directory] [--packagename name] [--rulesformat format] [--help] [--version]

DESCRIPTION

       dh_make is a tool to convert  a  regular  source  code  package  into  one  formatted  according  to  the
       requirements  of  the  Debian  Policy.   dh_make must be invoked within a directory containing the source
       code, which must be named <packagename>-<version>. The <packagename> must be all  lowercase,  digits  and
       dashes.  If  the directory name does not conform to this scheme, you must rename it before using dh_make.
       Alternatively, you may be able to use the --packagename option to force the package name.

   PACKAGE CLASSES
       Classes can be set with the single direct options (such as --s for single) or with the  -C,--packageclass
       option (-C=s for single).

       Single binary (s)
              The  package  will generate a single binary .deb package. It is the standard case, so if you don't
              know what to do, choose this.

       Arch-Independent (i)
              The package will generate a single package that is arch-independent.

       Multiple binary (m)
              The package will generate multiple binary .deb packages from one source package. Choose  this  for
              larger packages that need to be split.

       Library (l)
              The  package  will  generate at least two binaries. One library package containing just the lib in
              /usr/lib and another *-dev_*.deb package containing documentation and C headers.

       Kernel module (k)
              The package will generate a binary-all kernel module -source package for use with the make-kpkg(1)
              command. It also generates a binary package for additional utilities, daemons, etc. that may  come
              with the source.

       Kernel patch
              The package will generate a package that can be used for kernel patches.

   ACTIONS PERFORMED
       Unless     --native     was     given,     dh_make    makes    sure    a    original    source    archive
       (<packagename>_<version>.orig.tar.gz) exists. The archive can either end with .gz or  one  of  the  other
       supported compression extensions such as bz2 or lzma.  If no such file exists, the file specified with -f
       is  copied  in  place.  If no -f is supplied either but --createorig is, the current directory is created
       into a news archive ../<packagename>-<version>.orig.tar.gz The  original  archive  is  needed  for  other
       Debian  tools  to  generate  the  diffs  to the original sources required by the Debian packaging format.
       Unless there are reasons against it, this file should be the pristine upstream archive.

       Then dh_make proceeds to generate a "debian" subdirectory and the necessary control files in the  program
       source  directory. Those control files are customized with the packagename and version extracted from the
       directory name.

       dh_make makes several attempts to obtain the username. It first  checks  for  the  environment  variables
       $DEBFULLNAME, $LOGNAME is used to find a name in the /etc/passwd file, and through NIS, YP and LDAP.

       The e-mail address can either be specified with the -fB--email option or dh_make will attempt to find it.
       It will first check the environment variables $DEBEMAIL and then $EMAIL. If they are not set then dh_make
       will  search  an  available LDAP directory using ldapsearch(1) using $LOGNAME as the uid to search under.
       Finally it will use $LOGNAME and /etc/mailname to generate an email address.

       dh_make will also generate example files that are also customized for  the  package  generated.  You  can
       remove  all  files  with  *.ex  if you wish. You can also delete the README.Debian file if you don't have
       anything to put in it.  Renaming the example files to their name without the .ex at the end (and  editing
       them if necessary) will activate that feature of debhelper.

       If  the  --templates  or  -o  (--overlay) option is used dh_make will apply a customizing template to the
       "debian" directory. See the templates described in the FILES section of this manpage for samples.

OPTIONS

       -c, --copyright license
              Use license type in copyright file.  license can be gpl, gpl2, gpl3, lgpl, lgpl2 lgpl3,  artistic,
              apache,  bsd  or  mit.   If  this field is not specified the copyright file has a space to fill in
              which sort of license is used. The field is case-insensitive so -c GPL works as well  as  -c  gpl.
              gpl  and lgpl will give you version 3 of the corresponding license, apache implies Apache v2.0. If
              you need a different version, change the license  file  afterwards  or  use  the  gpl2  and  lgpl2
              options.

       -e, --email address
              Use address as the e-mail address in the Maintainer: field of debian/control file.

       -n, --native
              Create  a native Debian packages, i.e. do not generate a .orig archive, since it will be generated
              when building with dpkg-buildpackage.  The version number will not have a Debian  revision  number
              (e.g. -1) appended to it.

       -f, --file file
              Use  file  as  the  original  source  archive, and skip the copying of the current program tree to
              program.orig.

       -l, --library
              Automatically set the package class to Library, skipping the question.

       -s, --single
              Automatically set the package class to Single binary, skipping the question.

       -i, --indep
              Automatically set the package class to arch-independent binary, skipping the question.

       -m, --multi
              Automatically set the package class to Multiple binary, skipping the question.

       -k, --kmod
              Automatically set the package class to Kernel module, skipping the question.

       --kpatch
              Automatically set package class to kpatch, skipping the question.

       -a, --addmissing
              Adds missing example and control files on an existing debian source directory.

       -t, --templates directory
              Applies the customizing templates in directory to the debian directory.

       -o, --overlay directory
              Applies a customization template to an existing debian directory.

       -p, --packagename name
              Force the package name to be name,  good  for  packages  with  hyphens  in  their  name  or  other
              strangeness. You can also make the parameter name_version which will set both the package name and
              version and bypass and directory checking.

       -d, --defaultless
              Skips applying the default templates to the target debian directory.

       -h, --help
              Display the name, version, available options and authors, and exit successfully.

       -r, --rulesformat format
              Set  the  format  for  the  debian/rules  file to format. The options are the default Debhelper v7
              minimal rules (dh7), the old rules format (old) or CDBS format (cdbs).

       -v, --version
              Show the program name and version, and exit successfully.

       -y, --yes
              Automatic yes to prompts and run non-interactively.  The package class needs to be set for dh_make
              to run fully automatically.

ENVIRONMENT

       The following environment settings are used by dh_make:

       DEBEMAIL
              Email address to use in control and changelog entries.

       DEBFULLNAME
              You full name, eg "John Doe" which will appear in the control and changelog entries.

       EMAIL  Email address to use in control and changelog entries, only used if DEBEMAIL is no set.

       LOGNAME
              Default username used for looking up email and full name in other directories.

FILES

       /usr/share/debhelper/dh_make
              Directory that contains all the template files, separated in six directories:

       debian/
              with files for all package classes,

       debians/
              with files specific to the Single binary class,

       debianm/
              with files specific to the Multiple binary class,

       debianl/
              with files specific to the Library class, and finally,

       native/
              with files specific to the native Debian packages.

       licenses/
              template files for the more common licenses used in Debian packages

EXAMPLES

       To get dh_make to use the defaults and ask you various questions about the package

           dh_make

       Create your single class package using the with the GPL license:

           dh_make -s -c gpl

       A more involved example where you set your name in the environment, contact  email  and  license  in  the
       options and specify the upstream file:

           DEBFULLNAME="John Doe"
           dh_make --email contact@example.com --copyright=bsd \
            --file ../foo.tar.gz

BUGS

       dh_make may not detect your username and email address correctly when using sudo.

SEE ALSO

       dpkg(1),dpkg-buildpackage(1),dh(1),make-kpkg(1),debhelper(7)

       You  may  also want to read the Debian Policy (in /usr/share/doc/debian-policy ) and the New Maintainers'
       Guide (in /usr/share/doc/maint-guide).

Debian Project                                     2012-06-24                                         DH_MAKE(8)