summaryrefslogtreecommitdiff
path: root/build/mac/GNUmakefile
diff options
context:
space:
mode:
Diffstat (limited to 'build/mac/GNUmakefile')
-rw-r--r--build/mac/GNUmakefile97
1 files changed, 97 insertions, 0 deletions
diff --git a/build/mac/GNUmakefile b/build/mac/GNUmakefile
new file mode 100644
index 0000000..0b8b57e
--- /dev/null
+++ b/build/mac/GNUmakefile
@@ -0,0 +1,97 @@
+#
+# Copyright (c) 2000,2004 Silicon Graphics, Inc. All Rights Reserved.
+#
+# 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 the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+TOPDIR = ../..
+include $(TOPDIR)/src/include/builddefs
+
+LDIRDIRT = pcp-*
+LDIRT = $(wildcard pcp*.pkg) $(wildcard pcp*.dmg) \
+ idb installer-files info description
+SUBDIRS = English.lproj installer-resources
+LSRCFILES = StartupParameters.plist build-installer \
+ installer-description installer-info install-pcp uninstall-pcp
+
+default install install_pcp default_pcp :
+
+.PHONY: pack_pcp
+pack_pcp : extrabits
+ @PACKAGE_VERSION=${PACKAGE_VERSION} \
+ PACKAGE_MAJOR=${PACKAGE_MAJOR} \
+ PACKAGE_MINOR=${PACKAGE_MINOR} \
+ PACKAGE_BUILD=${PACKAGE_BUILD} \
+ ./build-installer $(PACKAGE_MAKER) $(HDIUTIL) \
+ $$DIST_ROOT ${PACKAGE_NAME} idb
+
+idb: $(DIST_MANIFEST)
+# We need to do a fair bit of munging here
+# Firstly, add a version number
+# then swap source and destination
+# ensure there is a mode and user/group for EVERY entry
+# Add a 'rule' (eg replace)
+# make destination relative
+# make source relative to DIST_ROOT
+# ensure that a symlink has a full path for the source (no change needed
+# if source is already a full path)
+# append the installer scripts
+ @echo Making idb...
+ @echo "# Version 1" > idb
+ @echo "# IDB for PCP" >> idb
+ @WA=`cd $(TOPDIR) ; pwd` ; \
+ $(PCP_AWK_PROG) ' \
+ $$1 == "d" { printf "%s %s %s %s %s src/ replace\n", $$1, $$2, $$3, $$4, $$5 ; next; } \
+ $$1 == "l" { \
+ str = ""; \
+ if (substr($$2,1,1) != "/") { \
+ i = split($$3, a, "/"); \
+ for( n = 1; n < i; n++ ) { \
+ str = str a[n] "/"; \
+ } \
+ } \
+ printf "s 0 $(PCP_USER_INSTALL) $(PCP_GROUP_INSTALL) %s %s%s replace\n", $$3, str, $$2 ; \
+ next; \
+ } \
+ $$5 ~ "'$$DIST_ROOT'" { \
+ sub(".*'$$DIST_ROOT'", "", $$5); \
+ } \
+ { \
+ printf "%s %s %s %s %s %s replace\n", $$1, $$2, $$3, $$4, $$6, $$5 ; \
+ } \
+ ' $$DIST_MANIFEST \
+ | sed -e 's# '$$WA'/# #g' -e 's# /# #g' >> idb
+ @(bdir=`echo $(PCP_BINADM_DIR) | cut -c2-`; \
+ echo "f 644 root wheel $$bdir/idb idb replace"; \
+ echo "f 755 root wheel $$bdir/install-pcp install-pcp replace"; \
+ echo "f 755 root wheel $$bdir/uninstall-pcp uninstall-pcp replace") >> idb
+ @echo "f 644 root wheel Library/StartupItems/pcp/StartupParameters.plist StartupParameters.plist replace" >> idb
+ @echo "d 755 root wheel Library/StartupItems/pcp/Resources . replace" >> idb
+ @echo "d 755 root wheel Library/StartupItems/pcp/Resources/English.lproj . replace" >> idb
+ @echo "f 644 root wheel Library/StartupItems/pcp/Resources/English.lproj/Localizable.strings English.lproj/Localizable.strings replace" >> idb
+ @echo "s 0 root wheel Library/StartupItems/pcp/pmcd etc/init.d/pmcd replace" >> idb
+ @echo "s 0 root wheel Library/StartupItems/pcp/pmie etc/init.d/pmie replace" >> idb
+ifeq "$(HAVE_LIBMICROHTTPD)" "1"
+ @echo "s 0 root wheel Library/StartupItems/pcp/pmwebd etc/init.d/pmwebd replace" >> idb
+endif
+ @echo "s 0 root wheel Library/StartupItems/pcp/pmproxy etc/init.d/pmproxy replace" >> idb
+ @echo "s 0 root wheel Library/StartupItems/pcp/pmlogger etc/init.d/pmlogger replace" >> idb
+ @echo idb created
+
+extrabits: idb
+ DIST_MANIFEST= $(INSTALL) -m 755 idb install-pcp uninstall-pcp \
+ $(PCP_BINADM_DIR)
+ DIST_MANIFEST= $(INSTALL) -m 644 StartupParameters.plist \
+ Library/StartupItems/pcp/StartupParameters.plist
+ DIST_MANIFEST= $(INSTALL) -m 644 English.lproj/Localizable.strings \
+ Library/StartupItems/pcp/Resources/English.lproj/Localizable.strings
+
+include $(BUILDRULES)