[Pkg-mailman-hackers] Pkg-mailman commit - rev 402 - trunk/debian

Thijs Kinkhorst thijs at costa.debian.org
Sun Sep 24 20:23:12 UTC 2006


Author: thijs
Date: 2006-09-24 20:23:12 +0000 (Sun, 24 Sep 2006)
New Revision: 402

Modified:
   trunk/debian/mailman-common.dirs
   trunk/debian/mailman-common.install
   trunk/debian/mailman-common.links
   trunk/debian/mailman.dirs
   trunk/debian/rules
Log:
Package split. This changes a lot in debian/rules; but makes
it quite a lot neater than it was. Note that this is almost
finished but not entirely; the file lists between before and
after are mostly identical, however, I haven't intensively tested
it yet. I suspect that some testing might reveal some aditional
tweaks.


Modified: trunk/debian/mailman-common.dirs
===================================================================
--- trunk/debian/mailman-common.dirs	2006-09-24 14:28:39 UTC (rev 401)
+++ trunk/debian/mailman-common.dirs	2006-09-24 20:23:12 UTC (rev 402)
@@ -1,3 +1,30 @@
 etc/mailman
-usr/lib/mailman/Mailman
+usr/lib/mailman/bin
+usr/lib/mailman/mail
+
+usr/sbin
+
+usr/share/doc/mailman
 usr/share/images/mailman
+
+var/lib/mailman/archives/private
+var/lib/mailman/archives/public
+var/lib/mailman/data
+var/lib/mailman/lists
+var/lib/mailman/qfiles
+var/lib/mailman/qfiles/archive
+var/lib/mailman/qfiles/bad
+var/lib/mailman/qfiles/bounces
+var/lib/mailman/qfiles/commands
+var/lib/mailman/qfiles/in
+var/lib/mailman/qfiles/maildir
+var/lib/mailman/qfiles/news
+var/lib/mailman/qfiles/out
+var/lib/mailman/qfiles/retry
+var/lib/mailman/qfiles/shunt
+var/lib/mailman/qfiles/virgin
+var/lib/mailman/spam
+
+var/lock/mailman
+var/log/mailman
+var/run/mailman

Modified: trunk/debian/mailman-common.install
===================================================================
--- trunk/debian/mailman-common.install	2006-09-24 14:28:39 UTC (rev 401)
+++ trunk/debian/mailman-common.install	2006-09-24 20:23:12 UTC (rev 402)
@@ -1,2 +1,15 @@
+debian/mm_cfg.py		/usr/lib/mailman/Mailman
 debian/contrib/apache.conf	/etc/mailman
 debian/README.Exim4.Debian	/usr/share/doc/mailman
+
+build/contrib/qmail-to-mailman.py	/usr/share/mailman
+debian/contrib/postfix-to-mailman.py	/usr/share/mailman
+
+debian/contrib/savannah		/usr/lib/mailman/Mailman/Cgi
+debian/contrib/SpamAssassin.py	/usr/lib/mailman/Mailman/Handlers
+debian/contrib/spamd.py		/usr/lib/mailman/Mailman/Handlers
+
+misc/sitelist.cfg		/var/lib/mailman/data
+
+misc/paths.py			/usr/lib/mailman/bin
+misc/paths.py			/usr/lib/mailman/cron

Modified: trunk/debian/mailman-common.links
===================================================================
--- trunk/debian/mailman-common.links	2006-09-24 14:28:39 UTC (rev 401)
+++ trunk/debian/mailman-common.links	2006-09-24 20:23:12 UTC (rev 402)
@@ -1,2 +1,38 @@
 /usr/share/images/mailman	usr/share/doc/mailman/images
 /usr/share/images/mailman	var/lib/mailman/icons
