debian: New, stripped-down mini-qmail package.
[qmail] / debian / rules
1 #!/usr/bin/make -f
2 #
3
4 build:
5 $(checkdir)
6 if fgrep QMAIL/bin *.sh >/dev/null; then \
7 echo >&2 "You must run debian/debianize-source-tree first!"; \
8 exit 1; \
9 fi
10 $(MAKE) man
11 $(MAKE)
12 touch build
13
14 clean:
15 $(checkdir)
16 -rm -f build
17 -$(MAKE) clean
18 -rm `find . -name "*~"`
19 -rm -rf debian/files
20 -rm -rf `find debian/* ! \( -name CVS -prune \) -type d -prune`
21
22 binary-indep: checkroot build
23 $(checkdir)
24
25 binary-arch: checkroot build
26 $(checkdir)
27 -rm -rf debian/files debian/substvars debian/tmp
28 -rm -rf `find ! \( -name CVS -prune \) debian/* -type d -prune`
29 # Make the directory tree and copy qmail files.
30 install -d debian/tmp/etc/init.d \
31 debian/tmp/usr/share/doc/qmail \
32 debian/tmp/var/qmail \
33 debian/tmp/var/spool \
34 debian/tmp/usr/bin \
35 debian/tmp/usr/sbin \
36 debian/tmp/usr/lib \
37 debian/qmail-src/usr/bin \
38 debian/qmail-src/usr/src/qmail-src \
39 debian/qmail-src/usr/share/doc/qmail-src
40 ./install `pwd`/debian/tmp/var/qmail
41 mv debian/tmp/var/qmail/queue debian/tmp/var/spool/qmail
42 mv debian/tmp/var/qmail/control debian/tmp/etc/qmail
43 (cd debian/tmp/var/qmail && ln -s /var/spool/qmail queue)
44 (cd debian/tmp/var/qmail && ln -s /etc/qmail control)
45 mv debian/tmp/var/qmail/man debian/tmp/usr/share/man && \
46 rm -r debian/tmp/usr/share/man/cat?
47 # Move /var/qmail/bin programs to either /usr/bin or /usr/sbin
48 bash debian/debianize-binary-tree
49 # Create /usr/lib/sendmail symlink for backward compatibility.
50 (cd debian/tmp/usr/lib && ln -s ../sbin/sendmail)
51 # Copy qmailconfig and its helper programs...
52 install -o root -g root -m 755 dnsfq debian/tmp/usr/sbin/qmailconfig-dnsfq
53 install -o root -g root -m 755 dnsip debian/tmp/usr/sbin/qmailconfig-dnsip
54 install -o root -g root -m 755 ipmeprint debian/tmp/usr/sbin/qmailconfig-ipmeprint
55 install -o root -g root -m 755 dnsptr debian/tmp/usr/sbin/qmailconfig-dnsptr
56 # (This one is a bit of a kludge...)
57 sed -e 's|./hostname|hostname|g' \
58 -e 's|\./dnsptr|/usr/sbin/qmailconfig-dnsptr|g' \
59 -e 's|\./dnsip|/usr/sbin/qmailconfig-dnsip|g' \
60 -e 's|\./dnsfq|/usr/sbin/qmailconfig-dnsfq|g' \
61 -e 's|\./ipmeprint|/usr/sbin/qmailconfig-ipmeprint|g' \
62 config >debian/tmp/usr/sbin/qmailconfig
63 chmod 755 debian/tmp/usr/sbin/qmailconfig
64 # Install /etc/init.d/qmail
65 install -o root -g root -m 755 debian/qmail debian/tmp/etc/init.d/qmail
66 # Copy /usr/share/doc/qmail files.
67 install -o root -g root -m 644 debian/changelog debian/tmp/usr/share/doc/qmail/changelog.Debian
68 rm -rf debian/tmp/var/qmail/doc
69 # do the stuff for qmail-src
70 fullver=`dpkg-parsechangelog | sed -n 's/^Version: \(.*\)$$/\1/p'` && \
71 ver=`echo $$fullver | sed 's/-.*//'` && \
72 cp ../qmail_$$ver.orig.tar.gz ../qmail_$$fullver.diff.gz \
73 ../qmail_$$fullver.dsc debian/qmail-src/usr/src/qmail-src
74 install -m 755 debian/build-qmail debian/qmail-src/usr/bin
75 install debian/copyright debian/qmail-src/usr/share/doc/qmail-src
76 install debian/qmail-src.README debian/qmail-src/usr/share/doc/qmail-src/README
77 # Correct permissions of binaries and manpages...
78 chmod go+rx debian/tmp/usr/*bin/*
79 chown -R root.root debian/tmp/usr/share/man
80 # Do stuff for qmail-leaf
81 rm -rf debian/mini-qmail
82 cp -a debian/tmp debian/mini-qmail
83 rm -rf debian/mini-qmail/etc/init.d
84 for i in \
85 bouncesaying except qreceipt qbiff tcp-env \
86 condredirect preline log dot-qmail qmail-valid-addresses; do \
87 rm -f debian/mini-qmail/usr/share/man?/$$i.*; \
88 rm -f debian/mini-qmail/usr/*bin/$$i/*; \
89 done
90 for i in \
91 getpw remote rspawn clean send start splogger queue newu \
92 pw2u qread qstat tcpok pop3d popup qmqpd qmtpd smtpd command \
93 local lspawn newmrh users; do \
94 rm -f debian/mini-qmail/usr/share/man?/qmail-$$i.*; \
95 rm -f debian/mini-qmail/usr/*bin/qmail-$$i; \
96 done
97 rm -rf debian/mini-qmail/var/spool
98 for i in alias boot queue users; do \
99 rm -rf debian/mini-qmail/var/qmail/$$i; \
100 done
101 ln -s qmail-qmqpc debian/mini-qmail/usr/sbin/qmail-queue
102 # Fix everything up
103 debstd -m CHANGES BLURB* FAQ INTERNALS README \
104 SECURITY INSTALL.* PIC.* REMOVE.* SYSDEPS THANKS THOUGHTS \
105 TODO SENDMAIL TEST.* UPGRADE
106 cp -r debian/tmp/usr/share/doc/qmail \
107 debian/mini-qmail/usr/share/doc/mini-qmail
108 dpkg-gencontrol -pqmail
109 # And finally, build the Debian package!
110 dpkg --build debian/tmp ..
111 dpkg --build debian/mini-qmail ..
112
113 define checkdir
114 test -f qmail-send.c -a -f debian/rules
115 endef
116
117 binary: binary-indep binary-arch
118
119 source diff:
120 @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
121
122 checkroot:
123 $(checkdir)
124 test "`whoami`" = root
125
126 .PHONY: binary binary-arch binary-indep clean checkroot