view wine-py2exe @ 469:e0b11d684ee8

Reference gameboard.level rather than game.level where appropriate. Saving and restoring games appears to largely work now (even if the level of the restored game is different to the current one).
author Simon Cross <hodgestar@gmail.com>
date Tue, 24 Nov 2009 22:19:53 +0000
parents 0d42622dbe12
children
line wrap: on
line source

#!/bin/sh
# Copyright 2009 Simon Cross <hodgestar@gmail.com>
# GPL - see COPYING for details
#
# Usage: wine-py2exe

OFA_VERSION=`PYTHONPATH=. python -c "from gamelib import version; print version.VERSION_STR"`
BUILD_FOLDER="foxassault-${OFA_VERSION}"
ZIP_NAME="${BUILD_FOLDER}.zip"
PY2EXE_LOG="py2exe.log"

WINE_PYTHON=`winepath "C:/Python25"`
WINE_SYS32=`winepath "C:/windows/system32"`

#
# Run py2exe build under wine
#

echo "=== Running wine python setup.py ==="
echo ""
echo "  Fox Assault version: ${OFA_VERSION}"
echo "  Writing log to ${PY2EXE_LOG}."
echo "  ---"
echo "  Please make sure you have patched your py2exe run.exe"
echo "  and run_w.exe with PETools (they need to have their"
echo "  executable size correctly set)."
echo ""

rm -rf "dist/${BUILD_FOLDER}"
mkdir -p "dist/${BUILD_FOLDER}"
rm -rf "dist/${ZIP_NAME}"

wine python setup.py py2exe >${PY2EXE_LOG} 2>&1

#
# Copy dependencies py2exe missed
#

echo "=== Copying dependencies that py2exe missed ==="
echo ""

DEST="dist/${BUILD_FOLDER}"

cp -v "${WINE_SYS32}/python25.dll" "${DEST}"
cp -v "${WINE_SYS32}/msvcr71.dll" "${DEST}"

echo "'${WINE_PYTHON}/share/pgu/themes/default' -> '${DEST}/share/pgu/themes/'"
mkdir -p "${DEST}/share/pgu/themes"
cp -R "${WINE_PYTHON}/share/pgu/themes/default" "${DEST}/share/pgu/themes/"

echo "'data' -> '${DEST}/data'"
svn export -q "data" "${DEST}/data"
find "${DEST}/data" -name '*.svg' -delete

echo "'${WINE_PYTHON}/Lib/site-packages/pygame' -> '${DEST}'"
rm -rf "${DEST}/pygame"
cp -R "${WINE_PYTHON}/Lib/site-packages/pygame" "${DEST}"
rm -rf "${DEST}/pygame/examples" "${DEST}/pygame/tests" "${DEST}/pygame/docs"

echo ""

#
# create zip file
#

echo "=== Creating zip of patched py2exe dist folder ==="
echo ""
echo "  Zip file: dist/${ZIP_NAME}"
echo "  Build folder: dist/${BUILD_FOLDER}"
echo ""

cd dist
rm -f "$ZIP_NAME"
zip -r -q "$ZIP_NAME" "$BUILD_FOLDER"
cd ..

echo "=== Done ==="
echo ""
echo -n "  "; du -sh dist/${ZIP_NAME}
echo -n "  "; du -sh dist/${BUILD_FOLDER}
echo ""