NAMN
deb−substvars − Debians källkods−substitueringsvariabler
SYNOPS
substvars
BESKRIVNING
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.
FILER
debian/substvars
Lista över substitueringsvariabler och −värden.
PROGRAMFEL
Tidpunkten på fältöverstyrning inträffar jämfört med inställning av vissa standardutdatafält är ganska förvirrad.
SE ÄVEN
dpkg(1), dpkg−genchanges(1), dpkg−gencontrol(1), dpkg−shlibdeps(1), dpkg−source(1).
FÖRFATTARE
Upphovsrättsskyddat
© 1995−1996 Ian Jackson
Upphovsrättsskyddat © 2000 Wichert Akkerman
Detta är fri programvara; se GNU General Public License version 2 eller senare för kopieringsvillkor. Det finns INGEN GARANTI.
ÖVERSÄTTNING
Peter Krefting och Daniel Nylander.