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