214c4fbea5
the upcoming 1.3.28, using #if statements on SWIG_VERSION. Adjustments to ownership of SWIG objects, add some destructors and explicitly disown non-window objects when their ownership is transfered to a C++ object. Since all window objects are owned by their parent, or by themselves, always set their thisown attribute to False. Explicitly set thisown to False after any Destroy() methods are called, so SWIG doesn't try to destroy them again. Etc. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
117 lines
2.2 KiB
Bash
117 lines
2.2 KiB
Bash
#!/bin/bash
|
|
# ----------------------------------------------------------------------
|
|
|
|
# To Robin: I tried to avoid making any changes to the existing
|
|
# build scripts, but my env requires me to specify Windows paths...
|
|
# if this breaks something at your end, let me know and we can
|
|
# figure out some solution for both of us.
|
|
if [ "$SWIGDIR" = "" ]; then
|
|
SWIGDIR=$PROJECTS\\SWIG-1.3.27
|
|
fi
|
|
|
|
FLAGS="USE_SWIG=1 SWIG=$SWIGDIR\\swig.exe"
|
|
|
|
# Use non-default python?
|
|
case $1 in
|
|
21 | 2.1) VER=21; shift ;;
|
|
22 | 2.2) VER=22; shift ;;
|
|
23 | 2.3) VER=23; shift ;;
|
|
24 | 2.4) VER=24; shift ;;
|
|
|
|
*) VER=24
|
|
esac
|
|
|
|
PYTHON=$TOOLS/python$VER/python.exe
|
|
|
|
SETUP="$PYTHON -u setup.py"
|
|
$PYTHON -c "import sys;print '\n', sys.version, '\n'"
|
|
|
|
|
|
|
|
# "c" --> clean
|
|
if [ "$1" = "c" ]; then
|
|
shift
|
|
CMD="$SETUP $FLAGS clean $@"
|
|
OTHERCMD="rm wx/*.pyd"
|
|
|
|
# just remove the *.pyd's
|
|
elif [ "$1" = "d" ]; then
|
|
shift
|
|
CMD="rm wx/*.pyd"
|
|
|
|
# touch all the *.i files so swig will regenerate
|
|
elif [ "$1" = "t" ]; then
|
|
shift
|
|
CMD=
|
|
find . -name "*.i" | xargs -l touch
|
|
|
|
# "i" --> install
|
|
elif [ "$1" = "i" ]; then
|
|
shift
|
|
CMD="$SETUP build install"
|
|
|
|
# "r" --> make installer
|
|
elif [ "$1" = "r" ]; then
|
|
shift
|
|
CMD="$PYTHON -u distrib\make_installer.py $@"
|
|
|
|
# "s" --> source dist
|
|
elif [ "$1" = "s" ]; then
|
|
shift
|
|
CMD="$SETUP sdist"
|
|
|
|
# "f" --> FINAL
|
|
elif [ "$1" == "f" ]; then
|
|
shift
|
|
CMD="$SETUP $FLAGS FINAL=1 build_ext --inplace $@"
|
|
|
|
# "h" --> HYBRID
|
|
elif [ "$1" = "h" ]; then
|
|
shift
|
|
CMD="$SETUP $FLAGS HYBRID=1 build_ext --inplace $@"
|
|
|
|
# "a" --> make all installers
|
|
elif [ "$1" = "a" ]; then
|
|
shift
|
|
CMD=
|
|
|
|
# $0 22 d
|
|
# $0 22 h
|
|
# $0 22 r
|
|
# $0 22 d UNICODE=1
|
|
# $0 22 h UNICODE=1
|
|
# $0 22 r UNICODE=1
|
|
|
|
$0 23 d
|
|
$0 23 h
|
|
$0 23 r
|
|
$0 23 d UNICODE=1
|
|
$0 23 h UNICODE=1
|
|
$0 23 r UNICODE=1
|
|
|
|
|
|
# "b" --> both debug and hybrid builds
|
|
elif [ "$1" = "b" ]; then
|
|
shift
|
|
CMD="echo Finished!"
|
|
$0 $VER $@
|
|
$0 $VER h $@
|
|
|
|
# (no command arg) --> normal debug build for development
|
|
else
|
|
CMD="$SETUP $FLAGS HYBRID=0 build_ext --inplace --debug $@"
|
|
fi
|
|
|
|
|
|
|
|
if [ "$CMD" != "" ]; then
|
|
echo $CMD
|
|
$CMD
|
|
fi
|
|
|
|
if [ "$OTHERCMD" != "" ]; then
|
|
echo $OTHERCMD
|
|
$OTHERCMD
|
|
fi
|
|
|