The branch, master has been updated
via d813ccc added waf trunk to the build farm
from 642e09c Move some of the build diff logic to the buildfarm package.
http://gitweb.samba.org/?p=build-farm.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit d813ccc652fcfbf9ec2f928519a0c589374a332f
Author: Andrew Tridgell <[email protected]>
Date: Thu Dec 23 10:25:33 2010 +1100
added waf trunk to the build farm
-----------------------------------------------------------------------
Summary of changes:
build_test.fns | 97 +++++++++++++++++++++++++++++++++++--------------------
sn-devel.fns | 3 ++
web/trees.conf | 5 +++
3 files changed, 70 insertions(+), 35 deletions(-)
create mode 100644 sn-devel.fns
Changeset truncated at 500 lines:
diff --git a/build_test.fns b/build_test.fns
index b7649bd..7156f81 100644
--- a/build_test.fns
+++ b/build_test.fns
@@ -164,7 +164,7 @@ choose_scm() {
tree=$1
case "$tree" in
- samba* | rsync | libreplace | talloc | tdb | ldb | pidl
| ccache*)
+ samba* | rsync | libreplace | talloc | tdb | ldb | pidl
| ccache* | waf*)
echo "git"
return 0
;;
@@ -237,35 +237,51 @@ unlock_file() {
############################
do_make() {
- if [ x"$MAKE" = x ]; then
- MAKE=make
- fi
+ # work out correct make command
+ case "$tree" in
+ waf*)
+ MAKECOMMAND="./waf"
+ ;;
+ *)
+ MAKECOMMAND="$MAKE"
+ if [ x"$MAKECOMMAND" = x ]; then
+ MAKECOMMAND=make
+ fi
+ ;;
+ esac
MMTIME=$MAXTIME
# some trees don't need as much time
case "$tree" in
- rsync | tdb | talloc | libreplace | ccache*)
+ rsync | tdb | talloc | libreplace | ccache* | waf*)
if [ "$compiler" != "checker" ]; then
MMTIME=`expr $MMTIME / 5`
fi
;;
esac
+ # special build for some trees
+ case "$tree" in
+ waf*)
+ ./waf distclean && ./waf configure build
+ ;;
+ esac
+
for t in $*; do
if [ x"$BUILD_FARM_NUM_JOBS" = x ]; then
- echo "$MAKE $t"
- $builddir/timelimit $MMTIME "$MAKE" "$t"
+ echo "$MAKECOMMAND $t"
+ $builddir/timelimit $MMTIME "$MAKECOMMAND" "$t"
status=$?
else
# we can parallelize everything and all targets
if [ x"$t" = xeverything ] || [ x"$t" = xall]; then
- echo "$MAKE" "-j$BUILD_FARM_NUM_JOBS" "$t"
- $builddir/timelimit $MMTIME "$MAKE"
"-j$BUILD_FARM_NUM_JOBS" "$t"
+ echo "$MAKECOMMAND" "-j$BUILD_FARM_NUM_JOBS"
"$t"
+ $builddir/timelimit $MMTIME "$MAKECOMMAND"
"-j$BUILD_FARM_NUM_JOBS" "$t"
status=$?
else
- echo "$MAKE $t"
- $builddir/timelimit $MMTIME "$MAKE" "$t"
+ echo "$MAKECOMMAND $t"
+ $builddir/timelimit $MMTIME "$MAKECOMMAND" "$t"
status=$?
fi
fi
@@ -276,7 +292,7 @@ do_make() {
;;
*)
#run again with V=1, so we see failed
commands
- $builddir/timelimit $MMTIME "$MAKE"
"$t" V=1
+ $builddir/timelimit $MMTIME
"$MAKECOMMAND" "$t" V=1
status=$?
;;
esac
@@ -330,6 +346,15 @@ action_lcovreport() {
action_configure() {
+ case "$tree" in
+ waf*)
+ $builddir/timelimit $MAXTIME ./waf configure
+ cstatus=$?
+ echo "CONFIGURE STATUS: $cstatus"
+ return $cstatus
+ ;;
+ esac
+
if [ ! -x $srcdir/configure -a -r $srcdir/Makefile.PL ]; then
perl $srcdir/Makefile.PL PREFIX="$prefix"
cstatus=$?
@@ -419,6 +444,9 @@ action_build() {
do_make everything torture
bstatus=$?
;;
+ waf*)
+ do_make build
+ ;;
*)
do_make all
bstatus=$?
@@ -626,30 +654,36 @@ test_tree() {
return
}
- if [ ! -x $srcdir/configure ] && [ "$tree" != "pidl" ]; then
- echo "skip: $tree.$compiler configure not present, try again
next time!"
- cd $test_root
- unlock_file "$lck"
- return
- fi
+ # check for essential files
+ case "$tree" in
+ pidl)
+ # no generated files
+ ;;
+ waf*)
+ if [ ! -x $srcdir/waf ]; then
+ echo "skip: $tree.$compiler waf not present, try again next
time!"
+ cd $test_root
+ unlock_file "$lck"
+ return
+ fi
+ ;;
+ *)
+ if [ ! -x $srcdir/configure ]; then
+ echo "skip: $tree.$compiler configure not present, try
again next time!"
+ cd $test_root
+ unlock_file "$lck"
+ return
+ fi
+ ;;
+ esac
echo "Starting build of $tree.$compiler in process $$ at `date`"
# Parameters for the build depending on the tree
case "$tree" in
- libreplace)
- builddir="$test_root/tmp.$tree.$compiler"
- usingtmpbuild=1
- if [ -d $builddir ]; then
- rm -rf $builddir
- fi
- mkdir -p $builddir
- export builddir
- ;;
*)
builddir=$srcdir
- usingtmpbuild=0
export builddir
;;
esac
@@ -864,13 +898,6 @@ test_tree() {
cd $test_root
/bin/rm -rf $prefix
- if [ "$usingtmpbuild" = "1" ]; then
- if [ "$noclean" = "yes" ]; then
- echo builddir cleanup skipped!
- else
- /bin/rm -rf $builddir
- fi
- fi
# send the logs to the master site
send_logs "$log" "$err"
diff --git a/sn-devel.fns b/sn-devel.fns
new file mode 100644
index 0000000..cfa6631
--- /dev/null
+++ b/sn-devel.fns
@@ -0,0 +1,3 @@
+. generic.fns
+# test this just on sn-devel for now
+test_tree waf-svn demos gcc
diff --git a/web/trees.conf b/web/trees.conf
index 6c4f9c3..af22150 100644
--- a/web/trees.conf
+++ b/web/trees.conf
@@ -76,3 +76,8 @@ subdir = pidl/
scm = git
repo = rsync.git
branch = HEAD
+
+[waf-svn]
+scm = git
+repo = waf-svn.git
+branch = HEAD
--
build.samba.org