X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/132ae51eaf9a80456fec8f9672b6066492f03539..9e9300c4576acb09a9fca823330fb48529c629d0:/wxPython/distrib/mac/wxPythonOSX/build diff --git a/wxPython/distrib/mac/wxPythonOSX/build b/wxPython/distrib/mac/wxPythonOSX/build index 7af4412db9..e46fbeafde 100755 --- a/wxPython/distrib/mac/wxPythonOSX/build +++ b/wxPython/distrib/mac/wxPythonOSX/build @@ -10,7 +10,7 @@ if [ ! -d wxPython -o ! -e ${spectemplate} ]; then exit 1 fi -if [ ! "$UID" = "0" ]; then +if [ "$UID" != "0" ]; then echo "-------------------------------------------------------" echo " WARNING: will be unable to change ownership of files" echo " unless this script is run as root or via sudo" @@ -29,6 +29,8 @@ function usage { echo "" echo "optional command flags:" 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 " skipconfig Don't run configure" echo " skipbuild Don't build wxWidgets or wxPython" echo " skipinstall Don't do the installation step" @@ -52,15 +54,23 @@ esac PYTHONW=${PYTHON}w shift +skiptar=no +skipconfig=no +skipbuild=no +skipinstall=no +skipdmg=no +skipclean=no +inplace=no for flag in $*; do case ${flag} in - skiptar) skiptar=1 ;; - skipconfig) skipconfig=1; skiptar=1 ;; - skipbuild) skipbuild=1; skipconfig=1; skiptar=1 ;; - skipinstall) skipinstall=1 ;; - skipdmg) skipdmg=1 ;; - skipclean) skipclean=1 ;; + skiptar) skiptar=yes ;; + skipconfig) skipconfig=yes; skiptar=yes ;; + skipbuild) skipbuild=yes; skipconfig=yes; skiptar=yes ;; + skipinstall) skipinstall=yes ;; + skipdmg) skipdmg=yes ;; + skipclean) skipclean=yes ;; + inplace) inplace=yes; skiptar=yes ;; *) echo "Unknown flag \"${flag}\"" usage @@ -75,15 +85,35 @@ PYPREFIX=`$PYTHON -c "import sys; print sys.exec_prefix"` PYLIB=$PYPREFIX/lib/python$PYVER SITEPACKAGES=$PYLIB/site-packages + + if [ -z "$TARBALLDIR" ]; then - - # this is a spot on my fileserver where the tarballs go, adjust - # as needed for where you put the wxPython tarball... + # this is a spot on my fileserver where the tarballs go, adjust + # as needed for where you put the wxPython tarball, or set + # TARBALLDIR before invoking this script... TARBALLDIR=/stuff/Development/wxPython/dist/$VERSION fi - TARBALL=$TARBALLDIR/wxPythonSrc-$VERSION.tar.gz +if [ ! -e $TARBALLDIR/wxPythonDemo-$VERSION.tar.gz ]; then + echo "-------------------------------------------------------" + echo " WARNING: Demo tarball not found, will skip building " + echo " the Demo app bundle and etc." + echo " $TARBALLDIR/wxPythonDemo-$VERSION.tar.gz" + echo "-------------------------------------------------------" +fi + +if [ ! -e $TARBALLDIR/wxPythonDocs-$VERSION.tar.gz ]; then + echo "-------------------------------------------------------" + echo " WARNING: Docs tarball not found, will skip building " + echo " the the wxDocsViewer app bundle and etc." + echo " $TARBALLDIR/wxPythonDocs-$VERSION.tar.gz" + echo "-------------------------------------------------------" +fi + + + + PREFIX=/usr/local/lib/wxPython-$VERSION BINPREFIX=/usr/local/bin @@ -118,22 +148,35 @@ pushd $BUILDROOT #---------------------------------------------------------------------- # Unpack the tarball -if [ -z "$skiptar" ]; then +if [ $skiptar != yes ]; then echo Unarchiving tarball... tar xzf $TARBALL fi -cd wxPythonSrc-$VERSION -WXDIR=`pwd` -mkdir -p $WXDIR/bld -cd $WXDIR/bld +if [ $inplace = no ]; then + # make a build dir and cd to it. + cd wxPythonSrc-$VERSION + WXDIR=`pwd` + mkdir -p $WXDIR/bld + cd $WXDIR/bld + WXBLD=$WXDIR/bld +else + # If building "inplace" then our build dir will be BUILDROOT, + # adjust the variables to find things that way. + WXDIR=$WXROOT + SRCROOT=$WXROOT + WXBLD=$BUILDROOT +fi + +echo "Using source tree: $WXDIR" +echo "Using build dir: $WXBLD" #---------------------------------------------------------------------- # Configure wxWidgets -if [ -z "$skipconfig" ]; then - ../configure \ +if [ $skipconfig != yes ]; then + $WXDIR/configure \ --prefix=$PREFIX \ --with-mac \ --disable-monolithic \ @@ -153,42 +196,36 @@ if [ -z "$skipconfig" ]; then fi # Build wxWidgets and wxPython -if [ -z "$skipbuild" ]; then +if [ $skipbuild != yes ]; then # Make wxWidgets and some contribs - make - make -C contrib/src/gizmos + make + make -C contrib/src/gizmos make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0" make -C contrib/src/stc make -C contrib/src/xrc -# if [ ! -e $WXDIR/include/wx/gizmos ]; then -# # Make some links so the wxPython build can find all the headers it needs -# pushd $WXDIR/include/wx -# ln -s ../../contrib/include/wx/* . -# popd -# fi - # Build wxPython cd $WXDIR/wxPython $PYTHON setup.py \ NO_SCRIPTS=1 \ - WX_CONFIG="$WXDIR/bld/wx-config --inplace" \ + WX_CONFIG="$WXBLD/wx-config --inplace" \ + BUILD_BASE=$WXBLD/wxPython \ build - # Build wxrc (XRC resource tool) - cd $WXDIR/bld/contrib/utils/wxrc - make + # Build wxrc (XRC resource tool) + cd $WXBLD/contrib/utils/wxrc + make strip wxrc fi #---------------------------------------------------------------------- -if [ -z "$skipinstall" ]; then +if [ $skipinstall != yes ]; then # Install wxWidgets - cd $WXDIR/bld + cd $WXBLD make prefix=$INSTALLROOT$PREFIX install make -C contrib/src/gizmos prefix=$INSTALLROOT$PREFIX install make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0" prefix=$INSTALLROOT/$PREFIX install @@ -201,6 +238,7 @@ if [ -z "$skipinstall" ]; then $PYTHON setup.py \ NO_SCRIPTS=1 \ WX_CONFIG="$INSTALLROOT/$PREFIX/bin/wx-config --prefix=$INSTALLROOT/$PREFIX" \ + BUILD_BASE=$WXBLD/wxPython \ install \ --root=$INSTALLROOT @@ -209,6 +247,9 @@ if [ -z "$skipinstall" ]; then # /Library/Python/$PYVER so we need to move the files so they are # installed in the physical location, not the virtual one. if [ "$KIND" = "panther" ]; then + if [ -e $INSTALLROOT/Library/Python/$PYVER ]; then + rm -r $INSTALLROOT/Library/Python/$PYVER + fi mkdir -p $INSTALLROOT/Library/Python/$PYVER mv $INSTALLROOT/$SITEPACKAGES/* $INSTALLROOT/Library/Python/$PYVER rm -r $INSTALLROOT/System @@ -223,10 +264,10 @@ if [ -z "$skipinstall" ]; then # Install wxrc - cp $WXDIR/bld/contrib/utils/wxrc/wxrc $INSTALLROOT$BINPREFIX + cp $WXBLD/contrib/utils/wxrc/wxrc $INSTALLROOT$BINPREFIX - # Set premissions for files in $INSTALLROOT + # Set premissions for files in $INSTALLROOT if [ "$UID" = "0" ]; then chown -R root:admin $INSTALLROOT chmod -R g+w $INSTALLROOT @@ -238,11 +279,11 @@ popd #---------------------------------------------------------------------- # Make the Installer packages and disk image -if [ -z "$skipdmg" ]; then +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 + $PYTHON $PROGDIR/../zappycfiles.py $INSTALLROOT > /dev/null # Make the welcome message @@ -312,15 +353,15 @@ EOF cat > "$DMGDIR/root/README 1st.txt" < "$DMGDIR/root/Docs/Build ERROR.txt" < "$DMGDIR/root/Docs/README 1st.txt" < "$DMGDIR/root/Docs/README 1st.txt" < "$DMGDIR/root/Samples/Build ERROR.txt" <