summary refs log tree commit diff
path: root/Makefile.am
diff options
context:
space:
mode:
authorAlexander Barton <alex@barton.de>2013-03-27 13:09:23 +0100
committerAlexander Barton <alex@barton.de>2013-03-27 13:11:30 +0100
commit7f9bce705c72b7fc8ab597b67c0255a154b8b3bd (patch)
tree7efb55e19d0c2f99b6895c5e23005a6a8e086148 /Makefile.am
parentce3e41cf4ce7a968bc092d7028e5744e7220c8df (diff)
downloadngircd-7f9bce705c72b7fc8ab597b67c0255a154b8b3bd.tar.gz
ngircd-7f9bce705c72b7fc8ab597b67c0255a154b8b3bd.zip
Build OS X package with correct file permissions
This requires to have the correct permissions in the source tree, which
is "root:wheel", which in turn requires root privileges. Therefore the
Makefile now tries to become root on "make osxpkg-dest" but tries hard
not to require root privileges on "clean" etc.
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am18
1 files changed, 11 insertions, 7 deletions
diff --git a/Makefile.am b/Makefile.am
index f6a97ce6..0b797c13 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
 #
 # ngIRCd -- The Next Generation IRC Daemon
-# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors
+# Copyright (c)2001-2013 Alexander Barton (alex@barton.de) and Contributors
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -15,9 +15,8 @@ SUBDIRS = doc src man contrib
 
 EXTRA_DIST = autogen.sh configure.ng .mailmap
 
-clean-local:
+clean-local: osxpkg-clean
 	rm -f build-stamp*
-	rm -rf ngircd.dest
 
 maintainer-clean-local:
 	rm -rf autom4te.cache
@@ -62,14 +61,18 @@ deb:
 	dpkg-buildpackage -rfakeroot -i
 
 osxpkg: have-packagemaker osxpkg-dest
-	cd contrib/MacOSX && packagemaker \
+	cd contrib/MacOSX && packagemaker --no-recommend \
 	 --doc ngIRCd.pmdoc \
 	 --out ../../$(distdir).mpkg
 	rm -f $(distdir).mpkg.zip
 	zip -ro9 $(distdir).mpkg.zip $(distdir).mpkg
+	make osxpkg-clean
+
+osxpkg-clean:
+	[ ! -e ngircd.dest ] || sudo -n rm -rf ngircd.dest
 	rm -rf ngircd.dest $(distdir).mpkg
 
-osxpkg-dest: have-xcodebuild clean
+osxpkg-dest: have-xcodebuild osxpkg-clean clean
 	./configure --prefix=/opt/ngircd
 	make xcode
 	make -C contrib/MacOSX de.barton.ngircd.plist
@@ -82,8 +85,9 @@ osxpkg-dest: have-xcodebuild clean
 	rm ngircd.dest/opt/ngircd/etc/ngircd.conf
 	echo "Have a nice day IRCing!" >ngircd.dest/opt/ngircd/etc/ngircd.motd
 	chmod -R a-s,og-w,a+rX ngircd.dest
+	sudo chown -R root:wheel ngircd.dest
 
-.PHONY: deb have-packagemaker have-xcodebuild lint osxpkg osxpkg-dest rpm \
-	srcdoc testsuite xcode xcode-clean
+.PHONY: deb have-packagemaker have-xcodebuild lint osxpkg osxpkg-clean \
+	osxpkg-dest rpm srcdoc testsuite xcode xcode-clean
 
 # -eof-