Paketera med CDBS
Föregående
Nästa

Paketera med CDBS

CDBS är ett verktyg som använder debhelper för att göra det ännu enklare att bygga och underhålla Debianpaket. Det har många fördelar:

Använda CDBS i paket

Att använda CDBS för Ubuntu-paket är väldigt enkelt. Efter att ha lagt till cdbs till Build-Depends i debian/control kan en grundläggande debian/rules-fil med CDBS få plats på två rader. För ett enkelt program skrivet i C/C++ utan några extra regler, som hello, kan debian/rules se ut såhär:

#!/usr/bin/make -f
				
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk

Det här är allt du behöver för att bygga programmet! CDBS hanterar installation och upprensning. Du kan sedan använda filerna .install och .info för att anpassa ditt program med de vanliga debhelper-funktionerna i olika delar av debian/rules.

Varning

Använd inte DEB_AUTO_UPDATE_DEBIAN_CONTROL:=yes för att automatiskt ändra debian/control. Det kan orsaka dåliga saker, och Debian anser att det är ett skäl till att neka ett paket från att komma in i arkiven. Läs http://ftp-master.debian.org/REJECT-FAQ.html för mer information.

Som du kan se fungerar CDBS i princip genom att inkludera .mk Makefiles i debian/rules. Paketet cdbs ger dig sådana filer i /usr/share/cdbs/1/ som låter dig göra utföra paketeringsuppgifter. Andra paket, som till exempel quilt, lägger till moduler till CDBS och kan användas som Build-Depends. Notera att du också kan använda dina egna CDBS-regler och inkludera dessa i paketet. De mest användbara modulerna som ingår i cdbs är:

  • rules/debhelper.mk: Anropar debhelper på alla platser det behövs

  • rules/dpatch.mk: Låter dig använda dpatch för att förenkla att patcha källkoden

  • rules/simple-patchsys.mk: Erbjuder ett väldigt enkelt sätt att patcha källkoden

  • rules/tarball.mk: Låter dig bygga paket med komprimerade tarbollar i paketet

  • class/autotools.mk: Anropar autotools på alla platser det behövs

  • class/gnome.mk: Bygger GNOME-program (kräver motsvarande Build-Depends i debian/control)

  • class/kde.mk: Bygger KDE-program (kräver motsvarande Build-Depends i debian/control)

  • class/python-distutils.mk: Bygger Python-program

Mer information om CDBS

För mer information om CDBS, se Marc Dequènes guide på https://perso.duckcorp.org/duck/cdbs-doc/cdbs-doc.xhtml.

Föregående
Nästa
Hem