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