68 lines
2.1 KiB
Bash
Executable File
68 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
#----------------------------------------------------------------------
|
|
# Create the unix tools and compile the .py files after Python has been
|
|
# installed.
|
|
#----------------------------------------------------------------------
|
|
|
|
PYVER=2.3
|
|
|
|
PKG=$1
|
|
DEST=$2
|
|
|
|
|
|
# if destination is / then use usr/local/bin, otherwise just bin
|
|
if [ "$DEST" = "/" ]; then
|
|
TOOLDIR=/usr/local/bin
|
|
DEST=
|
|
else
|
|
TOOLDIR=$DEST/bin
|
|
fi
|
|
|
|
# Make sure the dir exists
|
|
mkdir -p $TOOLDIR
|
|
|
|
# Make some links to the python executable
|
|
if [ -e $TOOLDIR/python$PYVER ]; then
|
|
rm $TOOLDIR/python$PYVER
|
|
fi
|
|
ln -fs $DEST/Library/Frameworks/Python.framework/Versions/$PYVER/bin/python $TOOLDIR/python$PYVER
|
|
|
|
if [ -e $TOOLDIR/python ]; then
|
|
rm $TOOLDIR/python
|
|
fi
|
|
ln -fs python$PYVER $TOOLDIR/python
|
|
|
|
|
|
# make the pythonw script
|
|
cat > $TOOLDIR/pythonw <<EOF
|
|
#!/bin/sh
|
|
exec "$DEST/Library/Frameworks/Python.framework/Versions/$PYVER/Resources/Python.app/Contents/MacOS/python" "\$@"
|
|
EOF
|
|
chmod +x $TOOLDIR/pythonw
|
|
|
|
|
|
# Compile the .py files in the Python library to .pyc's and then .pyo's
|
|
$TOOLDIR/python -Wi -tt \
|
|
$DEST/Library/Frameworks/Python.framework/Versions/$PYVER/lib/python$PYVER/compileall.py \
|
|
-x badsyntax -x site-packages $DEST/Library/Frameworks/Python.framework/Versions/$PYVER/lib/python$PYVER
|
|
|
|
$TOOLDIR/python -Wi -tt -O \
|
|
$DEST/Library/Frameworks/Python.framework/Versions/$PYVER/lib/python$PYVER/compileall.py \
|
|
-x badsyntax -x site-packages $DEST/Library/Frameworks/Python.framework/Versions/$PYVER/lib/python$PYVER
|
|
|
|
|
|
# Make the site-packages and other dirs writable by the admin.
|
|
for d in $DEST/Library/Frameworks/Python.framework/Versions/$PYVER/lib/python$PYVER/site-packages \
|
|
$DEST/Library/Frameworks/Python.framework/Versions/$PYVER/bin \
|
|
$DEST/Applications/MacPython-$PYVER; do
|
|
chgrp -R admin $d
|
|
chmod -R g+w $d
|
|
done
|
|
|
|
|
|
# The link in the app bundles needs updated.
|
|
for app in BuildApplet IDLE PackageManager PythonIDE; do
|
|
ln -s $DEST/Library/Frameworks/Python.framework/Versions/$PYVER/Resources/Python.app/Contents/MacOS/python \
|
|
$DEST/Applications/MacPython-$PYVER/$app.app/Contents/MacOS
|
|
done
|