Chapter 4. Source packages
25
The
binary
targets must be invoked as root.
14
clean
This must undo any effects that the
build
and
binary
targets may have had, except
that it should leave alone any output files created in the parent directory by a run of a
binary
target.
If a
build
file is touched at the end of the
build
target, as suggested above, it should be
removed as the first action that
clean
performs, so that running
build
again after an
interrupted
clean
doesn't think that everything is already done.
The
clean
target may need to be invoked as root if
binary
has been invoked since the
last
clean
, or if
build
has been invoked as root (since
build
may create directories, for
example).
get orig source
(optional) This target fetches the most recent version of the original
source package from a canonical archive site (via FTP or WWW, for example), does any
necessary rearrangement to turn it into the original source tar file format described below,
and leaves it in the current directory.
This target may be invoked in any directory, and should take care to clean up any tem
porary files it may have left.
This target is optional, but providing it if possible is a good idea.
The
build
,
binary
and
clean
targets must be invoked with the current directory being the
package's top level directory.
Additional targets may exist in
debian/rules
, either as published or undocumented inter
faces or for the package's internal use.
The architectures we build on and build for are determined by
make
variables using the utility
dpkg architecture
. You can determine the Debian architecture and the GNU style archi
tecture specification string for the build machine (the machine type we are building on) as well
as for the host machine (the machine type we are building for). Here is a list of supported
make
variables:
DEB_*_ARCH
(the Debian architecture)
DEB_*_GNU_TYPE
(the GNU style architecture specification string)
DEB_*_GNU_CPU
(the CPU part of
DEB_*_GNU_TYPE
)
DEB_*_GNU_SYSTEM
(the System part of
DEB_*_GNU_TYPE
)
where
*
is either
BUILD
for specification of the build machine or
HOST
for specification of the
host machine.
Backward compatibility can be provided in the rules file by setting the needed variables to
suitable default values; please refer to the documentation of
dpkg architecture
for details.
It is important to understand that the
DEB_*_ARCH
string only determines which Debian archi
tecture we are building on or for. It should not be used to get the CPU or system information;
the GNU style variables should be used for that.
14
The
fakeroot
package often allows one to build a package correctly even without being root.
footer
Our partners:
PHP: Hypertext Preprocessor Best Web Hosting
Java Web Hosting
Inexpensive Web Hosting
Jsp Web Hosting
Cheapest Web Hosting
Jsp Hosting
Cheap Hosting
Visionwebhosting.net Business web hosting division of Web
Design Plus. All rights reserved