X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bceb17b2e06f5575888a8a88dcf80ff8a4ba137d..851067d0f2ad84681be7e1d701c8aa22d077a47c:/wxPython/distrib/mac/wxPythonOSX/build diff --git a/wxPython/distrib/mac/wxPythonOSX/build b/wxPython/distrib/mac/wxPythonOSX/build index a28104cbbb..dacdd398e0 100755 --- a/wxPython/distrib/mac/wxPythonOSX/build +++ b/wxPython/distrib/mac/wxPythonOSX/build @@ -31,6 +31,7 @@ function usage { echo " skiptar Don't unpack the tarball" echo " inplace Don't use the tarball, build from the CVS tree instead" echo " (The Docs and Demo tarballs are still required for a full build.)" + echo " unicode Make a unicode build" echo " skipconfig Don't run configure" echo " skipbuild Don't build wxWidgets or wxPython" echo " skipinstall Don't do the installation step" @@ -61,6 +62,7 @@ skipinstall=no skipdmg=no skipclean=no inplace=no +unicode=no for flag in $*; do case ${flag} in @@ -71,6 +73,7 @@ for flag in $*; do skipdmg) skipdmg=yes ;; skipclean) skipclean=yes ;; inplace) inplace=yes; skiptar=yes ;; + unicode) unicode=yes ;; *) echo "Unknown flag \"${flag}\"" usage @@ -86,9 +89,15 @@ PYLIB=$PYPREFIX/lib/python$PYVER SITEPACKAGES=$PYLIB/site-packages SHORTVER=`echo $VERSION | cut -c 1,2,3` -# TODO: enable selecting unicode or ansi builds, then set this accordingly... -CHARTYPE=ansi - +if [ $unicode == yes ]; then + CHARTYPE=unicode + UNICODEOPT=--enable-unicode + PYUNICODEOPT=1 +else + CHARTYPE=ansi + UNICODEOPT=--disable-unicode + PYUNICODEOPT=0 +fi if [ -z "$TARBALLDIR" ]; then @@ -118,7 +127,7 @@ fi -PREFIX=/usr/local/lib/wxPython-$VERSION +PREFIX=/usr/local/lib/wxPython-$CHARTYPE-$VERSION BINPREFIX=/usr/local/bin WXROOT=`dirname $PWD` @@ -126,9 +135,15 @@ PROGDIR="`dirname \"$0\"`" TMPDIR=$PWD/_build_dmg BUILDROOT=$TMPDIR/build -INSTALLROOT=$TMPDIR/install -INSTALLDEVEL=$TMPDIR/install-devel + +INSTALLROOT=$TMPDIR/install-root +INSTALLCOMMON=$TMPDIR/install-common +INSTALLAPPS=$TMPDIR/install-apps + DMGDIR=$TMPDIR/dmg +DMGROOT=$DMGDIR/root +DMGAPPS=$DMGDIR/apps + RESOURCEDIR=$PROGDIR/resources DESTDIR=$PWD/dist SRCROOT=$BUILDROOT/wxPython-src-$VERSION @@ -139,11 +154,13 @@ SRCROOT=$BUILDROOT/wxPython-src-$VERSION mkdir -p $BUILDROOT mkdir -p $INSTALLROOT -#mkdir -p $INSTALLDEVEL +mkdir -p $INSTALLCOMMON +mkdir -p $INSTALLAPPS + rm -rf $DMGDIR -mkdir -p $DMGDIR/root/Apps -mkdir -p $DMGDIR/root/Docs -mkdir -p $DMGDIR/root/Samples +mkdir -p $DMGROOT +mkdir -p $DMGAPPS/Docs +mkdir -p $DMGAPPS/Samples pushd $BUILDROOT @@ -191,11 +208,8 @@ if [ $skipconfig != yes ]; then --enable-debug_flag \ --enable-precomp=no \ --enable-optimise \ + $UNICODEOPT -## --with-libjpeg=builtin \ -## --with-libpng=builtin \ -## --with-libtiff=builtin \ -## --with-zlib=builtin \ fi @@ -204,9 +218,16 @@ if [ $skipbuild != yes ]; then # Make wxWidgets and some contribs - # For some reason Rez and DeRez have started locking up if run as root... - chmod a+w lib - su robind -c "make lib/libwx_macd-2.5.3.r" + # For some reason Rez and DeRez have started locking up if run as + # root, figure out why, but in the meantime... + if [ "$UID" = "0" ]; then + chmod a+w lib + if [ "$CHARTYPE" = "ansi" ]; then + su robind -c "make lib/libwx_macd-2.5.3.r" + else + su robind -c "make lib/libwx_macud-2.5.3.r" + fi + fi make make -C contrib/src/gizmos @@ -216,6 +237,7 @@ if [ $skipbuild != yes ]; then # Build wxPython cd $WXDIR/wxPython $PYTHON setup.py \ + UNICODE=$PYUNICODEOPT \ NO_SCRIPTS=1 \ EP_ADD_OPTS=1 \ WX_CONFIG="$WXBLD/wx-config --inplace" \ @@ -242,6 +264,7 @@ if [ $skipinstall != yes ]; then # and wxPython cd $WXDIR/wxPython $PYTHON setup.py \ + UNICODE=$PYUNICODEOPT \ NO_SCRIPTS=1 \ EP_ADD_OPTS=1 \ WX_CONFIG="$INSTALLROOT/$PREFIX/bin/wx-config --prefix=$INSTALLROOT/$PREFIX" \ @@ -263,21 +286,34 @@ if [ $skipinstall != yes ]; then SITEPACKAGES=/Library/Python/$PYVER fi + # move the common files to $INSTALLCOMMON + mkdir -p $INSTALLCOMMON$SITEPACKAGES + mv $INSTALLROOT$SITEPACKAGES/wx.pth $INSTALLCOMMON$SITEPACKAGES + mv $INSTALLROOT$SITEPACKAGES/wxversion.py $INSTALLCOMMON$SITEPACKAGES - # install wxPython's tool scripts - mkdir -p $INSTALLROOT$BINPREFIX + # install wxPython's tool scripts in COMMON too + mkdir -p $INSTALLCOMMON$BINPREFIX cd $WXDIR/wxPython/scripts - python$PYVER CreateMacScripts.py $INSTALLROOT $BINPREFIX + python$PYVER CreateMacScripts.py $INSTALLCOMMON $BINPREFIX + + # Remove the .pyc/.pyo files they just take up space and can be recreated + # during the install. + pushd $WXDIR/wxPython + $PYTHON $PROGDIR/../zappycfiles.py $INSTALLROOT > /dev/null + popd - # Set premissions for files in $INSTALLROOT + # Set premissions for files in $INSTALLROOT and $INSTALLCOMMON if [ "$UID" = "0" ]; then - chown -R root:admin $INSTALLROOT - chmod -R g+w $INSTALLROOT + chown -R root:admin $INSTALLROOT $INSTALLCOMMON + chmod -R g+w $INSTALLROOT $INSTALLCOMMON fi fi -PKGDIR=`cat $INSTALLROOT/Library/Python/$PYVER/wx.pth` +if [ "$KIND" = "panther" ]; then + SITEPACKAGES=/Library/Python/$PYVER +fi +PKGDIR=`cat $INSTALLCOMMON$SITEPACKAGES/wx.pth` popd @@ -286,22 +322,27 @@ popd # Make the Installer packages and disk image if [ $skipdmg != yes ]; then - # Remove the .pyc/.pyo files they just take up space and can be recreated - # during the install. - $PYTHON $PROGDIR/../zappycfiles.py $INSTALLROOT > /dev/null - + #----------------------------------------------- + # The main runtime installer package # Make the welcome message case $KIND in panther) W_MSG="the Panther (OS X 10.3.x) version of" ;; jaguar) W_MSG="the Jaguar (OS X 10.2.x) version of" ;; esac + + cat > $RESOURCEDIR/Welcome.txt < "$DMGDIR/root/README 1st.txt" < $RESOURCEDIR/Welcome.txt < "$DMGROOT/README 1st.txt" < "$DMGAPPS/README 1st.txt" < "$DMGDIR/root/Docs/Build ERROR.txt" < "$DMGAPPS/Docs/Build ERROR.txt" < "$DMGDIR/root/Docs/README 1st.txt" < "$DMGAPPS/Docs/README 1st.txt" < "$DMGDIR/root/Samples/Build ERROR.txt" < "$DMGAPPS/Samples/Build ERROR.txt" <