git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			148 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			148 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| if [ "$VERSION" = "" ]; then
 | |
|     echo "Including build-environ.cfg"
 | |
|     . scripts/build-environ.cfg
 | |
| fi 
 | |
| 
 | |
| echo "temp dir is $WX_TEMP_DIR"
 | |
| 
 | |
| START_DIR="$PWD"
 | |
| SCRIPTDIR=${START_DIR}/scripts
 | |
| WX_WEB_DIR=$WX_TEMP_DIR/wxWebSite
 | |
| WX_SRC_DIR=$WX_TEMP_DIR/wxWidgets
 | |
| 
 | |
| CURDATE=`date -I`
 | |
| 
 | |
| # first, grab the latest revision with specified tag
 | |
| if [ ! -d $WX_TEMP_DIR ]; then
 | |
|   mkdir $WX_TEMP_DIR
 | |
| fi 
 | |
| 
 | |
| cd $WX_TEMP_DIR
 | |
| 
 | |
| # just do an update if we started a build but it failed somewhere
 | |
| if [ ! -d $WX_WEB_DIR ]; then  
 | |
|   cvs -d:pserver:anoncvs:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets login
 | |
|   echo "Grabbing wxWebSite sources..."
 | |
|   cvs -d:pserver:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets checkout wxWebSite
 | |
| else
 | |
|     cd $WX_WEB_DIR
 | |
|     cvs update -d -P
 | |
| fi
 | |
| 
 | |
| if [ ! -d $WX_SRC_DIR ]; then
 | |
|   cd $WX_TEMP_DIR
 | |
|   cvs -d:pserver:anoncvs:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets login
 | |
|   echo "Grabbing wx CVS with tag $BUILD_TAG"
 | |
|   cvs -d:pserver:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets checkout -r $BUILD_TAG wxWidgets
 | |
|   cd $WX_SRC_DIR
 | |
| else
 | |
|     cd $WX_SRC_DIR
 | |
|     cvs update -d -P
 | |
| fi
 | |
| #copy setup0.h setup.h for msw
 | |
| rm include/wx/msw/setup.h
 | |
| cp include/wx/msw/setup0.h include/wx/msw/setup.h
 | |
| 
 | |
| # this is where we will store the wxAll tarball we create
 | |
| if [ ! -d $START_DIR/$DISTDIR ]; then
 | |
|   mkdir -p $START_DIR/$DISTDIR
 | |
| fi
 | |
| 
 | |
| #re-bake the bakefiles
 | |
| if [ $rebake = "yes" ]; then
 | |
|   if [ ! -d $WX_SRC_DIR/build/bakefiles ]; then
 | |
|      mkdir $WX_SRC_DIR/build/bakefiles
 | |
|   fi
 | |
|   
 | |
|   cd $WX_SRC_DIR/build/bakefiles
 | |
|   # always rebuild the bakefiles to avoid conflicts with cvs
 | |
|   ## better to not use unix2dos on the wxWidgets tree so we don't get the conflicts
 | |
|   ##fix this -B gave an option not recognised  error (sf bug 1537221)...
 | |
|   rm .ba*
 | |
|   bakefile_gen -d ../../distrib/scripts/Bakefiles.release.bkgen
 | |
| fi
 | |
| 
 | |
| cd $WX_SRC_DIR
 | |
| if [ ! -d $WX_SRC_DIR/deliver ]; then
 | |
|   mkdir $WX_SRC_DIR/deliver
 | |
| fi
 | |
| 
 | |
| # Now generate the mega tarball with everything. We will push this to our build machines.
 | |
| 
 | |
| cd $WX_TEMP_DIR
 | |
| export APPDIR=$WX_TEMP_DIR/wxWidgets
 | |
| export WXWIN=$WX_TEMP_DIR/wxWidgets
 | |
| export VERSION=$BUILD_VERSION
 | |
| export SCRIPTDIR=${SCRIPTDIR}
 | |
| 
 | |
| #remove old files
 | |