+
+/etc/mailman/mm_cfg.py			usr/lib/mailman/Mailman/mm_cfg.py
+/etc/mailman/postfix-to-mailman.py	usr/lib/mailman/bin/postfix-to-mailman.py
+/etc/mailman/qmail-to-mailman.py	usr/lib/mailman/bin/qmail-to-mailman.py
+
+/usr/lib/mailman/mail/mailman		usr/lib/mailman/mail/wrapper
+
+/usr/lib/mailman/bin/list_lists		usr/sbin/list_lists
+/usr/lib/mailman/bin/find_member	usr/sbin/find_member
+/usr/lib/mailman/bin/config_list	usr/sbin/config_list
+/usr/lib/mailman/bin/mmsitepass		usr/sbin/mmsitepass
+/usr/lib/mailman/bin/newlist		usr/sbin/newlist
+/usr/lib/mailman/bin/rmlist		usr/sbin/rmlist
+/usr/lib/mailman/bin/add_members	usr/sbin/add_members
+/usr/lib/mailman/bin/list_members	usr/sbin/list_members
+/usr/lib/mailman/bin/remove_members	usr/sbin/remove_members
+/usr/lib/mailman/bin/clone_member	usr/sbin/clone_member
+/usr/lib/mailman/bin/sync_members	usr/sbin/sync_members
+/usr/lib/mailman/bin/check_db		usr/sbin/check_db
+/usr/lib/mailman/bin/check_perms	usr/sbin/check_perms
+/usr/lib/mailman/bin/list_admins	usr/sbin/list_admins
+/usr/lib/mailman/bin/withlist		usr/sbin/withlist
+/usr/lib/mailman/bin/arch		usr/sbin/mmarch
+
+/usr/lib/mailman/scripts	var/lib/mailman/scripts
+
+/usr/lib/mailman/bin		var/lib/mailman/bin
+/usr/lib/mailman/cron		var/lib/mailman/cron
+/usr/lib/mailman/mail		var/lib/mailman/mail
+/usr/lib/mailman/Mailman	var/lib/mailman/Mailman
+/usr/lib/cgi-bin/mailman	var/lib/mailman/cgi-bin
+
+/etc/mailman			var/lib/mailman/templates
+
+/var/log/mailman		var/lib/mailman/logs
+/var/lock/mailman		var/lib/mailman/locks

Modified: trunk/debian/mailman.dirs
===================================================================
--- trunk/debian/mailman.dirs	2006-09-24 14:28:39 UTC (rev 401)
+++ trunk/debian/mailman.dirs	2006-09-24 20:23:12 UTC (rev 402)
@@ -1,10 +1,3 @@
-etc/mailman
-usr/lib/mailman
-usr/sbin
+usr/lib/mailman/mail
 usr/share/lintian/overrides
-usr/share/mailman
 usr/lib/cgi-bin
-var/log/mailman
-var/lib/mailman/templates
-var/lock
-var/run/mailman

Modified: trunk/debian/rules
===================================================================
--- trunk/debian/rules	2006-09-24 14:28:39 UTC (rev 401)
+++ trunk/debian/rules	2006-09-24 20:23:12 UTC (rev 402)
@@ -21,29 +21,27 @@
 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
 INSTALL_PROGRAM += -s
 endif
+ifeq (,$(findstring archonly,$(DEB_BUILD_OPTIONS)))
+build: build-arch build-indep
+else
+build: build-arch
+endif
 
-build: patch build-stamp
-build-stamp: Makefile debian/po/templates.pot
-	$(MAKE) 
-	# install here since it's needed by both arch-dep and arch-indep packages.
-	dh_installdirs
-	$(MAKE) doinstall prefix=$$(pwd)/debian/mailman/var/lib/$(package) \
-		var_prefix=$$(pwd)/debian/mailman/var/lib/$(package) \
-		icondir=$$(pwd)/debian/mailman-common/usr/share/images/mailman \
-		ICONDIR=$$(pwd)/debian/mailman-common/usr/share/images/mailman
-	touch build-stamp
+build-arch: patch Makefile
+	$(MAKE) arch-subdirs
+	touch build-arch
+build-indep: patch Makefile debian/po/templates.pot
+	$(MAKE) indep-subdirs
+	touch build-indep
 
 debian/po/templates.pot: debian/templates
 	@debconf-updatepo
 
 Makefile:
-	if [ -x /usr/bin/autoconf2.50 ]; then \
-	  autoconf2.50; \
-	else \
-	  autoconf; \
-	fi
-	./configure --prefix=/var/lib/$(package) --with-username=list \
-		--with-groupname=list \
+	autoconf
+	./configure --prefix=/usr/lib/$(package) \
+		--with-var-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
@@ -51,165 +49,77 @@
 clean: unpatch
 	dh_testdir
 	-$(MAKE) distclean
-	rm -rf build-stamp Makefile debian/ucffiles debian/mailman.postinst.ucf
+	rm -rf build-indep build-arch Makefile debian/ucffiles debian/mailman.postinst.ucf
 	rm -f debian/mailman.postrm.ucf
 	dh_clean
-	chmod +x debian/{prerm,postinst}
 
