Debian packages from Autotools project
Following the debian guide.
Requirements
- debmake
- debuild
- debhelper
- dh-autoreconf
First release
- Download and extract the Autotools-produced distribution tarball (e.g.
trexio-2.1.0.tar.gz
) cp trexio-2.1.0.tar.gz libtrexio_2.1.0.orig.tar.gz
--> important for step 4cd trexio-2.1.0
debmake
This will create debian
folder with some pre-filled templates, which have to be checked and modified
according to your project (e.g. prepend lib
for library packages).
Release updates
This relies on the previously created and modified templates in the debian
directory.
debuild
--> this creates the debian packages in the parent directory, i.e. one level higher thantrexio-2.1.0/
directorydpkg -f libtrexio_2.1.0-1_amd64.deb pre-depends depends recommends conflicts break
Note for maintainers: to battle-test your build process, it can be a good idea to run debuild
in a chroot
environment
as opposed to the host. For example, pbuilder
can be used to create an isolated chroot
and to build a debian package within it (see pdebuild
wrapper command).
Make
TREXIO supplies make debian_from_dist
rule to produce a libtrexio
debian package.
It relies on specifications in the debian/
folder.
This rule should be executed in the source code distribution (extracted from the tarball) and not in the GitHub repo clone.
It also requires the tarball distribution (e.g. trexio-2.1.0.tar.gz
) to be present in the parent directory.