1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222
|
package=mailman
PACKAGE=$(package)
VERSION=$(shell dpkg-parsechangelog | awk '$$1 == "Version:" {print $$2}')
binaries=list_lists find_member config_list mmsitepass newlist rmlist \
add_members list_members remove_members arch clone_member \
sync_members check_db check_perms list_admins withlist
SHELL=/bin/bash
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
-include /usr/share/dpkg/buildflags.mk
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
build: build-arch build-indep
build-arch: build-stamp
build-indep: build-stamp
build-stamp: Makefile debian/po/templates.pot
$(MAKE)
sed 's,@VERSION@,$(VERSION),g' < debian/preinst.in > debian/preinst
touch build-stamp
debian/po/templates.pot: debian/templates
@debconf-updatepo
Makefile:
./configure --prefix=/var/lib/$(package) --with-username=list \
--with-groupname=list \
--with-mail-gid=daemon --with-cgi-gid=www-data \
--without-permcheck --with-mailhost=localhost \
--with-urlhost=localhost
clean:
dh_testdir
dh_testroot
[ ! -f Makefile ] || $(MAKE) distclean
rm -rf build-stamp Makefile debian/ucffiles debian/mailman.postinst.ucf
rm -f debian/mailman.postrm.ucf
rm -f debian/preinst
dh_clean
chmod +x debian/{prerm,postinst}
binary-indep: build
dh_testdir
dh_testroot
binary-arch: build
dh_testdir
dh_testroot
dh_install
dh_installdirs
dh_installdocs ACKNOWLEDGMENTS README* TODO FAQ
dh_installchangelogs NEWS
$(MAKE) doinstall prefix=$$(pwd)/debian/mailman/var/lib/$(package) \
var_prefix=$$(pwd)/debian/mailman/var/lib/$(package) \
icondir=$$(pwd)/debian/mailman/usr/share/images/mailman \
ICONDIR=$$(pwd)/debian/mailman/usr/share/images/mailman
rmdir debian/$(package)/var/lib/mailman/pythonlib
rm -r debian/$(package)/var/lib/mailman/tests
rm debian/$(package)/var/lib/mailman/bin/msgfmt.py
cd debian/mailman/var/lib/$(package) ; \
mv cgi-bin ../../../usr/lib/cgi-bin/mailman ; \
for i in Mailman bin cron mail scripts ; do \
mv $$i ../../../usr/lib/$(package); \
done
for i in debian/mailman/usr/lib/$(package)/*; do \
dh_link usr/lib/$(package)/`basename $$i` var/lib/$(package)/`basename $$i`; \
done
dh_link usr/lib/cgi-bin/$(package) var/lib/$(package)/cgi-bin
dh_link usr/lib/mailman/mail/mailman usr/lib/mailman/mail/wrapper
dh_link usr/share/images/mailman usr/share/doc/mailman/images
rmdir debian/$(package)/var/lib/mailman/icons
dh_link usr/share/images/mailman var/lib/mailman/icons
mv debian/mailman/var/lib/$(package)/templates debian/mailman/etc/mailman
dh_link etc/mailman var/lib/$(package)/templates
echo "$(VERSION)" > debian/mailman/var/lib/$(package)/.version
dh_installlogrotate
dh_installcron
install -m 0644 debian/mm_cfg.py debian/mailman/usr/lib/mailman/Mailman/mm_cfg.py.dist
rm debian/$(package)/usr/lib/$(package)/Mailman/mm_cfg.py
dh_link etc/$(package)/mm_cfg.py \
usr/lib/$(package)/Mailman/mm_cfg.py
for bin in $(binaries); \
do dh_link usr/lib/$(package)/bin/$$bin usr/sbin/$$bin; done
mv debian/mailman/usr/sbin/arch debian/mailman/usr/sbin/mmarch
dh_installman
dh_installinit
dh_installdebconf
dh_installexamples templates/* debian/mm_cfg.py \
debian/mailman/usr/lib/$(package)/Mailman/Defaults.py
dh_strip
dh_compress -Xmailman-admin.pdf -Xmailman-install.pdf -Xmailman-member-es.pdf -Xmailman-member.pdf
dh_fixperms
chown -R root:root debian/mailman
chown -R root:list \
debian/mailman/{etc/$(package),var/lib/$(package),usr/lib/{$(package),cgi-bin/$(package)}}
chown list:list debian/mailman/var/lib/mailman/qfiles
chown root:list debian/mailman/var/log/mailman
find debian/mailman/var/lib/$(package) -path debian/mailman/var/lib/$(package)/messages -prune -o -type d -exec chmod 2775 {} \;
install -m 0644 debian/lintian-overrides debian/mailman/usr/share/lintian/overrides/mailman
install -m 0644 debian/contrib/SpamAssassin.py debian/mailman/usr/lib/$(package)/Mailman/Handlers
install -m 0644 debian/contrib/spamd.py debian/mailman/usr/lib/$(package)/Mailman/Handlers
install -m 0755 debian/contrib/postfix-to-mailman.py debian/mailman/usr/share/mailman
dh_link etc/mailman/postfix-to-mailman.py usr/lib/mailman/bin/postfix-to-mailman.py
install -m 0755 build/contrib/qmail-to-mailman.py debian/mailman/usr/share/mailman
dh_link etc/mailman/qmail-to-mailman.py usr/lib/mailman/bin/qmail-to-mailman.py
install -m 0644 debian/contrib/apache.conf debian/mailman/etc/mailman
install -m 0644 debian/contrib/debianpowered.png debian/mailman/usr/share/images/mailman/
mv `find debian/mailman/etc/mailman -mindepth 1 -maxdepth 1 -type d` debian/mailman/usr/share/mailman
find debian/mailman/usr/share/mailman -type f -printf '/etc/mailman/%P\n' > debian/ucffiles
chmod +x debian/mailman/usr/lib/$(package)/Mailman/Cgi/*
chmod +x debian/mailman/usr/lib/$(package)/Mailman/Archiver/pipermail.py
chmod g+s debian/mailman/usr/lib/cgi-bin/mailman/* \
debian/mailman/usr/lib/mailman/mail/mailman
chmod -x debian/mailman/usr/lib/$(package)/scripts/paths.py \
debian/mailman/usr/lib/$(package)/Mailman/Cgi/*
chmod o-rx debian/mailman/var/lib/$(package)/archives/private
chown www-data debian/mailman/var/lib/$(package)/archives/private
chmod 0755 debian/mailman/usr/lib/$(package)/cron/*
chmod 0644 debian/mailman/usr/lib/$(package)/cron/{crontab.in,paths.py}
dh_python2 -a /usr/lib/mailman/Mailman
install -d debian/mailman/usr/share/python/runtime.d
install debian/mailman.rtupdate debian/mailman/usr/share/python/runtime.d
egrep -rslZ '^
find debian/mailman/usr/share/doc/mailman -name "*.html" -exec chmod -x {} \;
find debian/mailman/usr/share/doc/mailman -name "*.txt" -exec chmod -x {} \;
find debian/mailman/usr/share/doc/mailman -name '.svn' -exec rm -rf {} \; || true
rmdir debian/mailman/var/lib/$(package)/locks
ln -s /var/lock/mailman debian/mailman/var/lib/$(package)/locks
rmdir debian/mailman/var/lib/$(package)/logs
ln -s /var/log/mailman debian/mailman/var/lib/$(package)/logs
chown root:list debian/mailman/var/log/mailman
chmod 2770 debian/mailman/var/log/mailman
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: binary binary-arch binary-indep clean
|