1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-11-03 20:54:07 +01:00
trexio/debian
2022-02-16 18:16:19 +01:00
..
patches modified output of debmake 2022-02-16 16:55:27 +01:00
source modified output of debmake 2022-02-16 16:55:27 +01:00
changelog modified output of debmake 2022-02-16 16:55:27 +01:00
compat modified output of debmake 2022-02-16 16:55:27 +01:00
control Add more build-dependencies 2022-02-16 16:57:29 +01:00
copyright modified output of debmake 2022-02-16 16:55:27 +01:00
README.Debian modified output of debmake 2022-02-16 16:55:27 +01:00
README.md Update README 2022-02-16 18:16:19 +01:00
rules add missing rules file 2022-02-16 18:00:00 +01:00
watch modified output of debmake 2022-02-16 16:55:27 +01:00

Debian packages from Autotools project

Following the debian guide.

Requirements

  • debmake
  • debuild
  • debhelper
  • dh-autoreconf

First release

  1. Download and extract the Autotools-produced distribution tarball (e.g. trexio-2.1.0.tar.gz)
  2. cp trexio-2.1.0.tar.gz libtrexio_2.1.0.orig.tar.gz > important for step 4
  3. cd trexio-2.1.0
  4. 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.

  1. debuild > this creates the debian packages in the parent directory, i.e. one level higher than trexio-2.1.0/ directory
  2. dpkg -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.