chiark / gitweb /
debian: New, stripped-down mini-qmail package.
[qmail] / debian / rules
CommitLineData
9312c29d
MW
1#!/usr/bin/make -f
2#
3
4build:
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
14clean:
15 $(checkdir)
16 -rm -f build
17 -$(MAKE) clean
18 -rm `find . -name "*~"`
19 -rm -rf debian/files
ed442cdc 20 -rm -rf `find debian/* ! \( -name CVS -prune \) -type d -prune`
9312c29d
MW
21
22binary-indep: checkroot build
23 $(checkdir)
24
25binary-arch: checkroot build
26 $(checkdir)
27 -rm -rf debian/files debian/substvars debian/tmp
ed442cdc 28 -rm -rf `find ! \( -name CVS -prune \) debian/* -type d -prune`
9312c29d
MW
29# Make the directory tree and copy qmail files.
30 install -d debian/tmp/etc/init.d \
bcb3f3eb 31 debian/tmp/usr/share/doc/qmail \
9312c29d
MW
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 \
bcb3f3eb 39 debian/qmail-src/usr/share/doc/qmail-src
ed442cdc 40 ./install `pwd`/debian/tmp/var/qmail
9312c29d
MW
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)
bcb3f3eb
MW
45 mv debian/tmp/var/qmail/man debian/tmp/usr/share/man && \
46 rm -r debian/tmp/usr/share/man/cat?
9312c29d
MW
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...)
7a9e083d
MW
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
9312c29d
MW
64# Install /etc/init.d/qmail
65 install -o root -g root -m 755 debian/qmail debian/tmp/etc/init.d/qmail
bcb3f3eb
MW
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
ed442cdc 68 rm -rf debian/tmp/var/qmail/doc
9312c29d 69# do the stuff for qmail-src
7a9e083d
MW
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
9312c29d 74 install -m 755 debian/build-qmail debian/qmail-src/usr/bin
bcb3f3eb
MW
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
9312c29d
MW
77# Correct permissions of binaries and manpages...
78 chmod go+rx debian/tmp/usr/*bin/*
bcb3f3eb 79 chown -R root.root debian/tmp/usr/share/man
7a9e083d
MW
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
9312c29d
MW
108 dpkg-gencontrol -pqmail
109# And finally, build the Debian package!
110 dpkg --build debian/tmp ..
7a9e083d 111 dpkg --build debian/mini-qmail ..
9312c29d
MW
112
113define checkdir
114 test -f qmail-send.c -a -f debian/rules
115endef
116
117binary: binary-indep binary-arch
118
119source diff:
120 @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
121
122checkroot:
123 $(checkdir)
124 test "`whoami`" = root
125
126.PHONY: binary binary-arch binary-indep clean checkroot