-#! /bin/sh
+#!/bin/sh
# Zip up an external, generic + Windows distribution of wxWindows 2
-src=`cygpath -u $WXWIN`
-dest=$src/deliver
-wise=0
-wiseonly=0
+SRC=`cygpath -u $WXWIN`
+DEST=$SRC/deliver
+WISE=0
+WISEONLY=0
+# If your zip accepts Cygwin-style paths, then
+# use cygpath, else substitute echo
+CYGPATHPROG=cygpath
+#CYGPATHPROG=echo
# Set this to the required version
-version=2.3.0
+VERSION=2.3.0
dowise()
{
- # Make dialoged-win32.zip and tex2rtf-win32.zip
-
- cd $src/bin
-
- zip $dest/dialoged-win32.zip dialoged.*
- zip $dest/tex2rtf-win32.zip tex2rtf.*
-
- cd $dest
+ cd $DEST
# Unzip the Windows files into 'wx'
- mkdir $dest/wx
+ mkdir $DEST/wx
# After this change of directory, we're in the
# temporary 'wx' directory and not acting on
# the source wxWindows directory.
- cd $dest/wx
- unzip -o ../wxWindows-$version-msw.zip
- unzip -o ../wxWindows-$version-gen.zip
- unzip -o ../wxWindows-$version-vc.zip
- unzip -o ../wxWindows-$version-bc.zip
- unzip -o ../wxWindows-$version-HTMLHelp.zip
- unzip -o ../extradoc.zip
+ cd $DEST/wx
+ unzip -o `$CYGPATHPROG -w ../wxWindows-$VERSION-msw.zip`
+ unzip -o `$CYGPATHPROG -w ../wxWindows-$VERSION-gen.zip`
+ unzip -o `$CYGPATHPROG -w ../wxWindows-$VERSION-vc.zip`
+ unzip -o `$CYGPATHPROG -w ../wxWindows-$VERSION-bc.zip`
+ unzip -o `$CYGPATHPROG -w ../wxWindows-$VERSION-HTMLHelp.zip`
+ unzip -o `$CYGPATHPROG -w ../extradoc.zip`
# Need Word file, for Remstar DB classes
- unzip -o ../wxWindows-$version-Word.zip
- unzip -o ../ogl3.zip
- unzip -o ../jpeg.zip
- unzip -o ../tiff.zip
- unzip -o ../tex2rtf2.zip
+ unzip -o `$CYGPATHPROG -w ../wxWindows-$VERSION-Word.zip`
+ unzip -o `$CYGPATHPROG -w ../ogl3.zip`
+ unzip -o `$CYGPATHPROG -w ../jpeg.zip`
+ unzip -o `$CYGPATHPROG -w ../tiff.zip`
+ unzip -o `$CYGPATHPROG -w ../tex2rtf2.zip`
# Now delete a few files that are unnecessary
# attrib -R *
rm -f contrib/docs/htmlhelp/mmedia.*
rm -f contrib/docs/htmlhelp/stc.*
rm -f contrib/docs/pdf/*.*
- rmdir /S contrib/docs/latex/ogl
- rm -f src/mingegcs.bat
+ rm -f -r contrib/docs/latex/ogl
+ rm -f SRC/mingegcs.bat
rm -f distrib
# Now copy some binary files to 'bin'
mkdir bin
- cp $src/bin/dialoged.exe bin
- cp $src/bin/tex2rtf.exe bin
- cp $src/bin/dbgview.* bin
- cp $src/bin/life.exe bin
- cp $src/docs/winhelp/dialoged.hlp $src/docs/winhelp/dialoged.cnt bin
- cp $src/docs/winhelp/tex2rtf.hlp $src/docs/winhelp/tex2rtf.cnt bin
+ cp $SRC/bin/dialoged.exe bin
+ cp $SRC/bin/tex2rtf.exe bin
+ cp $SRC/bin/dbgview.* bin
+ cp $SRC/bin/life.exe bin
+ cp $SRC/docs/winhelp/dialoged.hlp $SRC/docs/winhelp/dialoged.cnt bin
+ cp $SRC/docs/winhelp/tex2rtf.hlp $SRC/docs/winhelp/tex2rtf.cnt bin
# Make wxMSW-xxx.zip
- zip -r ../wxMSW-$version.zip *
+ zip -r `$CYGPATHPROG -w ../wxMSW-$VERSION.zip` *
# Time to regenerate the WISE install script, wxwin2.wse.
# NB: if you've changed wxwin2.wse using WISE, call splitwise.exe
# from within distrib/msw, to split off wisetop.txt and wisebott.txt.
echo Calling 'makewise' to generate wxwin2.wse...
- # TODO!!!!
- call $WXWIN/distrib/msw/makewise.bat
+ sh $WXWIN/distrib/msw/makewise.sh
- rm -f $dest/setup.*
+ rm -f $DEST/setup.*
# Now invoke WISE install on the new wxwin2.wse
echo Invoking WISE...
- /c/progra~1/wise/wise32.exe /C $WXWIN\distrib\msw\wxwin2.wse
+ /c/progra~1/wise/wise32.exe /C $WXWIN\\distrib\\msw\\wxwin2.wse
echo Press return to continue with the wxWindows distribution...
read dummy
- cd $dest
+ cd $DEST
# tidy up capitalisation of filenames
mv setup.EXE s
mv setup.w08 s
mv s setup.w08
+ mv setup.w09 s
+ mv s setup.w09
+
# Put all the setup files into a single zip archive.
- zip wxMSW-$version-setup.zip readme.txt setup.*
+ zip wxMSW-$VERSION-setup.zip readme.txt setup.*
}
+expandlines()
+{
+ toexpand=$1
+ outputfile=$2
+
+ rm -f $outputfile
+ touch $outputfile
+ for line in `cat $toexpand` ; do
+ if [ $line != "" ]; then
+ ls $line >> $outputfile
+ fi
+ done
+}
# Process command line options.
for i in "$@"; do
case "$i" in
- --wise) wise=1 ;;
- --wiseonly) wiseonly=1 ;;
+ --wise) WISE=1 ;;
+ --wiseonly) WISEONLY=1 ;;
*)
echo Usage: $0 "[ options ]" 1>&2
echo Options:
echo " --help Display this help message"
- echo " --wise Build setup.exe"
+ echo " --wise Also build setup.exe and wxMSW-version.zip"
+ echo " --wiseonly Build setup.exe and wxMSW-version.zip only"
exit 1
;;
esac
done
-if [ ! -d "$src" ]; then
- echo $src not found.
+if [ ! -d "$SRC" ]; then
+ echo $SRC not found.
exit 1
fi
-if [ ! -d "$dest" ]; then
- echo $dest not found.
+if [ ! -d "$DEST" ]; then
+ echo $DEST not found.
exit 1
fi
-echo Creating distribution in $dest. Press return to continue.
+echo Creating distribution in $DEST. Press return to continue.
read dummy
-if [ "$wiseonly" != "0" ]; then
+if [ "$WISEONLY" != "0" ]; then
dowise
exit 0
fi
# Remove all existing files
-rm -f $dest/wx*.zip
-rm -f $dest/*.htb
-rm -f $dest/ogl3.zip
-rm -f $dest/tex2rtf2.zip
-rm -f $dest/jpeg.zip
-rm -f $dest/tiff.zip
-rm -f $dest/dialoged.zip
-rm -f $dest/utils.zip
-rm -f $dest/extradoc.zip
-rm -f $dest/*-win32.zip
-
-if [ ! -d "$dest/wx" ]; then
- rm -f -r $dest/wx
+rm -f $DEST/wx*.zip
+rm -f $DEST/*.htb
+rm -f $DEST/ogl3.zip
+rm -f $DEST/tex2rtf2.zip
+rm -f $DEST/jpeg.zip
+rm -f $DEST/tiff.zip
+rm -f $DEST/dialoged.zip
+rm -f $DEST/utils.zip
+rm -f $DEST/extradoc.zip
+rm -f $DEST/*-win32.zip
+
+if [ ! -d "$DEST/wx" ]; then
+ rm -f -r $DEST/wx
fi
-cd $src
+cd $SRC
echo Zipping...
# Below is the old-style separated-out format. This is retained only
# for local use, and for creating wxMSW-xxx.zip.
-ls `cat $src/distrib/msw/generic.rsp` | zip -@ $dest/wxWindows-$version-gen.zip
-ls `cat $src/distrib/msw/makefile.rsp` | zip -@ -u $dest/wxWindows-$version-gen.zip
-ls `cat $src/distrib/msw/msw.rsp` | zip -@ $dest/wxWindows-$version-msw.zip
-ls `cat $src/distrib/msw/makefile.rsp` | zip -@ -u $dest/wxWindows-$version-msw.zip
-ls `cat $src/distrib/msw/gtk.rsp` | zip -@ $dest/wxWindows-$version-gtk.zip
-ls `cat $src/distrib/msw/makefile.rsp` | zip -@ -u $dest/wxWindows-$version-gtk.zip
-ls `cat $src/distrib/msw/stubs.rsp` | zip -@ $dest/wxWindows-$version-stubs.zip
-ls `cat $src/distrib/msw/motif.rsp` | zip -@ $dest/wxWindows-$version-mot.zip
-ls `cat $src/distrib/msw/makefile.rsp` | zip -@ -u $dest/wxWindows-$version-mot.zip
-# ls `cat $src/distrib/msw/user.rsp` | zip -@ $dest/wxWindows-$version-user.zip # Obsolete
-
-ls `cat $src/distrib/msw/docsrc.rsp` | zip -@ $dest/wxWindows-$version-DocSource.zip
-ls `cat $src/distrib/msw/wx_hlp.rsp` | zip -@ $dest/wxWindows-$version-WinHelp.zip
-ls `cat $src/distrib/msw/wx_html.rsp` | zip -@ $dest/wxWindows-$version-HTML.zip
-ls `cat $src/distrib/msw/wx_pdf.rsp` | zip -@ $dest/wxWindows-$version-PDF.zip
-ls `cat $src/distrib/msw/wx_word.rsp` | zip -@ $dest/wxWindows-$version-Word.zip
-ls `cat $src/distrib/msw/wx_htb.rsp` | zip -@ $dest/wxWindows-$version-HTB.zip
-ls `cat $src/distrib/msw/wx_chm.rsp` | zip -@ $dest/wxWindows-$version-HTMLHelp.zip
+
+# We can't use e.g. this:
+# ls `cat $SRC/distrib/msw/makefile.rsp` zip -@ -u $DEST/wxWindows-$VERSION-gen.zip
+# because there's not enough space on the command line, plus we need to ignore the
+# blank lines.
+
+expandlines $SRC/distrib/msw/generic.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-gen.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/makefile.rsp temp.txt
+zip -@ -u `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-gen.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/msw.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-msw.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/makefile.rsp temp.txt
+zip -@ -u `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-msw.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/gtk.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-gtk.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/makefile.rsp temp.txt
+zip -@ -u `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-gtk.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/stubs.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-stubs.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/motif.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-mot.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/makefile.rsp temp.txt
+zip -@ -u `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-mot.zip` < temp.txt
+
+
+expandlines $SRC/distrib/msw/docsrc.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-DocSource.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/wx_hlp.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-WinHelp.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/wx_html.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-HTML.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/wx_pdf.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-PDF.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/wx_word.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-Word.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/wx_htb.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-HTB.zip` < temp.txt
+
+expandlines $SRC/distrib/msw/wx_chm.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-HTMLHelp.zip` < temp.txt
# PDF/HTML docs that should go into the Windows setup because
# there are no WinHelp equivalents
-ls `cat $src/distrib/msw/extradoc.rsp` | zip -@ $dest/extradoc.zip
+expandlines $SRC/distrib/msw/extradoc.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/extradoc.zip` < temp.txt
# VC++ project files
-ls `cat $src/distrib/msw/vc.rsp` | zip -@ $dest/wxWindows-$version-vc.zip
+expandlines $SRC/distrib/msw/vc.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-vc.zip` < temp.txt
# BC++ project files
-ls `cat $src/distrib/msw/bc.rsp` | zip -@ $dest/wxWindows-$version-bc.zip
+expandlines $SRC/distrib/msw/bc.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-bc.zip` < temp.txt
# CodeWarrior project files
-ls `cat $src/distrib/msw/cw.rsp` | zip -@ $dest/wxWindows-$version-cw.zip
+expandlines $SRC/distrib/msw/cw.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/wxWindows-$VERSION-cw.zip` < temp.txt
# OGL 3
-ls `cat $src/distrib/msw/ogl.rsp` | zip -@ $dest/ogl3.zip
+expandlines $SRC/distrib/msw/ogl.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/ogl3.zip` < temp.txt
# MMedia
-ls `cat $src/distrib/msw/mmedia.rsp` | zip -@ $dest/mmedia.zip
+expandlines $SRC/distrib/msw/mmedia.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/mmedia.zip` < temp.txt
# STC (Scintilla widget)
-ls `cat $src/distrib/msw/stc.rsp` | zip -@ $dest/stc.zip
-
-# GLCanvas: obsolete, now in main library
-# ls `cat $src/distrib/msw/glcanvas.rsp` | zip -@ $dest/glcanvas.zip
+expandlines $SRC/distrib/msw/stc.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/stc.zip` < temp.txt
# Tex2RTF
-ls `cat $src/distrib/msw/tex2rtf.rsp` | zip -@ $dest/tex2rtf2.zip
+expandlines $SRC/distrib/msw/tex2rtf.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/tex2rtf2.zip` < temp.txt
# JPEG source
-ls `cat $src/distrib/msw/jpeg.rsp` | zip -@ $dest/jpeg.zip
+expandlines $SRC/distrib/msw/jpeg.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/jpeg.zip` < temp.txt
# TIFF source
-ls `cat $src/distrib/msw/tiff.rsp` | zip -@ $dest/tiff.zip
+expandlines $SRC/distrib/msw/tiff.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/tiff.zip` < temp.txt
# Dialog Editor source and binary
-rm -f $dest/dialoged_source.zip
-ls `cat $src/distrib/msw/dialoged.rsp` | zip -@ $dest/dialoged_source.zip
-zip -j $dest/dialoged.zip $dest/dialoged_source.zip $src/bin/dialoged.exe $src/docs/winhelp/dialoged.hlp $src/docs/winhelp/dialoged.cnt
-rm -f $dest/dialoged_source.zip
+rm -f $DEST/dialoged_source.zip
+expandlines $SRC/distrib/msw/dialoged.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/dialoged_source.zip` < temp.txt
+zip -j `$CYGPATHPROG -w $DEST/dialoged.zip` $DEST/dialoged_source.zip $SRC/bin/dialoged.exe $SRC/docs/winhelp/dialoged.hlp $SRC/docs/winhelp/dialoged.cnt
+rm -f $DEST/dialoged_source.zip
# Misc. utils not in the main distribution
-ls `cat $src/distrib/msw/utils.rsp` | zip -@ $dest/utils.zip
-ls `cat $src/distrib/msw/utilmake.rsp` | zip -@ -u $dest/utils.zip
-
-cp $src/docs/changes.txt $dest
-cp $src/docs/msw/install.txt $dest/install_msw.txt
-cp $src/docs/motif/install.txt $dest/install_motif.txt
-cp $src/docs/gtk/install.txt $dest/install_gtk.txt
-cp $src/docs/readme.txt $dest
-cp $src/docs/motif/readme.txt $dest/readme_motif.txt
-cp $src/docs/gtk/readme.txt $dest/readme_gtk.txt
-cp $src/docs/msw/readme.txt $dest/readme_msw.txt
-cp $src/docs/readme_vms.txt $dest
-cp $src/docs/motif/makewxmotif $dest
-cp $src/docs/gtk/makewxgtk $dest
-
-# Skip WISE setup if wise is 0.
-if [ "$wise" = "1"] ; then
+expandlines $SRC/distrib/msw/utils.rsp temp.txt
+zip -@ `$CYGPATHPROG -w $DEST/utils.zip` < temp.txt
+expandlines $SRC/distrib/msw/utilmake.rsp temp.txt
+zip -@ -u `$CYGPATHPROG -w $DEST/utilmake.zip` < temp.txt
+
+rm -f temp.txt
+
+# Make dialoged-win32.zip and tex2rtf-win32.zip
+
+cd $SRC/bin
+
+zip `$CYGPATHPROG -w $DEST/dialoged-win32.zip` dialoged.*
+zip `$CYGPATHPROG -w $DEST/tex2rtf-win32.zip` tex2rtf.*
+
+cp $SRC/docs/changes.txt $DEST
+cp $SRC/docs/msw/install.txt $DEST/install_msw.txt
+cp $SRC/docs/motif/install.txt $DEST/install_motif.txt
+cp $SRC/docs/gtk/install.txt $DEST/install_gtk.txt
+cp $SRC/docs/readme.txt $DEST
+cp $SRC/docs/motif/readme.txt $DEST/readme_motif.txt
+cp $SRC/docs/gtk/readme.txt $DEST/readme_gtk.txt
+cp $SRC/docs/msw/readme.txt $DEST/readme_msw.txt
+cp $SRC/docs/readme_vms.txt $DEST
+cp $SRC/docs/motif/makewxmotif $DEST
+cp $SRC/docs/gtk/makewxgtk $DEST
+
+# Skip WISE setup if WISE is 0.
+if [ "$WISE" = "1" ]; then
dowise
fi