git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			291 lines
		
	
	
		
			7.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			291 lines
		
	
	
		
			7.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/sh
 | |
| # tardist: make up a tar.gz distribution of wxWidgets 2
 | |
| # Supply a source (e.g. ~/wx2) and destination (e.g. ~/wx2/deliver)
 | |
| 
 | |
| # 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
 | |
| # blank lines.
 | |
| 
 | |
| PROGNAME=$0
 | |
| WXSRC=$1
 | |
| WXDEST=$2
 | |
| WXVER=$3
 | |
| 
 | |
| # for docopyreadmefiles and docopysetup_h
 | |
| SCRIPTDIR=$WXSRC/distrib/scripts
 | |
| . $SCRIPTDIR/utils.inc
 | |
| 
 | |
| TAR=tar
 | |
| ARCH=`arch`
 | |
| if [ "$ARCH" = "ppc" ]; then
 | |
|   TAR=gnutar
 | |
| fi
 | |
| 
 | |
| expandlines()
 | |
| {
 | |
|     toexpand=$1
 | |
|     outputfile=$2
 | |
| 
 | |
|     rm -f $outputfile
 | |
|     touch $outputfile
 | |
|     for line in `cat $toexpand` ; do
 | |
|       if [ "$line" != "" ]; then
 | |
|         ls $line >> $outputfile
 | |
|       fi
 | |
|     uniq < $outputfile > /tmp/uniqtemp.txt
 | |
|     mv /tmp/uniqtemp.txt $outputfile
 | |
|     done
 | |
| }
 | |
| 
 | |
| doinit()
 | |
| {
 | |
|   cd $WXSRC
 | |
|   echo Removing backup files...
 | |
|   rm *~ */*~ */*/*~ */*/*/*~ */*/*/*/*~
 | |
| 
 | |
|   rm -f $WXDEST/wx*-${WXVER}*.tar.gz
 | |
|   # Copy setup files
 | |
|   cp $WXSRC/include/wx/msw/setup0.h $WXSRC/include/wx/msw/setup.h
 | |
|   cp $WXSRC/include/wx/univ/setup0.h $WXSRC/include/wx/univ/setup.h
 | |
| 
 | |
|   # Copy readme and other files
 | |
|   docopydocs $WXSRC $WXDEST
 | |
| 
 | |
|   # Make .mo files
 | |
|   cd $WXSRC/locale
 | |
|   make allmo
 | |
| }
 | |
| 
 | |
| dospinwxmac()
 | |
