2 # Make sure we are running in the right directory...
3 if test ! -f tools
/testosx
; then
4 echo "Run this script from the top-level CUPS source directory, e.g.:"
6 echo " tools/testosx [version]"
11 # Get the current working copy version...
12 rev=`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[a-zA-Z]*//g'`
15 version
="1.3svn-r$rev"
20 # Setup an install directory...
23 pkgdir
="/tmp/cups.pkg-$user"
25 echo Building package using temp directory
$pkgdir...
27 mkdir
-p $pkgdir/Package
28 mkdir
-p $pkgdir/Resources
30 # Install resource files into the Resources directory...
31 echo Installing resource files...
32 cp packaging
/LICENSE.rtf
$pkgdir/Resources
/ReadMe.rtf
33 sed -e '1,$s/@CUPS_VERSION@/'$version'/g' \
34 <packaging
/WELCOME.rtf
>$pkgdir/Resources
/Welcome.rtf
35 cp packaging
/installer.tif
$pkgdir/Resources
/background.tif
37 if test -x /bin
/launchctl
; then
38 cat >$pkgdir/Resources
/preflight
<<EOF
40 # Tell launchd to reload cupsd...
41 launchctl stop org.cups.cups-lpd || exit 0
42 launchctl stop org.cups.cupsd || exit 0
43 launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist || exit 0
44 launchctl unload /System/Library/LaunchDaemons/org.cups.cups-lpd.plist || exit 0
47 cat >$pkgdir/Resources
/preflight
<<EOF
49 # Stop any running cupsd processes...
50 killall cupsd || exit 0
54 chmod 755 $pkgdir/Resources
/preflight
56 if test -x /bin
/launchctl
; then
57 cat >$pkgdir/Resources
/postflight
<<EOF
60 # Remove old xinetd config file, we use launchd now...
61 rm -f /etc/xinetd.d/cups-lpd
63 # Tell launchd to reload cupsd...
64 launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
65 launchctl load /System/Library/LaunchDaemons/org.cups.cupsd-lpd.plist || exit 0
66 launchctl start org.cups.cupsd
69 cat >$pkgdir/Resources
/postflight
<<EOF
77 chmod 755 $pkgdir/Resources
/postflight
79 # Tag the current revision in the plist and web interface files...
80 for file in packaging
/cups-desc.plist packaging
/cups-info.plist \
81 doc
/index.html
doc
/ja
/index.html templates
/header.tmpl
; do
82 echo Updating
$file...
83 sed -e '1,$s/@CUPS_VERSION@/'$version'/g' \
84 -e '1,$s/@CUPS_REVISION@//g' \
85 -e '1,$s/@CUPS_RELEASE@/1.3.'$rev'/g' \
89 # Install CUPS into the Package directory...
90 #make INSTALL=$topdir/install-sh BUILDROOT=$pkgdir/Package install
91 make BUILDROOT
=$pkgdir/Package
install
93 # Figure out where PackageMaker is installled...
94 if test -d /Developer
/Applications
/Utilities
/PackageMaker.app
; then
95 PackageMaker
=/Developer
/Applications
/Utilities
/PackageMaker.app
/Contents
/MacOS
/PackageMaker
97 PackageMaker
=/Developer
/Applications
/PackageMaker.app
/Contents
/MacOS
/PackageMaker
100 # Create the package...
101 echo Creating MacOS X package...
103 echo $PackageMaker -build -v -p cups.pkg \
105 -r $pkgdir/Resources \
106 -d packaging
/cups-desc.plist \
107 -i packaging
/cups-info.plist
108 $PackageMaker -build -v -p cups.pkg \
110 -r $pkgdir/Resources \
111 -d packaging
/cups-desc.plist \
112 -i packaging
/cups-info.plist
114 # Create a disk image...
115 echo Creating MacOS X disk image...
116 hdiutil create
-ov -srcfolder cups.pkg cups-
$version.dmg
118 # Cleanup temp files...
119 echo Removing temporary files...