1Building Samba Packages for Debian GNU/Linux
2--------------------------------------------
3
4Building Debian packages is not as hard as some people might think.
5The following instructions will allow you to build your own Samba
6Debian packages. These instructions and the files in packaging/Debian/
7should be current as of Samba 3.0.2, and allow you to build Debian
8packages for Debian unstable (so you need some development packages
9available only in Debian unstable.) If you are using something newer
10than 3.0.2 you might want to try to follow the instructions to see if
11patches apply cleanly. If some patches don't apply cleanly please e-mail
12samba@packages.debian.org since we might have fixed patches that we have
13not yet integrated into upstream Samba.
14
15We try to maintain as much compatibility with previous releases
16of Debian as possible, so it is possible that the files in
17packaging/Debian/ can also be used to build Samba Debian packages for
18other Debian releases. However, sometimes this is just not possible
19because we need to use stuff that is only available on Debian unstable.
20
21Instructions
22------------
23
24If you want to build Samba packages for Debian and you just want to use
25upstream sources, i.e. you don't want to wait for us to put official
26packages out, or you want packages for a Debian version for which we
27don't provide deb's, or you don't want to use official packages, or
28you want to add --this-cool-switch to configure, or whatever, follow
29these instructions:
30
310) Make sure you have the following packages installed (in addition
32to the normal Debian development packages -- dpkg-dev, libc6-dev,
33devscripts, etc.):
34
35  autoconf
36  debhelper (>= 4.1.13)
37  libpam0g-dev
38  libreadline4-dev
39  libcupsys2-dev
40  libacl1-dev, libacl1 (>= 2.2.11-1)
41  libkrb5-dev
42  libldap2-dev
43  po-debconf
44  python2.3-dev
45
46  Notes regarding the packages required to build Samba Debian packages:
47
48  * The libcupsys2-dev is not available in Debian Potato (Debian 2.2).
49    That's fine; the configure script won't detect CUPS support and the
50    resulting binaries won't support CUPS.
51
52  * The list above is current as of samba-3.0.0rc2, but it can get
53    out of date. The best way to check what packages are required to
54    build the samba packages on Debian is to look for the Build-Depends:
55    field in the file debian/control.
56
571) cd samba[-<version>]. For example, "cd samba-3.0.2".
582) cp -a packaging/Debian/debian/ .
59  It's important that you copy instead of symlink because the build
60  tools in Potato have a problem that prevents the build to work with
61  a symlink. If you are running a recent Debian distribution you don't
62  have to copy the directory and you can use a symlink instead:
63  "ln -s packaging/Debian/debian/ ."
643) dch -i (this is completely optional - only do it if you understand
65   Debian version numbers! Don't complain later if you can't upgrade
66   to official versions of the Samba packages for Debian.)
67  - Edit the changelog and make sure the version is right. For example,
68    for Samba 3.0.2, the version number should something like 3.0.2-0.1.
694) Run 'fakeroot debian/rules binary'.
705) That's it. Your new packages should be in ../. Install with dpkg.
71
72Please e-mail samba@packages.debian.org with comments, questions or
73suggestions. Please talk to us and not to the Samba Team. They have
74better things to do and know nothing about the Debian packaging system.
75
76Eloy A. Paris <peloy@debian.org>
77Steve Langasek <vorlon@debian.org>
78
79