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