scripts/repocheck/commit-checker
changeset 2317 6d3ed14efb68
parent 2316 c0fae4bbaa5c
child 2318 45d76c6e7f66
     1.1 --- a/scripts/repocheck/commit-checker	Wed Nov 29 17:35:31 2006 +0000
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,113 +0,0 @@
     1.4 -#!/bin/bash
     1.5 -
     1.6 -ROOT=$PWD
     1.7 -REV=$1
     1.8 -LOGFILE=${ROOT}/logs/${REV}.log
     1.9 -
    1.10 -function im-not-the-next() {
    1.11 -    for i in `ls queue`
    1.12 -    do
    1.13 -	if [ $i -lt $REV ]; then
    1.14 -	    true
    1.15 -	    return
    1.16 -	fi
    1.17 -    done
    1.18 -    false
    1.19 -}
    1.20 -
    1.21 -function make-dir () {
    1.22 -    if [ ! -d $1 ]; then
    1.23 -	mkdir $1
    1.24 -    fi
    1.25 -}
    1.26 -
    1.27 -function makecheck () {
    1.28 -    if [ `which $(echo $CXX|cut -f1 -d' ' )` ]; then
    1.29 -	make-dir $ODIR &&
    1.30 -	cd $ODIR &&
    1.31 -	time ../trunk/configure $* &&
    1.32 -	time make check &&
    1.33 -	cd .. 
    1.34 -    else
    1.35 -	echo
    1.36 -	echo '***************************************************************'
    1.37 -	echo "  COMPILER $CXX CANNOT BE FOUND"
    1.38 -	echo '***************************************************************'
    1.39 -	echo
    1.40 -    fi
    1.41 -}
    1.42 -
    1.43 -function check-compilers() {
    1.44 -cd trunk &&
    1.45 -autoreconf -vi &&
    1.46 -cd .. &&
    1.47 -# ODIR=gcc-3.3 CXX=g++-3.3 CXXFLAGS='-W -Wall -Werror' makecheck --enable-demo --enable-benchmark &&
    1.48 -# ODIR=gcc-3.4 CXX=g++-3.4 CXXFLAGS='-W -Wall -Werror' makecheck --enable-demo --enable-benchmark &&
    1.49 -# ODIR=gcc-4.0 CXX=g++-4.0 CXXFLAGS='-W -Wall -Werror' makecheck --enable-demo --enable-benchmark &&
    1.50 -ODIR=gcc-4.1 CXX=g++-4.1 CXXFLAGS='-W -Wall -Werror' makecheck --enable-demo --enable-benchmark &&
    1.51 -# # ODIR=icc-8.0 CXX=icpc-8.0 CXXFLAGS='-Werror' makecheck --enable-demo --enable-benchmark &&
    1.52 -# ODIR=icc-9.0 CXX='icpc-9.0' CXXFLAGS='-Werror' makecheck --enable-demo --enable-benchmark &&
    1.53 -# ODIR=mingw CXX='g++' makecheck --with-msw --target=i586-mingw32msvc --host=i586-mingw32msvc --build=i386-linux --without-glpk &&
    1.54 -echo &&
    1.55 -echo '**********************************************************************' &&
    1.56 -echo '   REPOSITORY SEEMS OK' &&
    1.57 -echo '**********************************************************************' &&
    1.58 -echo
    1.59 -}
    1.60 -
    1.61 -if [ $# -eq 0 ]; then
    1.62 -    echo 'Usage:'
    1.63 -    echo '   commit-checker --init'
    1.64 -    echo '   commit-checker revision'
    1.65 -    exit 1
    1.66 -elif [ $1 = '--init' ]; then
    1.67 -    rm -rf queue
    1.68 -    mkdir queue
    1.69 -    make-dir logs
    1.70 -    rm -rf trunk
    1.71 -    svn co https://lemon.cs.elte.hu/svn/hugo/trunk
    1.72 -    exit 0
    1.73 -fi
    1.74 -
    1.75 -touch ${ROOT}/queue/$REV
    1.76 -
    1.77 -while im-not-the-next; do
    1.78 -    sleep 10
    1.79 -done
    1.80 -
    1.81 -# echo RUN $REV
    1.82 -
    1.83 -svn up -r$REV trunk >${LOGFILE} 2>&1
    1.84 -
    1.85 -AUTHOR=`svn info trunk|grep 'Last Changed Author:'|cut -d ' ' -f 4`
    1.86 -EMAIL=`awk '$1=="'${AUTHOR}'" {print $2}' <${ROOT}/e-mails`
    1.87 -
    1.88 -echo '
    1.89 -
    1.90 -*************************************************************
    1.91 -Check revision '${REV}' of '${AUTHOR}' ('${EMAIL}')
    1.92 -*************************************************************
    1.93 -
    1.94 -'>>${LOGFILE} 2>&1
    1.95 -
    1.96 -if check-compilers >>${LOGFILE} 2>&1
    1.97 -then
    1.98 -    echo -n
    1.99 -#    echo OK $AUTHOR $EMAIL $REV
   1.100 -else
   1.101 -#    echo NEMOK $AUTHOR $EMAIL $REV
   1.102 -    echo 'Dear '${AUTHOR}',
   1.103 -Your svn commit -r'${REV}' made the repository broken.
   1.104 -The compilation log is attached.
   1.105 -Please fix the problem as soon as possible.
   1.106 -
   1.107 -Best regards,
   1.108 -LEMON Commit Checking Service
   1.109 -'|
   1.110 -    mail -a ${LOGFILE} -s '[LEMON-SVN] WARNING: Broken repository' \
   1.111 -	${EMAIL} alpar@cs.elte.hu
   1.112 -fi
   1.113 -    
   1.114 -#    rm ${LOGFILE}
   1.115 -rm ${ROOT}/queue/$REV
   1.116 -