[project @ 2002-09-18 06:34:07 by mthomas]
[ghc-hetmet.git] / glafp-utils / runstdtest / runstdtest.prl
index 3befe89..1d62fc9 100644 (file)
@@ -2,7 +2,7 @@
 # The perl script requires the following variables to be bound
 # to something meaningful before it will operate correctly:
 #   
-#   TMPDIR
+#   DEFAULT_TMPDIR
 #   CONTEXT_DIFF
 #   RM
 #
@@ -51,8 +51,8 @@ $PgmStdinFile  = '/dev/null';
 if ( $ENV{'TMPDIR'} ) { # where to make tmp file names
     $TmpPrefix = $ENV{'TMPDIR'};
 } else {
-    $TmpPrefix ="$TMPDIR";
-    $ENV{'TMPDIR'} = "$TMPDIR"; # set the env var as well
+    $TmpPrefix ="$DEFAULT_TMPDIR";
+    $ENV{'TMPDIR'} = "$DEFAULT_TMPDIR"; # set the env var as well
 }
 $ScriptFile = "$TmpPrefix/run_me$$";
 $DefaultStdoutFile = "$TmpPrefix/no_stdout$$"; # can't use /dev/null (e.g. Alphas)
@@ -73,7 +73,7 @@ $CacheProf = 'no';
 die "$Pgm: program to run not given as first argument\n" if $#ARGV < 0;
 $ToRun = $ARGV[0]; shift(@ARGV);
 # avoid picking up same-named thing from somewhere else on $PATH...
-$ToRun = "./$ToRun" if $ToRun !~ /^\//;
+$ToRun = "./$ToRun" if -e "./$ToRun";
 
 arg: while ($_ = $ARGV[0]) {
     shift(@ARGV);
@@ -174,6 +174,7 @@ if ( $SysSpecificTiming =~ /^ghc/ ) {
 if ($PreScript ne '') {
     local($to_do);
     $PreScriptLines = `cat $PreScript`;
+    $PreScriptLines =~ s/\r//g;
 } else {
     $PreScriptLines = '';
 }
@@ -181,6 +182,7 @@ if ($PreScript ne '') {
 if ($PostScript ne '') {
     local($to_do);
     $PostScriptLines = `cat $PostScript`;
+    $PostScriptLines =~ s/\r//g;
     $* = 1;
     $PostScriptLines =~ s#\$o1#$TmpPrefix/runtest$$.1#g;
     $PostScriptLines =~ s#\$o2#$TmpPrefix/runtest$$.2#g;
@@ -237,11 +239,11 @@ else
        cp $TmpPrefix/runtest$$.1 $PgmStdoutFile[0]
     fi
 fi
-egrep -v '^ld\.so:.*has older revision than expected' < $TmpPrefix/runtest$$.2 > $TmpPrefix/runtest$$.2b
-mv -f $TmpPrefix/runtest$$.2b $TmpPrefix/runtest$$.2
-egrep '^=== HEIMDALL: ' < $TmpPrefix/runtest$$.2 > $HeimdallStats
-egrep -v '^=== HEIMDALL: ' < $TmpPrefix/runtest$$.2 > $TmpPrefix/runtest$$.2b
-mv -f $TmpPrefix/runtest$$.2b $TmpPrefix/runtest$$.2
+if [ "$Heimdall" = "1" ]; then
+  egrep '^=== HEIMDALL: ' < $TmpPrefix/runtest$$.2 > $HeimdallStats
+fi
+# egrep -v '^=== HEIMDALL: ' < $TmpPrefix/runtest$$.2 > $TmpPrefix/runtest$$.2b
+# mv -f $TmpPrefix/runtest$$.2b $TmpPrefix/runtest$$.2
 
 hit='NO'
 for out_file in @PgmStderrFile ; do