]> git.saurik.com Git - wxWidgets.git/blob - wxPython/distrib/build_packages.sh
Added some modules from Riaan Booysen:
[wxWidgets.git] / wxPython / distrib / build_packages.sh
1 #!/bin/bash
2
3 unicode=no
4 debug=no
5 reswig=no
6 all=no
7
8 if [ "$1" = "all" ]; then
9 all=yes
10 else
11 PY_VERSION=$1
12 fi
13
14 shift
15
16 for flag in $*; do
17 case ${flag} in
18 debug) debug=yes ;;
19 unicode) unicode=yes ;;
20 reswig) reswig=yes ;;
21 esac
22 done
23
24 if [ "$WXWIN" = "" ]; then
25 export WXWIN=`pwd`/../..
26 fi
27
28 if [ $all = yes ]; then
29 $WXWIN/wxPython/distrib/build_packages.sh 23
30 $WXWIN/wxPython/distrib/build_packages.sh 23 unicode
31 $WXWIN/wxPython/distrib/build_packages.sh 24
32 $WXWIN/wxPython/distrib/build_packages.sh 24 unicode
33 fi
34
35 echo "wxWidgets directory is: $WXWIN"
36
37 if [ "$OSTYPE" = "cygwin" ]; then
38 # do setup of build environment vars
39 if [ "$TOOLS" = "" ]; then
40 export TOOLS=`cygpath C:\\`
41 fi
42
43 if [ "$SWIGDIR" = "" ]; then
44 export SWIGDIR=$TOOLS/SWIG-1.3.24
45 fi
46
47 DEBUG_FLAG=
48 UNICODE_FLAG=
49 if [ $debug = yes ]; then
50 DEBUG_FLAG=--debug
51 fi
52 if [ $unicode = yes ]; then
53 UNICODE_FLAG="UNICODE=1"
54 fi
55
56 # copy wxPython build scripts
57 cp $WXWIN/wxPython/distrib/msw/.m* $WXWIN/build/msw
58
59 # setup wxPython defines
60 cp $WXWIN/include/wx/msw/setup0.h $WXWIN/include/wx/msw/setup.h
61 $TOOLS/Python$PY_VERSION/python `cygpath -d $WXWIN/wxPython/distrib/create_setup.h.py` $UNICODE_FLAG
62
63 export PATH=${PATH}:${WXWIN}/lib/vc_dll:${TOOLS}/Python${PY_VERSION}
64
65 cd $WXWIN/build/msw
66 # remove old build files
67 rm -rf vc_msw*
68 UNI=
69 if [ $unicode = yes ]; then
70 UNI=-uni
71 fi
72 ./.make hybrid$UNI
73 # make tools for docs creation, etc.
74 ./.make_tools
75
76 cd $WXWIN/wxPython
77
78 # update the language files
79 $TOOLS/Python$PY_VERSION/python `cygpath -d $WXWIN/wxPython/distrib/makemo.py`
80 rm -rf build build.unicode
81 rm -rf wx/*.pyd
82
83 # re-generate SWIG files
84 if [ $reswig = yes ]; then
85 $WXWIN/wxPython/b $PY_VERSION t
86 fi
87
88 # build the hybrid extension
89 # NOTE: Win Python needs Windows-style pathnames, so we
90 # need to convert
91 export WXWIN=`cygpath -w $WXWIN`
92 export SWIGDIR=`cygpath -w $SWIGDIR`
93
94 $WXWIN/wxPython/b $PY_VERSION h $DEBUG_FLAG $UNICODE_FLAG
95
96 # make the dev package
97 $WXWIN/wxPython/distrib/makedev
98 $WXWIN/wxPython/distrib/makedocs
99 $WXWIN/wxPython/distrib/makedemo
100
101 $TOOLS/Python$PY_VERSION/python `cygpath -d $WXWIN/wxPython/distrib/make_installer_inno4.py` $UNICODE_FLAG
102 elif [ "$OSTYPE" = "darwin" ]; then
103 OSX_VERSION=`sw_vers -productVersion`
104 echo "OS X Version: ${OSX_VERSION:0:4}"
105 cd $WXWIN/wxPython
106
107 if [ ! -d dist ]; then
108 mkdir dist
109 fi
110 # re-generate SWIG files
111 RESWIG=
112 if [ $reswig = yes ]; then
113 RESWIG=reswig
114 fi
115
116 PY_DOT_VER=2.3
117 if [ "$PY_VERSION" = "24" ]; then
118 PY_DOT_VER=2.4
119 fi
120
121 UNICODE_OPT=
122 if [ $unicode = yes ]; then
123 UNICODE_OPT=unicode
124 fi
125
126 DEBUG_OPT=
127 if [ $debug = yes ]; then
128 DEBUG_OPT=debug
129 fi
130 # On Tiger, build Universal.
131 UNIV_OPT=
132 if [ ${OSX_VERSION:0:4} = "10.4" ]; then
133 UNIV_OPT="universal"
134 fi
135
136 #sudo $WXWIN/wxPython/distrib/makedocs
137 $WXWIN/wxPython/distrib/makedemo
138 export TARBALLDIR=$WXWIN/wxPython/dist
139 echo "distrib/mac/wxPythonOSX/build $PY_DOT_VER inplace $UNICODE_OPT $RESWIG"
140
141 distrib/mac/wxPythonOSX/build $PY_DOT_VER inplace $UNICODE_OPT $DEBUG_OPT $RESWIG $UNIV_OPT
142 else
143 echo "OSTYPE $OSTYPE not yet supported by this build script."
144 fi
145
146 # return to original dir
147 cd $WXWIN/wxPython/distrib
148