X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0157e579ec97555ea4cf07f2a9683fcb3a6b5065..f65bb0f8ab88e80a367b6fa361e92545c04f6914:/distrib/msw/makesetup.sh diff --git a/distrib/msw/makesetup.sh b/distrib/msw/makesetup.sh index a9db4dc09a..84a2e7383e 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,9 +13,11 @@ INNO=1 SPINMSW=0 SPINMAC=0 SPINOS2=0 -SPINDOCS=1 -SPINALL=1 -SPINWXALL=1 +SPINDOCS=0 +SPINALL=0 +SPINWXALL=0 +SPINBASE=0 +GETMAKEFILES=0 VERBOSE=0 ZIPFLAGS= @@ -23,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.2 . $SCRIPTDIR/setup.var @@ -84,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() @@ -99,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 @@ -151,6 +176,7 @@ dospinos2() dospinmac() { + echo Spinning wxMac... cd $APPDIR echo Zipping wxMac distribution @@ -202,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 @@ -222,8 +250,25 @@ dospinmsw() 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 +} -# rearchive wxWidgets-$VERSION-win.zip wxWidgets-$VERSION $DESTDIR +dospinwxall() +{ + echo Zipping wxAll... + cd $APPDIR + + 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/gtk.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 @@ -231,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 @@ -246,41 +286,17 @@ 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/* } -dospinwxall() +dospinbase() { cd $APPDIR - # Create wxWidgets-$VERSION-win.zip which is used to create wxMSW - echo Zipping individual components - 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 - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/ogl.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/mmedia.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/stc.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/tex2rtf.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/jpeg.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/tiff.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/xml.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/contrib.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/deprecated.rsp - 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/x11.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/motif.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/mac.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/mgl.rsp - zip $ZIPFLAGS -@ -u $DESTDIR/wxWidgets-$VERSION-win.zip < $APPDIR/distrib/msw/os2.rsp - -# rearchive wxWidgets-$VERSION-win.zip wxWidgets-$VERSION $DESTDIR + 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 @@ -288,18 +304,19 @@ dospinwxall() mkdir $DESTDIR/wxWidgets-$VERSION cd $DESTDIR/wxWidgets-$VERSION - unzip $ZIPFLAGS ../wxWidgets-$VERSION-win.zip + 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 README.txt + cp $APPDIR/docs/readme.txt README2.txt cd $DESTDIR - rm -f wxWidgets-$VERSION-win.zip - zip $ZIPFLAGS -r wxWidgets-$VERSION-win.zip wxWidgets-$VERSION/* + rm -f wxBase-$VERSION.zip + zip $ZIPFLAGS -r wxBase-$VERSION.zip wxWidgets-$VERSION/* } dospindocs() @@ -322,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 @@ -366,6 +387,11 @@ dospinmisc() 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 @@ -384,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-eVC.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 @@ -409,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 @@ -476,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 @@ -503,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 @@ -590,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 @@ -609,6 +672,11 @@ makesetup() dospinmsw fi + # Do wxBase spin + if [ "$SPINBASE" = "1" ] || [ "$SPINALL" = "1" ]; then + dospinbase + fi + # Do wxAll spin if [ "$SPINWXALL" = "1" ] || [ "$SPINALL" = "1" ]; then dospinwxall @@ -664,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 @@ -699,8 +785,10 @@ usage() 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. @@ -719,6 +807,8 @@ for i in "$@"; do --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 ;; @@ -729,8 +819,14 @@ for i in "$@"; do esac done + doinit +if [ "$GETMAKEFILES" = "1" ]; then + getmakefiles + exit +fi + # findversion makesetup