summaryrefslogtreecommitdiff
path: root/bin/run_all_win32.pl
diff options
context:
space:
mode:
Diffstat (limited to 'bin/run_all_win32.pl')
-rwxr-xr-xbin/run_all_win32.pl94
1 files changed, 47 insertions, 47 deletions
diff --git a/bin/run_all_win32.pl b/bin/run_all_win32.pl
index 01fa7f8532b..645605ab7bf 100755
--- a/bin/run_all_win32.pl
+++ b/bin/run_all_win32.pl
@@ -1,48 +1,47 @@
# -*- perl -*-
# $Id$
#
-# This script execute the test programs (usually, other scripts) in
-# the RUN_LIST defined below. If it detects any problem it send email.
+# This script checkouts ACE from CVS, updates the "clone" directory,
+# compiles $ACE_ROOT/ace and $ACE_ROOT/tests and finally runs
+# $ACE_ROOT/tests/run_tests.sh.
#
-# This script requires ActivePerl for Win32 and libnet from CPAN.
+# If it detects any problem it send email.
#
-# Usage: run_all_win32.pl <log directory> <admin email address>
+# DO NOT invoke this script from your crontab, use
+# auto_compile_wrapper for that.
#
-# For example: run_all_win32.pl c:\log peter_pan@neverland.org
+# This script requires Perl5.
+#
+# TODO: Modify the script or split it in such a way that the main copy
+# can be obtained either using cvs or downloading the lastest beta
+# from the WWW.
+#
+
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# The first three lines above let this script run without specifying the
+# full path to perl, as long as it is in the user's PATH.
+# Taken from perlrun man page.
use Net::SMTP;
use File::Basename;
use FileHandle;
require POSIX;
-
# This is the module we will checkout, someday someone could define a
# smaller module.
$MODULE='ACE_wrappers';
-# The following are for redirecting execution results to temporary files.
-$exe_log_name='run_test.log'; # Name of the tempfile used.
-
-# If using 'sh'.
-$sh_cmd="c:/bin/sh ";
-$sh_redirection=" > $exe_log_name 2>&1";
-
-#if using '4nt'
-$four_nt_cmd="d:/Utils/4NT301/4NT.EXE ";
-$four_nt_redirection=" >& $exe_log_name";
-
-# Pick the one your like.
-$shell_invoke = $sh_cmd;
-$redirect_output = $sh_redirection;
-
# This are the pairs "sub-directory , script" we run; the separator
# *must* be a space followed by a comma and then another space.
-@RUN_LIST = (
- 'tests , run_tests.bat',
- 'TAO/tests/Param_Test , run_test.pl',
- 'TAO/tests/Param_Test , run_test.pl -i dii',
- 'TAO/performance-tests/Cubit/TAO/IDL_Cubit , run_test.pl',
+@RUN_LIST =
+ ( 'tests , run_tests.bat',
+ 'TAO/tests/Param_Test , run_test.pl',
+ 'TAO/tests/Param_Test , run_test.pl -i dii',
+ 'TAO/performance-tests/Cubit/TAO/IDL_Cubit , run_test.pl',
'TAO/tests/OctetSeq , run_test.pl',
'TAO/tests/Multiple_Inheritance , run_test.pl',
'TAO/tests/MT_Client , run_test.pl',
@@ -53,16 +52,16 @@ $redirect_output = $sh_redirection;
'TAO/tests/POA/Identity , run_test.pl',
'TAO/tests/POA/Destruction , run_test.pl',
'TAO/tests/IORManipulation , run_test.pl',
- 'TAO/examples/POA/Adapter_Activator , run_test.pl',
- 'TAO/examples/POA/DSI , run_test.pl',
- 'TAO/examples/POA/Default_Servant , run_test.pl',
- 'TAO/examples/POA/Explicit_Activation , run_test.pl',
- 'TAO/examples/POA/FindPOA , run_test.pl',
- 'TAO/examples/POA/Forwarding , run_test.pl',
- 'TAO/examples/POA/NewPOA , run_test.pl',
- 'TAO/examples/POA/On_Demand_Activation , run_test.pl',
- 'TAO/examples/POA/On_Demand_Loading , run_test.pl',
- 'TAO/examples/POA/Reference_Counted_Servant , run_test.pl',
+ 'TAO/examples/POA/Adapter_Activator , run_test.pl',
+ 'TAO/examples/POA/DSI , run_test.pl',
+ 'TAO/examples/POA/Default_Servant , run_test.pl',
+ 'TAO/examples/POA/Explicit_Activation , run_test.pl',
+ 'TAO/examples/POA/FindPOA , run_test.pl',
+ 'TAO/examples/POA/Forwarding , run_test.pl',
+ 'TAO/examples/POA/NewPOA , run_test.pl',
+ 'TAO/examples/POA/On_Demand_Activation , run_test.pl',
+ 'TAO/examples/POA/On_Demand_Loading , run_test.pl',
+ 'TAO/examples/POA/Reference_Counted_Servant , run_test.pl',
'TAO/examples/Simple/bank , run_test.pl',
'TAO/examples/Simple/grid , run_test.pl',
'TAO/examples/Simple/time-date , run_test.pl',
@@ -80,7 +79,7 @@ $redirect_output = $sh_redirection;
'TAO/examples/Simple/echo , run_test.pl < Echo.idl',
# 'TAO/examples/Simple/chat , run_test.pl',
'TAO/orbsvcs/tests/Property , run_test.pl',
- 'TAO/performance-tests/POA/Object_Creation_And_Registration , run_test.pl',
+ 'TAO/performance-tests/POA/Object_Creation_And_Registration , run_test.pl',
'TAO/performance-tests/Cubit/TAO/MT_Cubit , run_test.pl -n 100'
# 'TAO/orbsvcs/tests/ImplRepo , run_test.pl airplane',
# 'TAO/orbsvcs/tests/ImplRepo , run_test.pl airplane_ir',
@@ -95,8 +94,11 @@ $CMD = basename($0);
# Extract configuration information from command line.
# TODO: Some validation and checking should be done here.
-$LOGDIR = $ARGV[0];
-$ADMIN = $ARGV[1];
+$CHECKOUT = $ARGV[0];
+$BUILD = $ARGV[1];
+$LOGDIR = $ARGV[2];
+$ADMIN = $ARGV[3];
+$MAKEFLAGS = $ARGV[4];
# When an error is found we try to die gracefully and send some email
# to ADMIN.
@@ -187,11 +189,10 @@ foreach $i (@RUN_LIST) {
|| mydie "cannot chdir to $subdir";
$run_error = 0;
-
- system ($shell_invoke . " " . $program . " " . $redirect_output);
-
- open (RUN, "$exe_log_name") || push @failures, "Can't open execution log file $exe_log_name\n";
-
+ if (open(RUN, "$program 2>&1 |") == 0) {
+ push @failures, "cannot run $program in $directory";
+ next;
+ }
while (<RUN>) {
print LOG $_;
if (m/^Error/ || m/FAILED/ || m/EXCEPTION/) {
@@ -199,7 +200,7 @@ foreach $i (@RUN_LIST) {
}
}
if (close(RUN) == 0) {
- push @failures, "Error when closing log file $program in $directory";
+ push @failures, "Error when closing pipe for $program in $directory";
next;
}
$date = localtime;
@@ -209,8 +210,6 @@ foreach $i (@RUN_LIST) {
push @failures,
"errors detected while running $program in $directory";
}
-
- unlink ("$exe_log_name");
}
if ($#failures >= 0) {
@@ -228,3 +227,4 @@ unlink $disable_file
|| mydie "cannot unlink disable file";
exit 0;
+