dh-make-pecl(1) Create debian source packages from pecl extensions


dh-make-pecl [--help ] [--version ] [--arch any | all] [--depends DEPENDS] [--build-depends DEPENDS] [--maintainer MAINTAINER] [--prefix PREFIX] [--package-name NAME] [--templatedir TEMPLATEDIR] [--only 4|5] [--phpversion 4 5] [--dont-use-confd] [--php55-conf] [--no-php55-conf] [PACKAGE]


This manual page documents briefly the dh-make-pecl command.

dh-make-pecl creates the files required to build a debian source package from a PHP extension as it is distributed through PECL.

The last parameter passed to dh-make-pecl can be either the .tgz archive containing the php extension or the name of the extension. In the second case dh-make-pecl will first download the archive from http://pecl.php.net. If dh-make-pecl downloads the archive itself, it will always take the most recent version.

dh-make-pecl will by default create a directory named php-<pecl-package-name>-<pecl-package-version> which will contain the debian files and the unpacked files from the extension. It will also create a symlink php-<pecl-package-name>_<version>.orig.tar.gz pointing towards the original source. After creating the files you can go into then new directory and build the debian package with dpkg-buildpackage -rfakeroot. This will (for version 0.2.x) create php4-<pecl-package-name> and php5-<pecl-package-name> binary packages. Since version 0.3.x only the binary package for php5 will be build anymore.

dh-make-pecl tries to extract as much information about the package from the file package.xml which is part of the pecl extension. Though, there is some information like depends on other debian packages, which must be given by options, e.g. --depends or --build-depends.

Debian source packages created by dh-make-pecl can later easily be updated with uscan.


These programs follow the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below. For a complete description, see the Info files.

-h --help

Show summary of options.

-v --version

Show version of program.


Set architecture of created debian source package to 'any' or 'all'. Defaults to 'any'.


Adds more packages to Depends: beside php4|php5.


Adds more packages to Build-Depends: beside php4-dev, php5-dev, debhelper and dh-make-php.


Sets prefix of debian source package name. Each name ends in '<pecl-package-name>'. Defaults to 'php'.


Explicitly sets the maintainer. In most cases it will be propperly guessed by reading some of the environment variables.


Overwrite package name in package.xml. This name will be prefixed with `php-'. Do not use this function unless you know what you are doing.


Use a different directory with templates for the debian files. Defaults to /usr/share/dh-make-php/pecl.template.


This option is deprecated. Use --phpversion.

Set this to 4 or 5 in order to produce a debian package which creates a binary package for php4 or php5 only, but not for both. This is mostly useful if a pecl package does not compile for all php version.


Set this to 4, 5 or both separated by a space in order to produce a debian package which creates a binary package for the given php major versions. This is mostly useful if you want to create a pecl package for php4, which is not created by default anymore since dh-make-pecl 0.3.0.


Some time between Sarge and Etch, the debian php packages has moved its configuration into its own ini file in /etc/php[45]/conf.d and no longer modify the global configuration in /etc/php[45]/<sapi>/php.ini. Since Version 0.2.1 of dh-make-php this is the default behaviour when creating packages. If you prefer the old way of creating php pecl packages use this option.


PHP 5.5 has introduced a new configuration schema for pecl extensions. This is used by default, if /etc/php5/mods-available is found on the system wher dh-make-pecl runs. This option is provided to explicity turn on PHP 5.5 configuration even if the default is off.


This option is provided to explicity turn off PHP 5.5 configuration even if the default is on.


dh-make-pecl evaluates the following environment variables:

DEBFULLNAME - the real name of the maintainer

LOGNAME or USER - the username

DEBEMAIL or EMAIL - the email address of the user


UWE STEINMANN <[email protected]>

Wrote this manpage for the Debian system.


Copyright © 2004-2010 Uwe Steinmann

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.