Merge branch 'lenny'
[debian/amanda] / debian / rules
1 #!/usr/bin/make -f
2 # debian/rules for amanda using debhelper
3 # Copyright 1998-2009 by Bdale Garbee.  License GPL v2
4
5 # Uncomment this to turn on verbose mode.
6 #export DH_VERBOSE=1
7
8 r=$(shell pwd)/debian/amanda-common
9 s=$(shell pwd)/debian/amanda-server
10 c=$(shell pwd)/debian/amanda-client
11
12 configure: configure-stamp
13 configure-stamp:
14         dh_testdir
15         # pick up latest config files provided by autotools-dev
16         cp -f /usr/share/misc/config.sub config/config.sub
17         cp -f /usr/share/misc/config.guess config/config.guess
18         # do we need --{htmldir,dvidir,pdfdir,psdir} to force subdirectories?
19         # should we re-craft this to use --without-server and --without-client,
20         #       and lose the amanda-common package?
21         MAILER=/usr/bin/mail \
22         SSH=/usr/bin/ssh \
23         ./configure \
24                 --prefix=/usr \
25                 --bindir=/usr/sbin \
26                 --libexecdir=/usr/lib/amanda \
27                 --without-amlibexecdir \
28                 --sysconfdir=/etc \
29                 --sharedstatedir=/var/lib \
30                 --localstatedir=/var/lib \
31                 --with-user=backup \
32                 --with-group=backup  \
33                 --with-tcpportrange=50000,50100 \
34                 --with-udpportrange=840,860 \
35                 --with-debugging=/var/log/amanda \
36                 --with-gnutar-listdir=/var/lib/amanda/gnutar-lists \
37                 --with-index-server=localhost \
38                 --with-bsd-security \
39                 --with-smbclient=/usr/bin/smbclient \
40                 --with-amandahosts \
41                 --with-ssh-security \
42                 --with-bsdtcp-security \
43                 --with-bsdudp-security \
44                 --without-ipv6
45
46         touch missing
47         touch configure-stamp
48
49 build: build-stamp 
50 build-stamp: configure-stamp
51         dh_testdir
52         MAILER=/usr/bin/mail make CFLAGS="-O2 -g -Wall \
53                 -DAMANDATES_FILE='\"/var/lib/amanda/amandates\"' \
54                 -DIGNORE_TAR_ERRORS "
55         touch build-stamp
56
57 clean:
58         dh_testdir
59         dh_testroot
60         [ ! -f Makefile ] || make clean
61         [ ! -f Makefile ] || make distclean
62         -rm -f build-stamp configure-stamp missing config/config.h common-src/genversion
63         -find . -type d -name .deps -exec rm -rf {} \;
64         dh_clean
65
66 # call this before packaging for upload when updating template English text
67 updatepo:
68         -rm -f debian/po/templates.pot
69         debconf-updatepo
70         
71 binary-indep: build
72
73 binary-arch: build
74         dh_testdir
75         dh_testroot
76         dh_clean -k
77         dh_installdirs -a
78         make install DESTDIR=$(r)
79         install -m 644 debian/amandahosts $(r)/etc/amandahosts
80         dh_installdocs -a
81         dh_installexamples -a
82         cp ChangeLog $(r)/usr/share/doc/amanda-common/changelog
83         cp debian/xinetd.d/amandaidx $(s)/etc/xinetd.d
84         cp debian/xinetd.d/amidxtape $(s)/etc/xinetd.d
85         cp debian/xinetd.d/amanda $(r)/etc/xinetd.d                     
86         dh_installmenu -a
87         dh_installcron -a
88         dh_installchangelogs -a
89         dh_installdebconf -a
90         dh_strip -a
91         dh_compress -a
92         dh_movefiles -a --sourcedir=debian/amanda-common
93         rm $(s)/usr/lib/amanda/chg-mtx
94         dh_fixperms -av
95         # fix perms manually
96         chown -R backup:backup debian/*/var/lib/*
97         chmod -R u=rwX,g=rwX,o-rwx debian/*/var/lib/*
98         chown -R backup:backup $(s)/var/log/amanda
99         chmod -R u=rwX,g=rwX,o-rwx $(s)/var/log/amanda
100         chown -R backup:backup $(s)/etc/amanda
101         chmod -R u=rwX,g=rwX,o-rwx $(s)/etc/amanda
102         chown -R backup:backup $(c)/var/lib/amanda/gnutar-lists
103         chmod -R u=rwX,g=rwX,o-rwx $(c)/var/lib/amanda/gnutar-lists
104         # .. setuid
105         chown root:backup \
106                 $(c)/usr/lib/amanda/killpgrp \
107                 $(c)/usr/lib/amanda/rundump \
108                 $(c)/usr/lib/amanda/runtar \
109                 $(s)/usr/lib/amanda/dumper \
110                 $(s)/usr/lib/amanda/planner \
111                 $(s)/usr/sbin/amcheck
112         chmod u=srwx,g=rx,o=r \
113                 $(c)/usr/lib/amanda/killpgrp \
114                 $(c)/usr/lib/amanda/rundump \
115                 $(c)/usr/lib/amanda/runtar \
116                 $(s)/usr/lib/amanda/dumper \
117                 $(s)/usr/lib/amanda/planner \
118                 $(s)/usr/sbin/amcheck
119         install -o root -g root -m 0644 debian/amanda-client.lintian \
120                 $(c)/usr/share/lintian/overrides/amanda-client
121         install -o root -g root -m 0644 debian/amanda-common.lintian \
122                 $(r)/usr/share/lintian/overrides/amanda-common
123         install -o root -g root -m 0644 debian/amanda-server.lintian \
124                 $(s)/usr/share/lintian/overrides/amanda-server
125         dh_makeshlibs -a
126         dh_installdeb -a
127         dh_shlibdeps -a -l"debian/amanda-common/usr/lib:debian/amanda-client/usr/lib:debian/amanda-server/usr/lib"
128         # strip out the non-versioned amanda-common references, we need
129         # the versioned ones in the control file and dupes are ugly...
130         sed -e 's/amanda-common, //' < debian/amanda-server.substvars > debian/blah
131         mv debian/blah debian/amanda-server.substvars
132         sed -e 's/amanda-common, //' < debian/amanda-client.substvars > debian/blah
133         mv debian/blah debian/amanda-client.substvars
134         dh_gencontrol -a
135         dh_md5sums -a
136         dh_builddeb -a
137
138 source diff:                                                                  
139         @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
140
141 binary: binary-indep binary-arch
142 .PHONY: build clean binary-indep binary-arch binary