dpkg-source.1 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763
  1. .\" Hey, Emacs! This is an -*- nroff -*- source file.
  2. .\" Authors: Ian Jackson
  3. .TH DPKG\-SOURCE 1 "7th August" "Debian Project" "Debian GNU/Linux manual"
  4. .SH NAME
  5. dpkg\-source, dpkg\-gencontrol, dpkg\-shlibdeps, dpkg\-genchanges,
  6. dpkg\-buildpackage, dpkg\-distaddfile, dpkg\-parsechangelog
  7. \- Debian source package tools
  8. .SH SYNOPSIS
  9. .B dpkg-source
  10. .BI "-x " filename .dsc
  11. .br
  12. .B dpkg-source -b
  13. .RI [ options "] " directory " [" orig-directory |'']
  14. .br
  15. .B dpkg-gencontrol
  16. .RI [ options ]
  17. .br
  18. .B dpkg-shlibdeps
  19. .IR options
  20. .br
  21. .B dpkg-genchanges
  22. .RI [ options ]
  23. .br
  24. .B dpkg-buildpackage
  25. .RI [ options ]
  26. .br
  27. .B dpkg-distaddfile
  28. .RI [ options ] " filename section priority"
  29. .br
  30. .B dpkg-parsechangelog
  31. .RI [ options ]
  32. .SH DESCRIPTION
  33. .B dpkg-source
  34. packs and unpacks Debian source archives.
  35. .B dpkg-gencontrol
  36. reads information from an unpacked Debian source tree and generates a
  37. binary package control file on standard output; it also adds an entry
  38. for the binary package to
  39. .BR debian/files .
  40. .B dpkg-shlibdeps
  41. calculates shared library dependencies for executables named in its
  42. arguments. The dependencies are added to the substitution
  43. variables file
  44. .B debian/substvars
  45. as variable names
  46. .BI shlibs: dependencyfield
  47. where
  48. .I dependencyfield
  49. is a dependency field name. Any other variables starting
  50. .I shlibs:
  51. are removed from the file.
  52. .B dpkg-shlibdeps
  53. will read shared library dependency information from
  54. .BR debian/shlibs.local ,
  55. .BR /etc/dpkg/shlibs.override ,
  56. the
  57. .B shlibs
  58. control area file of the package containing the file which
  59. .B ldd
  60. reports as satisfying the library dependency, or
  61. .BR /etc/dpkg/shlibs.default .
  62. The first match will be used. See the
  63. .I Debian packaging manual
  64. for details of the format of shared library dependency files.
  65. .B dpkg-genchanges
  66. reads information from an unpacked and built Debian source tree and
  67. from the files it has generated and generates a Debian upload control
  68. file
  69. .RB ( .changes " file)."
  70. .B dpkg-buildpackage
  71. is a control script which can be used to help automate the building of
  72. a package.
  73. .B dpkg-distaddfile
  74. adds an entry for a named file to
  75. .BR debian/files .
  76. .B dpkg-parsechangelog
  77. reads and parses the changelog of an unpacked Debian source tree and
  78. outputs the information in it to standard output in a machine-readable
  79. form.
  80. None of these commands allow multiple options to be combined into one,
  81. and they do not allow the value for an option to be specified in a
  82. separate argument.
  83. .SH COMMON OPTIONS
  84. Many of these programs share options; these are described here,
  85. together with the programs that accept them.
  86. .TP
  87. .BI -h
  88. Display the particular program's version and usage message, including
  89. a synopsis of the options it understands. This option is understood
  90. by all the source package tools.
  91. .TP
  92. .BI -v version
  93. In
  94. .BR dpkg-buildpackage ", " dpkg-genchanges " and " dpkg-parsechangelog
  95. this causes changelog information from all versions strictly later
  96. than
  97. .I version
  98. (which must appear in the changelog file) to be used.
  99. In
  100. .BR dpkg-gencontrol
  101. it sets the version number of the binary package which will be
  102. generated.
  103. .TP
  104. .BI -C changesdescription
  105. Read the description of the changes from the file
  106. .I changesdescription
  107. rather than using the information from the source tree's changelog
  108. file. This is understood by
  109. .BR dpkg-buildpackage " and " dpkg-genchanges .
  110. .TP
  111. .BI -m maintaineraddress
  112. Use
  113. .I maintaineraddress
  114. as the name and email address of the maintainer for this upload,
  115. rather than using the information from the source tree's changelog.
  116. This is understood by
  117. .BR dpkg-buildpackage " and " dpkg-genchanges .
  118. .TP
  119. .BR -si ", " -sa ", " -sd
  120. These options control whether the original source archive is included
  121. in the upload generated by
  122. .BR dpkg-buildpackage " and " dpkg-genchanges
  123. if any source is being generated (ie,
  124. .BR -b " or " -B
  125. haven't been used).
  126. By default, or if
  127. .B -si
  128. is specified, the original source will be included if the version
  129. number ends in
  130. .BR -0 " or " -1 ,
  131. ie if the Debian revision part of the version number is
  132. .BR 0 " or " 1 .
  133. .B -sa
  134. forces the inclusion of the original source;
  135. .B -sd
  136. forces its exclusion and includes only the diff.
  137. .TP
  138. .BI -V name = value
  139. Set an output substitution variable.
  140. This option is understood by
  141. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges .
  142. See below for a discussion of output substitution.
  143. .TP
  144. .BI -T substvarsfile
  145. Read (or, for
  146. .BR dpkg-shlibdeps ,
  147. write) substitution variables in
  148. .IR substvarsfile ;
  149. the default is
  150. .BR debian/substvars .
  151. This option is understood by
  152. .BR dpkg-source ", " dpkg-gencontrol ", " dpkg-shlibdeps " and " dpkg-genchanges .
  153. .TP
  154. .BI -D field = value
  155. Override or add an output control file field.
  156. This option is understood by
  157. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges .
  158. .TP
  159. .BI -U field
  160. Remove an output control file field.
  161. This option is understood by
  162. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges .
  163. .TP
  164. .BR -b | -B
  165. For
  166. .BR dpkg-genchanges " and " dpkg-buildpackage
  167. this specifies that a binary-only build is taking place.
  168. .B -b
  169. indicates that no source files are to be built and/or distributed, and
  170. .B -B
  171. that no architecture-independent binary package files are to be
  172. distributed either. The distinction between
  173. .BR -b " and " -B
  174. is only used by
  175. .BR dpkg-buildpackage ;
  176. .B dpkg-genchanges
  177. just produces a
  178. .B .changes
  179. file for whatever files were produced by the
  180. .B binary-*
  181. target(s) of the package being built.
  182. .B -b
  183. tells
  184. .B dpkg-source
  185. to build a source package (rather than to extract one) - see below.
  186. .TP
  187. .BI -c controlfile
  188. Specifies the main source control file to read information from. The
  189. default is
  190. .BR debian/control .
  191. This option is understood by
  192. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges .
  193. .TP
  194. .BI -l changelogfile
  195. Specifies the change log file to read information from. The
  196. default is
  197. .BR debian/changelog .
  198. This option is understood by
  199. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges .
  200. .TP
  201. .BI -f fileslistfile
  202. Read or write the list of files to be uploaded here, rather than using
  203. .BR debian/files .
  204. This option is understood by
  205. .BR dpkg-gencontrol ", " dpkg-genchanges " and " dpkg-distaddfile .
  206. .TP
  207. .BI -F changelogformat
  208. Specifies the format of the changelog. By default the format is read
  209. from a special line near the bottom of the changelog (see the
  210. Debian packaging manual) or failing that defaults to
  211. .BR debian ,
  212. the standard format described in the
  213. .IR "Debian packaging manual" .
  214. This option is understood by
  215. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges .
  216. .SH DPKG-SOURCE OPTIONS
  217. When the common options
  218. .BR -c " and " -l
  219. are given with relative pathnames these are interpreted starting at
  220. the source tree's top level directory.
  221. .TP
  222. .B -x
  223. Extract a source package. One non-option argument should be supplied,
  224. the name of the Debian source control file
  225. .RB ( .dsc ).
  226. No options are useful with
  227. .BR "dpkg-source -x" .
  228. .B dpkg-source
  229. will read the names of the other file(s) making up the source package
  230. from the control file; they are assumed to be in the same directory as
  231. the
  232. .BR .dsc .
  233. The files in the extracted package will have their permissions and
  234. ownerships set to those which would have been expected if the files
  235. and directories had simply been created - directories and executable
  236. files will be 0777 and plain files will be 0666, both modified by the
  237. extractors' umask; if the parent directory is setgid then the
  238. extracted directories will be too, and all the files and directories
  239. will inherit its group ownership.
  240. .TP
  241. .B -b
  242. Build: pack up a source tree. One or two non-option arguments should
  243. be supplied. The first is taken as the name of the directory
  244. containing the unpacked source tree. If a second argument is supplied
  245. it should be the name of the original source directory or tarfile or
  246. the empty string if the package is a Debian-specific one and so has no
  247. Debianisation diffs. If no second argument is supplied then
  248. .B dpkg-source
  249. will look for the original source tarfile
  250. .IB package _ upstream-version .orig.tar.gz
  251. or the original source directory
  252. .IB directory .orig
  253. or the empty string (no original source, and so no diff) depending on
  254. the arguments.
  255. .TP
  256. .B -i[<regexp>]
  257. You may specify a perl regular expression to match files you want
  258. filtered out of the list of files for the diff. (This list is
  259. generated by a find command.) \fB-i\fR by itself enables the option,
  260. with a default that will filter out CVS, RCS and libtool .deps
  261. subdirectories, and all files within them, as well as ~ suffixed
  262. backup files and DEAD_JOE's.
  263. This is very helpful in cutting out extraneous files that get included
  264. in the .diff.gz, (eg: "debian/BUGS_TODO/*" or "debian/RCS/*,v"). For
  265. instance, if you maintain a package that you track via remote CVS,
  266. where you don't have access permissions for commiting the debian
  267. control files and making tags for \fIcvs-buildpackage(1)\fR, it is
  268. necessary to perform an extra checkout/update into a directory you
  269. keep pristine, to generate the .orig.tar.gz from. That directory will
  270. have CVS/Entries files in it that will contain timestamps that differ
  271. from the ones in your working directory, thus causing them to be
  272. unnecessarily included in every .diff.gz, unless you use the \fB-i\fR
  273. switch.
  274. .TP
  275. .BR -sa , -sp , -su , -sk , -sA , -sP , -sU , -sK , -ss " with " -b
  276. If
  277. .BR -sk " or " -sp
  278. is specified
  279. .B dpkg-source
  280. expects the original source as a tarfile, by default
  281. .IB package _ upstream-version .orig.tar.gz\fR.
  282. It will leave this original source in place as a tarfile, or copy it
  283. to the current directory if it isn't already there
  284. If
  285. .B -sp
  286. is used rather than
  287. .B -sk
  288. it will remove it again afterwards.
  289. If
  290. .BR -su " or " -sr
  291. is specified the original source is expected as a directory, by
  292. default
  293. .IB package - upstream-version .orig
  294. and
  295. .B dpkg-source
  296. will create a new original source archive from it. If
  297. .B -sr
  298. is used
  299. .B dpkg-source will remove that directory after it has been used.
  300. If
  301. .B -ss
  302. is specified
  303. .B dpkg-source
  304. will expect that the original source is available both as a directory
  305. and as a tarfile. If will use the directory to create the diff, but
  306. the tarfile to create the
  307. .BR .dsc .
  308. This option must be used with care - if the directory and tarfile do
  309. not match a bad source archive will be generated.
  310. If
  311. .B -sn
  312. is specified
  313. .B dpkg-source
  314. will not look for any original source, and will not generate a diff.
  315. The second argument, if supplied, must be the empty string. This is
  316. used for Debian-specific packages which do not have a separate
  317. upstream source and therefore have no debianisation diffs.
  318. If
  319. .BR -sa " or " -sA
  320. is specified
  321. .B dpkg-source
  322. will look for the original source archive as a tarfile or as a
  323. directory - the second argument, if any, may be either, or the empty
  324. string (this is equivalent to using
  325. .BR -sn ).
  326. If a tarfile is found it will unpack it to create the diff and remove
  327. it afterwards (this is equivalent to
  328. .BR -sp );
  329. if a directory is found it will pack it to create the original source
  330. and remove it afterwards (this is equivalent to
  331. .BR -sr );
  332. if neither is found it will assume that the package has no
  333. debianisation diffs, only a straightforward source archive (this is
  334. equivalent to
  335. .BR -sn ).
  336. If both are found then dpkg-source will ignore the directory,
  337. overwriting it, if
  338. .B -sA
  339. was specified (this is equivalent to
  340. .BR -sP )
  341. or raise an error if
  342. .B -sa
  343. was specified.
  344. .B -sA
  345. is the default.
  346. .BR -sa ", " -sp ", " -sk ", " -su " and " -sr
  347. will not overwrite existing tarfiles or directories. If this is
  348. desired then
  349. .BR -sA ", " -sP ", " -sK ", " -su " and " -sR
  350. should be used instead.
  351. .TP
  352. .BR -sp , -su , -sn " with " -x
  353. In all cases any existing original source tree will be removed.
  354. If
  355. .B -sp
  356. is used when extracting then the original source (if any) will be left
  357. as a tarfile. If it is not already located in the current directory
  358. or if an existing but different file is there it will be copied there.
  359. This is the default.
  360. .B -su
  361. unpacks the original source tree.
  362. .B -sn
  363. ensures that the original source is neither copied to the current
  364. directory nor unpacked. Any original source tree that was in the
  365. current directory is still removed.
  366. .SH DPKG-GENCONTROL OPTIONS
  367. .B dpkg-gencontrol
  368. does not take any non-option arguments.
  369. .TP
  370. .BI -p package
  371. Generate information for the binary package
  372. .IR package .
  373. If the source control file lists only one binary package then this
  374. option may be omitted; otherwise it is essential to select which
  375. binary package's information to generate.
  376. .TP
  377. .BR -is ", " -ip ", " -isp
  378. Include the
  379. .BR Section " and " Priority
  380. fields for this package from the main source control file in the
  381. binary package control file being generated. Usually this information
  382. is not included here, but only in the
  383. .B .changes
  384. file.
  385. .B -isp
  386. includes both fields,
  387. .BR -is " only the " Section " and " -ip " only the " Priority .
  388. .TP
  389. .BI -P packagebuilddir
  390. Tells
  391. .B dpkg-source
  392. that the package is being built in
  393. .I packagebuilddir
  394. instead of
  395. .BR debian/tmp .
  396. This value is used to find the default value of the
  397. .B Installed-Size
  398. substitution variable and control file field (using
  399. .BR du ),
  400. and for the default location of the output file.
  401. .TP
  402. .B -O
  403. Causes the control file to be printed to standard output, rather than
  404. to
  405. .B debian/tmp/DEBIAN/control
  406. (or
  407. .IB packagebuilddir /DEBIAN/control
  408. if
  409. .B -P
  410. was used).
  411. .SH DPKG-SHLIBDEPS OPTIONS
  412. .B dpkg-shlibdeps
  413. interprets non-option arguments as executable names, just as if they'd
  414. been supplied as
  415. .BI -e executable\fR.
  416. .TP
  417. .BI -e executable
  418. Include dependencies appropriate for the shared libraries required by
  419. .IR executable .
  420. .TP
  421. .BI -d dependencyfield
  422. Add dependencies to be added to the control file dependency field
  423. .IR dependencyfield .
  424. (The dependencies for this field are placed in the variable
  425. .BI shlibs: dependencyfield\fR.)
  426. The
  427. .BI -d dependencyfield
  428. option takes effect for all executables after the option, until the
  429. next
  430. .BI -d dependencyfield\fR.
  431. The default
  432. .I dependencyfield
  433. is
  434. .BR Depends .
  435. If the same dependency entry (or set of alternatives) appears in more
  436. than one of the recognised dependency field names
  437. .BR Pre-Depends ", " Depends ", " Recommends ", " Enhances " or " Suggests
  438. then
  439. .B dpkg-shlibdeps
  440. will automatically remove the dependency from all fields except the
  441. one representing the most important dependencies.
  442. .TP
  443. .BI -p varnameprefix
  444. Causes substitution variables to start with
  445. .IB varnameprefix :
  446. instead of
  447. .BR shlib: .
  448. Likewise, any existing substitution variables starting with
  449. .IB varnameprefix :
  450. (rather than
  451. .BR shlib: )
  452. are removed from the the substitution variables file.
  453. .TP
  454. .BI -L localshlibsfile
  455. Causes
  456. .B dpkg-shlibs
  457. to read overriding shared library dependency information from
  458. .I localshlibsfile
  459. instead of
  460. .BR debian/shlibs.local .
  461. .TP
  462. .B -O
  463. Causes the substitution variable settings to be printed to standard
  464. output, rather than being added to the substitution variables file
  465. .RB ( debian/substvars
  466. by default).
  467. .SH DPKG-GENCHANGES OPTIONS
  468. .B dpkg-gencontrol
  469. does not take any non-option arguments.
  470. .TP
  471. .BI -u uploadfilesdir
  472. Look for the files to be uploaded in
  473. .I uploadfilesdir
  474. rather than
  475. .B ..
  476. .RB ( dpkg-genchanges
  477. needs to find these files so that it can include their sizes and
  478. checksums in the
  479. .B .changes
  480. file).
  481. .TP
  482. .B -q
  483. Usually
  484. .B dpkg-genchanges
  485. will produce informative messages on standard error, for example about
  486. how many of the package's source files are being uploaded.
  487. .B -q
  488. suppresses these messages.
  489. .SH DPKG-BUILDPACKAGE OPTIONS
  490. .B dpkg-buildpackage
  491. does not take any non-option arguments.
  492. .TP
  493. .BI -r gain-root-command
  494. When
  495. .B dpkg-buildpackage
  496. needs to execute part of the build process as root, it prefixes the
  497. command it executes with
  498. .I gain-root-command
  499. if one has been specified.
  500. .I gain-root-command
  501. should be the name of a program on the
  502. .B PATH
  503. and will get as arguments the name of the real command to run and the
  504. arguments it should take.
  505. .I gain-root-command
  506. should not contain spaces or any other shell metacharacters.
  507. .\" what happens, if it contains spaces? (hs)
  508. .I gain-root-command
  509. might typically be
  510. .BR sudo ", " super " or " really .
  511. .B su
  512. is not suitable, since it requires a
  513. .B -c
  514. option to run a command and even then it can only invoke the user's
  515. shell with
  516. .B -c
  517. instead of passing arguments individually to the command to be run.
  518. .TP
  519. .BI -p sign-command
  520. When
  521. .B dpkg-buildpackage
  522. needs to execute GPG or PGP to sign a source control
  523. .RB ( .dsc )
  524. file or a
  525. .B .changes
  526. file it will run
  527. .I sign-command
  528. (searching the
  529. .B PATH
  530. if necessary) instead of
  531. .BR pgp .
  532. .I sign-command
  533. will get all the arguments that
  534. .B pgp
  535. would have gotten. If
  536. .I sign-command
  537. takes its arguments in GPG rather than PGP style, you should give
  538. the
  539. .B -sgpg
  540. option.
  541. .I sign-command
  542. should not contain spaces or any other shell metacharacters.
  543. .TP
  544. .B -tc
  545. Clean the source tree (using
  546. .I gain-root-command
  547. .BR "debian/rules clean" )
  548. after the package has been built.
  549. .TP
  550. .BR -us ", " -uc
  551. Do not sign the source package or the changelog, respectively.
  552. .TP
  553. .BI -a architecture
  554. Specify the Debian architecture we build for. The architecture of the
  555. machine we build on is determined automatically, and is also the default
  556. for the host machine.
  557. .TP
  558. .B -i[<regexp>]
  559. Passed unchanged to
  560. .B dpkg-source
  561. .TP
  562. .SH DPKG-DISTADDFILE ARGUMENTS
  563. .B dpkg-distaddfile
  564. does not take any non-common options. It takes three non-option
  565. arguments, the filename and the section and priority for the
  566. .B .changes
  567. file.
  568. The filename should be specified relative to the directory where
  569. .B dpkg-genchanges
  570. will expect to find the files, usually
  571. .BR .. ,
  572. rather than being a pathname relative to the current directory when
  573. .B dpkg-distaddfile
  574. is run.
  575. .SH DPKG-PARSECHANGELOG ARGUMENTS
  576. .B dpkg-parsechangelog
  577. does not take any non-common options or non-option arguments.
  578. .SH VARIABLE SUBSTITUTION
  579. Before
  580. .BR dpkg-source ", " dpkg-gencontrol " and " dpkg-genchanges
  581. write their control information (to the source control file
  582. .B .dsc
  583. for
  584. .B dpkg-source
  585. and to standard output for
  586. .BR dpkg-gencontrol " and " dpkg-genchanges )
  587. they perform some variable substitutions on the output file.
  588. A variable substitution has the form
  589. .BI ${ variable-name }\fR.
  590. Variable names consist of alphanumerics, hyphens and colons and start
  591. with an alphanumeric. Variable substitutions are performed repeatedly
  592. until none are left; the full text of the field after the substitution
  593. is rescanned to look for more substitutions.
  594. After all the substitutions have been done each occurence of the
  595. string
  596. .B ${}
  597. (which is not a legal substitution) is replaced with a
  598. .B $
  599. sign.
  600. Variables can be set using the
  601. .B -V
  602. common option. They can be also specified in the file
  603. .B debian/substvars
  604. (or whatever other file is specified using the
  605. .B -T
  606. option). This file consists of lines of the form
  607. .IB name = value\fR.
  608. Trailing whitespace on each line, blank lines, and
  609. lines starting with a
  610. .B #
  611. symbol (comments) are ignored.
  612. Additionally, the following standard variables are available:
  613. .TP
  614. .BI Arch
  615. The current build architecture (from
  616. .BR "dpkg \-\-print-architecture" ).
  617. .TP
  618. .B Source-Version
  619. The source package version (from the changelog file).
  620. .TP
  621. .B Installed-Size
  622. The total size of the package's installed files. This value is copied
  623. into the corresponding control file field; setting it will modify the
  624. value of that field. If this variable isn't set
  625. .B dpkg-gencontrol
  626. will use
  627. .B du -k debian/tmp
  628. to find the default value.
  629. .TP
  630. .B Extra-Size
  631. Additional disk space used when the package is installed. If this
  632. variable is set its value is added to that of the
  633. .B Installed-Size
  634. variable (whether set explicitly or using the default value) before it
  635. is copied into the
  636. .B Installed-Size
  637. control file field.
  638. .TP
  639. .BI F: fieldname
  640. The value of the output field
  641. .IR fieldname
  642. (which must be given in the canonical capitalisation). Setting these
  643. variables has no effect other than on places where they are expanded
  644. explicitly.
  645. .TP
  646. .B Format
  647. The
  648. .B .changes
  649. file format version generated by this version of the source packaging
  650. scripts. If you set this variable the contents of the
  651. .B Format
  652. field in the
  653. .B .changes
  654. file will change too.
  655. .TP
  656. .BR Newline ", " Space ", " Tab
  657. These variables each hold the corresponding character.
  658. .TP
  659. .BI shlibs: dependencyfield
  660. Variable settings with names of this form are generated by
  661. .B dpkg-shlibdeps
  662. - see above.
  663. .LP
  664. If a variable is referred to but not defined it generates a warning
  665. and an empty value is assumed.
  666. .SH FILES
  667. .TP
  668. .B debian/control
  669. The main source control information file, giving version-independent
  670. information about the source package and the binary packages it can
  671. produce.
  672. .TP
  673. .B debian/changelog
  674. The changelog file, used to obtain version-dependent information about
  675. the source package, such as the urgency and distribution of an upload,
  676. the changes made since a particular release, and the source version
  677. number itself.
  678. .TP
  679. .B debian/files
  680. The list of generated files which are part of the upload being
  681. prepared.
  682. .B dpkg-gencontrol
  683. adds the presumed filenames of binary packages whose control files it
  684. generates here;
  685. .B dpkg-distaddfile
  686. can be used to add additional files.
  687. .B dpkg-genchanges
  688. reads the data here when producing a
  689. .B .changes
  690. file.
  691. .TP
  692. .B debian/substvars
  693. List of substitution variables and values.
  694. .TP
  695. .B debian/shlibs.local
  696. Package-local overriding shared library dependency information.
  697. .TP
  698. .B /etc/dpkg/shlibs.override
  699. Per-system overriding shared library dependency information.
  700. .TP
  701. .B /etc/dpkg/shlibs.default
  702. Per-system default shared library dependency information.
  703. .SH BUGS
  704. The point at which field overriding occurs compared to certain
  705. standard output field settings is rather confused.
  706. The binary package entries in the
  707. .B debian/files
  708. file will be passed through variable substitution twice. This should
  709. not matter, since
  710. .BR $ ", " { " and " }
  711. are not legal in package names or version numbers.
  712. It should be possible to specify spaces and shell metacharacters in
  713. and initial arguments for
  714. .IR gain-root-command " and " sign-command .
  715. .SH SEE ALSO
  716. .IR "Debian packaging manual" ,
  717. .br
  718. .IR "Debian policy manual" ,
  719. .br
  720. .BR dpkg\-deb (1),
  721. .BR dpkg (8),
  722. .BR dselect (8),
  723. .BR gpg (1),
  724. .BR pgp (1).
  725. .SH AUTHOR
  726. The utilities and this manpage were written by Ian Jackson. They are
  727. Copyright (C)1995-1996 by him and released under the GNU General
  728. Public Licence; there is NO WARRANTY. See
  729. .B /usr/share/doc/dpkg/copyright
  730. and
  731. .B /usr/share/common-licenses/GPL
  732. for details.