Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
deb-substvars(5)		  dpkg suite		      deb-substvars(5)

       deb-substvars - Debian source substitution variables


       Before  dpkg-source,  dpkg-gencontrol  and  dpkg-genchanges write their
       control information (to the source control file	.dsc  for  dpkg-source
       and  to	standard  output for dpkg-gencontrol and dpkg-genchanges) they
       perform some variable substitutions on the output file.

       A variable substitution has the form ${variable-name}.  Variable	 names
       consist	of  alphanumerics,  hyphens  and  colons  and  start  with  an
       alphanumeric. Variable substitutions  are  performed  repeatedly	 until
       none  are  left;	 the  full text	of the field after the substitution is
       rescanned to look for more substitutions.

       After all the substitutions have	 been  done  each  occurrence  of  the
       string  ${}  (which  is	not a legal substitution) is replaced with a $

       While variable substitution is done on  all  control  fields,  some  of
       those fields are	used and needed	during the build when the substitution
       did not yet occur. That's why you can't use variables in	 the  Package,
       Source and Architecture fields.

       Variable	 substitution  happens on the content of the fields after they
       have been parsed, thus if you want a variable to	expand	over  multiple
       lines  you  do  not  have to include a space after the newline. This is
       done implicitly when the	field is output. For example, if the  variable
       ${Description}  is  set	to "foo	is bar.${Newline}foo is	great."	and if
       you have	the following field:

	Description: foo application
	 More text.

       It will result in:

	Description: foo application
	 foo is	bar.
	 foo is	great.
	 More text.

       Variables can be	set using the -V  common  option.  They	 can  be  also
       specified  in  the  file	 debian/substvars  (or	whatever other file is
       specified using the -T option). This file consists of lines of the form
       name=value.   Trailing  whitespace on each line,	blank lines, and lines
       starting	with a # symbol	(comments) are ignored.

       Additionally, the following standard variables are available:

       Arch   The current host architecture (i.e. the architecture the package
	      is being built for, the equivalent of DEB_HOST_ARCH).

	      The source package version (since	dpkg 1.13.19).

	      The  upstream  source  package  version,	including  the	Debian
	      version epoch if any (since dpkg 1.13.19).

	      The binary package version (which	may differ from	source:Version
	      in a binNMU for example; since dpkg 1.13.19).

	      The  source  package  version  (from  the	 changelog file). This
	      variable is now obsolete and emits an error  when	 used  as  its
	      meaning	is   different	from  its  function,  please  use  the
	      source:Version or	binary:Version as appropriate.

	      The approximate total size of  the  package's  installed	files.
	      This  value is copied into the corresponding control file	field;
	      setting it will modify the value of that field. If this variable
	      is  not  set  dpkg-gencontrol  will compute the default value by
	      accumulating the size of each regular file and  symlink  rounded
	      to  1  KiB  used	units,	and  a baseline	of 1 KiB for any other
	      filesystem object	type.

	      Note:  Take  into	 account  that	this  can  only	 ever  be   an
	      approximation,  as  the actual size used on the installed	system
	      will depend greatly on the filesystem used and  its  parameters,
	      which  might  end	 up  using  either more	or less	space than the
	      specified	in this	field.

	      Additional disk space used when the  package  is	installed.  If
	      this  variable  is  set  its  value  is  added  to  that	of the
	      Installed-Size variable (whether set  explicitly	or  using  the
	      default  value)  before  it  is  copied  into the	Installed-Size
	      control file field.

	      The value	of the source stanza field fieldname  (which  must  be
	      given  in	 the  canonical	 capitalisation;  since	dpkg 1.18.11).
	      Setting these variables has no effect other than on places where
	      they   are   expanded  explicitly.   These  variables  are  only
	      available	when generating	binary control files.

	      The value	of the output field fieldname (which must be given  in
	      the  canonical  capitalisation).	Setting	these variables	has no
	      effect other than	on places where	they are expanded explicitly.

       Format The .changes file	format version generated by  this  version  of
	      the  source  packaging  scripts.	If  you	 set this variable the
	      contents of the Format field in the .changes  file  will	change

       Newline,	Space, Tab
	      These variables each hold	the corresponding character.

	      Variable	settings  with	names  of  this	 form are generated by

	      The upstream version of dpkg (since dpkg 1.13.19).

	      The full version of dpkg (since dpkg 1.13.19).

       If a variable is	referred to but	not defined it generates a warning and
       an empty	value is assumed.

	      List of substitution variables and values.

       dpkg(1),	dpkg-genchanges(1), dpkg-gencontrol(1),	dpkg-shlibdeps(1),

1.18.24				  2017-05-17		      deb-substvars(5)


Want to link to this manual page? Use this URL:

home | help