]> git.saurik.com Git - wxWidgets.git/blobdiff - distrib/msw/zipdist.sh
added regex to all the templates
[wxWidgets.git] / distrib / msw / zipdist.sh
index 6c6b31e9582e5d61eccb8c25801931aa3a8a5082..c42540df08dffcb2e8a0caf32b0168cc657028e1 100644 (file)
@@ -1,44 +1,41 @@
-#! /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 *
@@ -52,39 +49,38 @@ dowise()
     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
@@ -111,143 +107,215 @@ dowise()
     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