Merge commit 'upstream/1.7.6p1'
[debian/sudo] / debian / rules
1 #!/usr/bin/make -f
2
3 export DH_VERBOSE=1
4
5 CFLAGS = -Wall -Wno-comment -g
6 ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
7     CFLAGS += -O0
8 else
9     CFLAGS += -O2
10 endif
11 export CFLAGS
12
13 configure: configure-stamp
14 configure-stamp:
15         dh_testdir
16         cp -f /usr/share/misc/config.sub config.sub
17         cp -f /usr/share/misc/config.guess config.guess
18
19         # simple version
20         mkdir -p build-simple
21         cd build-simple && NROFFPROG=/usr/bin/nroff $(CURDIR)/configure \
22                 --prefix=/usr -v \
23                 --with-all-insults \
24                 --with-devel \
25                 --with-pam \
26                 --with-fqdn \
27                 --with-logging=syslog \
28                 --with-logfac=authpriv \
29                 --with-env-editor \
30                 --with-editor=/usr/bin/editor \
31                 --with-timeout=15 \
32                 --with-password-timeout=0 \
33                 --with-passprompt="[sudo] password for %p: " \
34                 --with-timedir=/var/lib/sudo \
35                 --disable-root-mailer \
36                 --disable-setresuid \
37                 --with-sendmail=/usr/sbin/sendmail \
38                 --mandir=/usr/share/man \
39                 --libexecdir=/usr/lib/sudo \
40                 --with-secure-path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin"
41
42         # LDAP version
43         mkdir -p build-ldap
44         cd build-ldap && NROFFPROG=/usr/bin/nroff $(CURDIR)/configure \
45                 --prefix=/usr -v \
46                 --with-all-insults \
47                 --with-devel \
48                 --with-pam \
49                 --with-ldap \
50                 --with-fqdn \
51                 --with-logging=syslog \
52                 --with-logfac=authpriv \
53                 --with-env-editor \
54                 --with-editor=/usr/bin/editor \
55                 --with-timeout=15 \
56                 --with-password-timeout=0 \
57                 --with-passprompt="[sudo] password for %p: " \
58                 --disable-root-mailer \
59                 --disable-setresuid \
60                 --with-sendmail=/usr/sbin/sendmail \
61                 --with-ldap-conf-file=/etc/sudo-ldap.conf \
62                 --mandir=/usr/share/man \
63                 --libexecdir=/usr/lib/sudo \
64                 --with-secure-path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin"
65
66         touch configure-stamp
67
68 build: build-stamp
69 build-stamp: configure-stamp
70         dh_testdir
71
72         # ensure our pod changes get picked up
73         $(MAKE) sudoers.man.in sudo.man.in visudo.man.in
74
75         $(MAKE) -C build-simple
76         $(MAKE) -C build-ldap
77
78         touch build-stamp
79
80 clean:
81         dh_testdir
82         dh_testroot
83         rm -f configure-stamp build-stamp
84         rm -rf build-simple build-ldap
85         rm -f config.cache
86         dh_clean
87
88 install: build-stamp
89         dh_testdir
90         dh_testroot
91         dh_prep
92         dh_installdirs
93
94         $(MAKE) -C build-simple install DESTDIR=$(CURDIR)/debian/sudo
95         $(MAKE) -C build-ldap   install DESTDIR=$(CURDIR)/debian/sudo-ldap
96
97         # remove stuff we don't want
98         rm -f   debian/sudo*/etc/sudoers \
99                 debian/sudo*/usr/share/doc/sudo/LICENSE* \
100                 debian/sudo*/usr/share/doc/sudo/ChangeLog
101
102         # move upstream-installed docs to the right place for ldap package
103         mv      debian/sudo-ldap/usr/share/doc/sudo/* \
104                 debian/sudo-ldap/usr/share/doc/sudo-ldap/
105         rmdir   debian/sudo-ldap/usr/share/doc/sudo
106
107         # and install things we do want that make install doesn't know about
108         install -o root -g root -m 0644 debian/sudo.pam \
109                 debian/sudo/etc/pam.d/sudo
110         install -o root -g root -m 0644 debian/sudo.pam \
111                 debian/sudo-ldap/etc/pam.d/sudo
112
113         install -o root -g root -m 0644 debian/sudo.lintian \
114                 debian/sudo/usr/share/lintian/overrides/sudo
115         install -o root -g root -m 0644 debian/sudo-ldap.lintian \
116                 debian/sudo-ldap/usr/share/lintian/overrides/sudo-ldap
117
118         install -o root -g root -m 0440 debian/sudoers \
119                 debian/sudo/etc/sudoers
120         install -o root -g root -m 0440 debian/sudoers \
121                 debian/sudo-ldap/etc/sudoers
122
123         install -o root -g root -m 0440 debian/README \
124                 debian/sudo/etc/sudoers.d/README
125         install -o root -g root -m 0440 debian/README \
126                 debian/sudo-ldap/etc/sudoers.d/README
127
128 binary-indep: build install
129
130 binary-arch: build install
131         dh_testdir
132         dh_testroot
133         dh_installdocs -A
134         dh_installexamples -A sample.sudoers
135         dh_installinit -psudo -psudo-ldap --name=sudo
136         dh_installman -A
137         dh_installinfo -A
138         dh_installchangelogs ChangeLog 
139         dh_strip
140         dh_compress
141         dh_fixperms
142         chown root.root debian/sudo/usr/bin/sudo debian/sudo-ldap/usr/bin/sudo
143         chmod 4755 debian/sudo/usr/bin/sudo debian/sudo-ldap/usr/bin/sudo
144         chmod 0440      debian/sudo/etc/sudoers.d/README \
145                         debian/sudo-ldap/etc/sudoers.d/README
146         dh_installdeb
147         dh_shlibdeps
148         dh_gencontrol
149         dh_md5sums
150         dh_builddeb
151
152 binary: binary-indep binary-arch
153 .PHONY: configure build clean binary-indep binary-arch binary install