exit 1
fi
+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"
+ echo "-------------------------------------------------------"
+fi
+
#----------------------------------------------------------------------
# Check Parameters
echo ""
echo "optional command flags:"
echo " skiptar Don't unpack the tarball"
- echo " use_cvs Use the CVS workspace instead of a tarfile"
+ 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"
PYTHONW=${PYTHON}w
shift
+skiptar=no
+skipconfig=no
+skipbuild=no
+skipinstall=no
+skipdmg=no
+skipclean=no
+inplace=no
+unicode=no
for flag in $*; do
case ${flag} in
- skiptar) skiptar=1 ;;
- use_cvs) skiptar=1; use_cvs=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 ;;
+ unicode) unicode=yes ;;
*) echo "Unknown flag \"${flag}\""
usage
PYPREFIX=`$PYTHON -c "import sys; print sys.exec_prefix"`
PYLIB=$PYPREFIX/lib/python$PYVER
SITEPACKAGES=$PYLIB/site-packages
+SHORTVER=`echo $VERSION | cut -c 1,2,3`
+
+if [ $unicode == yes ]; then
+ CHARTYPE=unicode
+ UNICODEOPT=--enable-unicode
+ PYUNICODEOPT=1
+else
+ CHARTYPE=ansi
+ UNICODEOPT=--disable-unicode
+ PYUNICODEOPT=0
+fi
+
+
+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, or set
+ # TARBALLDIR before invoking this script...
+ TARBALLDIR=/stuff/Development/wxPython/dist/$VERSION
+fi
+TARBALL=$TARBALLDIR/wxPython-src-$VERSION.tar.gz
+
+if [ ! -e $TARBALLDIR/wxPython-demo-$VERSION.tar.gz ]; then
+ echo "-------------------------------------------------------"
+ echo " WARNING: Demo tarball not found, will skip building "
+ echo " the Demo app bundle and etc."
+ echo " $TARBALLDIR/wxPython-demo-$VERSION.tar.gz"
+ echo "-------------------------------------------------------"
+fi
+
+if [ ! -e $TARBALLDIR/wxPython-docs-$VERSION.tar.gz ]; then
+ echo "-------------------------------------------------------"
+ echo " WARNING: Docs tarball not found, will skip building "
+ echo " the the wxDocsViewer app bundle and etc."
+ echo " $TARBALLDIR/wxPython-docs-$VERSION.tar.gz"
+ echo "-------------------------------------------------------"
+fi
+
-TARBALLDIR=/stuff/Development/wxPython/dist/$VERSION
-TARBALL=$TARBALLDIR/wxPythonSrc-$VERSION.tar.gz
-PREFIX=/usr/lib/wxPython-$VERSION
-BINPREFIX=/usr/bin
+
+PREFIX=/usr/local/lib/wxPython-$CHARTYPE-$VERSION
+BINPREFIX=/usr/local/bin
WXROOT=`dirname $PWD`
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/wxPythonSrc-$VERSION
+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
#----------------------------------------------------------------------
# Unpack the tarball
-if [ -z "$skiptar" ]; then
+if [ $skiptar != yes ]; then
echo Unarchiving tarball...
tar xzf $TARBALL
fi
-if [ "$use_cvs" = 1 ]; then
- # copy the cvs workspace, except for build dirs
-
- mkdir -p wxPythonSrc-$VERSION
-
- echo Finding updated files...
- if [ -e .last_copy ]; then
- FEXPR="-cnewer .last_copy"
- fi
- MEASURE=$WXROOT//
- find $WXROOT $FEXPR -print \
- | grep -v $WXROOT/bld \
- | grep -v wxPython/build \
- | grep -v wxPython/_build \
- | grep -v CVS \
- | grep -v .pyc \
- | cut -b ${#MEASURE}- > filelist
-
- for x in `cat filelist`; do
- if [ -d "$WXROOT/$x" ]; then
- mkdir -p "wxPythonSrc-$VERSION/$x"
- else
- echo $x
- cp -p "$WXROOT/$x" "wxPythonSrc-$VERSION/$x"
- fi
- done
-
- touch .last_copy
+if [ $inplace = no ]; then
+ # make a build dir and cd to it.
+ cd wxPython-src-$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
-
-cd wxPythonSrc-$VERSION
-WXDIR=`pwd`
-mkdir -p $WXDIR/bld
-cd $WXDIR/bld
+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 \
+ --enable-monolithic \
--with-opengl \
- --enable-geometry \
- --enable-optimise \
--enable-sound \
--enable-display \
+ --enable-geometry \
+ --enable-debug_flag \
--enable-precomp=no \
- \
- --with-libjpeg=builtin \
- --with-libpng=builtin \
- --with-libtiff=builtin \
- --with-zlib=builtin \
- \
- --enable-debug_flag
+ --enable-optimise \
+ $UNICODEOPT
+
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 -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
+ # For some reason Rez and DeRez have started locking up if run as root...
+ if [ "$UID" = "0" ]; then
+ chmod a+w lib
+ su robind -c "make lib/libwx_macd-2.5.3.r"
fi
+ make
+ make -C contrib/src/gizmos
+ make -C contrib/src/ogl CXXFLAGS="-DwxUSE_DEPRECATED=0"
+ make -C contrib/src/stc
+
# Build wxPython
cd $WXDIR/wxPython
$PYTHON setup.py \
+ UNICODE=$PYUNICODEOPT \
NO_SCRIPTS=1 \
- WX_CONFIG="$WXDIR/bld/wx-config --prefix=$WXDIR --exec-prefix=$WXDIR/bld" \
+ EP_ADD_OPTS=1 \
+ WX_CONFIG="$WXBLD/wx-config --inplace" \
+ BUILD_BASE=$WXBLD/wxPython \
build
-
-
- # Build wxrc (XRC resource tool)
- cd $WXDIR/bld/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
make -C contrib/src/stc prefix=$INSTALLROOT$PREFIX install
- make -C contrib/src/xrc prefix=$INSTALLROOT$PREFIX install
+ # relink wx-config with a relative link
+ cd $INSTALLROOT$PREFIX/bin
+ rm wx-config
+ ln -s ../lib/wx/config/* wx-config
+
# 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" \
+ BUILD_BASE=$WXBLD/wxPython \
install \
--root=$INSTALLROOT
# /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
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
- # Install wxrc
- cp $WXDIR/bld/contrib/utils/wxrc/wxrc $INSTALLROOT$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
- # install the wxPython headers
- cd $WXDIR/wxPython
- cp -R include $INSTALLROOT$PREFIX
- mkdir -p $INSTALLROOT$PREFIX/include/wx/wxPython/i_files
- cp src/*.i $INSTALLROOT$PREFIX/include/wx/wxPython/i_files
-
+ # Set premissions for files in $INSTALLROOT and $INSTALLCOMMON
+ if [ "$UID" = "0" ]; then
+ chown -R root:admin $INSTALLROOT $INSTALLCOMMON
+ chmod -R g+w $INSTALLROOT $INSTALLCOMMON
+ fi
+fi
- # Set premissions for files in $INSTALLROOT
- chown -R root:admin $INSTALLROOT
- chmod -R g+w $INSTALLROOT
+if [ "$KIND" = "panther" ]; then
+ SITEPACKAGES=/Library/Python/$PYVER
fi
+PKGDIR=`cat $INSTALLCOMMON$SITEPACKAGES/wx.pth`
popd
#----------------------------------------------------------------------
# Make the Installer packages and disk image
-if [ -z "$skipdmg" ]; then
-
- # Remove the .pyc/.pyo files they just take up space and can be recreated
- # during the install.
- $PYTHON $PROGDIR/../zappycfiles.py $INSTALLROOT
+if [ $skipdmg != yes ]; then
+ #-----------------------------------------------
+ # 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 <<EOF
Welcome!
-This program will install wxPython $VERSION for $W_MSG MacPython-OSX $PYVER.
+This Installer package will install the wxPython $CHARTYPE runtime $VERSION for $W_MSG MacPython-OSX $PYVER. This includes:
-You must install onto your current boot disk, even though the installer does not enforce this, otherwise things will not work.
+ * The wxPython packages and modules
+ * The wxWidgets shared libraries and headers
+
+You must install onto your current boot disk, eventhough the installer does not enforce this, otherwise things will not work.
+
+You can install more than one version of the wxPython runtime if you desire. You also need to install one instance of the wxPython-common package, which will determine which of the installed runtimes will be the default.
Build date: `date`
EOF
# Cleanup any old install of the wxPython package
rm -rf \$2$SITEPACKAGES/wxPython
rm -rf \$2$SITEPACKAGES/wx
+rm -rf \$2$SITEPACKAGES/$PKGDIR
exit 0
EOF
chmod +x $RESOURCEDIR/preflight
cat > $RESOURCEDIR/postflight <<EOF
#!/bin/sh -e
# Compile the .py files in the wxPython pacakge
-$PYTHON \$2$PYLIB/compileall.py \$2$SITEPACKAGES/wxPython
-$PYTHON \$2$PYLIB/compileall.py \$2$SITEPACKAGES/wx
-$PYTHON -O \$2$PYLIB/compileall.py \$2$SITEPACKAGES/wxPython
-$PYTHON -O \$2$PYLIB/compileall.py \$2$SITEPACKAGES/wx
-
+$PYTHON \$2$PYLIB/compileall.py \$2$SITEPACKAGES/$PKGDIR
+$PYTHON -O \$2$PYLIB/compileall.py \$2$SITEPACKAGES/$PKGDIR
# and all of the wxPython pacakge should be group writable
-chgrp -R admin \$2$SITEPACKAGES/wxPython
-chmod -R g+w \$2$SITEPACKAGES/wxPython
-chgrp -R admin \$2$SITEPACKAGES/wx
-chmod -R g+w \$2$SITEPACKAGES/wx
+chgrp -R admin \$2$SITEPACKAGES/$PKGDIR
+chmod -R g+w \$2$SITEPACKAGES/$PKGDIR
exit 0
EOF
chmod +x $RESOURCEDIR/postflight
-
+
# Build the main Installer Package...
- rm -rf wxPythonOSX-$KIND.pkg
+ rm -rf wxPython${SHORTVER}-osx-$CHARTYPE-$KIND.pkg
python $PROGDIR/../buildpkg.py \
- --Title=wxPythonOSX-$KIND \
+ --Title=wxPython${SHORTVER}-osx-$CHARTYPE-$KIND \
--Version=$VERSION \
- --Description="wxPython $VERSION for $W_MSG MacPython-OSX $PYVER" \
+ --Description="wxPython $CHARTYPE runtime $VERSION for $W_MSG MacPython-OSX $PYVER" \
--NeedsAuthorization="YES" \
--Relocatable="NO" \
--InstallOnly="YES" \
$INSTALLROOT \
$RESOURCEDIR
- mv wxPythonOSX-$KIND.pkg $DMGDIR/root
+ mv wxPython${SHORTVER}-osx-$CHARTYPE-$KIND.pkg $DMGROOT
+
+ rm $RESOURCEDIR/postflight
+ rm $RESOURCEDIR/preflight
+ rm $RESOURCEDIR/Welcome.txt
+
+
+ #-----------------------------------------------
+ # The common files package
+ # Make the welcome message
+ cat > $RESOURCEDIR/Welcome.txt <<EOF
+Welcome!
+This package contains the common files that are shared between versions of the wxPython runtime. This includes some command line scripts installed to /usr/local/bin as well as a Python .pth file for site-packages that will determine which version of the installed runtimes is the default version.
- # Make a README.txt to go on the disk image
- cat > "$DMGDIR/root/README 1st.txt" <<EOF
+EOF
+
+ # Build the common Installer Package...
+ rm -rf wxPython-common-osx-$KIND.pkg
+ python $PROGDIR/../buildpkg.py \
+ --Title=wxPython-common-osx-$KIND \
+ --Version=$VERSION \
+ --Description="Common files for the wxPython runtime ($CHARTYPE-$VERSION)" \
+ --NeedsAuthorization="YES" \
+ --Relocatable="NO" \
+ --InstallOnly="YES" \
+ $INSTALLCOMMON \
+ $RESOURCEDIR
+
+ mv wxPython-common-osx-$KIND.pkg $DMGROOT
+
+ rm $RESOURCEDIR/Welcome.txt
+
+
+
+ #-----------------------------------------------
+ # Make a README to go on the disk image
+ cat > "$DMGROOT/README 1st.txt" <<EOF
Welcome to wxPython!
-On this disk image you will find the installer for wxPython $VERSION for $W_MSG MacPython-OSX $PYVER. MacPython-OSX is not included.
+This disk image contains the following items:
+
+ wxPython${SHORTVER}-osx-$CHARTYPE-$VERSION-$KIND
+
+ This is the main component of the wxPython runtime. It
+ includes the Python modules and extension modules, as well as
+ the wxWidgets libraries. It is possible to have more than one
+ version of the runtime installed at once if you wish, See
+ http://wkik.wxpython.org/index.cgi/MultiVersionInstalls
+ for details on how to choose which version is installed.
+
- wxPython-$KIND.pkg The installer package. It contains the wxPython
- extension modules, wxMac dynamic libraries and
- headers, and some scripts for the command-line
- tools.
+ wxPython-common-osx-$CHARTYPE-$VERSION-$KIND
+
+ This is the common files for the runtime that are shared
+ between all versions of the runtime. You need to have one of
+ these installed and it will determine which of the runtimes is
+ the default one that is imported with "import wx", so it
+ should match the version and character type of one of the
+ installed runtimes. If you are wanting to have only one
+ wxPython installed then be sure to install both of the
+ packages in this disk image.
+
+ uninstall_wxPython.py
+
+ A simple tool to help you manage your installed versions of
+ wxPython. It will allow you to choose from the currently
+ installed wxPython packages and to select one for
+ uninstallation. It is a text-mode tool so you can either run
+ it from a Terminal command line, or you can open it with
+ PythonLauncher and let it create a Terminal to run it in.
+
+EOF
+
+
+
+ cp $PROGDIR/../uninstall_wxPython.py $DMGROOT
+
+
+ #-----------------------------------------------
+ # Make a disk image to hold these files
+ dmgname=wxPython${SHORTVER}-osx-$CHARTYPE-$VERSION-$KIND-py$PYVER
+ $PROGDIR/../makedmg $DMGROOT $DMGDIR $dmgname
+
+ echo Moving $DMGDIR/$dmgname.dmg to $DESTDIR
+ mv $DMGDIR/$dmgname.dmg $DESTDIR
+
+
+#---------------------------------------------------------------------------
+# Now create app bundles for the demo, docs, and tools and make another
+# disk image to hold it all.
+#---------------------------------------------------------------------------
+
+ cat > "$DMGAPPS/README 1st.txt" <<EOF
+Welcome to wxPython!
-Everything else here is optional and you can drag them out of the disk
-image and drop them whereever you want. You do need to install the above
-package before you can use any of the items below.
+On this disk image you will find Demo, Tools, Docs, and etc. for
+wxPython $VERSION. Everything here is optional and you can drag them
+out of the disk image and drop them wherever you want. You will need
+to have an installed wxPython runtime to be able to use any of them.
- Apps/wxPython Demo An application bundle version of the demo.
- (This has it's own copy of the sources within
- the bundle.)
+ wxPython Demo An application bundle version of the demo.
+ (This has it's own copy of the demo sources
+ within the bundle.)
- Apps/XRCed An application for editing wxPython resource
+ XRCed An application for editing wxPython resource
files (XRC files.)
- Apps/PyCrust An application that provides an interactive
+ PyCrust An application that provides an interactive
Python shell and also namespace inspectors.
- Docs/wxDocs A folder containing the wxWidgets documentation
- bundled in .zip files, and a small wxPython
- application that can be used to view the docs.
- Just run viewer.pyw.
+ Docs/wxDocsViewer An application that allows you to view the
+ wxWidgets documentation.
Docs/licence License files.
- Docs/other A few readmes, change log, etc. The full
- documentation is downloadable separately.
+ Docs/other A few readmes, change log, etc.
- Samples/samples Several small sample applications that
+ Samples/samples Several small sample applications that
demonstrate how to use wxPython.
- Samples/demo A copy of the wxPython demo source code,
+ Samples/demo A copy of the wxPython demo source code,
just open the folder and run demo.pyw.
Happy Hacking!
EOF
-# PyAlaMode An extension of PyCrust that includes source
+# PyAlaMode An extension of PyCrust that includes source
# file editing capabilities.
# wxDocs
- pushd $DMGDIR/root/Docs
- tar xzvf $TARBALLDIR/wxPythonDocs-$VERSION.tar.gz
- mv wxPython-$VERSION/docs wxDocs
- rm -r wxPython-$VERSION
- mv wxDocs/viewdocs.py wxDocs/viewdocs.pyw
+ if [ ! -e $TARBALLDIR/wxPython-docs-$VERSION.tar.gz ]; then
+ cat > "$DMGAPPS/Docs/Build ERROR.txt" <<EOF
+
+The wxPython-docs tarball was not found when building this disk image!
+
+EOF
+
+ else
+ pushd $BUILDROOT
+ tar xzvf $TARBALLDIR/wxPython-docs-$VERSION.tar.gz
+ popd
+
+ # Make an app to launch viewdocs.py
+ $PYTHONW $PROGDIR/../buildapp.py \
+ --builddir=$DMGAPPS/Docs \
+ --name=wxDocsViewer \
+ --mainprogram=$BUILDROOT/wxPython-$VERSION/docs/viewdocs.py \
+ --iconfile=$PROGDIR/Info.icns \
+ build
+
+ cp $BUILDROOT/wxPython-$VERSION/docs/*.zip $DMGAPPS/Docs/wxDocsViewer.app/Contents/Resources
+
+ cat > "$DMGAPPS/Docs/README 1st.txt" <<EOF
+
+The wxDocsViewer application needs to be copied to your Desktop (or
+someplace else you have write access to) before you can run it, so it
+can cache some indexes within its bundle.
+
+EOF
+
+ fi
# license files, docs, etc.
+ pushd $DMGAPPS/Docs
cp -pR $SRCROOT/wxPython/licence .
cp -pR $SRCROOT/wxPython/docs .
rm -rf docs/bin
rm -rf docs/xml-raw
mv docs other
popd
-
- # Copy the demo and samples to the disk image from the tarball
- pushd $DMGDIR/root/Samples
- tar xzvf $TARBALLDIR/wxPythonDemo-$VERSION.tar.gz
- mv wxPython-$VERSION/* .
- rm -rf wxPython-$VERSION
- rm demo/b demo/.setup.sh
- mv demo/demo.py demo/demo.pyw
- popd
-
+
+
+ if [ ! -e $TARBALLDIR/wxPython-demo-$VERSION.tar.gz ]; then
+ cat > "$DMGAPPS/Samples/Build ERROR.txt" <<EOF
+
+The wxPython-demo tarball was not found when building this disk image!
+
+EOF
+ cp "$DMGAPPS/Samples/Build ERROR.txt" $DMGAPPS
+
+ else
+
+ # Copy the demo and samples to the disk image from the tarball
+ pushd $DMGAPPS/Samples
+ tar xzvf $TARBALLDIR/wxPython-demo-$VERSION.tar.gz
+ mv wxPython-$VERSION/* .
+ rm -rf wxPython-$VERSION
+ rm demo/b demo/.setup.sh
+ mv demo/demo.py demo/demo.pyw
+ popd
+
+ # Make an app bundle to run the demo
+ $PYTHONW $PROGDIR/../buildapp.py \
+ --builddir=$DMGAPPS \
+ --name="wxPython Demo" \
+ --mainprogram=$DMGAPPS/Samples/demo/demo.pyw \
+ --iconfile=$PROGDIR/RunDemo.icns \
+ build
+ cp -pR $DMGAPPS/Samples/demo/* "$DMGAPPS/wxPython Demo.app/Contents/Resources"
+ fi
+
# Make an app bundle to launch PyCrust
$PYTHONW $PROGDIR/../buildapp.py \
- --builddir=$DMGDIR/root/Apps \
+ --builddir=$DMGAPPS \
--name=PyCrust \
- --mainprogram=$INSTALLROOT$BINPREFIX/pycrust.py \
+ --mainprogram=$INSTALLCOMMON$BINPREFIX/pycrust.py \
--iconfile=$PROGDIR/PieShell.icns \
build
-# # and PyAlaMode
-# $PYTHONW $PROGDIR/../buildapp.py \
-# --builddir=$DMGDIR/root \
-# --name=PyAlaMode \
-# --mainprogram=$INSTALLROOT$BINPREFIX/pyalamode.py \
-# --iconfile=$PROGDIR/PieShell.icns \
-# build
+# # and PyAlaMode
+# $PYTHONW $PROGDIR/../buildapp.py \
+# --builddir=$DMGAPPS \
+# --name=PyAlaMode \
+# --mainprogram=$INSTALLCOMMON$BINPREFIX/pyalamode.py \
+# --iconfile=$PROGDIR/PieShell.icns \
+# build
# Make an app to launch XRCed
$PYTHONW $PROGDIR/../buildapp.py \
- --builddir=$DMGDIR/root/Apps \
+ --builddir=$DMGAPPS \
--name=XRCed \
- --mainprogram=$INSTALLROOT$BINPREFIX/xrced.py \
+ --mainprogram=$INSTALLCOMMON$BINPREFIX/xrced.py \
--iconfile=$PROGDIR/XRCed.icns \
build
- # Make an app bundle to run the demo
- $PYTHONW $PROGDIR/../buildapp.py \
- --builddir=$DMGDIR/root/Apps \
- --name="wxPython Demo" \
- --mainprogram=$DMGDIR/root/Samples/demo/demo.pyw \
- --iconfile=$PROGDIR/RunDemo.icns \
- build
- cp -pR $DMGDIR/root/Samples/demo/* "$DMGDIR/root/Apps/wxPython Demo.app/Contents/Resources"
-
- # and then finally make a disk image containing the packages and etc.
- $PROGDIR/../makedmg $DMGDIR/root $DMGDIR wxPythonOSX-$VERSION-$KIND-Py$PYVER
- echo Moving $DMGDIR/wxPythonOSX-$VERSION-$KIND-Py$PYVER.dmg to $DESTDIR
- mv $DMGDIR/wxPythonOSX-$VERSION-$KIND-Py$PYVER.dmg $DESTDIR
+ # and then finally make a disk image containing everything
+ dmgname=wxPython${SHORTVER}-osx-docs-demos-$VERSION
+ $PROGDIR/../makedmg $DMGAPPS $DMGDIR $dmgname
+
+ echo Moving $DMGDIR/$dmgname.dmg to $DESTDIR
+ mv $DMGDIR/$dmgname.dmg $DESTDIR
fi
# Cleanup build/install dirs
-if [ -z "$skipclean" ]; then
+if [ $skipclean != yes ]; then
echo "Cleaning up..."
rm -rf $TMPDIR
else