"Fossies" - the Fresh Open Source Software archive 
Member "dpkg-1.16.10/man/sv/deb-substvars.5" of archive dpkg_1.16.10.tar.gz:
Table of Contents
deb-substvars - Debians källkods-substitueringsvariabler
substvars
Innan dpkg-source, dpkg-gencontrol och dpkg-genchanges
skriver sin kontrollinformation (till control-filen i källkodspaketet .dsc
för dpkg-source och till standard ut för dpkg-gencontrol och dpkg-genchanges)
kommer de utföra viss variabelsubstituering på utdatafilen.
En variabelsubstitution
har formen ${variabelnamn}. Variabelnamn består av alfanumeriska tecken,
bindestreck och kolon och börjar med ett alfanumeriskt tecken. Variabelsubstitueringar
utförs upprepade gånger tills det inte kvarstår några - det resulterande
innehållet i fältet läses av på nytt efter substitueringen för att se om
det behövs fler substitueringar.
När alla substitueringar har utförts ersätts
varje förekomst av strängen ${} (som inte är en giltig substituering) med
ett $-tecken.
Medan variabelsubstituering görs på alla fält i styrfilen
är det några av fälten som används och behövs vid byggning innan substitueringen
ännu har utförts. Därför går det inte att använda variabler i fälten Package,
Source och Architecture.
Variabelsubstituering sker över innehållet i fälten
efter att de har tolkats, vilket innebär att om du vill att en variabel
skall expanderas över flera rader så behöver du inte inkludera ett blanksteg
efter nyradstecknet. Detta görs implicit när fältet skrivs ut. Till exempel,
om variablen ${Description} sätts till "foo är bar.${Newline}foo är bra."
och du har följande fält:
Description: programmet foo
${Description}
.
Mer text.
Så blir resultatet:
Description: programmet foo
foo är bar.
foo är bra.
.
Mer text.
Variabler kan sättas genom att använda kommandoradsflaggan -V. De kan även
anges i filen debian/substvars (eller vilken som helst annan fil som anges
med flaggan -T). Filen består av rader på formen namn=värde. Avslutande blanksteg
på en rad, blanka rader och rader som börjar med en #-symbol (kommentarer)
ignoreras.
I tillägg är följande standardvariabler tillgängliga:
- Arch
- Den
aktuella byggarkitekturen (från dpkg --print-architecture).
- source:Version
- Version för källkodspaketet.
- source:Upstream-Version
- Version på uppströmskällkodspaketet,
inklusive Debianversionens epok, om sådan finns.
- binary:Version
- Den binära
paketversionen (som kan avvika från source:Version, till exempel i en binNMU).
- Source-Version
- Versionen på källkodspaketet (från changelog-filen). Variabeln
avråds från eftersom betydelsen skiljer sig från funktionen, använd i stället
source:Version eller binary:Version allt eftersom vad som är lämpligt.
- Installed-Size
- Den totala storleken på paketets installerade filer. Värdet kopieras in
i motsvarande fält i kontrollfilen. Om du ställer in det kommer det att
ersätta värdet på fältet. Om variabeln inte är satt kommer dpkg-gencontrol
att använda du -k debian/tmp för att hitta det förvalda värdet.
- Extra-Size
- Ytterligare diskutrymme som används när paketet installeras. Om värdet är
satt kommer dess värde att läggas till Installed-Size-variabelns värde (oavsett
om den satts explicit eller om det förvalda värdet används) innan det kopieras
till kontrollfilens fält Installed-Size.
- F:fältnamn
- Värdet på utdatafältet
fältnamn (som måste anges med rätt form av stora och små bokstäver). Om
du sätter dessa variabler händer ingenting förutom där de explicit expanderats.
- Format
- Formatet på filen .changes som skapats av denna version av källkodspaketeringsskripten.
Om du sätter denna variabel kommer innehållet i Format-fältet i filen .changes
också att ändras.
- Newline, Space, Tab
- Dessa variabler innehåller motsvarande
tecken (radbrytning, blanksteg, tabbsteg).
- shlibs:beroendefält
- Variabelinställningar
på den här formen skapas av dpkg-shlibdeps.
- dpkg:Upstream-Version
- Uppströmsversionen
av dpkg.
- dpkg:Version
- Fullständig version av dpkg.
Om en variabel refereras
till men inte definieras kommer en varning att genereras och ett tomt värde
används.
- debian/substvars
- Lista över substitueringsvariabler och -värden.
Tidpunkten på fältöverstyrning inträffar jämfört med inställning
av vissa standardutdatafält är ganska förvirrad.
dpkg(1), dpkg-genchanges(1),
dpkg-gencontrol(1), dpkg-shlibdeps(1), dpkg-source(1).
Peter Krefting
och Daniel Nylander.
Table of Contents