dh_make


SYNOPSIS
       dh_make  [-nlsmiadhry]  [-c  license] [-e address] [-f file] [-t direc-
       tory] [-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] [--rulesfor-
       mat 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 sin-
       gle) 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-indepen-
              dent.

       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
       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 $LOG-
       NAME 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  ver-
              sion 3 of the corresponding license, apache implies Apache v2.0.
              If you need a different version, change the license file  after-
              wards 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  revi-
              sion 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 Kernel  module,  skipping
              the question.

       --kpatch
              Automatically  set  package  class to kpatch, skipping the ques-
              tion.

       -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  direc-
              tory.

       -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 direc-
              tory.

       -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.

       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 pack-
              ages

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)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2018 Hurricane Electric. All Rights Reserved.