X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c4839ccf58de31e405cba8835f81191c28d415f8..d69225772ad1ff3952a3ee74055dc93f85c13812:/distrib/msw/makesetup.sh diff --git a/distrib/msw/makesetup.sh b/distrib/msw/makesetup.sh index 3919009de5..7afe376ecb 100644 --- a/distrib/msw/makesetup.sh +++ b/distrib/msw/makesetup.sh @@ -2,7 +2,7 @@ # Make a distribution of an application on MSW. # Example: -# ../distrib/msw/makesetup.sh --wxmsw --verbose &> | cat > log +# ../distrib/msw/makesetup.sh --wxmsw --verbose &> log # If your zip accepts Cygwin-style paths, then # use cygpath, else substitute echo @@ -13,8 +13,11 @@ INNO=1 SPINMSW=0 SPINMAC=0 SPINOS2=0 -SPINDOCS=1 -SPINALL=1 +SPINDOCS=0 +SPINALL=0 +SPINWXALL=0 +SPINBASE=0 +GETMAKEFILES=0 VERBOSE=0 ZIPFLAGS= @@ -22,7 +25,7 @@ PROGNAME=$0 SCRIPTDIR=$WXWIN/distrib/msw WEBFILES=c:/wx2dev/wxWebSite # Set this to the required version -VERSION=2.5.2 +VERSION=2.6.0 . $SCRIPTDIR/setup.var @@ -83,6 +86,29 @@ rearchive() popd } +rearchivetar() +{ + archive=$1 + dirname=$2 + changeto=$3 + + echo Re-tarring $archive as $dirname + + pushd $changeto + + if [ -d $dirname ]; then + rm -f -r $dirname + fi + mkdir $dirname + cd $dirname + tar xfz ../$archive + cd .. + rm -f $archive + tar cfz $archive $dirname/* + + popd +} + # Find the version from wx/version.h # Not yet used findversion() @@ -98,7 +124,7 @@ findversion() dospinos2() { cd $APPDIR - echo Zipping OS/2 + echo Zipping OS/2... # Zip up the complete wxOS2-xxx.zip file zip $ZIPFLAGS -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/generic.rsp @@ -150,6 +176,7 @@ dospinos2() dospinmac() { + echo Spinning wxMac... cd $APPDIR echo Zipping wxMac distribution @@ -201,10 +228,12 @@ dospinmac() dospinmsw() { + echo Zipping wxMSW... cd $APPDIR # Create wxWidgets-$VERSION-win.zip which is used to create wxMSW echo Zipping individual components + rm -f $DESTDIR/wxWidgets-$VERSION-win.zip zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/generic.rsp zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/makefile.rsp zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/msw.rsp @@ -220,8 +249,26 @@ dospinmsw() zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/utils.rsp zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/utilmake.rsp zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/univ.rsp + zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/wince.rsp + zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/palmos.rsp +} + +dospinwxall() +{ + echo Zipping wxAll... + cd $APPDIR -# rearchive wxWidgets-$VERSION-win.zip wxWidgets-$VERSION $DESTDIR + echo Zipping individual components + rm -f $DESTDIR/wxWidgets-$VERSION-all.zip + + # Save adding all the wxMSW files again + if [ ! -f $DESTDIR/wxWidgets-$VERSION-win.zip ]; then + dospinmsw + fi + cp $DESTDIR/wxWidgets-$VERSION-win.zip $DESTDIR/wxWidgets-$VERSION-all.zip + + cat $APPDIR/distrib/msw/cw_mac.rsp $APPDIR/distrib/msw/vc.rsp $APPDIR/distrib/msw/x11.rsp $APPDIR/distrib/msw/cocoa.rsp $APPDIR/distrib/msw/motif.rsp $APPDIR/distrib/msw/mac.rsp $APPDIR/distrib/msw/mgl.rsp $APPDIR/distrib/msw/os2.rsp $APPDIR/distrib/msw/palmos.rsp | sort | uniq > /tmp/all.txt + zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-all.zip < /tmp/all.txt if [ -d $DESTDIR/wxWidgets-$VERSION ]; then rm -f -r $DESTDIR/wxWidgets-$VERSION @@ -229,14 +276,9 @@ dospinmsw() mkdir $DESTDIR/wxWidgets-$VERSION cd $DESTDIR/wxWidgets-$VERSION - unzip $ZIPFLAGS ../wxWidgets-$VERSION-win.zip - - echo Removing .mms files - rm -f src/gtk/descrip.mms src/motif/descrip.mms + unzip $ZIPFLAGS ../wxWidgets-$VERSION-all.zip echo Copying readme files... - cp $APPDIR/docs/msw/readme.txt README-MSW.txt - cp $APPDIR/docs/msw/install.txt INSTALL-MSW.txt cp $APPDIR/docs/licence.txt LICENCE.txt cp $APPDIR/docs/lgpl.txt COPYING.LIB cp $APPDIR/docs/changes.txt CHANGES.txt @@ -244,8 +286,37 @@ dospinmsw() cd $DESTDIR - rm -f wxWidgets-$VERSION-win.zip - zip $ZIPFLAGS -r wxWidgets-$VERSION-win.zip wxWidgets-$VERSION/* + rm -f $DESTDIR/wxWidgets-$VERSION-all.zip + zip $ZIPFLAGS -r wxWidgets-$VERSION.zip wxWidgets-$VERSION/* +} + +dospinbase() +{ + cd $APPDIR + + echo Zipping wxBase... + rm -f $DESTDIR/wxBase-$VERSION.zip + zip $ZIPFLAGS -@ $DESTDIR/wxBase-$VERSION.zip < $APPDIR/distrib/msw/base.rsp + + if [ -d $DESTDIR/wxWidgets-$VERSION ]; then + rm -f -r $DESTDIR/wxWidgets-$VERSION + fi + + mkdir $DESTDIR/wxWidgets-$VERSION + cd $DESTDIR/wxWidgets-$VERSION + unzip $ZIPFLAGS ../wxBase-$VERSION.zip + + echo Copying readme files... + cp $APPDIR/docs/base/readme.txt README.txt + cp $APPDIR/docs/licence.txt LICENCE.txt + cp $APPDIR/docs/lgpl.txt COPYING.LIB + cp $APPDIR/docs/changes.txt CHANGES.txt + cp $APPDIR/docs/readme.txt README2.txt + + cd $DESTDIR + + rm -f wxBase-$VERSION.zip + zip $ZIPFLAGS -r wxBase-$VERSION.zip wxWidgets-$VERSION/* } dospindocs() @@ -268,6 +339,10 @@ dospindocs() zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-PDF.zip < $APPDIR/distrib/msw/wx_pdf.rsp rearchive wxWidgets-$VERSION-PDF.zip wxWidgets-$VERSION $DESTDIR + echo Creating $DESTDIR/wxWidgets-$VERSION-PDF.tar.gz + tar zcf /c/wx2dev/wxWindows/deliver/wxWidgets-$VERSION-PDF.tar.gz docs/pdf/*.pdf + rearchivetar wxWidgets-$VERSION-PDF.tar.gz wxWidgets-$VERSION /c/wx2dev/wxWindows/deliver + # zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-Word.zip < $APPDIR/distrib/msw/wx_word.rsp # rearchive wxWidgets-$VERSION-Word.zip wxWidgets-$VERSION $DESTDIR @@ -307,6 +382,16 @@ dospinmisc() zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-VC.zip < $APPDIR/distrib/msw/vc.rsp # rearchive wxWidgets-$VERSION-VC.zip wxWidgets-$VERSION $DESTDIR + # eVC++ project files + echo Creating $DESTDIR/wxWidgets-$VERSION-eVC.zip + zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-eVC.zip < $APPDIR/distrib/msw/wince.rsp + # rearchive wxWidgets-$VERSION-eVC.zip wxWidgets-$VERSION $DESTDIR + + # DMC project files + echo Creating $DESTDIR/wxWidgets-$VERSION-DMC.zip + zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-DMC.zip < $APPDIR/distrib/msw/dmc.rsp + # rearchive wxWidgets-$VERSION-DMC.zip wxWidgets-$VERSION $DESTDIR + # BC++ project files echo Creating $DESTDIR/wxWidgets-$VERSION-BC.zip zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-BC.zip < $APPDIR/distrib/msw/bc.rsp @@ -325,14 +410,36 @@ dospinsetup() # Put all archives for transit to Linux in a zip file echo Creating $DESTDIR/wxWidgets-$VERSION-LinuxTransit.zip rm -f $DESTDIR/wxWidgets-$VERSION-LinuxTransit.zip - zip $ZIPFLAGS $DESTDIR/wxWidgets-$VERSION-LinuxTransit.zip wxWidgets-$VERSION-LinuxDocs.zip wxWidgets-$VERSION-VC.zip wxWidgets-$VERSION-CW-Mac.zip + zip $ZIPFLAGS $DESTDIR/wxWidgets-$VERSION-LinuxTransit.zip wxWidgets-$VERSION-LinuxDocs.zip wxWidgets-$VERSION-VC.zip wxWidgets-$VERSION-DMC.zip wxWidgets-$VERSION-eVC.zip wxWidgets-$VERSION-CW-Mac.zip + + if [ ! -f $DESTDIR/wxWidgets-$VERSION-HTMLHelp.zip ]; then + cd $APPDIR + echo Creating $DESTDIR/wxWidgets-$VERSION-HTMLHelp.zip + zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-HTMLHelp.zip < $APPDIR/distrib/msw/wx_chm.rsp + rearchive wxWidgets-$VERSION-HTMLHelp.zip wxWidgets-$VERSION $DESTDIR + cd $DESTDIR + fi + + if [ ! -f $DESTDIR/wxWidgets-$VERSION-ExtraDoc.zip ]; then + cd $APPDIR + echo Creating $DESTDIR/wxWidgets-$VERSION-ExtraDoc.zip + zip $ZIPFLAGS -@ $DESTDIR/wxWidgets-$VERSION-ExtraDoc.zip < $APPDIR/distrib/msw/extradoc.rsp + rearchive wxWidgets-$VERSION-ExtraDoc.zip wxWidgets-$VERSION $DESTDIR + cd $DESTDIR + fi + + rm -f -r wxWidgets-$VERSION echo Unzipping the Windows files into wxWidgets-$VERSION - unzip $ZIPFLAGS -o wxWidgets-$VERSION-win.zip + mkdir -p wxWidgets-$VERSION + + unzip $ZIPFLAGS -o wxWidgets-$VERSION-win.zip -d wxWidgets-$VERSION unzip $ZIPFLAGS -o wxWidgets-$VERSION-VC.zip -d wxWidgets-$VERSION + unzip $ZIPFLAGS -o wxWidgets-$VERSION-DMC.zip -d wxWidgets-$VERSION unzip $ZIPFLAGS -o wxWidgets-$VERSION-BC.zip -d wxWidgets-$VERSION unzip $ZIPFLAGS -o wxWidgets-$VERSION-CW.zip -d wxWidgets-$VERSION + unzip $ZIPFLAGS -o wxWidgets-$VERSION-HTMLHelp.zip unzip $ZIPFLAGS -o wxWidgets-$VERSION-ExtraDoc.zip @@ -350,7 +457,15 @@ dospinsetup() rm -f src/mingegcs.bat rm -f -r distrib rm -f *.spec - rm -f -r contrib/utils/wxrcedit + rm -f src/gtk/descrip.mms src/motif/descrip.mms + + echo Copying readme files... + cp $APPDIR/docs/msw/readme.txt README-MSW.txt + cp $APPDIR/docs/msw/install.txt INSTALL-MSW.txt + cp $APPDIR/docs/licence.txt LICENCE.txt + cp $APPDIR/docs/lgpl.txt COPYING.LIB + cp $APPDIR/docs/changes.txt CHANGES.txt + cp $APPDIR/docs/readme.txt README.txt # Now cp some binary files to 'bin' if [ ! -d bin ]; then @@ -417,7 +532,7 @@ dospinsetup() doreplace $SETUPSCRIPTNAME "s;%HELPFILE%;$RETVALUE;g" fi - rm -f $DESTDIR/setup*.* + rm -f $DESTDIR/setup*.* $DESTDIR/wxMSW-$VERSION-Setup.exe # Inno Setup complains if this step is not done unix2dos --unix2dos $SETUPSCRIPTNAME @@ -444,13 +559,19 @@ dospinsetup() fi cd $DESTDIR -# mv setup.exe $APPNAME-$VERSION-setup.exe + mv setup.exe wxMSW-$VERSION-Setup.exe - echo Putting all the setup files into a single zip archive - zip wxMSW-$VERSION-setup.zip readme-$VERSION.txt setup*.* + # echo Putting all the setup files into a single zip archive + # zip wxMSW-$VERSION-setup.zip readme-$VERSION.txt setup*.* rm -f wxWidgets-$VERSION-win.zip rm -f wxWidgets-$VERSION-ExtraDoc.zip + rm -f wxWidgets-$VERSION-DMC.zip + rm -f wxWidgets-$VERSION-eVC.zip + rm -f wxWidgets-$VERSION-Univ.zip + rm -f wxWidgets-$VERSION-VC.zip + rm -f wxWidgets-$VERSION-DocSource.zip + rm -f wxWidgets-$VERSION-LinuxDocs.zip echo If you saw no warnings or errors, $APPTITLE was successfully spun. echo @@ -531,7 +652,8 @@ makesetup() cp $WEBFILES/site/i18n.htm $APPDIR/docs/html # Copy setup0.h files to setup.h - cp $APPDIR/include/wx/os2/setup0.h $APPDIR/include/wx/os2/setup.h + # OS/2 always built with configure now + # cp $APPDIR/include/wx/os2/setup0.h $APPDIR/include/wx/os2/setup.h cp $APPDIR/include/wx/msw/setup0.h $APPDIR/include/wx/msw/setup.h cp $APPDIR/include/wx/univ/setup0.h $APPDIR/include/wx/univ/setup.h @@ -550,6 +672,16 @@ makesetup() dospinmsw fi + # Do wxBase spin + if [ "$SPINBASE" = "1" ] || [ "$SPINALL" = "1" ]; then + dospinbase + fi + + # Do wxAll spin + if [ "$SPINWXALL" = "1" ] || [ "$SPINALL" = "1" ]; then + dospinwxall + fi + # Do docs spin if [ "$SPINDOCS" = "1" ] || [ "$SPINALL" = "1" ]; then dospindocs @@ -600,6 +732,24 @@ makesetup() fi } +# Get the makefiles that aren't in CVS and unarchive them +getmakefiles() +{ + echo Getting eVC++ project files... + curl http://biolpc22.york.ac.uk/pub/CVS_Makefiles/wx-mk-evcprj.zip --output /c/transit/wx-mk-evcprj.zip + echo Getting Digital Mars makefiles... + curl http://biolpc22.york.ac.uk/pub/CVS_Makefiles/wx-mk-dmars.zip --output /c/transit/wx-mk-dmars.zip + echo Getting VC++ makefiles... + curl http://biolpc22.york.ac.uk/pub/CVS_Makefiles/wx-mk-msvc.zip --output /c/transit/wx-mk-msvc.zip + + cd $APPDIR + echo Unarchiving makefiles and project files... + unzip -o -a /c/transit/wx-mk-evcprj.zip + unzip -o -a /c/transit/wx-mk-dmars.zip + unzip -o -a /c/transit/wx-mk-msvc.zip + echo Done getting makefiles and project files. +} + # We can't use e.g. this: # ls `cat $SRC/distrib/msw/makefile.rsp` zip -@ -u $DEST/wxWidgets-$VERSION-gen.zip # because there's not enough space on the command line, plus we need to ignore the @@ -634,8 +784,11 @@ usage() echo " --wxmac Build wxMac distribution" echo " --wxmsw Build wxMSW distribution" echo " --wxos2 Build wxOS2 distribution" + echo " --wxall Build wxAll zip distribution" + echo " --wxbase Build wxBase zip distribution" echo " --docs Build docs archives" echo " --all Build all distributions (the default)" + echo " --getmakefiles Get out-of-CVS makefiles and unarchive into the wxWidgets source tree" echo " --verbose Verbose zip operation" echo. echo Note that options only override settings in $SCRIPTDIR/setup.var. @@ -653,6 +806,9 @@ for i in "$@"; do --wxmac) SPINMAC=1; SPINALL=0 ;; --wxmsw) SPINMSW=1; SPINALL=0 ;; --wxos2) SPINOS2=1; SPINALL=0 ;; + --wxall) SPINWXALL=1; SPINALL=0 ;; + --wxbase) SPINBASE=1; SPINALL=0 ;; + --getmakefiles) GETMAKEFILES=1; SPINALL=0 ;; --docs) SPINDOCS=1; SPINALL=0 ;; --all) SPINALL=1 ;; --verbose) VERBOSE=1 ;; @@ -663,8 +819,14 @@ for i in "$@"; do esac done + doinit +if [ "$GETMAKEFILES" = "1" ]; then + getmakefiles + exit +fi + # findversion makesetup