Imported Upstream version 1.16.10
[services/dpkg.git] / README
1 dpkg - Debian's package maintenance system
2
3 The primary interface for the dpkg suite is the ‘dselect’ program;
4 a more low-level and less user-friendly interface is available in
5 the form of the ‘dpkg’ command.
6
7
8 Releases
9 --------
10
11 The current legacy, stable and development releases can be found at:
12
13   <http://ftp.debian.org/debian/pool/main/d/dpkg/>
14
15 For older releases check:
16
17   <http://snapshot.debian.org/package/dpkg/>
18
19
20 Mailing List
21 ------------
22
23 The subscription interface and web archives can be found at:
24
25   <http://lists.debian.org/debian-dpkg/>
26
27 The mailing list address is (no subscription required to post):
28
29   debian-dpkg@lists.debian.org
30
31
32 Source Repository
33 -----------------
34
35   <http://anonscm.debian.org/gitweb/?p=dpkg/dpkg.git>
36   <git://anonscm.debian.org/dpkg/dpkg.git>
37
38
39 Building from git source
40 ------------------------
41
42 To prepare the dpkg source tree from git before starting the build process
43 some required software needs to be installed:
44
45   GNU autoconf >= 2.60
46   GNU automake >= 1.8
47   GNU gettext >= 0.18 (or just autopoint if using --disable-nls)
48   flex
49
50 After installing the needed software, and running the following command on
51 the git tree:
52
53   $ autoreconf -f -i
54
55 the source should be roughly equivalent to the distributed tar source.
56
57
58 Building from tar source
59 ------------------------
60
61 The minimum software required to configure and build dpkg from a tarball is:
62
63   C89 compiler with few C99 extensions (see doc/coding-style.txt)
64   GNU make
65   pkg-config
66   perl
67
68 To enable optional functionality or programs, this software might be needed:
69
70   zlib (used instead of gzip command-line tool)
71   xz's liblzma (used instead of xz command-line tool)
72   libbzip2 (used instead of bzip2 command-line tool)
73   libselinux
74   curses compatible library (needed on --enable-dselect)
75
76 To run the test suite («make check»):
77
78   TimeDate perl module
79   IO-String perl module
80
81 To enable additional developer's documentation («make doc») this software
82 will be needed:
83
84   pod2man
85   doxygen
86   dot
87
88 To enable translated documentation this software will be needed:
89
90   po4a >= 0.36.4 (>= 0.41 for VPATH builds)
91
92 To enable code coverage («./configure --enable-coverage; make coverage»)
93 this software is needed:
94
95   lcov (from the Linux Test Project)
96   Devel-Cover perl module
97
98 The build process is done by running the usual «./configure; make». To
99 see all available configuration options please run «./configure --help».
100 The following configure options might be of interest to disable specific
101 programs:
102
103   --disable-dselect
104   --disable-start-stop-daemon
105   --disable-update-alternatives
106   --disable-install-info
107
108 And the following to disable modifications to the build flags:
109
110   --disable-compiler-warnings
111   --disable-compiler-optimisations
112   --disable-linker-optimisations