| #!/bin/sh |
| |
| EXEC_PATH="`dirname $0`" |
| |
| # Source the configuration file. |
| . "$EXEC_PATH/svntest-config.sh" |
| |
| # Compute local vars |
| LOG_FILE="$LOG_FILE_PREFIX.update" |
| |
| CVS_UPDATE_REGEXP_1='^[UPARMC] \(\(docs\)\|\(STATUS\)\|\(CHANGES\)\)' |
| CVS_UPDATE_REGEXP_2='^[UPARMC] [A-Za-z]' |
| |
| # |
| # If update status file contains already |
| # '0' (== don't rebuild) then update value, |
| # otherwise, honor current 'rebuild needed' (1) |
| # value, and don't update it because |
| # current rebuild value could be '0' |
| # arg1 := cvs update log file |
| # arg2 := rebuild flag file |
| # |
| UPDATE_REBUILD_FLAG () { |
| local CVS_UP_LOGFILE="$1" |
| local RB_FILE="$2" |
| local CVS_UP_STATUS=1 |
| |
| $GREP -qv "$UPDATE_REGEXP_1" "$CVS_UP_LOGFILE" \ |
| | $GREP -q "$UPDATE_REGEXP_2" > /dev/null 2>&1 |
| CVS_UP_STATUS="$?" |
| |
| if test ! -f "$RB_FILE" |
| then |
| echo "1" > "$RB_FILE" |
| elif test 0 -eq `$CAT "$RB_FILE"` |
| then |
| if test "$CVS_UP_STATUS" -eq 0 |
| then |
| echo "1" > "$RB_FILE" |
| else |
| echo "0" > "$RB_FILE" |
| fi |
| fi |
| } |
| |
| # Update apr, apr-util, httpd |
| START "update $APR_NAME" "Updating $APR_NAME..." |
| cd $APR_REPO && $CVS -f -q -z6 update -d -P > "$TEST_ROOT/LOG_up_apr" 2>&1 |
| test $? = 0 || { |
| FAIL_LOG "$TEST_ROOT/LOG_up_apr" |
| FAIL |
| } |
| PASS |
| UPDATE_REBUILD_FLAG "$TEST_ROOT/LOG_up_apr" "$APR_REPO.rb" |
| |
| START "update $APU_NAME" "Updating $APU_NAME..." |
| cd $APU_REPO && $CVS -f -q -z6 update -d -P > "$TEST_ROOT/LOG_up_apu" 2>&1 |
| test $? = 0 || { |
| FAIL_LOG "$TEST_ROOT/LOG_up_apu" |
| FAIL |
| } |
| PASS |
| UPDATE_REBUILD_FLAG "$TEST_ROOT/LOG_up_apu" "$APU_REPO.rb" |
| |
| START "update $HTTPD_NAME" "Updating $HTTPD_NAME..." |
| cd $HTTPD_REPO && $CVS -f -q -z6 update -d -P > "$TEST_ROOT/LOG_up_httpd" 2>&1 |
| test $? = 0 || { |
| FAIL_LOG "$TEST_ROOT/LOG_up_httpd" |
| FAIL |
| } |
| PASS |
| UPDATE_REBUILD_FLAG "$TEST_ROOT/LOG_up_httpd" "$HTTPD_REPO.rb" |
| |
| # Update svn |
| START "update subversion" "Updating Subversion..." |
| cd $SVN_REPO && $SVN update > "$TEST_ROOT/LOG_up_svn" 2>&1 |
| test $? = 0 || { |
| FAIL_LOG "$TEST_ROOT/LOG_up_svn" |
| FAIL |
| } |
| PASS |
| |
| # Run autogen.sh |
| START "autogen.sh" "Running autogen.sh..." |
| cd $SVN_REPO && ./autogen.sh > "$TEST_ROOT/LOG_svn_autogen" 2>&1 |
| test $? = 0 || { |
| FAIL_LOG "$TEST_ROOT/LOG_svn_autogen" |
| FAIL |
| } |
| PASS |