-binary-indep:	checkroot build
+binary-indep:	checkroot build-indep
+	# install files
+	$(MAKE) do-indep-install DESTDIR=$$(pwd)/debian/mailman-common
+	dh_installdirs -i
 	dh_install -i
 	dh_installdocs -i
 	dh_installchangelogs -i
-
-	install -m 0644 debian/mm_cfg.py debian/mailman-common/usr/lib/mailman/Mailman/mm_cfg.py.dist
-
 	dh_installlogrotate -i --name=mailman
 	dh_installman -i
 	dh_installinit -i --name=mailman
+	mv debian/mailman-common/usr/lib/mailman/messages debian/mailman-common/var/lib/mailman
+	mv debian/mailman-common/usr/lib/mailman/icons/* debian/mailman-common/usr/share/images/mailman
+	rmdir debian/mailman-common/var/lib/mailman/{locks,logs} debian/mailman-common/usr/lib/mailman/icons
+	mv `find debian/mailman-common/usr/lib/mailman/templates/ -mindepth 1 -maxdepth 1 -type d` debian/mailman-common/usr/share/mailman
+	rmdir debian/mailman-common/usr/lib/mailman/templates
+	mv debian/mailman-common/usr/lib/mailman/tests debian/mailman-common/var/lib/mailman
+	dh_link -i
 	dh_compress -i
+	# Fix permissions
 	dh_fixperms -i
+	chown -R list:list debian/mailman-common/var/{lock/mailman,lib/mailman/qfiles,run/mailman,lib/mailman/spam}
+	chown root:list debian/mailman-common/var/log/mailman
+	find debian/mailman-common/var/lib/mailman -type d | xargs chmod 2775
+	find debian/mailman-common/var/lib/mailman/messages -type d | xargs chmod 755
+	chmod 2775 debian/mailman-common/var/log/mailman
+	chmod g+w debian/mailman-common/var/lock/mailman
+	chmod +x debian/mailman-common/usr/lib/mailman/Mailman/Cgi/*
+	chmod +x debian/mailman-common/usr/lib/mailman/Mailman/Archiver/pipermail.py
+	chmod o-x debian/mailman-common/var/lib/mailman/archives/private
+	chmod 0755 debian/mailman-common/usr/lib/mailman/cron/*
+	chmod 0644 debian/mailman-common/usr/lib/mailman/cron/crontab.in
+	# create ucffiles dynamically
+	find debian/mailman-common/usr/share/mailman -type f -printf '/etc/mailman/%P\n' > debian/ucffiles
+	# create the resulting debs
 	dh_installdeb -i
 	dh_gencontrol -i
 	dh_md5sums -i
 	dh_builddeb -i
 
-binary-arch:	checkroot build
+binary-arch:	checkroot build-arch
+	$(MAKE) do-arch-install DESTDIR=$$(pwd)/debian/mailman
+	dh_installdirs -a
 	dh_install -a
 	dh_installdocs -a ACKNOWLEDGMENTS README* TODO FAQ
 	dh_installchangelogs -a NEWS
-
-	#rmdir debian/$(package)/var/lib/mailman/pythonlib
-
-# move the nonchanging directories to /usr/lib/mailman, except for
-# cgi-bin, which goes to /usr/lib/cgi-bin/mailman
-
-	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
-
-	# link them back to /var/lib/mailman
-	for i in debian/mailman/usr/lib/$(package)/*; do \
-	   dh_link usr/lib/$(package)/`basename $$i` var/lib/$(package)/`basename $$i`; \
-	done
-
-	# Link cgi-bin as well
-	dh_link usr/lib/cgi-bin/$(package) var/lib/$(package)/cgi-bin
-
-	# Backwards compatibility link
-	dh_link usr/lib/mailman/mail/mailman usr/lib/mailman/mail/wrapper
-	rmdir debian/$(package)/var/lib/mailman/icons
-
-        # move the templates to /etc/mailman
-	mv debian/mailman/var/lib/$(package)/templates debian/mailman/etc/mailman
-
-	# link it back to /var/lib/mailman/templates
-	dh_link etc/mailman var/lib/$(package)/templates
-
-	# remove the log directory and link it to /var/log/mailman
-	rmdir debian/mailman/var/lib/$(package)/logs 
-	dh_link var/log/mailman var/lib/$(package)/logs
-
-	# move the pending subscriptions database so it doesnt overwrite the
-	# old one when installing
-
-        # move the locks to /var/lock
-	mv debian/mailman/var/lib/$(package)/locks debian/mailman/var/lock/mailman
-
-	# link it back to /var/lib/mailman/locks
-	dh_link var/lock/mailman var/lib/$(package)/locks
-
-	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_installdebconf -a
+	mv debian/mailman/usr/lib/mailman/cgi-bin debian/mailman/usr/lib/cgi-bin/mailman
 	dh_strip -a
 	dh_compress -a
 	dh_fixperms -a
-	chown -R root:root debian/mailman debian/mailman-common
-	chown -R root:list \
-		debian/mailman/{etc/$(package),var/lib/$(package),usr/lib/{$(package),cgi-bin/$(package)}}
-	chown list:list debian/mailman/var/{lock/mailman,lib/mailman/qfiles,run/mailman}
-	chown root:list debian/mailman/var/log/mailman
-	find debian/mailman/var/lib/$(package) -type d | xargs chmod 2775
-	find debian/mailman/var/lib/$(package)/messages -type d | xargs chmod 755
-
+	chown -R root:list debian/mailman/usr/lib/{mailman,cgi-bin/mailman}
+	chmod g+s debian/mailman/usr/lib/cgi-bin/mailman/* \
+		debian/mailman/usr/lib/mailman/mail/mailman
 	# make lintian happy
 	install -m 0644 debian/lintian-overrides debian/mailman/usr/share/lintian/overrides/mailman
 
-# Install savannah plugin
-	install -m 0644 debian/contrib/savannah debian/mailman/usr/lib/$(package)/Mailman/Cgi
-
-# Spamassassin plugin
-	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
-
-# postfix-to-mailman.py
-	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
-
 # Move templates
-	mv `find debian/mailman/etc/mailman -mindepth 1 -maxdepth 1 -type d` debian/mailman/usr/share/mailman
-	cp build/contrib/qmail-to-mailman.py debian/mailman/usr/share/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
-
-	dh_link etc/mailman/qmail-to-mailman.py usr/lib/mailman/bin/qmail-to-mailman.py
-
-
-# Fix permissions
-	chmod +x debian/mailman/usr/lib/$(package)/Mailman/Cgi/*
-#	chmod +x debian/mailman/usr/lib/$(package)/scripts/*
-	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-x 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}
-	chmod 2775 debian/mailman/var/log/mailman
-	chmod g+w debian/mailman/var/lock/mailman
-
+	# create the resulting deb
 	dh_installdeb -a
-
-#	echo 'if [ "$$1" = purge ]; then' >> debian/mailman.postrm.ucf
-#	for f in `cat debian/ucffiles`; do \
-#		echo -e "\techo Removing $$f" >> debian/mailman.postrm.ucf; \
-#		echo -e "\tucf --debconf-ok --purge $$f" >> debian/mailman.postrm.ucf ; \
-#	done
-#	echo 'fi' >> debian/mailman.postrm.ucf
-
-#	echo 'if [ "$$1" = "configure" ]; then'>> debian/mailman.postinst.ucf
-#	for dir in $$(for f in $$(cat debian/ucffiles); do dirname "$$f" ; done | sort | uniq); do echo -e "\tmkdir -p $$dir" >> debian/mailman.postinst.ucf ; done
-
-#	echo -e "\techo -n 'Checking/installing config files (this takes time)': " >> debian/mailman.postinst.ucf
-#	for f in `cat debian/ucffiles`; do \
-#		echo -e "\techo -n ." >> debian/mailman.postinst.ucf ; \
-#		echo -e "\tucf `echo $$f | sed s,/etc/mailman,/usr/share/mailman,` $$f < /dev/tty > /dev/tty" >> debian/mailman.postinst.ucf ; \
-#	done
-#	echo 'fi' >> debian/mailman.postinst.ucf
-#	echo -e "\techo \" done!\"" >> debian/mailman.postinst.ucf
-
-#	perl -pi -e '/#UCF#/ and do { open F, "debian/mailman.postinst.ucf"; local $$/ ; $$_ = <F> };' debian/mailman/DEBIAN/postinst
-#	perl -pi -e '/#UCF#/ and do { open F, "debian/mailman.postrm.ucf"; local $$/ ; $$_ = <F> };' debian/mailman/DEBIAN/postrm
-
 	dh_shlibdeps -a
 	dh_gencontrol -a
 	dh_md5sums -a
 	dh_builddeb -a
 
 
-# Below here is fairly generic really
-
 binary:		binary-indep binary-arch
 
 checkroot:




More information about the Pkg-mailman-hackers mailing list