| rm -rf $APPDIR/deliver/*
 | |
| rm -rf $START_DIR/$DIST_DIR/*
 | |
| 
 | |
| 
 | |
| tar czf $START_DIR/$DIST_DIR/wxWidgets-snapshot-$BUILD_VERSION.tar.gz $WX_TEMP_DIR
 | |
| 
 | |
| #export DESTDIR=$STAGING_DIR
 | |
| cp $SCRIPTDIR/create_archives.sh $APPDIR/distrib/scripts
 | |
| chmod +x $APPDIR/distrib/scripts/create_archives.sh
 | |
| $APPDIR/distrib/scripts/create_archives.sh --all
 | |
| 
 | |
| # copy all the archives we created to the master machine's deliver directory
 | |
| cp $APPDIR/deliver/*.zip $START_DIR/$DIST_DIR
 | |
| cp $APPDIR/deliver/*.tar.gz $START_DIR/$DIST_DIR
 | |
| cp $APPDIR/deliver/*.tar.bz2 $START_DIR/$DIST_DIR
 | |
| 
 | |
| echo "Tarballs located at: $START_DIR/$DIST_DIR"
 | |
| 
 | |
| if [ ! -f $WX_TARBALL ]; then
 | |
|   echo "ERROR: wxAll tarball was not created by pre-flight.sh. Build cannot continue."
 | |
|   exit 1
 | |
| else
 | |
|   cd $START_DIR
 | |
|   #cp $WX_TARBALL $STAGING_DIR
 | |
|   #cp -r $WX_WEB_DIR $STAGING_DIR
 | |
|   
 | |
|   echo "Pre-flight complete. Ready for takeoff."
 | |
| fi
 | |
| 
 | |
| if [ "$KIND" = "daily" ]; then
 | |
|    ##delete old files and then copy new ones, add a symlink
 | |
|    find ${FTPDIR}/files -type f -name wx\* -mtime +6 | xargs rm -rf
 | |
|    cp  $START_DIR/$DIST_DIR/wx* ${FTPDIR}/files
 | |
| 
 | |
|    rm -f ${FTPDIR}/wx* ${FTPDIR}/MD5SUM
 | |
|    for f in `find ${FTPDIR}/files -type f -name wx\* -mmin -601` ; do
 | |
|       ln -s $f `echo $f | sed -e "s/-${CURDATE}//" | sed -e "s|/files||" `
 | |
|    done
 | |
| else
 | |
|    ## not a daily build
 | |
|    ##get install.txt files etc
 | |
|    ##.../docs/plat/install.txt goes to install-plat-2.7.0.txt
 | |
|    ## wince has a file down one dir
 | |
|    cp ${DOCDIR}/changes.txt $START_DIR/$DIST_DIR/changes-${BUILD_VERSION}.txt
 | |
| 
 | |
|    for f in `find ${DOCDIR} -name install.txt` ; do
 | |
|      cp $f $START_DIR/$DIST_DIR/install-`echo $f | sed -e "s|${DOCDIR}||g" | sed -e "s|/install.txt||g"`-${BUILD_VERSION}.txt
 | |
|    done
 | |
| 
 | |
|    for g in `find ${DOCDIR} -name readme.txt` ; do
 | |
|      cp $g $START_DIR/$DIST_DIR/readme-`echo $g | sed -e "s|${DOCDIR}||g" | sed -e "s|msw/wince|wince|g" | sed -e "s|/readme.txt||g"`-${BUILD_VERSION}.txt
 | |
|    done
 | |
|    # Rename double readme
 | |
|    mv $START_DIR/$DIST_DIR/readme-readme.txt-${BUILD_VERSION}.txt $START_DIR/$DIST_DIR/readme-${BUILD_VERSION}.txt
 | |
|    ## copy files ...
 | |
|    mkdir ${FTPDIR}/
 | |
|    cp  $START_DIR/$DIST_DIR/* ${FTPDIR}/
 | |
| 
 | |
| fi
 | |
| 
 | |
| md5sum ${FTPDIR}/wx* > ${FTPDIR}/MD5SUM
 | |
| 
 | |
| ## make sure updated at is really last
 | |
| sleep 10
 | |
| echo cvs checkout done at  `date -u` > ${FTPDIR}/updated_at.txt
 | |
|        
 | |
| echo "Delivery complete. Flying."
 |