From: Derrick Brashear Date: Fri, 9 Nov 2007 19:47:30 +0000 (+0000) Subject: STABLE14-macos-packaging-updates-20071109 X-Git-Tag: openafs-stable-1_4_7pre1~174 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=5a9166c032dbdbb034fe1b4fe8de819492c505ff;p=packages%2Fo%2Fopenafs.git STABLE14-macos-packaging-updates-20071109 make the readme correct. make dmgs which have a useful name (cherry picked from commit 10ff33e6092a63107600b3b58c44c8d15849bbe6) --- diff --git a/configure.in b/configure.in index 350778c58..e839ee8f2 100644 --- a/configure.in +++ b/configure.in @@ -84,6 +84,7 @@ src/null/Makefile \ src/package/Makefile \ src/packaging/MacOS/OpenAFS.Info.plist \ src/packaging/MacOS/OpenAFS.info \ +src/packaging/MacOS/buildpkg.sh \ src/packaging/RedHat/openafs.spec \ src/pam/Makefile \ src/pinstall/Makefile \ diff --git a/src/packaging/MacOS/DS_Store b/src/packaging/MacOS/DS_Store index 646bda65a..84fc18a27 100644 Binary files a/src/packaging/MacOS/DS_Store and b/src/packaging/MacOS/DS_Store differ diff --git a/src/packaging/MacOS/ReadMe.rtf b/src/packaging/MacOS/ReadMe.rtf deleted file mode 100644 index 120d3a22e..000000000 --- a/src/packaging/MacOS/ReadMe.rtf +++ /dev/null @@ -1,13 +0,0 @@ -{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 -{\fonttbl\f0\fswiss\fcharset77 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\margl1440\margr1440\vieww9000\viewh9000\viewkind0 -\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural - -\f0\fs20 \cf0 This release of OpenAFS is targeted at MacOS 10.4.x. -\ -Select a client cell name by editing /var/db/openafs/etc/ThisCell\ -\ -The included afssettings program is distributed under the Apple Public Source License, version 2.0. See http://www.opensource.apple.com/apsl/2.0.txt or the included file 2.0.txt.\ -\ -Reboot when all of this is done.} diff --git a/src/packaging/MacOS/ReadMe.rtf.8 b/src/packaging/MacOS/ReadMe.rtf.8 new file mode 100644 index 000000000..ada1c7dd5 --- /dev/null +++ b/src/packaging/MacOS/ReadMe.rtf.8 @@ -0,0 +1,13 @@ +{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 +{\fonttbl\f0\fswiss\fcharset77 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\margl1440\margr1440\vieww9000\viewh9000\viewkind0 +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\fs20 \cf0 This release of OpenAFS is targeted at MacOS 10.4. (Tiger) +\ +Select a client cell name by editing /var/db/openafs/etc/ThisCell\ +\ +The included afssettings program is distributed under the Apple Public Source License, version 2.0. See http://www.opensource.apple.com/apsl/2.0.txt or the included file 2.0.txt.\ +\ +Reboot when all of this is done.} diff --git a/src/packaging/MacOS/ReadMe.rtf.9 b/src/packaging/MacOS/ReadMe.rtf.9 new file mode 100644 index 000000000..dfba64d37 --- /dev/null +++ b/src/packaging/MacOS/ReadMe.rtf.9 @@ -0,0 +1,13 @@ +{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 +{\fonttbl\f0\fswiss\fcharset77 Helvetica;} +{\colortbl;\red255\green255\blue255;} +\margl1440\margr1440\vieww9000\viewh9000\viewkind0 +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f0\fs20 \cf0 This release of OpenAFS is targeted at MacOS 10.5. (Leopard) +\ +Select a client cell name by editing /var/db/openafs/etc/ThisCell\ +\ +The included afssettings program is distributed under the Apple Public Source License, version 2.0. See http://www.opensource.apple.com/apsl/2.0.txt or the included file 2.0.txt.\ +\ +Reboot when all of this is done.} diff --git a/src/packaging/MacOS/afslogo.jpg b/src/packaging/MacOS/afslogo.jpg index 9be23c2b3..e3fc7aa86 100644 Binary files a/src/packaging/MacOS/afslogo.jpg and b/src/packaging/MacOS/afslogo.jpg differ diff --git a/src/packaging/MacOS/background.jpg b/src/packaging/MacOS/background.jpg index 6dd73eafa..c37ec24fd 100644 Binary files a/src/packaging/MacOS/background.jpg and b/src/packaging/MacOS/background.jpg differ diff --git a/src/packaging/MacOS/buildpkg.sh b/src/packaging/MacOS/buildpkg.sh deleted file mode 100644 index 4e924939f..000000000 --- a/src/packaging/MacOS/buildpkg.sh +++ /dev/null @@ -1,248 +0,0 @@ -#!/bin/sh -# Portions Copyright (c) 2003, 2006 Apple Computer, Inc. All rights reserved. - -if [ -z "$1" ]; then - echo Usage: buildpkg binary-dir - echo ' or' - echo 'Usage: buildpkg [-firstpass] binary-dir' - echo ' (customize pkgroot)' - echo ' buildpkg [-secondpass]' - exit 1 -fi - -firstpass=yes -secondpass=yes -if [ "$1" = "-firstpass" ]; then - secondpass=no - shift -elif [ "$1" = "-secondpass" ]; then - firstpass=no - shift -fi - -BINDEST=`cd $1 && pwd` -CURDIR=`pwd` -RESSRC=`dirname $0` -RESSRC=`cd $RESSRC && pwd` -majorvers=`uname -r | sed 's/\..*//'` - -PKGROOT=$CURDIR/pkgroot -PKGRES=$CURDIR/pkgres -if [ $majorvers -ge 7 ]; then - SEP=: - package=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker - if [ ! -x $package ]; then - echo "PackageMaker does not exist. Please run this script on a MacOS X system" - echo "with the DeveloperTools package installed" - exit 1 - fi -else - SEP=. - package=/usr/bin/package - if [ ! -f $package ]; then - echo "$package does not exist. Please run this script on a MacOS X system" - echo "with the BSD subsystem installed" - exit 1 - fi - if grep -q 'set resDir = ""' $package ; then - echo $package is buggy. - echo remove the line \''set resDir = ""'\' from $package and try again - exit 1 - fi -fi - -if [ $firstpass = yes ]; then - if [ -x /usr/bin/curl ]; then - /usr/bin/curl -f -O http://dl.central.org/dl/cellservdb/CellServDB - fi - - if [ ! -f CellServDB ]; then - echo "A CellServDB file must be placed in the working directory" - die=1 - else - if grep -q 'GCO Public CellServDB' CellServDB ; then - touch CellServDB - else - echo "A proper CellServDB file must be placed in the working directory" - die=1 - fi - fi - FILES="ReadMe.rtf License.rtf CellServDB.list OpenAFS.info OpenAFS.post_install OpenAFS.pre_upgrade csrvdbmerge.pl 2.0.txt" - for f in $FILES; do - if [ ! -f $RESSRC/$f ]; then - echo "file missing: " $RESSRC/$f - die=1 - fi - done - if [ "$die" ]; then - echo "Correct above errors; then retry" - exit 1 - fi - if [ ! -f $BINDEST/bin/translate_et ]; then - die=1 - fi - if [ ! -f $BINDEST/root.client/usr/vice/etc/afs.kext/Contents/MacOS/afs ]; then - die=1 - fi - if [ "$die" ]; then - echo $BINDEST " is not a valid binary dir. it should be the result of" - echo "make dest" - exit 1 - fi - - rm -rf $PKGROOT - mkdir $PKGROOT - - mkdir -p $PKGROOT/Library - chown root${SEP}admin $PKGROOT - chmod 775 $PKGROOT $PKGROOT/Library - mkdir -p $PKGROOT/Library/OpenAFS/Tools - (cd $BINDEST && pax -rw * $PKGROOT/Library/OpenAFS/Tools) - cd $RESSRC - mkdir -p $PKGROOT/Library/StartupItems/OpenAFS - cp $BINDEST/root.client/usr/vice/etc/afs.rc $PKGROOT/Library/StartupItems/OpenAFS/OpenAFS - chmod a+x $PKGROOT/Library/StartupItems/OpenAFS/OpenAFS - cp $BINDEST/root.client/usr/vice/etc/StartupParameters.plist $PKGROOT/Library/StartupItems/OpenAFS/StartupParameters.plist - chown -R root${SEP}admin $PKGROOT/Library - chmod -R o-w $PKGROOT/Library - chmod -R g+w $PKGROOT/Library - chown -R root${SEP}wheel $PKGROOT/Library/StartupItems - chmod -R og-w $PKGROOT/Library/StartupItems - chown -R root${SEP}wheel $PKGROOT/Library/OpenAFS/Tools - chmod -R og-w $PKGROOT/Library/OpenAFS/Tools - - mkdir -p $PKGROOT/private/var/db/openafs/cache - mkdir -p $PKGROOT/private/var/db/openafs/etc/config - cp $CURDIR/CellServDB $PKGROOT/private/var/db/openafs/etc/CellServDB.master - echo grand.central.org > $PKGROOT/private/var/db/openafs/etc/ThisCell.sample - if [ $majorvers -ge 7 ]; then - echo /afs:/var/db/openafs/cache:30000 > $PKGROOT/private/var/db/openafs/etc/cacheinfo.sample - cp -RP $PKGROOT/Library/OpenAFS/Tools/etc/afssettings $PKGROOT/private/var/db/openafs/etc/config - cp settings.plist $PKGROOT/private/var/db/openafs/etc/config/settings.plist.orig - else - echo /Network/afs:/var/db/openafs/cache:30000 > $PKGROOT/private/var/db/openafs/etc/cacheinfo.sample - fi - echo '-afsdb -stat 2000 -dcache 800 -daemons 3 -volumes 70 -dynroot -fakestat-all' > $PKGROOT/private/var/db/openafs/etc/config/afsd.options.sample - - 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 - cp -RP $PKGROOT/Library/OpenAFS/Tools/root.client/usr/vice/etc/C $PKGROOT/private/var/db/openafs/etc - - chown -R root${SEP}wheel $PKGROOT/private - chmod -R og-w $PKGROOT/private - chmod og-rx $PKGROOT/private/var/db/openafs/cache - - mkdir -p $PKGROOT/usr/bin $PKGROOT/usr/sbin $PKGROOT/usr/share/man/man1 $PKGROOT/usr/share/man/man5 $PKGROOT/usr/share/man/man8 - - BINLIST="fs klog klog.krb pagsh pagsh.krb pts sys tokens tokens.krb unlog unlog.krb aklog" - ETCLIST="vos" - -# Should these be linked into /usr too? - OTHER_BINLIST="bos cmdebug rxgen translate_et udebug xstat_cm_test xstat_fs_test" - OTHER_ETCLIST="rxdebug" - - for f in $BINLIST; do - ln -s ../../Library/OpenAFS/Tools/bin/$f $PKGROOT/usr/bin/$f - done - for f in $ETCLIST; do - ln -s ../../Library/OpenAFS/Tools/etc/$f $PKGROOT/usr/sbin/$f - done - for f in `ls $PKGROOT/Library/OpenAFS/Tools/man/man1`; do - gzip -9 $PKGROOT/Library/OpenAFS/Tools/man/man1/$f - ln -s ../../../../Library/OpenAFS/Tools/man/man1/$f.gz $PKGROOT/usr/share/man/man1/$f.gz - done - for f in `ls $PKGROOT/Library/OpenAFS/Tools/man/man5`; do - gzip -9 $PKGROOT/Library/OpenAFS/Tools/man/man5/$f - ln -s ../../../../Library/OpenAFS/Tools/man/man5/$f.gz $PKGROOT/usr/share/man/man5/$f.gz - done - for f in `ls $PKGROOT/Library/OpenAFS/Tools/man/man8`; do - gzip -9 $PKGROOT/Library/OpenAFS/Tools/man/man8/$f - ln -s ../../../../Library/OpenAFS/Tools/man/man8/$f.gz $PKGROOT/usr/share/man/man8/$f.gz - done - - ln -s ../../Library/OpenAFS/Tools/bin/kpasswd $PKGROOT/usr/bin/kpasswd.afs - - ln -s ../../Library/OpenAFS/Tools/root.client/usr/vice/etc/afsd $PKGROOT/usr/sbin/afsd - -# mkdir -p $PKGROOT/Library/Kerberos\ Plug-Ins -# ln -s ../../Library/OpenAFS/Tools/root.client/Library/Kerberos\ Plug-Ins/aklog.loginLogout $PKGROOT/Library/Kerberos\ Plug-Ins/ - - chown -R root${SEP}wheel $PKGROOT/usr - chmod -R og-w $PKGROOT/usr -fi - -if [ $secondpass = yes ]; then - rm -rf $PKGRES - mkdir $PKGRES - - cd $RESSRC - if [ $majorvers -ge 7 ]; then - cp OpenAFS.post_install $PKGRES/postinstall - cp OpenAFS.pre_upgrade $PKGRES/preupgrade - cp OpenAFS.post_install $PKGRES/postupgrade - cp background.jpg $PKGRES/background.jpg - if [ $majorvers -ge 8 ]; then - cp InstallationCheck.$majorvers $PKGRES/InstallationCheck - mkdir -p $PKGRES/English.lproj - cp InstallationCheck.$majorvers $PKGRES/English.lproj/InstallationCheck - chmod a+x $PKGRES/InstallationCheck - fi - chmod a+x $PKGRES/postinstall $PKGRES/postupgrade $PKGRES/preupgrade - else - cp OpenAFS.post_install OpenAFS.pre_upgrade $PKGRES - cp OpenAFS.post_install $PKGRES/OpenAFS.post_upgrade - chmod a+x $PKGRES/OpenAFS.post_install $PKGRES/OpenAFS.post_upgrade $PKGRES/OpenAFS.pre_upgrade - fi - cp License.rtf ReadMe.rtf $PKGRES - cp csrvdbmerge.pl $PKGRES - chmod a+x $PKGRES/csrvdbmerge.pl - cp CellServDB.list $PKGRES - chown -R root${SEP}wheel $PKGRES - rm -rf $CURDIR/OpenAFS.pkg - - # once we have cm cleanup in 10.4 this can go - if [ $majorvers -le 8 ]; then - cat $RESSRC/OpenAFS.info|sed 's/RequiresReboot NO/RequiresReboot YES/'>$RESSRC/OpenAFS.info.new - rm -f $RESSRC/OpenAFS.info - mv $RESSRC/OpenAFS.info.new $RESSRC/OpenAFS.info - fi - - if [ $majorvers -ge 7 ]; then - echo $package -build -p $CURDIR/OpenAFS.pkg -f $PKGROOT -r $PKGRES \ - -i OpenAFS.Info.plist -d OpenAFS.Description.plist - $package -build -p $CURDIR/OpenAFS.pkg -f $PKGROOT -r $PKGRES \ - -i OpenAFS.Info.plist -d OpenAFS.Description.plist - else - echo $package $PKGROOT $RESSRC/OpenAFS.info -r $PKGRES - (cd $CURDIR && $package $PKGROOT $RESSRC/OpenAFS.info -r $PKGRES) - #old versions of package didn't handle this properly - if [ ! -r $CURDIR/OpenAFS.pkg/Contents ]; then - mkdir -p $CURDIR/OpenAFS.pkg/Contents/Resources - mv $CURDIR/OpenAFS.pkg/OpenAFS.* $CURDIR/OpenAFS.pkg/Contents/Resources - mv $CURDIR/OpenAFS.pkg/*.rtf $CURDIR/OpenAFS.pkg/Contents/Resources - mv $CURDIR/OpenAFS.pkg/csrvdbmerge.pl $CURDIR/OpenAFS.pkg/Contents/Resources - mv $CURDIR/OpenAFS.pkg/CellServDB* $CURDIR/OpenAFS.pkg/Contents/Resources - fi - fi - - rm -rf $PKGROOT $PKGRES - mkdir $CURDIR/dmg - mv $CURDIR/OpenAFS.pkg $CURDIR/dmg - rm -rf $CURDIR/OpenAFS.dmg - cp Uninstall $CURDIR/dmg/Uninstall.command - cp DS_Store $CURDIR/dmg/.DS_Store - mkdir $CURDIR/dmg/.background - cp afslogo.jpg $CURDIR/dmg/.background -# hdiutil create -srcfolder $CURDIR/dmg -volname OpenAFS -anyowners $CURDIR/OpenAFS.dmg - hdiutil makehybrid -hfs -hfs-volume-name OpenAFS -hfs-openfolder $CURDIR/dmg $CURDIR/dmg -o $CURDIR/TMP.dmg - hdiutil convert -format UDZO $CURDIR/TMP.dmg -o $CURDIR/OpenAFS.dmg - rm $CURDIR/TMP.dmg - rm -rf $CURDIR/dmg - # Unfortunately, sudo sets $USER to root, so I can't chown the - #.pkg dir back to myself - #chown -R $USER $CURDIR/OpenAFS.pkg -else - echo "First pass completed. Customize pkgroot and then run:" - echo " $0 -secondpass" -fi diff --git a/src/packaging/MacOS/buildpkg.sh.in b/src/packaging/MacOS/buildpkg.sh.in new file mode 100644 index 000000000..9c1e272dc --- /dev/null +++ b/src/packaging/MacOS/buildpkg.sh.in @@ -0,0 +1,258 @@ +#!/bin/sh +# Portions Copyright (c) 2003, 2006 Apple Computer, Inc. All rights reserved. + +if [ -z "$1" ]; then + echo Usage: buildpkg binary-dir + echo ' or' + echo 'Usage: buildpkg [-firstpass] binary-dir' + echo ' (customize pkgroot)' + echo ' buildpkg [-secondpass]' + exit 1 +fi + +firstpass=yes +secondpass=yes +if [ "$1" = "-firstpass" ]; then + secondpass=no + shift +elif [ "$1" = "-secondpass" ]; then + firstpass=no + shift +fi + +BINDEST=`cd $1 && pwd` +CURDIR=`pwd` +RESSRC=`dirname $0` +RESSRC=`cd $RESSRC && pwd` +majorvers=`uname -r | sed 's/\..*//'` +if [ $majorvers -eq 7 ]; then + RELNAME="Panther" +fi +if [ $majorvers -eq 8 ]; then + RELNAME="Tiger" +fi +if [ $majorvers -eq 9 ]; then + RELNAME="Leopard" +fi + +PKGROOT=$CURDIR/pkgroot +PKGRES=$CURDIR/pkgres +if [ $majorvers -ge 7 ]; then + SEP=: + package=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker + if [ ! -x $package ]; then + echo "PackageMaker does not exist. Please run this script on a MacOS X system" + echo "with the DeveloperTools package installed" + exit 1 + fi +else + SEP=. + package=/usr/bin/package + if [ ! -f $package ]; then + echo "$package does not exist. Please run this script on a MacOS X system" + echo "with the BSD subsystem installed" + exit 1 + fi + if grep -q 'set resDir = ""' $package ; then + echo $package is buggy. + echo remove the line \''set resDir = ""'\' from $package and try again + exit 1 + fi +fi + +if [ $firstpass = yes ]; then + if [ -x /usr/bin/curl ]; then + /usr/bin/curl -f -O http://dl.central.org/dl/cellservdb/CellServDB + fi + + if [ ! -f CellServDB ]; then + echo "A CellServDB file must be placed in the working directory" + die=1 + else + if grep -q 'GCO Public CellServDB' CellServDB ; then + touch CellServDB + else + echo "A proper CellServDB file must be placed in the working directory" + die=1 + fi + fi + FILES="ReadMe.rtf.$majorvers License.rtf CellServDB.list OpenAFS.info OpenAFS.post_install OpenAFS.pre_upgrade csrvdbmerge.pl 2.0.txt" + for f in $FILES; do + if [ ! -f $RESSRC/$f ]; then + echo "file missing: " $RESSRC/$f + die=1 + fi + done + if [ "$die" ]; then + echo "Correct above errors; then retry" + exit 1 + fi + if [ ! -f $BINDEST/bin/translate_et ]; then + die=1 + fi + if [ ! -f $BINDEST/root.client/usr/vice/etc/afs.kext/Contents/MacOS/afs ]; then + die=1 + fi + if [ "$die" ]; then + echo $BINDEST " is not a valid binary dir. it should be the result of" + echo "make dest" + exit 1 + fi + + rm -rf $PKGROOT + mkdir $PKGROOT + + mkdir -p $PKGROOT/Library + chown root${SEP}admin $PKGROOT + chmod 775 $PKGROOT $PKGROOT/Library + mkdir -p $PKGROOT/Library/OpenAFS/Tools + (cd $BINDEST && pax -rw * $PKGROOT/Library/OpenAFS/Tools) + cd $RESSRC + mkdir -p $PKGROOT/Library/StartupItems/OpenAFS + cp $BINDEST/root.client/usr/vice/etc/afs.rc $PKGROOT/Library/StartupItems/OpenAFS/OpenAFS + chmod a+x $PKGROOT/Library/StartupItems/OpenAFS/OpenAFS + cp $BINDEST/root.client/usr/vice/etc/StartupParameters.plist $PKGROOT/Library/StartupItems/OpenAFS/StartupParameters.plist + chown -R root${SEP}admin $PKGROOT/Library + chmod -R o-w $PKGROOT/Library + chmod -R g+w $PKGROOT/Library + chown -R root${SEP}wheel $PKGROOT/Library/StartupItems + chmod -R og-w $PKGROOT/Library/StartupItems + chown -R root${SEP}wheel $PKGROOT/Library/OpenAFS/Tools + chmod -R og-w $PKGROOT/Library/OpenAFS/Tools + + mkdir -p $PKGROOT/private/var/db/openafs/cache + mkdir -p $PKGROOT/private/var/db/openafs/etc/config + cp $CURDIR/CellServDB $PKGROOT/private/var/db/openafs/etc/CellServDB.master + echo grand.central.org > $PKGROOT/private/var/db/openafs/etc/ThisCell.sample + if [ $majorvers -ge 7 ]; then + echo /afs:/var/db/openafs/cache:30000 > $PKGROOT/private/var/db/openafs/etc/cacheinfo.sample + cp -RP $PKGROOT/Library/OpenAFS/Tools/etc/afssettings $PKGROOT/private/var/db/openafs/etc/config + cp settings.plist $PKGROOT/private/var/db/openafs/etc/config/settings.plist.orig + else + echo /Network/afs:/var/db/openafs/cache:30000 > $PKGROOT/private/var/db/openafs/etc/cacheinfo.sample + fi + echo '-afsdb -stat 2000 -dcache 800 -daemons 3 -volumes 70 -dynroot -fakestat-all' > $PKGROOT/private/var/db/openafs/etc/config/afsd.options.sample + + 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 + cp -RP $PKGROOT/Library/OpenAFS/Tools/root.client/usr/vice/etc/C $PKGROOT/private/var/db/openafs/etc + + chown -R root${SEP}wheel $PKGROOT/private + chmod -R og-w $PKGROOT/private + chmod og-rx $PKGROOT/private/var/db/openafs/cache + + mkdir -p $PKGROOT/usr/bin $PKGROOT/usr/sbin $PKGROOT/usr/share/man/man1 $PKGROOT/usr/share/man/man5 $PKGROOT/usr/share/man/man8 + + BINLIST="fs klog klog.krb pagsh pagsh.krb pts sys tokens tokens.krb unlog unlog.krb aklog" + ETCLIST="vos" + +# Should these be linked into /usr too? + OTHER_BINLIST="bos cmdebug rxgen translate_et udebug xstat_cm_test xstat_fs_test" + OTHER_ETCLIST="rxdebug" + + for f in $BINLIST; do + ln -s ../../Library/OpenAFS/Tools/bin/$f $PKGROOT/usr/bin/$f + done + for f in $ETCLIST; do + ln -s ../../Library/OpenAFS/Tools/etc/$f $PKGROOT/usr/sbin/$f + done + for f in `ls $PKGROOT/Library/OpenAFS/Tools/man/man1`; do + gzip -9 $PKGROOT/Library/OpenAFS/Tools/man/man1/$f + ln -s ../../../../Library/OpenAFS/Tools/man/man1/$f.gz $PKGROOT/usr/share/man/man1/$f.gz + done + for f in `ls $PKGROOT/Library/OpenAFS/Tools/man/man5`; do + gzip -9 $PKGROOT/Library/OpenAFS/Tools/man/man5/$f + ln -s ../../../../Library/OpenAFS/Tools/man/man5/$f.gz $PKGROOT/usr/share/man/man5/$f.gz + done + for f in `ls $PKGROOT/Library/OpenAFS/Tools/man/man8`; do + gzip -9 $PKGROOT/Library/OpenAFS/Tools/man/man8/$f + ln -s ../../../../Library/OpenAFS/Tools/man/man8/$f.gz $PKGROOT/usr/share/man/man8/$f.gz + done + + ln -s ../../Library/OpenAFS/Tools/bin/kpasswd $PKGROOT/usr/bin/kpasswd.afs + + ln -s ../../Library/OpenAFS/Tools/root.client/usr/vice/etc/afsd $PKGROOT/usr/sbin/afsd + +# mkdir -p $PKGROOT/Library/Kerberos\ Plug-Ins +# ln -s ../../Library/OpenAFS/Tools/root.client/Library/Kerberos\ Plug-Ins/aklog.loginLogout $PKGROOT/Library/Kerberos\ Plug-Ins/ + + chown -R root${SEP}wheel $PKGROOT/usr + chmod -R og-w $PKGROOT/usr +fi + +if [ $secondpass = yes ]; then + rm -rf $PKGRES + mkdir $PKGRES + + cd $RESSRC + if [ $majorvers -ge 7 ]; then + cp OpenAFS.post_install $PKGRES/postinstall + cp OpenAFS.pre_upgrade $PKGRES/preupgrade + cp OpenAFS.post_install $PKGRES/postupgrade + cp background.jpg $PKGRES/background.jpg + if [ $majorvers -ge 8 ]; then + cp InstallationCheck.$majorvers $PKGRES/InstallationCheck + mkdir -p $PKGRES/English.lproj + cp InstallationCheck.$majorvers $PKGRES/English.lproj/InstallationCheck + chmod a+x $PKGRES/InstallationCheck + fi + chmod a+x $PKGRES/postinstall $PKGRES/postupgrade $PKGRES/preupgrade + else + cp OpenAFS.post_install OpenAFS.pre_upgrade $PKGRES + cp OpenAFS.post_install $PKGRES/OpenAFS.post_upgrade + chmod a+x $PKGRES/OpenAFS.post_install $PKGRES/OpenAFS.post_upgrade $PKGRES/OpenAFS.pre_upgrade + fi + cp License.rtf $PKGRES + cp ReadMe.rtf.$majorvers $PKGRES/ReadMe.rtf + cp csrvdbmerge.pl $PKGRES + chmod a+x $PKGRES/csrvdbmerge.pl + cp CellServDB.list $PKGRES + chown -R root${SEP}wheel $PKGRES + rm -rf $CURDIR/OpenAFS.pkg + + # once we have cm cleanup in 10.4 this can go + if [ $majorvers -le 8 ]; then + cat $RESSRC/OpenAFS.info|sed 's/RequiresReboot NO/RequiresReboot YES/'>$RESSRC/OpenAFS.info.new + rm -f $RESSRC/OpenAFS.info + mv $RESSRC/OpenAFS.info.new $RESSRC/OpenAFS.info + fi + + if [ $majorvers -ge 7 ]; then + echo $package -build -p $CURDIR/OpenAFS.pkg -f $PKGROOT -r $PKGRES \ + -i OpenAFS.Info.plist -d OpenAFS.Description.plist + $package -build -p $CURDIR/OpenAFS.pkg -f $PKGROOT -r $PKGRES \ + -i OpenAFS.Info.plist -d OpenAFS.Description.plist + else + echo $package $PKGROOT $RESSRC/OpenAFS.info -r $PKGRES + (cd $CURDIR && $package $PKGROOT $RESSRC/OpenAFS.info -r $PKGRES) + #old versions of package didn't handle this properly + if [ ! -r $CURDIR/OpenAFS.pkg/Contents ]; then + mkdir -p $CURDIR/OpenAFS.pkg/Contents/Resources + mv $CURDIR/OpenAFS.pkg/OpenAFS.* $CURDIR/OpenAFS.pkg/Contents/Resources + mv $CURDIR/OpenAFS.pkg/*.rtf $CURDIR/OpenAFS.pkg/Contents/Resources + mv $CURDIR/OpenAFS.pkg/csrvdbmerge.pl $CURDIR/OpenAFS.pkg/Contents/Resources + mv $CURDIR/OpenAFS.pkg/CellServDB* $CURDIR/OpenAFS.pkg/Contents/Resources + fi + fi + + rm -rf $PKGROOT $PKGRES + mkdir $CURDIR/dmg + mv $CURDIR/OpenAFS.pkg $CURDIR/dmg + rm -rf $CURDIR/OpenAFS.dmg + cp Uninstall $CURDIR/dmg/Uninstall.command + cp DS_Store $CURDIR/dmg/.DS_Store + mkdir $CURDIR/dmg/.background + cp afslogo.jpg $CURDIR/dmg/.background +# hdiutil create -srcfolder $CURDIR/dmg -volname OpenAFS -anyowners $CURDIR/OpenAFS.dmg + hdiutil makehybrid -hfs -hfs-volume-name OpenAFS -hfs-openfolder $CURDIR/dmg $CURDIR/dmg -o $CURDIR/TMP.dmg + hdiutil convert -format UDZO $CURDIR/TMP.dmg -o $CURDIR/OpenAFS-@VERSION@-$RELNAME.dmg + rm $CURDIR/TMP.dmg + rm -rf $CURDIR/dmg + # Unfortunately, sudo sets $USER to root, so I can't chown the + #.pkg dir back to myself + #chown -R $USER $CURDIR/OpenAFS.pkg +else + echo "First pass completed. Customize pkgroot and then run:" + echo " $0 -secondpass" +fi