]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
create debugging kext package for MacOS
authorDerrick Brashear <shadow@dementia.org>
Sun, 17 Jan 2010 06:10:28 +0000 (01:10 -0500)
committerDerrick Brashear <shadow|account-1000005@unknown>
Tue, 2 Feb 2010 18:24:47 +0000 (10:24 -0800)
this creates and installs a debugging kext package for macos. it also
always installs the decode-panic script (which can be used even without
the debug kext)

Change-Id: Iff03de66cd3df2690f03333e6629d21660364cd1
Reviewed-on: http://gerrit.openafs.org/1120
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit cc47e765912e1a5dedddb6ef00ca8b8c8d567f0e)
Reviewed-on: http://gerrit.openafs.org/1214

configure.in
src/libafs/MakefileProto.DARWIN.in
src/packaging/MacOS/OpenAFS-debug.Description.plist.in [new file with mode: 0644]
src/packaging/MacOS/OpenAFS-debug.Info.plist.in [new file with mode: 0644]
src/packaging/MacOS/OpenAFS.Description.plist [deleted file]
src/packaging/MacOS/OpenAFS.Description.plist.in [new file with mode: 0644]
src/packaging/MacOS/OpenAFS.info.in
src/packaging/MacOS/buildpkg.sh.in

index 5c9a6c71f63f5e6286dd78f91b592ac8ceafcae8..51afba2722d126fc7a39878fd4cc00c68e99173f 100644 (file)
@@ -108,6 +108,10 @@ src/lwp/test/Makefile \
 src/mpp/Makefile \
 src/null/Makefile \
 src/package/Makefile \
+src/packaging/Debian/rules \
+src/packaging/MacOS/OpenAFS-debug.Description.plist \
+src/packaging/MacOS/OpenAFS-debug.Info.plist \
+src/packaging/MacOS/OpenAFS.Description.plist \
 src/packaging/MacOS/OpenAFS.Info.plist \
 src/packaging/MacOS/OpenAFS.info \
 src/packaging/MacOS/buildpkg.sh \
index c6422fe218e48e28f9817cf161e072b56a521112..991684b57954ae13369b699ae0b03a279f94d6f2 100644 (file)
@@ -127,32 +127,56 @@ INST_LIBAFS = ${DESTDIR}${afskerneldir}/afs-nfs.kext
 INST_LIBAFSNONFS = ${DESTDIR}${afskerneldir}/afs.kext
 DEST_LIBAFS = ${DEST}/root.client/usr/vice/etc/afs-nfs.kext
 DEST_LIBAFSNONFS = ${DEST}/root.client/usr/vice/etc/afs.kext
+<all -ppc_darwin_90 -x86_darwin_90 -x86_darwin_100>
+LIBAFSDSYM =
+LIBAFSNONFSDSYM =
+INST_LIBAFSDSYM =
+INST_LIBAFSNONFSDSYM =
+DEST_LIBAFSDSYM =
+DEST_LIBAFSNONFSDSYM =
+<ppc_darwin_90 x86_darwin_90 x86_darwin_100>
+LIBAFSDSYM = libafs.o.dSYM
+LIBAFSNONFSDSYM = libafs.nonfs.o.dSYM
+INST_LIBAFSDSYM = ${DESTDIR}${afskerneldir}/afs-nfs.kext.dSYM
+INST_LIBAFSNONFSDSYM = ${DESTDIR}${afskerneldir}/afs.kext.dSYM
+DEST_LIBAFSDSYM =  ${DEST}/root.client/usr/vice/etc/afs-nfs.kext.dSYM
+DEST_LIBAFSNONFSDSYM = ${DEST}/root.client/usr/vice/etc/afs.kext.dSYM
+<all>
 
