Index: trunk/psLib/test/FullUnitTest
===================================================================
--- trunk/psLib/test/FullUnitTest	(revision 3690)
+++ trunk/psLib/test/FullUnitTest	(revision 3885)
@@ -5,20 +5,6 @@
 #  the script
 #
-#  SYNOSIS :  FullUnitTest options arguements
-#
-#       where  options =
-#             --verbose     Display extra information to user
-#             --noverbose   Don't display extra information to user
-#             --recursiv e  Recursively run tests in directory tree
-#             --norecursive Test only the specified or current directory
-#             --silent      Don't display any information to user
-#             --nosilent    Display progress of script to user
-#
-#              arguements = directory(ies) to perform tests
-#
-#  RETURN : integer number of tests which failed
-#
-#  $Revision: 1.22 $  $Name: not supported by cvs2svn $
-#  $Date: 2005-04-09 00:04:57 $
+#  $Revision: 1.23 $  $Name: not supported by cvs2svn $
+#  $Date: 2005-05-11 23:46:07 $
 #
 #  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -36,4 +22,5 @@
 use Getopt::Long;
 
+$recursive=1;
 # Assign variables based on the presence of command line options to the script
 # The ! option allows for --nooption to be set to zero
@@ -43,23 +30,32 @@
     "recursive!" => \$recursive,
     "silent!"    => \$silent,
-    "clean!"     => \$clean
+    "clean!"     => \$clean,
+    "makeonly!"  => \$makeonly,
+    "help!"      => \$help
 );
+
+if ($help) {
+    printf <<'HELPTEXT';
+SYNPOSIS :  FullUnitTest [options] [arguments]
+
+    where:
+        options =
+            --help        Print this help text
+            --verbose     Display extra information to user
+            --norecursive Test only the specified or current directory
+            --silent      Don't display any information to user
+            --clean       Perform a 'make clean' before making tests
+            --makeonly    Only make the test drivers, don't execute them
+
+        arguments = directory(ies) to perform tests [if not specified, assumes ',']
+
+    RETURN : integer number of tests which failed
+
+HELPTEXT
+    exit;
+}
 
 # Check if both silent and verbose options are set and if so stop the script
 die "Can't specify both verbose and silent options." if ( $verbose && $silent );
-
-# Set up the PSLIB_ROOT environment variable if the user doesn't have
-if ( !$ENV{'PSLIB_ROOT'} ) {
-
-    # Use the directory directly above where FullUnitTest script resides
-    $PSLIB_ROOT = `cd ..;pwd`;
-
-    # Remove newline for the end of path returned
-    chomp($PSLIB_ROOT);
-
-    # Set the environment variable
-    $ENV{'PSLIB_ROOT'} = $PSLIB_ROOT;
-    print("PSLIB_ROOT not found: set to $PSLIB_ROOT.\n") if $verbose;
-}
 
 # add PSLIB_ROOT/lib to LD_LIBRARY_PATH and DYLD_LIBRARY_PATH environment
@@ -80,4 +76,9 @@
 $args = 0;
 
+# check if no arguments -- if so, we should process current directory
+if ($args == 0) {
+    push(@ARGV,$ENV{"PWD"});
+}
+
 # Loop through all the arguements passed to the script
 foreach (@ARGV) {
@@ -106,20 +107,11 @@
         # Invoke subroutines to run the test at the specified directory
         &makeTestDrivers($_);
-        &executeTestDrivers($_);
+        if (! $makeonly) {
+            &executeTestDrivers($_);
+        }
     }
 
     # Change directory back to the directory where FullUnitTest was invoked
     chdir($cwd);
-}
-
-# Check if there were no arguements specified
-if ( $args == 0 ) {
-
-    # Display message to user that all directories under the current will be
-    # tested
-    print("Recursively testing current directory tree.\n") if $verbose;
-
-    # Invoke subroutine to go to recursively test each directory in tree
-    &worm( $ENV{"PWD"} );
 }
 
@@ -174,6 +166,8 @@
     &makeTestDrivers($base_dir);
 
-    # Invoke subroutine to execute tests in the base directory
-    &executeTestDrivers($base_dir);
+    if (! $makeonly) {
+        # Invoke subroutine to execute tests in the base directory
+        &executeTestDrivers($base_dir);
+    }
 
     # Create array of entries found in directory
