Provided by: dpkg-dev_1.16.0.3ubuntu5_all bug


       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 build architecture (from dpkg --print-architecture).

              The source package version.

              The  upstream  source  package  version,  including  the  Debian
              version epoch if any.

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

              The source package  version  (from  the  changelog  file).  This
              variable  is now deprecated as its meaning is different from its
              function, please use the  source:Version  or  binary:Version  as

              The  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 isn't set
              dpkg-gencontrol will use du -k debian/tmp to  find  the  default

              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 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.

              The full version of dpkg.

       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.


       The point at which field overriding occurs compared to certain standard
       output field settings is rather confused.


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


       Copyright (C) 1995-1996 Ian Jackson
       Copyright (C) 2000 Wichert Akkerman

       This is free software; see the GNU General Public Licence version 2  or
       later for copying conditions. There is NO WARRANTY.