-
-libafs: $(LIBAFSNONFS) ;
-install_libafs: $(LIBAFSNONFS) ;
+libafs: $(LIBAFSNONFS) $(LIBAFSNONFSDSYM) ;
+install_libafs: $(LIBAFSNONFS) $(LIBAFSNONFSDSYM) ;
        -mkdir -p ${INST_LIBAFSNONFS}
        -mkdir -p ${INST_LIBAFSNONFS}/Contents
        $(INSTALL) -f ../${DARWIN_INFOFILE} ${INST_LIBAFSNONFS}/Contents/Info.plist
        -mkdir -p ${INST_LIBAFSNONFS}/Contents/MacOS
        $(INSTALL) -f ${LIBAFSNONFS} ${INST_LIBAFSNONFS}/Contents/MacOS/afs
+<ppc_darwin_90 x86_darwin_90 x86_darwin_100>
+       -mkdir -p ${INST_LIBAFSNONFSDSYM}/Contents/Resources/DWARF
+       $(INSTALL) -f ${LIBAFSNONFSDSYM}/Contents/Info.plist ${INST_LIBAFSNONFSDSYM}/Contents
+       $(INSTALL) -f ${LIBAFSNONFSDSYM}/Contents/Resources/DWARF/${LIBAFSNONFS} ${INST_LIBAFSNONFSDSYM}/Contents/Resources/DWARF
+<all>
 
-dest_libafs: $(LIBAFSNONFS) ;
+dest_libafs: $(LIBAFSNONFS) $(LIBAFSNONFSDSYM) ;
        -mkdir -p ${DEST_LIBAFSNONFS}
        -mkdir -p ${DEST_LIBAFSNONFS}/Contents
        $(INSTALL) -f ../${DARWIN_INFOFILE} ${DEST_LIBAFSNONFS}/Contents/Info.plist
        -mkdir -p ${DEST_LIBAFSNONFS}/Contents/MacOS
        $(INSTALL) -f ${LIBAFSNONFS} ${DEST_LIBAFSNONFS}/Contents/MacOS/afs
-
+<ppc_darwin_90 x86_darwin_90 x86_darwin_100>
+       -mkdir -p ${DEST_LIBAFSNONFSDSYM}/Contents/Resources/DWARF
+       $(INSTALL) -f ${LIBAFSNONFSDSYM}/Contents/Info.plist ${DEST_LIBAFSNONFSDSYM}/Contents
+       $(INSTALL) -f ${LIBAFSNONFSDSYM}/Contents/Resources/DWARF/${LIBAFSNONFS} ${DEST_LIBAFSNONFSDSYM}/Contents/Resources/DWARF
+<all>
 
 ${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS)
        $(MODLD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS} -lcc_kext
-<ppc_darwin_90 x86_darwin_90 x86_darwin_100>
-       dsymutil -o ${LIBAFS}.dSYM ${LIBAFS}
-<all>
 
 ${LIBAFSNONFS}:  $(AFSAOBJS) $(AFSNONFSOBJS)
        $(MODLD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS} -lcc_kext
+
 <ppc_darwin_90 x86_darwin_90 x86_darwin_100>
+$(LIBAFSDSYM): ${LIBAFS}
+       dsymutil -o ${LIBAFS}.dSYM ${LIBAFS}
+${LIBAFSNONFSDSYM}: ${LIBAFSNONFS}
        dsymutil -o ${LIBAFSNONFS}.dSYM ${LIBAFSNONFS}
 <all>
