restore cvs up
[wxWidgets.git] / distrib / scripts / pre-flight.sh
1 #!/bin/sh
2
3 if [ "$VERSION" = "" ]; then
4 echo "Including build-environ.cfg"
5 . `dirname $0`/build-environ.cfg
6 fi
7
8 # first, grab the latest revision with specified tag
9 if [ ! -d $WX_TEMP_DIR ]; then
10 mkdir $WX_TEMP_DIR
11 fi
12
13 # just do an update if we started a build but it failed somewhere
14 if [ ! -d $WX_WEB_DIR ]; then
15 cd $WX_TEMP_DIR
16 cvs -d:pserver:anoncvs:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets login
17 echo "Grabbing wxWebSite sources..."
18 cvs -d:pserver:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets checkout wxWebSite
19 else
20 cd $WX_WEB_DIR
21 cvs update -d -P
22 fi
23
24 if [ ! -d $WX_SRC_DIR ]; then
25 cd $WX_TEMP_DIR
26 cvs -d:pserver:anoncvs:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets login
27 echo "Grabbing wx CVS with tag $BUILD_TAG"
28 cvs -d:pserver:anoncvs@cvs.wxwidgets.org:/pack/cvsroots/wxwidgets checkout -r $BUILD_TAG wxWidgets
29 cd $WX_SRC_DIR
30 else
31 cd $WX_SRC_DIR
32 cvs update -d -P
33 fi
34
35 # this is where we will store the wxAll tarball we create
36 if [ ! -d $DIST_DIR ]; then
37 mkdir -p $DIST_DIR
38 fi
39 echo saving to $DIST_DIR
40
41 #re-bake the bakefiles
42 if [ $rebake = "yes" ]; then
43 if [ ! -d $WX_SRC_DIR/build/bakefiles ]; then
44 mkdir $WX_SRC_DIR/build/bakefiles
45 fi
46
47 cd $WX_SRC_DIR/build/bakefiles
48 # always rebuild the bakefiles to avoid conflicts with cvs
49 ## better to not use unix2dos on the wxWidgets tree so we don't get the conflicts
50 ##fix this -B gave an option not recognised error (sf bug 1537221)...
51 rm .ba*
52 bakefile_gen -d ../../distrib/scripts/Bakefiles.release.bkgen
53 fi
54
55 # Now generate the mega tarball with everything. We will push this to our build machines.
56 cd $WX_TEMP_DIR
57 export APPDIR=$WX_TEMP_DIR/wxWidgets
58 export WXWIN=$WX_TEMP_DIR/wxWidgets
59 export VERSION=$BUILD_VERSION
60 export SCRIPTDIR=${SCRIPTDIR}
61 export DIST_DIR=${DIST_DIR}
62
63 #remove old files
64 rm -rf $APPDIR/deliver/*
65 rm -rf $DIST_DIR/*
66
67 tar czf $DIST_DIR/wxWidgets-snapshot-$BUILD_VERSION.tar.gz $WX_TEMP_DIR
68
69 cp $SCRIPTDIR/create_archives.sh $APPDIR/distrib/scripts
70 chmod +x $APPDIR/distrib/scripts/create_archives.sh
71 $APPDIR/distrib/scripts/create_archives.sh --all
72
73 echo "Tarballs located at: $DIST_DIR"
74
75 if [ ! -f $WX_TARBALL ]; then
76 echo "ERROR: wxAll tarball was not created by pre-flight.sh. Build cannot continue."
77 exit 1
78 else
79 cd $DIST_DIR
80 #cp $WX_TARBALL $STAGING_DIR
81 #cp -r $WX_WEB_DIR $STAGING_DIR
82
83 echo "Pre-flight complete. Ready for takeoff."
84 fi
85
86 if [ "$KIND" = "daily" ]; then
87 ##delete old files and then copy new ones, add a symlink
88 find ${FTPDIR}/files -type f -name wx\* -mtime +6 | xargs rm -rf
89 cp $DIST_DIR/wx* ${FTPDIR}/files
90
91 rm -f ${FTPDIR}/wx* ${FTPDIR}/MD5SUM
92 for f in `find ${FTPDIR}/files -type f -name wx\* -mmin -601` ; do
93 ln -s $f `echo $f | sed -e "s/-${CURDATE}//" | sed -e "s|/files||" `
94 done
95 else
96 ## not a daily build
97 ##get install.txt files etc
98 ##.../docs/plat/install.txt goes to install-plat-2.7.0.txt
99 ## wince has a file down one dir
100 cp ${DOCDIR}/changes.txt $DIST_DIR/changes-${BUILD_VERSION}.txt
101
102 for f in `find ${DOCDIR} -name install.txt` ; do
103 cp $f $DIST_DIR/install-`echo $f | sed -e "s|${DOCDIR}||g" | sed -e "s|/install.txt||g"`-${BUILD_VERSION}.txt
104 done
105
106 for g in `find ${DOCDIR} -name readme.txt` ; do
107 cp $g $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
108 done
109 # Rename double readme
110 mv $DIST_DIR/readme-readme.txt-${BUILD_VERSION}.txt $DIST_DIR/readme-${BUILD_VERSION}.txt
111 ## copy files ...
112 mkdir ${FTPDIR}/
113 cp $DIST_DIR/* ${FTPDIR}/
114
115 fi
116
117 md5sum ${FTPDIR}/wx* > ${FTPDIR}/MD5SUM
118
119 ## make sure updated at is really last
120 sleep 10
121 echo cvs checkout done at `date -u` > ${FTPDIR}/updated_at.txt
122
123 echo "Delivery complete. Flying."