| {
 | |
| echo Tarring wxMac...
 | |
| ### wxMac
 | |
| cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/setup.h
 | |
| cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/mac/setup.h
 | |
| cd $WXSRC
 | |
| cat $SCRIPTDIR/manifests/mac.rsp  \
 | |
|     $SCRIPTDIR/manifests/cocoa.rsp  \
 | |
|     $SCRIPTDIR/manifests/generic.rsp  \
 | |
|     $SCRIPTDIR/manifests/generic_samples.rsp  \
 | |
|     $SCRIPTDIR/manifests/cw_mac.rsp  \
 | |
|     $SCRIPTDIR/manifests/tex2rtf.rsp  \
 | |
|     $SCRIPTDIR/manifests/utils.rsp  \
 | |
|     $SCRIPTDIR/manifests/xml.rsp  \
 | |
|     $SCRIPTDIR/manifests/makefile.rsp  \
 | |
|     $SCRIPTDIR/manifests/tiff.rsp  \
 | |
|     $SCRIPTDIR/manifests/jpeg.rsp \
 | |
|     > /tmp/wxmac_in.txt
 | |
| expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt
 | |
| $TAR cf $WXDEST/wxMac-${WXVER}.tar -T /tmp/wxmac.txt
 | |
| 
 | |
| rm -f $WXSRC/include/wx/setup.h
 | |
| 
 | |
| echo Re-tarring wxMac in a subdirectory...
 | |
| cd $WXDEST
 | |
| mkdir wxMac-${WXVER}
 | |
| cd wxMac-${WXVER}
 | |
| 
 | |
| $TAR xf ../wxMac-${WXVER}.tar
 | |
| echo Copying readme files...
 | |
| cp $WXSRC/docs/mac/readme.txt README-MAC.txt
 | |
| cp $WXSRC/docs/mac/install.txt INSTALL-MAC.txt
 | |
| 
 | |
| cd ..
 | |
| rm -f wxMac-${WXVER}.tar
 | |
| $TAR cf $WXDEST/wxMac-${WXVER}.tar wxMac-${WXVER}/*
 | |
| rm -f -r wxMac-${WXVER}
 | |
| gzip $WXDEST/wxMac-${WXVER}.tar
 | |
| }
 | |
| 
 | |
| ### wxUniv: universal-specific files
 | |
| #cd $WXSRC
 | |
| #cat $SCRIPTDIR/manifests/univ.rsp > /tmp/wxuniv_in.txt
 | |
| #expandlines /tmp/wxuniv_in.txt /tmp/wxuniv.txt
 | |
| #$TAR cf $WXDEST/wxWidgets-${WXVER}-Univ.tar -T /tmp/wxuniv.txt
 | |
| #
 | |
| #echo Re-tarring wxUniversal in a subdirectory...
 | |
| #cd $WXDEST
 | |
| #mkdir wxWidgets-${WXVER}
 | |
| #cd wxWidgets-${WXVER}
 | |
| #$TAR xf ../wxWidgets-${WXVER}-Univ.tar
 | |
| #cd ..
 | |
| #rm -f wxWidgets-${WXVER}-Univ.tar
 | |
| #$TAR cf $WXDEST/wxWidgets-${WXVER}-Univ.tar wxWidgets-${WXVER}/*
 | |
| #rm -f -r wxWidgets-${WXVER}
 | |
| #gzip $WXDEST/wxWidgets-${WXVER}-Univ.tar
 | |
| 
 | |
| dospinwxall()
 | |
| {
 | |
| echo Tarring wxAll...
 | |
| 
 | |
| ### wxAll: all distributions in one giant archive
 | |
| cd $WXSRC
 | |
| cat $SCRIPTDIR/manifests/generic.rsp \
 | |
|     $SCRIPTDIR/manifests/generic_samples.rsp \
 | |
|     $SCRIPTDIR/manifests/msw.rsp \
 | |
|     $SCRIPTDIR/manifests/wince.rsp  \
 | |
|     $SCRIPTDIR/manifests/vc.rsp  \
 | |
|     $SCRIPTDIR/manifests/cw.rsp  \
 | |
|     $SCRIPTDIR/manifests/cw_mac.rsp  \
 | |
|     $SCRIPTDIR/manifests/gtk.rsp  \
 | |
|     $SCRIPTDIR/manifests/x11.rsp  \
 | |
|     $SCRIPTDIR/manifests/motif.rsp  \
 | |
|     $SCRIPTDIR/manifests/mac.rsp  \
 | |
|     $SCRIPTDIR/manifests/cocoa.rsp  \
 | |
|     $SCRIPTDIR/manifests/os2.rsp  \
 | |
|     $SCRIPTDIR/manifests/palmos.rsp  \
 | |
|     $SCRIPTDIR/manifests/x11.rsp  \
 | |
|     $SCRIPTDIR/manifests/univ.rsp  \
 | |
|     $SCRIPTDIR/manifests/mgl.rsp  \
 | |
|     $SCRIPTDIR/manifests/dfb.rsp  \
 | |
|     $SCRIPTDIR/manifests/utilmake.rsp  \
 | |
|     $SCRIPTDIR/manifests/utils.rsp  \
 | |
|     $SCRIPTDIR/manifests/tex2rtf.rsp  \
 | |
|     $SCRIPTDIR/manifests/xml.rsp  \
 | |
|     $SCRIPTDIR/manifests/makefile.rsp  \
 | |
|     $SCRIPTDIR/manifests/tiff.rsp  \
 | |
|     $SCRIPTDIR/manifests/jpeg.rsp  \
 | |
|     $SCRIPTDIR/manifests/docsrc.rsp \
 | |
|     | uniq > /tmp/wxall_in.txt
 | |
| expandlines /tmp/wxall_in.txt /tmp/wxall.txt
 | |
| $TAR cf $WXDEST/wxWidgets-${WXVER}.tar -T /tmp/wxall.txt
 | |
| 
 | |
| echo Re-tarring wxAll in a subdirectory...
 | |
| cd $WXDEST
 | |
| mkdir wxWidgets-${WXVER}
 | |
| 
 | |
| cd wxWidgets-${WXVER}
 | |
| 
 | |
| # If we have the full set of VC++ project files,
 | |
| # get them
 | |
| if [ -f $WXDEST/extra/wxWidgets-${WXVER}-VC.zip ]; then
 | |
|   unzip -o $WXDEST/extra/wxWidgets-${WXVER}-VC.zip
 | |
| else
 | |
|   echo "Warning - did not find $WXDEST/deliver/extra/wxWidgets-${WXVER}-VC.zip"
 | |
| fi
 | |
| 
 | |
| # If we have the full set of eVC++ project files,
 | |
| # get them
 | |
| if [ -f $WXDEST/extra/wxWidgets-${WXVER}-eVC.zip ]; then
 | |
|   unzip -o $WXDEST/extra/wxWidgets-${WXVER}-eVC.zip
 | |
| else
 | |
|   echo "Warning - did not find $WXDEST/deliver/extra/wxWidgets-${WXVER}-eVC.zip"
 | |
| fi
 | |
| 
 | |
| # If we have the full set of DMC project files,
 | |
| # get them
 | |
| if [ -f $WXDEST/extra/wxWidgets-${WXVER}-DMC.zip ]; then
 | |
|   unzip -o $WXDEST/extra/wxWidgets-${WXVER}-DMC.zip
 | |
| else
 | |
|   echo "Warning - did not find $WXDEST/deliver/extra/wxWidgets-${WXVER}-DMC.zip"
 | |
| fi
 | |
| 
 | |
| $TAR xf ../wxWidgets-${WXVER}.tar
 | |
| 
 | |
| # Translate all .dsp and .dsw files to DOS format
 | |
| unix2dos --unix2dos `cat $SCRIPTDIR/manifests/vc.rsp`
 | |
| 
 | |
| cd ..
 | |
| rm -f wxWidgets-${WXVER}.tar
 | |
| $TAR cf $WXDEST/wxWidgets-${WXVER}.tar wxWidgets-${WXVER}/*
 | |
| rm -f -r wxWidgets-${WXVER}
 | |
| gzip -c $WXDEST/wxWidgets-${WXVER}.tar > $WXDEST/wxWidgets-${WXVER}.tar.gz
 | |
| bzip2 $WXDEST/wxWidgets-${WXVER}.tar
 | |
| }
 | |
| 
 | |
| domakedocs()
 | |
| {
 | |
|   mkdir -p $WXSRC/docs/html/wx
 | |
|   mkdir -p $WXSRC/docs/html/tex2rtf
 | |
|   mkdir -p $WXSRC/docs/html/fl
 | |
|   mkdir -p $WXSRC/docs/html/ogl
 | |
|   mkdir -p $WXSRC/docs/htb
 | |
| 
 | |
|   rm -f -r $WXSRC/docs/html/wx/*.htm*
 | |
|   rm -f -r $WXSRC/docs/htb/wx.htb
 | |
| 
 | |
|   echo Making HTML wxWidgets manual...
 | |
|   cd $WXSRC/docs/latex/wx
 | |
|   cp *.gif $WXSRC/docs/html/wx
 | |
|   tex2rtf manual.tex $WXSRC/docs/html/wx/wx.htm -twice -html
 | |
| 
 | |
|   echo Making HTB wxWidgets manual...
 | |
|   cd $WXSRC/docs/html/wx
 | |
|   zip -q $WXSRC/docs/htb/wx.htb *.html *.gif *.hhp *.hhc *.hhk
 | |
| 
 | |
|   echo Done making manuals.
 | |
| }
 | |
| 
 | |
| init=""
 | |
| if [ "$1" = "" ]
 | |
| then
 | |
|   echo Usage: tardist wx-dir output-dir version
 | |
|   exit
 | |
| fi
 | |
| 
 | |
| if [ "$2" = "" ]
 | |
| then
 | |
|   echo Usage: tardist wx-dir output-dir version
 | |
|   exit
 | |
| fi
 | |
| 
 | |
| if [ "$3" = "" ]
 | |
| then
 | |
|   echo Usage: tardist wx-dir output-dir version
 | |
|   exit
 | |
| fi
 | |
| 
 | |
| SPINWXALL=0
 | |
| SPINWXMAC=0
 | |
| SPINEVERYTHING=0
 | |
| SILENT=0
 | |
| 
 | |
| usage()
 | |
| {
 | |
|     echo Usage: $PROGNAME "src-dir dest-dir version-number [ options ]"
 | |
|     echo Options:
 | |
|     echo "    --help         Display this help message"
 | |
|     echo "    --wxall        Spin wxAll"
 | |
|     echo "    --wxmac        Spin wxMac"
 | |
|     echo "    --all          Spin EVERYTHING"
 | |
|     echo "    --silent       Don't ask for confirmation before running"
 | |
| 
 | |
|     exit 1
 | |
| }
 | |
| 
 | |
| # Process command line options.
 | |
| shift 3
 | |
| for i in "$@"; do
 | |
|     case "$i" in
 | |
| 	--wxall) SPINWXALL=1 ;;
 | |
| 	--wxmac) SPINWXMAC=1 ;;
 | |
| 	--all) SPINEVERYTHING=1 ;;
 | |
| 	--silent) SILENT=1 ;;
 | |
| 	*)
 | |
| 	    usage
 | |
| 	    exit
 | |
| 	    ;;
 | |
|     esac
 | |
| done
 | |
| 
 | |
| if [ "$SILENT" = "0" ]; then
 | |
|   echo About to archive wxWidgets:
 | |
|   echo   From    $WXSRC
 | |
|   echo   To      $WXDEST
 | |
|   echo   Version $WXVER
 | |
|   echo CTRL-C if this is not correct.
 | |
|   read dummy
 | |
| fi
 | |
| 
 | |
| doinit
 | |
| 
 | |
| if [ "$SPINWXMAC" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
 | |
|   dospinwxmac
 | |
| fi
 | |
| 
 | |
| if [ "$SPINWXALL" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
 | |
|   dospinwxall
 | |
| fi
 | |
| 
 |