diff --git a/src/packaging/MacOS/OpenAFS-debug.Description.plist.in b/src/packaging/MacOS/OpenAFS-debug.Description.plist.in
new file mode 100644 (file)
index 0000000..2667452
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>IFPkgDescriptionDeleteWarning</key>
+       <string></string>
+       <key>IFPkgDescriptionDescription</key>
+       <string>Mac OS X debug symbols for OpenAFS client.</string>
+       <key>IFPkgDescriptionTitle</key>
+       <string>OpenAFS debug extension</string>
+       <key>IFPkgDescriptionVersion</key>
+       <string>@VERSION@</string>
+</dict>
+</plist>
diff --git a/src/packaging/MacOS/OpenAFS-debug.Info.plist.in b/src/packaging/MacOS/OpenAFS-debug.Info.plist.in
new file mode 100644 (file)
index 0000000..8bcb9b0
--- /dev/null
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>CFBundleGetInfoString</key>
+       <string>OpenAFS-debug @MACOS_VERSION@</string>
+       <key>CFBundleIdentifier</key>
+       <string>org.openafs.OpenAFS-debug.pkg</string>
+       <key>CFBundleName</key>
+       <string>OpenAFS-debug</string>
+       <key>CFBundleShortVersionString</key>
+       <string>@MACOS_VERSION@</string>
+       <key>IFMajorVersion</key>
+       <integer>1</integer>
+       <key>IFMinorVersion</key>
+       <integer>4</integer>
+       <key>IFPkgFlagAllowBackRev</key>
+       <false/>
+       <key>IFPkgFlagAuthorizationAction</key>
+       <string>RootAuthorization</string>
+       <key>IFPkgFlagBackgroundAlignment</key>
+       <string>bottomright</string>
+       <key>IfPkgFlagBackgroundScaling</key>
+       <string>proportional</string>
+       <key>IFPkgFlagDefaultLocation</key>
+       <string>/</string>
+       <key>IFPkgFlagInstallFat</key>
+       <false/>
+       <key>IFPkgFlagIsRequired</key>
+       <false/>
+       <key>IFPkgFlagRelocatable</key>
+       <false/>
+       <key>IFPkgFlagRestartAction</key>
+       <string>NoRestart</string>
+       <key>IFPkgFlagRootVolumeOnly</key>
+       <true/>
+       <key>IFPkgFlagUpdateInstalledLanguages</key>
+       <false/>
+       <key>IFPkgFlagUseUserMask</key>
+       <false/>
+       <key>IFPkgFlagAllowBackRev</key>
+       <true/>
+       <key>IFPkgFormatVersion</key>
+       <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/src/packaging/MacOS/OpenAFS.Description.plist b/src/packaging/MacOS/OpenAFS.Description.plist
deleted file mode 100644 (file)
index d7c2cb8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-       <key>IFPkgDescriptionDeleteWarning</key>
-       <string></string>
-       <key>IFPkgDescriptionDescription</key>
-       <string>Mac OS X version of OpenAFS client and server.</string>
-       <key>IFPkgDescriptionTitle</key>
-       <string>OpenAFS</string>
-       <key>IFPkgDescriptionVersion</key>
-       <string>1.2.10</string>
-</dict>
-</plist>
diff --git a/src/packaging/MacOS/OpenAFS.Description.plist.in b/src/packaging/MacOS/OpenAFS.Description.plist.in
new file mode 100644 (file)
index 0000000..8dece17
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>IFPkgDescriptionDeleteWarning</key>
+       <string></string>
+       <key>IFPkgDescriptionDescription</key>
+       <string>Mac OS X version of OpenAFS client and server.</string>
+       <key>IFPkgDescriptionTitle</key>
+       <string>OpenAFS</string>
+       <key>IFPkgDescriptionVersion</key>
+       <string>@VERSION@</string>
+</dict>
+</plist>
index 819ec07104219f7094ed58361ad144ff834451f5..3a541dc7cc58269fbe6e861d30952d77f6d61887 100644 (file)
@@ -1,6 +1,6 @@
 Title OpenAFS
 Version @VERSION@
-Description The OpenAFS distributed filesystem. This package installs an almost-ready-to-run client for OpenAFS. see http://www.openafs.org for more information.
+Description The OpenAFS distributed filesystem. This package installs a ready-to-run client for OpenAFS. See http://www.openafs.org for more information.
 DefaultLocation /
 Diskname (null)
 DeleteWarning 
index 4ea5f6d4c6cddbe0eaad71682e633404047da532..ae98ca759c8dc0ebfab357250e1ed3078e76cdfb 100644 (file)
@@ -40,6 +40,8 @@ fi
 
 PKGROOT=$CURDIR/pkgroot
 PKGRES=$CURDIR/pkgres
