1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
|
#!/bin/sh
while getopts "G:O:I:bgh?" arg
do
case $arg in
G) GROUP="-g $OPTARG" ;;
O) OWNER="-o $OPTARG" ;;
I) INSTALL_DIR=$OPTARG ;;
b) ENABLE_BZIP=-b ;;
g) ENABLE_GZIP=-g ;;
h | \?) usage; exit 1 ;;
esac
done
shift `expr $OPTIND - 1`
if [ "$1" = "" -o "$2" = "" -o "$3" = "" -o "$4" = "" ]
then
echo "Usage: $0 target-directory version arch os"
exit 1
fi
if [ ! -d "$1" ]
then
echo "$1 isn't a directory"
exit 2
fi
DESTDIR=${INSTALL_DIR:-release-$$}
TARGET="`echo $1 | sed 's:/*$::'`"
VERSION=$2
ARCH=$3
OS=$4
case $ARCH in
x86*) FASL="sse2f" ;;
sparc*) FASL=sparcf ;;
alpha*) FASL=axpf ;;
ppc*) FASL=ppcf ;;
mips*) FASL=sgif ;;
*)
echo "Unknown FASL type for architecture $ARCH"
exit 2
;;
esac
# Frob PATH to use /usr/ucb/install for Solaris
if [ `uname -s` = "SunOS" ]
then
PATH=/usr/ucb:$PATH
fi
if [ -z "$INSTALL_DIR" ]; then
echo Cleaning $DESTDIR
[ -d $DESTDIR ] && rm -rf $DESTDIR
fi
echo Installing extra components
install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib
install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/subsystems
install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/contrib
for ext in $FASL
do
install ${GROUP} ${OWNER} -m 0644 $TARGET/clx/clx-library.$ext \
$DESTDIR/lib/cmucl/lib/subsystems/
install ${GROUP} ${OWNER} -m 0644 $TARGET/hemlock/hemlock-library.$ext \
$DESTDIR/lib/cmucl/lib/subsystems/
install ${GROUP} ${OWNER} -m 0644 $TARGET/interface/clm-library.$ext \
$DESTDIR/lib/cmucl/lib/subsystems/
done
# Not sure we really need these, but we'll install them in the
# ext-formats directory. (Should they go somewhere else?)
#install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/ext-formats
#for f in src/i18n/NameAliases.txt src/i18n/UnicodeData.txt
#do
# echo $f
# install ${GROUP} ${OWNER} -m 0644 $f $DESTDIR/lib/cmucl/lib/ext-formats/
#done
# install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/fonts/
# install ${GROUP} ${OWNER} -m 0644 misc/8x13u.snf misc/fonts.dir \
# $DESTDIR/lib/cmucl/lib/fonts/
install ${GROUP} ${OWNER} -m 0644 src/hemlock/XKeysymDB \
src/hemlock/hemlock11.cursor src/hemlock/hemlock11.mask \
$TARGET/hemlock/spell-dictionary.bin \
$DESTDIR/lib/cmucl/lib/
install ${GROUP} ${OWNER} -m 0755 src/hemlock/mh-scan $DESTDIR/lib/cmucl/lib/
install ${GROUP} ${OWNER} -m 0755 $TARGET/motif/server/motifd \
$DESTDIR/lib/cmucl/lib/
# Install the contrib stuff. Create the directories and then copy the files.
for d in `(cd src; find contrib -type d -print | egrep -v "CVS|asdf|defsystem")`
do
install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/$d
done
for f in `(cd src/contrib; find . -type f -print | egrep -v "CVS|asdf|defsystem|unix")`
do
FILE=`basename $f`
DIR=`dirname $f`
install ${GROUP} ${OWNER} -m 0644 src/contrib/$f $DESTDIR/lib/cmucl/lib/contrib/$DIR
done
# Install all the locale data.
for d in `(cd src/i18n/; find locale -type d -print | egrep -v CVS)`
do
install -d ${GROUP} ${OWNER} -m 0755 $DESTDIR/lib/cmucl/lib/$d
done
# Install mo files.
for f in `(cd $TARGET/i18n; find locale -type f -print | egrep -v 'CVS|~.*~|.*~')`
do
FILE=`basename $f`
DIR=`dirname $f`
install ${GROUP} ${OWNER} -m 0644 $TARGET/i18n/$f $DESTDIR/lib/cmucl/lib/$DIR
done
# Install po files. (Do we really need to distribute the po files?)
#for f in `(cd $TARGET/i18n; find locale -type f -print | egrep -v 'CVS|~.*~|.*~')`
#do
# FILE=`basename $f`
# DIR=`dirname $f`
# install ${GROUP} ${OWNER} -m 0644 $TARGET/i18n/$f $DESTDIR/lib/cmucl/lib/$DIR
#done
if [ -z "$INSTALL_DIR" ]; then
sync ; sleep 1 ; sync ; sleep 1 ; sync
echo Tarring extra components
if [ -n "$ENABLE_GZIP" ]; then
echo " Compressing with gzip"
( cd $DESTDIR >/dev/null ; tar cf - lib ) | \
gzip -c > cmucl-$VERSION-$ARCH-$OS.extra.tar.gz
fi
if [ -n "$ENABLE_BZIP" ]; then
echo " Compressing with bzip"
( cd $DESTDIR >/dev/null ; tar cf - lib ) | \
bzip2 > cmucl-$VERSION-$ARCH-$OS.extra.tar.bz2
fi
echo Cleaning $DESTDIR
[ -d $DESTDIR ] && rm -rf $DESTDIR
echo Done
fi
|