Update directions, copyrights, and clarify licenses of polipo
[tor/rransom.git] / contrib / polipo / package.sh
blobfea13b7ad93093f08f6f2f5fd8eb58ff61dc08b6
1 #!/bin/sh
2 # $Id: package.sh 8992 2006-12-23 03:12:09Z phobos $
3 # Copyright 2004-2005 Nick Mathewson & Andrew Lewman.
4 # Copyright 2005-2008 Andrew Lewman
5 # This is licensed under the Modified BSD License.
7 ###
8 # Helpful info on OS X packaging:
9 # http://developer.apple.com/documentation/DeveloperTools/Conceptual/SoftwareDistribution/index.html
10 # man packagemaker
12 VERSION="1.0.4"
14 ## Determine OSX Version
15 # map version to name
16 if [ -x /usr/bin/sw_vers ]; then
17 # This is poor, yet functional. We don't care about the 3rd number in
18 # the OS version
19 OSVER=`/usr/bin/sw_vers | grep ProductVersion | cut -f2 | cut -d"." -f1,2`
20 case "$OSVER" in
21 "10.5") OS="leopard" ARCH="universal";;
22 "10.4") OS="tiger" ARCH="universal";;
23 "10.3") OS="panther" ARCH="ppc";;
24 "10.2") OS="jaguar" ARCH="ppc";;
25 "10.1") OS="puma" ARCH="ppc";;
26 "10.0") OS="cheetah" ARCH="ppc";;
27 *) OS="unknown";;
28 esac
29 else
30 OS="unknown"
33 # Where will we put our temporary files?
34 BUILD_DIR=/tmp/polipo-osx-$$
35 # Path to PackageMaker app.
36 PACKAGEMAKER=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker
38 umask 022
40 echo I might ask you for your password now, so you can sudo.
42 sudo rm -rf $BUILD_DIR
43 mkdir $BUILD_DIR || exit 1
44 for subdir in polipo_packageroot output; do
45 mkdir $BUILD_DIR/$subdir
46 done
48 ### Make Polipo package.
49 chmod 755 contrib/PolipoPostflight
50 mkdir -p $BUILD_DIR/polipo_packageroot/Library/Polipo/
51 cp polipo $BUILD_DIR/polipo_packageroot/polipo
52 cp config.sample $BUILD_DIR/polipo_packageroot/config
53 cp contrib/PolipoPostflight $BUILD_DIR/polipo_packageroot/postflight
54 cp contrib/addsysuser $BUILD_DIR/polipo_packageroot/addsysuser
55 cp contrib/uninstall_polipo_bundle.sh $BUILD_DIR/polipo_packageroot/uninstall_polipo_bundle.sh
56 cp localindex.html $BUILD_DIR/polipo_packageroot/index.html
57 cat <<EOF > $BUILD_DIR/polipo_packageroot/Welcome.txt
58 Polipo: a caching web proxy
60 Polipo is a small and fast caching web proxy (a web cache, an HTTP
61 proxy, a proxy server).
62 EOF
64 ### Assemble documentation
66 groff polipo.man -T ps -m man | pstopdf -i -o $BUILD_DIR/polipo_packageroot/polipo.pdf
67 texi2html polipo.texi && cp polipo.html $BUILD_DIR/polipo_packageroot/polipo.html
69 find $BUILD_DIR/polipo_packageroot -print0 |sudo xargs -0 chown root:wheel
71 $PACKAGEMAKER -build \
72 -p $BUILD_DIR/output/Polipo.pkg \
73 -f $BUILD_DIR/polipo_packageroot \
74 -i contrib/PolipoInfo.plist \
75 -d contrib/PolipoDesc.plist
77 ### Package it all into a DMG
79 find $BUILD_DIR/output -print0 | sudo xargs -0 chown root:wheel
81 mv $BUILD_DIR/output "$BUILD_DIR/Polipo-$VERSION-$OS-$ARCH"
82 rm -f "Polipo-$VERSION-$OS-$ARCH-Bundle.dmg"
83 USER="`whoami`"
84 sudo hdiutil create -format UDZO -srcfolder "$BUILD_DIR/Polipo-$VERSION-$OS-$ARCH" "Polipo-$VERSION-$OS-$ARCH.dmg"
85 sudo chown "$USER" "Polipo-$VERSION-$OS-$ARCH.dmg"
87 #sudo rm -rf $BUILD_DIR