+DPKGROOT=$CURDIR/dpkgroot
+DPKGRES=$CURDIR/dpkgres
 if [ $majorvers -ge 7 ]; then
     SEP=:
     package=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker
@@ -138,6 +140,19 @@ if [ $firstpass = yes ]; then
     fi
     cp afs.conf $PKGROOT/private/var/db/openafs/etc/config/afs.conf.sample
 
+    cp decode-panic $PKGROOT/Library/OpenAFS/Tools/tools
+    chmod a+x $PKGROOT/Library/OpenAFS/Tools/tools/decode-panic
+
+    if [ $majorvers -ge 9 ]; then
+       rm -rf $DPKGROOT
+       mkdir $DPKGROOT
+       mkdir -p $DPKGROOT/Library/OpenAFS/Debug
+       mv $PKGROOT/Library/OpenAFS/Tools/root.client/usr/vice/etc/afs.kext.dSYM $DPKGROOT/Library/OpenAFS/Debug
+       cp -RP $PKGROOT/Library/OpenAFS/Tools/root.client/usr/vice/etc/afs.kext $DPKGROOT/Library/OpenAFS/Debug
+       chown -R root${SEP}wheel $DPKGROOT/Library/OpenAFS/Debug
+       chmod -R og-w $DPKGROOT/Library/OpenAFS/Debug
+    fi
+
     strip -X -S $PKGROOT/Library/OpenAFS/Tools/root.client/usr/vice/etc/afs.kext/Contents/MacOS/afs
 
     cp -RP $PKGROOT/Library/OpenAFS/Tools/root.client/usr/vice/etc/afs.kext $PKGROOT/private/var/db/openafs/etc
@@ -189,6 +204,23 @@ fi
 if [ $secondpass = yes ]; then
     rm -rf $PKGRES
     mkdir $PKGRES
+    cd $RESSRC
+    if [ $majorvers -ge 9 ]; then
+       rm -rf $DPKGRES
+       mkdir $DPKGRES
+       cp License.rtf $DPKGRES
+       cp InstallationCheck.$majorvers $DPKGRES/InstallationCheck
+       mkdir -p $DPKGRES/English.lproj
+       cp InstallationCheck.$majorvers $DPKGRES/English.lproj/InstallationCheck
+       chmod a+x $DPKGRES/InstallationCheck
+       cp background.jpg $DPKGRES/background.jpg
+       chown -R root${SEP}wheel $DPKGRES
+       rm -rf $CURDIR/OpenAFS-debug-extension.pkg
+       echo $package -build -p $CURDIR/OpenAFS-debug-extension.pkg -f $DPKGROOT -r $DPKGRES \
+           -i OpenAFS-debug.Info.plist -d OpenAFS-debug.Description.plist
+       $package -build -p $CURDIR/OpenAFS-debug-extension.pkg -f $DPKGROOT -r $DPKGRES \
+           -i OpenAFS-debug.Info.plist -d OpenAFS-debug.Description.plist
+    fi
 
     cd $RESSRC
     if [ $majorvers -ge 7 ]; then
@@ -242,7 +274,7 @@ if [ $secondpass = yes ]; then
     fi
 
     rm -rf $PKGROOT $PKGRES
-
+    rm -rf $DPKGROOT $DPKGRES
     # here we want to build installer plugin and install
     # for Tiger and later only
     if [ $majorvers -ge 8 ]; then
@@ -261,6 +293,9 @@ if [ $secondpass = yes ]; then
 
     mkdir $CURDIR/dmg
     mv $CURDIR/OpenAFS.pkg $CURDIR/dmg
+    if [ $majorvers -ge 8 ]; then
+       mv $CURDIR/OpenAFS-debug-extension.pkg $CURDIR/dmg
+    fi
     rm -rf $CURDIR/OpenAFS-@VERSION@-$RELNAME.dmg
     cp Uninstall $CURDIR/dmg/Uninstall.command
     cp DS_Store $CURDIR/dmg/.DS_Store