Index: /trunk/psLib/test/collections/Makefile
===================================================================
--- /trunk/psLib/test/collections/Makefile	(revision 1211)
+++ /trunk/psLib/test/collections/Makefile	(revision 1212)
@@ -3,6 +3,6 @@
 ##  Makefile:   test/collections
 ##
-##  $Revision: 1.17 $  $Name: not supported by cvs2svn $
-##  $Date: 2004-07-01 21:45:54 $
+##  $Revision: 1.18 $  $Name: not supported by cvs2svn $
+##  $Date: 2004-07-13 01:37:58 $
 ##
 ##  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -16,7 +16,6 @@
 include ../../src/Makefile.Globals
 
-PSLIB_INCL_DIR = ../../include
-
-PSLIB_LIB_DIR = ../../lib
+CFLAGS := -I../../include $(CFLAGS)
+LDFLAGS := -L../../lib -lpslib -lpstest $(LDFLAGS)
 
 TARGET = tst_psVector_01 \
@@ -38,41 +37,14 @@
          tst_psList
 
-DEPENDENCIES = $(addprefix builddir/,$(addsuffix .d,$(TARGET)))
-OBJS = $(addprefix builddir/,$(addsuffix .o,$(TARGET)))
+OBJS = $(addsuffix .o,$(TARGET))
 
-all: builddir $(TARGET)
-
-builddir:
-	mkdir builddir
-
-include $(DEPENDENCIES)
+all: $(TARGET)
 
 clean:
 	@echo "    Deleting executable and binary files for 'test/collections'"
-	$(RM) $(OBJS) *.lint builddir/*.i
+	$(RM) $(OBJS)
 
 distclean: clean
 	$(RM) $(TARGET)
-
-cleandependencies:
-	$(RM) $(DEPENDENCIES)
-
-builddir/%.o : builddir/%.i
-	$(CC) $(CFLAGS) -I$(PSLIB_INCL_DIR) -c -o $@ $<
-
-builddir/%.o : %.c
-	$(CC) $(CFLAGS) -I$(PSLIB_INCL_DIR) -c -o $@ $<
-
-%   : builddir/%.o
-	$(CC) -o $@ $< -L$(PSLIB_LIB_DIR) -lpslib -lpstest $(LDFLAGS)
-
-%.lint: %.c
-	splint +posixlib -exportlocal -realcompare $(INCLUDE_GLOBAL) $? > $@; cat $@
-
-builddir/%.i: %.c
-	$(CC) -E $(CFLAGS) $(CPPFLAGS) -I$(PSLIB_INCL_DIR) -o $@ $<
-
-builddir/%.d: %.c
-	$(CC) -MM $(CFLAGS) -I$(PSLIB_INCL_DIR) $< | sed 's|\(.*\.o\)|builddir/\1|' > $@
 
 install: $(testbindir) $(testbindir)/verified $(TARGET)
Index: /trunk/psLib/test/collections/builddir/tst_psImage.d
===================================================================
--- /trunk/psLib/test/collections/builddir/tst_psImage.d	(revision 1211)
+++ /trunk/psLib/test/collections/builddir/tst_psImage.d	(revision 1212)
@@ -7,3 +7,5 @@
   ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
   ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h
+  ../../include/psFFT.h ../../include/psImageIO.h \
+  ../../include/psImageManip.h ../../include/psFunctions.h \
+  ../../include/psMinimize.h
Index: /trunk/psLib/test/dataManip/Makefile
===================================================================
--- /trunk/psLib/test/dataManip/Makefile	(revision 1211)
+++ /trunk/psLib/test/dataManip/Makefile	(revision 1212)
@@ -3,6 +3,6 @@
 ##  Makefile:   test/sysUtils
 ##
-##  $Revision: 1.32 $  $Name: not supported by cvs2svn $
-##  $Date: 2004-07-07 02:39:21 $
+##  $Revision: 1.33 $  $Name: not supported by cvs2svn $
+##  $Date: 2004-07-13 01:37:59 $
 ##
 ##  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -10,99 +10,74 @@
 ###############################################################################
 
+ifndef prefix
+    export prefix=$(shell cd ../..;pwd)
+endif
+
 include ../../src/Makefile.Globals
 
-PSLIB_INCL_DIR = ../../include
+CFLAGS := -I../../include $(CFLAGS)
+LDFLAGS := -L../../lib -lpslib -lpstest $(LDFLAGS)
 
-PSLIB_LIB_DIR = ../../lib
+TARGET = \
+tst_psFunc00 \
+tst_psFunc01 \
+tst_psHist00 \
+tst_psHist01 \
+tst_psHist02 \
+tst_psImageFFT \
+tst_psImageIO \
+tst_psImageManip \
+tst_psImageStats00 \
+tst_psImageStats01 \
+tst_psImageStats02 \
+tst_psImageStats03 \
+tst_psMatrix01 \
+tst_psMatrix02 \
+tst_psMatrix03 \
+tst_psMatrix04 \
+tst_psMatrix05 \
+tst_psMatrix06 \
+tst_psMatrix07 \
+tst_psMatrixVectorArithmetic01 \
+tst_psMatrixVectorArithmetic02 \
+tst_psMatrixVectorArithmetic03 \
+tst_psMinimize00 \
+tst_psMinimize01 \
+tst_psMinimize02 \
+tst_psMinimize03 \
+tst_psMinimize04 \
+tst_psStats00 \
+tst_psStats01 \
+tst_psStats02 \
+tst_psStats03 \
+tst_psStats05 \
+tst_psStats06 \
+tst_psStats07 \
+tst_psStats08 \
+tst_psStats09 \
+tst_psVectorFFT 
 
-TARGET = tst_psMatrix01 \
- tst_psMatrix02 \
- tst_psMatrix03 \
- tst_psMatrix04 \
- tst_psMatrix05 \
- tst_psMatrix06 \
- tst_psMatrix07 \
- tst_psMatrixVectorArithmetic01 \
- tst_psMatrixVectorArithmetic02 \
- tst_psMatrixVectorArithmetic03 \
- tst_psStats00 \
- tst_psStats01 \
- tst_psStats02 \
- tst_psStats03 \
- tst_psStats05 \
- tst_psStats06 \
- tst_psStats07 \
- tst_psStats08 \
- tst_psStats09 \
- tst_psHist00 \
- tst_psHist01 \
- tst_psHist02 \
- tst_psFunc00 \
- tst_psFunc01 \
- tst_psMinimize00 \
- tst_psMinimize01 \
- tst_psMinimize02 \
- tst_psMinimize03 \
- tst_psImageStats00 \
- tst_psImageStats01 \
- tst_psImageStats02
+OBJS = $(addsuffix .o,$(TARGET))
 
 all: $(TARGET)
 
-tst_psMatrix01:         tst_psMatrix01.o
-tst_psMatrix02:         tst_psMatrix02.o
-tst_psMatrix03:         tst_psMatrix03.o
-tst_psMatrix04:         tst_psMatrix04.o
-tst_psMatrix05:         tst_psMatrix05.o
-tst_psMatrix06:         tst_psMatrix06.o
-tst_psMatrix07:         tst_psMatrix07.o
-tst_psMatrixVectorArithmetic01: tst_psMatrixVectorArithmetic01.o
-tst_psMatrixVectorArithmetic02: tst_psMatrixVectorArithmetic02.o
-tst_psMatrixVectorArithmetic03: tst_psMatrixVectorArithmetic03.o
-tst_psStats00:		tst_psStats00.o
-tst_psStats01:		tst_psStats01.o
-tst_psStats02:		tst_psStats02.o
-tst_psStats03:		tst_psStats03.o
-tst_psStats04:		tst_psStats04.o
-tst_psStats05:		tst_psStats05.o
-tst_psStats06:		tst_psStats06.o
-tst_psStats07:		tst_psStats07.o
-tst_psStats08:		tst_psStats08.o
-tst_psStats09:		tst_psStats09.o
-tst_psHist00:		tst_psHist00.o
-tst_psHist01:		tst_psHist01.o
-tst_psHist02:		tst_psHist02.o
-tst_psFunc00:		tst_psFunc00.o
-tst_psFunc01:		tst_psFunc01.o
-tst_psFunc02:		tst_psFunc02.o
-tst_psFunc03:		tst_psFunc03.o
-tst_psMinimize00:	tst_psMinimize00.o
-tst_psMinimize01:	tst_psMinimize01.o
-tst_psMinimize02:	tst_psMinimize02.o
-tst_psMinimize03:	tst_psMinimize03.o
-tst_psMinimize04:	tst_psMinimize04.o
-tst_psMinimize05:	tst_psMinimize05.o
-tst_psImageStats00:	tst_psImageStats00.o
-tst_psImageStats01:	tst_psImageStats01.o
-tst_psImageStats02:	tst_psImageStats02.o
-tst_psImageStats03:	tst_psImageStats03.o
+# include $(DEPENDENCIES)
 
 clean:
-	@echo "    Deleting executable and binary files for 'test/sysUtils'"
-	$(RM) $(TARGET) *.o *.lint
+	@echo "    Deleting executable and binary files for 'test/collections'"
+	$(RM) $(OBJS)
 
-%.o : %.c
-	$(CC) $(CFLAGS) $(CPPFLAGS) -I.. -I$(PSLIB_INCL_DIR) -c -o $@ $<
-
-%   : %.o
-	$(CC) -o $@ $< -L$(PSLIB_LIB_DIR) -lpslib -lpstest -lgsl -lgslcblas $(LDFLAGS)
-
-## NOTE: The distclean target does not remove the .o files.  The Makefiles must
-## be repaired.
-distclean:
+distclean: clean
 	$(RM) $(TARGET)
 
-%.lint: %.c
-	splint +posixlib -exportlocal -realcompare $(INCLUDE_GLOBAL) $? > $@; cat $@
+install: $(testbindir) $(testbindir)/verified $(TARGET)
+	install $(TARGET) $(testbindir)
+	install verified/*.stderr verified/*.stdout $(testbindir)/verified
+
+$(testbindir):
+	mkdir -p $(testbindir)
+
+$(testbindir)/verified:
+	mkdir -p $(testbindir)/verified
 
 
Index: /trunk/psLib/test/image/tst_psImage.c
===================================================================
--- /trunk/psLib/test/image/tst_psImage.c	(revision 1211)
+++ /trunk/psLib/test/image/tst_psImage.c	(revision 1212)
@@ -6,6 +6,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.20 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-07-08 01:05:01 $
+ *  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-07-13 01:37:58 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -24,7 +24,4 @@
 static int testImageSubset(void);
 static int testImageCopy(void);
-static int testImageClip(void);
-static int testImageClipNAN(void);
-static int testImageOverlay(void);
 
 testDescription tests[] = {
@@ -34,7 +31,4 @@
                               {testImageSubset,550,"psImageSubset",0,true},
                               {testImageCopy,551,"psImageCopy",0,false},
-                              {testImageClip,571,"psImageClip",0,false},
-                              {testImageClipNAN,572,"psImageClipNAN",0,false},
-                              {testImageOverlay,573,"psImageOverlay",0,false},
                               {NULL}
                           };
@@ -623,418 +617,2 @@
 }
 
-int testImageClip(void)
-{
-    psImage* img = NULL;
-    unsigned int c = 128;
-    unsigned int r = 256;
-    psF32 min;
-    psF32 max;
-    int numClipped = 0;
-    int retVal;
-
-    psLogMsg(__func__,PS_LOG_INFO,
-             "psImageClip shall limit the minimum and maximum data value within a psImage structure");
-
-    /*
-
-        psImageClip shall limit the minimum and maximum data value within a
-        psImage structure to a specified min and max value.
-
-        Verify the returned integer is equal to the number of pixels clipped,
-        if the input psImage structure contains known values and input parameters
-        min and max have know values.
-
-        Verify the psImage structure specified by the input parameter input is
-        modified to contain the expected values, if the input psImage structure
-        contains known values, min and max are specified and vmin and vmax
-        parameters are known.
-
-        Verify the retuned integer is zero, psImage structure input is unmodified
-        and program executions doesn't stop, if input parameter psImage structure
-        pointer is null.
-
-        Verify the retuned integer is zero, psImage structure input is unmodified
-        and program executions doesn't stop, if input parameter min is larger than max.
-    */
-
-    // create image
-    #define testImageClipByType(datatype) \
-    img = psImageAlloc(c,r,PS_TYPE_##datatype); \
-    for (unsigned int row=0;row<r;row++) { \
-        ps##datatype* imgRow = img->data.datatype[row]; \
-        for (unsigned int col=0;col<c;col++) { \
-            imgRow[col] = (ps##datatype)(row+col); \
-        } \
-    } \
-    min = (float)r/2.0f; \
-    max = (float)r; \
-    \
-    retVal = psImageClip(img,min,-1.0f,max,-2.0f); \
-    \
-    numClipped = 0; \
-    for (unsigned int row=0;row<r;row++) { \
-        ps##datatype* imgRow = img->data.datatype[row]; \
-        for (unsigned int col=0;col<c;col++) { \
-            ps##datatype value = (ps##datatype)(row+col); \
-            if (value < (ps##datatype)min) { \
-                numClipped++; \
-                value = -1; \
-            } else if (value > (ps##datatype)max) { \
-                numClipped++; \
-                value = -2; \
-            } \
-            if (fabsf(imgRow[col]-value) > FLT_EPSILON) { \
-                psError(__func__,"Pixel value is not as expected (%d vs %d) at %u,%u", \
-                        imgRow[col],value,col,row); \
-                return 1; \
-            } \
-        } \
-    } \
-    if (retVal != numClipped) { \
-        psError(__func__,"Expected %d clips, but got %d", \
-                numClipped,retVal); \
-        return 2; \
-    } \
-    psFree(img);
-
-    #define testImageClipByComplexType(datatype) \
-    img = psImageAlloc(c,r,PS_TYPE_##datatype); \
-    for (unsigned int row=0;row<r;row++) { \
-        ps##datatype* imgRow = img->data.datatype[row]; \
-        for (unsigned int col=0;col<c;col++) { \
-            imgRow[col] = (ps##datatype)(row+I*col); \
-        } \
-    } \
-    min = (float)r/2.0f; \
-    max = (float)r; \
-    \
-    retVal = psImageClip(img,min,-1.0f,max,-2.0f); \
-    \
-    numClipped = 0; \
-    for (unsigned int row=0;row<r;row++) { \
-        ps##datatype* imgRow = img->data.datatype[row]; \
-        for (unsigned int col=0;col<c;col++) { \
-            ps##datatype value = row+I*col; \
-            if (cabs(value) < min) { \
-                numClipped++; \
-                value = -1.0f; \
-            } else if (cabs(value) > max) { \
-                numClipped++; \
-                value = -2.0f; \
-            } \
-            if (fabsf(creal(imgRow[col])-creal(value)) > FLT_EPSILON || \
-                    fabsf(cimag(imgRow[col])-cimag(value)) > FLT_EPSILON) { \
-                psError(__func__,"Pixel value is not as expected (%.2f+%.2fi vs %.2f+%.2fi) at %u,%u", \
-                        creal(imgRow[col]),cimag(imgRow[col]),creal(value),cimag(value),col,row); \
-                return 1; \
-            } \
-        } \
-    } \
-    if (retVal != numClipped) { \
-        psError(__func__,"Expected %d clips, but got %d", \
-                numClipped,retVal); \
-        return 2; \
-    } \
-    psFree(img);
-
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of F64 imagery");
-    testImageClipByType(F64);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of F32 imagery");
-    testImageClipByType(F32);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of S32 imagery");
-    testImageClipByType(S32);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of S16 imagery");
-    testImageClipByType(S16);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of S8 imagery");
-    testImageClipByType(S8);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of U32 imagery");
-    testImageClipByType(U32);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of U16 imagery");
-    testImageClipByType(U16);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of U8 imagery");
-    testImageClipByType(U8);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of C32 imagery");
-    testImageClipByComplexType(C32);
-    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of C64 imagery");
-    testImageClipByComplexType(C64);
-
-    // Verify the retuned integer is zero, psImage structure input is unmodified
-    // and program executions doesn't stop, if input parameter psImage structure
-    // pointer is null.
-    retVal = psImageClip(NULL,min,-1.0f,max,-2.0f);
-    if (retVal != 0) {
-        psError(__func__,"Expected zero return for clips of a NULL image.");
-        return 3;
-    }
-
-    // Verify the retuned integer is zero, psImage structure input is unmodified
-    // and program executions doesn't stop, if input parameter min is larger than max.
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error (max<min)");
-    retVal = psImageClip(img,max,-1.0f,min,-2.0f);
-    if (retVal != 0) {
-        psError(__func__,"Expected zero return for clips when max < min.");
-        return 4;
-    }
-
-    return 0;
-}
-
-int testImageClipNAN(void)
-{
-    psImage* img = NULL;
-    unsigned int c = 128;
-    unsigned int r = 256;
-    int numClipped = 0;
-    int retVal;
-
-    psLogMsg(__func__,PS_LOG_INFO,
-             "psImageClipNaN shall modified pixel values of NaN with a specified value");
-
-    /*
-        psImageClipNaN shall modify a psImage structure with pixel values set
-        to NaN to a value specified as an input parameter.
-
-        Verify the returned integer is equal to the number of pixels modified
-        and the psImage is modified at locations where NaN pixels where
-        located to the value specified in the input parameter value.
-
-        Verify the returned integer is zero and program execution doesn't stop,
-        if the input parameter psImage structure pointer is null.
-    */
-
-    // create image
-    #define testImageClipNaNByType(datatype) \
-    img = psImageAlloc(c,r,PS_TYPE_##datatype); \
-    for (unsigned row=0;row<r;row++) { \
-        ps##datatype* imgRow = img->data.datatype[row]; \
-        for (unsigned col=0;col<c;col++) { \
-            if (row == col) { \
-                imgRow[col] = NAN; \
-            } else if (row+1 == col) { \
-                imgRow[col] = INFINITY; \
-            } else { \
-                imgRow[col] = (ps##datatype)(row+col); \
-            } \
-        } \
-    } \
-    \
-    retVal = psImageClipNaN(img,-1.0f); \
-    \
-    numClipped = 0; \
-    for (unsigned row=0;row<r;row++) { \
-        ps##datatype* imgRow = img->data.datatype[row]; \
-        for (unsigned col=0;col<c;col++) { \
-            ps##datatype value = (ps##datatype)(row+col); \
-            if ( (row == col) || (row+1 == col) ) { \
-                numClipped++; \
-                value = -1.0; \
-            } \
-            if (fabsf(imgRow[col]-value) > FLT_EPSILON) { \
-                psError(__func__,"Pixel value is not as expected (%f vs %f) at %d,%d", \
-                        imgRow[col],value,col,row); \
-                return 1; \
-            } \
-        } \
-    } \
-    if (retVal != numClipped) { \
-        psError(__func__,"Expected %d clips, but got %d", \
-                numClipped,retVal); \
-        return 2; \
-    } \
-    psFree(img);
-
-    testImageClipNaNByType(F32);
-    testImageClipNaNByType(F64);
-
-    // Verify the retuned integer is zero, psImage structure input is unmodified
-    // and program executions doesn't stop, if input parameter psImage structure
-    // pointer is null.
-    retVal = psImageClipNaN(NULL,-1.0f);
-    if (retVal != 0) {
-        psError(__func__,"Expected zero return for clips of a NULL image.");
-        return 3;
-    }
-
-    return 0;
-}
-
-int testImageOverlay(void)
-{
-
-    psImage* img = NULL;
-    psImage* img2 = NULL;
-    unsigned int c = 128;
-    unsigned int r = 256;
-    int retVal;
-
-    /*
-    psImageSectionOverlay shall modified pixel values in a psImage structure to
-    be equal to the value of the originaldata and an overlay image with a
-    specified operation. Valid operations include =, +, -, *, /.
-
-    Verify the returned integer is zero
-    and the input parameter psImage structure is modified at the specified
-    location and range with the given overlay image and the specified
-    function. Cases should include all the valid operations. Comparison of
-    expected values should include a delta to allow for testing on
-    different platforms.
-
-    */
-
-
-
-    #define testOverlayTypeOP(DATATYPE,OP,OPSTRING) \
-    img = psImageAlloc(c,r,PS_TYPE_##DATATYPE); \
-    for (unsigned row=0;row<r;row++) { \
-        ps##DATATYPE* imgRow = img->data.DATATYPE[row]; \
-        for (unsigned col=0;col<c;col++) { \
-            imgRow[col] = 6.0; \
-        } \
-    } \
-    img2 = psImageAlloc(c/2,r/2,PS_TYPE_##DATATYPE); \
-    for (unsigned row=0;row<r/2;row++) { \
-        ps##DATATYPE* img2Row = img2->data.DATATYPE[row]; \
-        for (unsigned col=0;col<c/2;col++) { \
-            img2Row[col] = 2.0; \
-        } \
-    } \
-    retVal = psImageOverlaySection(img,img2,c/4,r/4,OPSTRING); \
-    if (retVal != 0) { \
-        psError(__func__,"psImageOverlaySection returned non-zero %s op",OPSTRING); \
-        return 1; \
-    } \
-    for (unsigned row=0;row<r;row++) { \
-        ps##DATATYPE* imgRow = img->data.DATATYPE[row]; \
-        ps##DATATYPE* img2Row = img2->data.DATATYPE[row]; \
-        for (unsigned col=0;col<c;col++) { \
-            ps##DATATYPE val = 6.0; \
-            if ( ! (row < r/4 || row >= r/2+r/4 || col < c/4 || col >= c/2+c/4)) { \
-                val OP 2.0; \
-            } \
-            if (fabsf(imgRow[col] - val) > FLT_EPSILON) { \
-                psError(__func__,"Value incorrect at %d,%d (%.2f vs %.2f for %s)", \
-                        col,row,imgRow[col],val,OPSTRING); \
-                return 2; \
-            } \
-            if (row < r/2 && col < c/2 && fabsf(img2Row[col] - 2.0) > FLT_EPSILON) { \
-                psError(__func__,"Overlay modified at %d,%d (%.2f for %s)", \
-                        col,row,img2Row[col],OPSTRING); \
-                return 2; \
-            } \
-        } \
-    } \
-    psFree(img); \
-    psFree(img2);
-
-    #define testOverlayType(DATATYPE) \
-    testOverlayTypeOP(DATATYPE,+=,"+"); \
-    testOverlayTypeOP(DATATYPE,-=,"-"); \
-    testOverlayTypeOP(DATATYPE,*=,"*");\
-    testOverlayTypeOP(DATATYPE,/=,"/");\
-    testOverlayTypeOP(DATATYPE,=,"=");
-
-    testOverlayType(C64);
-    testOverlayType(C32);
-    testOverlayType(F64);
-    testOverlayType(F32);
-    testOverlayType(S16);
-    testOverlayType(S8);
-    testOverlayType(U16);
-    testOverlayType(U8);
-
-    /*
-    Verify the returned integer is equal to non-zero and the input psImage structure
-    is unmodified, if the overlay specified is not within the data range of the
-    input psImage structure.
-    */
-
-    img = psImageAlloc(c,r,PS_TYPE_F32);
-    for (unsigned row=0;row<r;row++) {
-        psF32* imgRow = img->data.F32[row];
-        for (unsigned col=0;col<c;col++) {
-            imgRow[col] = 6.0f;
-        }
-    }
-    img2 = psImageAlloc(c,r,PS_TYPE_F32);
-    for (unsigned row=0;row<r;row++) {
-        psF32* img2Row = img2->data.F32[row];
-        for (unsigned col=0;col<c;col++) {
-            img2Row[col] = 2.0f;
-        }
-    }
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should error as overlay isn't within image boundaries");
-    retVal = psImageOverlaySection(img,img2,c/4,r/4,"+");
-    if (retVal == 0) {
-        psError(__func__,"psImageOverlaySection returned zero even though "
-                "overlay too big");
-        return 3;
-    }
-    for (unsigned row=0;row<r;row++) {
-        psF32* imgRow = img->data.F32[row];
-        for (unsigned col=0;col<c;col++) {
-            if (imgRow[col] != 6.0f) {
-                psError(__func__,"Input image modified when overlay size too big");
-                return 4;
-            }
-        }
-    }
-
-    /*
-    Verify the returned integer is equal to non-zero, the input psImage
-    structure is unmodified and program execution doesn't stop, if the
-    overlay specified is null.
-    */
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should error as overlay is NULL");
-    retVal = psImageOverlaySection(img,NULL,c/4,r/4,"+");
-    if (retVal == 0) {
-        psError(__func__,"psImageOverlaySection returned zero even though "
-                "overlay too big");
-        return 5;
-    }
-    for (unsigned row=0;row<r;row++) {
-        psF32* imgRow = img->data.F32[row];
-        for (unsigned col=0;col<c;col++) {
-            if (imgRow[col] != 6.0f) {
-                psError(__func__,"Input image modified when overlay NULL");
-                return 6;
-            }
-        }
-    }
-
-    /*
-    Verify the returned integer is equal to non-zero and program execution
-    doesn't stop, if the input parameter image is null.
-    */
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should error as image input is NULL");
-    retVal = psImageOverlaySection(NULL,img2,c/4,r/4,"+");
-    if (retVal == 0) {
-        psError(__func__,"psImageOverlaySection returned zero even though "
-                "overlay too big");
-        return 7;
-    }
-
-    /*
-    Verify program execution doen't stop, if the overly image contains
-    zero values with division operation is specified.
-    */
-    for (unsigned row=0;row<r;row++) {
-        psF32* img2Row = img2->data.F32[row];
-        for (unsigned col=0;col<c;col++) {
-            img2Row[col] = 0.0f;
-        }
-    }
-    retVal = psImageOverlaySection(img,img2,0,0,"/");
-    if (retVal != 0) {
-        psError(__func__,"psImageOverlaySection returned non-zero when "
-                "checking divide-by-zero.");
-        return 8;
-    }
-
-    psFree(img);
-    psFree(img2);
-
-    return 0;
-}
Index: /trunk/psLib/test/image/tst_psImageManip.c
===================================================================
--- /trunk/psLib/test/image/tst_psImageManip.c	(revision 1212)
+++ /trunk/psLib/test/image/tst_psImageManip.c	(revision 1212)
@@ -0,0 +1,461 @@
+/** @file  tst_psImage.c
+ *
+ *  @brief Contains the tests for psImage.[ch]
+ *
+ *
+ *  @author Robert DeSonia, MHPCC
+ *
+ *  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-07-13 01:37:59 $
+ *
+ *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
+ */
+
+#include <math.h>
+#include <float.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "psTest.h"
+#include "pslib.h"
+#include "psType.h"
+
+static int testImageClip(void);
+static int testImageClipNAN(void);
+static int testImageOverlay(void);
+
+testDescription tests[] = {
+                              {testImageClip,571,"psImageClip",0,false},
+                              {testImageClipNAN,572,"psImageClipNAN",0,false},
+                              {testImageOverlay,573,"psImageOverlay",0,false},
+                              {NULL}
+                          };
+
+int main(int argc, char* argv[])
+{
+    psLogSetLevel(PS_LOG_INFO);
+
+    if (! runTestSuite(stderr,"psImage",tests,argc,argv)) {
+        psError(__FILE__,"One or more tests failed");
+        return 1;
+    }
+    return 0;
+}
+
+
+int testImageClip(void)
+{
+    psImage* img = NULL;
+    unsigned int c = 128;
+    unsigned int r = 256;
+    psF32 min;
+    psF32 max;
+    int numClipped = 0;
+    int retVal;
+
+    psLogMsg(__func__,PS_LOG_INFO,
+             "psImageClip shall limit the minimum and maximum data value within a psImage structure");
+
+    /*
+
+        psImageClip shall limit the minimum and maximum data value within a
+        psImage structure to a specified min and max value.
+
+        Verify the returned integer is equal to the number of pixels clipped,
+        if the input psImage structure contains known values and input parameters
+        min and max have know values.
+
+        Verify the psImage structure specified by the input parameter input is
+        modified to contain the expected values, if the input psImage structure
+        contains known values, min and max are specified and vmin and vmax
+        parameters are known.
+
+        Verify the retuned integer is zero, psImage structure input is unmodified
+        and program executions doesn't stop, if input parameter psImage structure
+        pointer is null.
+
+        Verify the retuned integer is zero, psImage structure input is unmodified
+        and program executions doesn't stop, if input parameter min is larger than max.
+    */
+
+    // create image
+    #define testImageClipByType(datatype) \
+    img = psImageAlloc(c,r,PS_TYPE_##datatype); \
+    for (unsigned int row=0;row<r;row++) { \
+        ps##datatype* imgRow = img->data.datatype[row]; \
+        for (unsigned int col=0;col<c;col++) { \
+            imgRow[col] = (ps##datatype)(row+col); \
+        } \
+    } \
+    min = (float)r/2.0f; \
+    max = (float)r; \
+    \
+    retVal = psImageClip(img,min,-1.0f,max,-2.0f); \
+    \
+    numClipped = 0; \
+    for (unsigned int row=0;row<r;row++) { \
+        ps##datatype* imgRow = img->data.datatype[row]; \
+        for (unsigned int col=0;col<c;col++) { \
+            ps##datatype value = (ps##datatype)(row+col); \
+            if (value < (ps##datatype)min) { \
+                numClipped++; \
+                value = -1; \
+            } else if (value > (ps##datatype)max) { \
+                numClipped++; \
+                value = -2; \
+            } \
+            if (fabsf(imgRow[col]-value) > FLT_EPSILON) { \
+                psError(__func__,"Pixel value is not as expected (%d vs %d) at %u,%u", \
+                        imgRow[col],value,col,row); \
+                return 1; \
+            } \
+        } \
+    } \
+    if (retVal != numClipped) { \
+        psError(__func__,"Expected %d clips, but got %d", \
+                numClipped,retVal); \
+        return 2; \
+    } \
+    psFree(img);
+
+    #define testImageClipByComplexType(datatype) \
+    img = psImageAlloc(c,r,PS_TYPE_##datatype); \
+    for (unsigned int row=0;row<r;row++) { \
+        ps##datatype* imgRow = img->data.datatype[row]; \
+        for (unsigned int col=0;col<c;col++) { \
+            imgRow[col] = (ps##datatype)(row+I*col); \
+        } \
+    } \
+    min = (float)r/2.0f; \
+    max = (float)r; \
+    \
+    retVal = psImageClip(img,min,-1.0f,max,-2.0f); \
+    \
+    numClipped = 0; \
+    for (unsigned int row=0;row<r;row++) { \
+        ps##datatype* imgRow = img->data.datatype[row]; \
+        for (unsigned int col=0;col<c;col++) { \
+            ps##datatype value = row+I*col; \
+            if (cabs(value) < min) { \
+                numClipped++; \
+                value = -1.0f; \
+            } else if (cabs(value) > max) { \
+                numClipped++; \
+                value = -2.0f; \
+            } \
+            if (fabsf(creal(imgRow[col])-creal(value)) > FLT_EPSILON || \
+                    fabsf(cimag(imgRow[col])-cimag(value)) > FLT_EPSILON) { \
+                psError(__func__,"Pixel value is not as expected (%.2f+%.2fi vs %.2f+%.2fi) at %u,%u", \
+                        creal(imgRow[col]),cimag(imgRow[col]),creal(value),cimag(value),col,row); \
+                return 1; \
+            } \
+        } \
+    } \
+    if (retVal != numClipped) { \
+        psError(__func__,"Expected %d clips, but got %d", \
+                numClipped,retVal); \
+        return 2; \
+    } \
+    psFree(img);
+
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of F64 imagery");
+    testImageClipByType(F64);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of F32 imagery");
+    testImageClipByType(F32);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of S32 imagery");
+    testImageClipByType(S32);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of S16 imagery");
+    testImageClipByType(S16);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of S8 imagery");
+    testImageClipByType(S8);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of U32 imagery");
+    testImageClipByType(U32);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of U16 imagery");
+    testImageClipByType(U16);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of U8 imagery");
+    testImageClipByType(U8);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of C32 imagery");
+    testImageClipByComplexType(C32);
+    psLogMsg(__func__,PS_LOG_INFO,"Testing clipping of C64 imagery");
+    testImageClipByComplexType(C64);
+
+    // Verify the retuned integer is zero, psImage structure input is unmodified
+    // and program executions doesn't stop, if input parameter psImage structure
+    // pointer is null.
+    retVal = psImageClip(NULL,min,-1.0f,max,-2.0f);
+    if (retVal != 0) {
+        psError(__func__,"Expected zero return for clips of a NULL image.");
+        return 3;
+    }
+
+    // Verify the retuned integer is zero, psImage structure input is unmodified
+    // and program executions doesn't stop, if input parameter min is larger than max.
+    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error (max<min)");
+    retVal = psImageClip(img,max,-1.0f,min,-2.0f);
+    if (retVal != 0) {
+        psError(__func__,"Expected zero return for clips when max < min.");
+        return 4;
+    }
+
+    return 0;
+}
+
+int testImageClipNAN(void)
+{
+    psImage* img = NULL;
+    unsigned int c = 128;
+    unsigned int r = 256;
+    int numClipped = 0;
+    int retVal;
+
+    psLogMsg(__func__,PS_LOG_INFO,
+             "psImageClipNaN shall modified pixel values of NaN with a specified value");
+
+    /*
+        psImageClipNaN shall modify a psImage structure with pixel values set
+        to NaN to a value specified as an input parameter.
+
+        Verify the returned integer is equal to the number of pixels modified
+        and the psImage is modified at locations where NaN pixels where
+        located to the value specified in the input parameter value.
+
+        Verify the returned integer is zero and program execution doesn't stop,
+        if the input parameter psImage structure pointer is null.
+    */
+
+    // create image
+    #define testImageClipNaNByType(datatype) \
+    img = psImageAlloc(c,r,PS_TYPE_##datatype); \
+    for (unsigned row=0;row<r;row++) { \
+        ps##datatype* imgRow = img->data.datatype[row]; \
+        for (unsigned col=0;col<c;col++) { \
+            if (row == col) { \
+                imgRow[col] = NAN; \
+            } else if (row+1 == col) { \
+                imgRow[col] = INFINITY; \
+            } else { \
+                imgRow[col] = (ps##datatype)(row+col); \
+            } \
+        } \
+    } \
+    \
+    retVal = psImageClipNaN(img,-1.0f); \
+    \
+    numClipped = 0; \
+    for (unsigned row=0;row<r;row++) { \
+        ps##datatype* imgRow = img->data.datatype[row]; \
+        for (unsigned col=0;col<c;col++) { \
+            ps##datatype value = (ps##datatype)(row+col); \
+            if ( (row == col) || (row+1 == col) ) { \
+                numClipped++; \
+                value = -1.0; \
+            } \
+            if (fabsf(imgRow[col]-value) > FLT_EPSILON) { \
+                psError(__func__,"Pixel value is not as expected (%f vs %f) at %d,%d", \
+                        imgRow[col],value,col,row); \
+                return 1; \
+            } \
+        } \
+    } \
+    if (retVal != numClipped) { \
+        psError(__func__,"Expected %d clips, but got %d", \
+                numClipped,retVal); \
+        return 2; \
+    } \
+    psFree(img);
+
+    testImageClipNaNByType(F32);
+    testImageClipNaNByType(F64);
+
+    // Verify the retuned integer is zero, psImage structure input is unmodified
+    // and program executions doesn't stop, if input parameter psImage structure
+    // pointer is null.
+    retVal = psImageClipNaN(NULL,-1.0f);
+    if (retVal != 0) {
+        psError(__func__,"Expected zero return for clips of a NULL image.");
+        return 3;
+    }
+
+    return 0;
+}
+
+int testImageOverlay(void)
+{
+
+    psImage* img = NULL;
+    psImage* img2 = NULL;
+    unsigned int c = 128;
+    unsigned int r = 256;
+    int retVal;
+
+    /*
+    psImageSectionOverlay shall modified pixel values in a psImage structure to
+    be equal to the value of the originaldata and an overlay image with a
+    specified operation. Valid operations include =, +, -, *, /.
+
+    Verify the returned integer is zero
+    and the input parameter psImage structure is modified at the specified
+    location and range with the given overlay image and the specified
+    function. Cases should include all the valid operations. Comparison of
+    expected values should include a delta to allow for testing on
+    different platforms.
+
+    */
+
+
+
+    #define testOverlayTypeOP(DATATYPE,OP,OPSTRING) \
+    img = psImageAlloc(c,r,PS_TYPE_##DATATYPE); \
+    for (unsigned row=0;row<r;row++) { \
+        ps##DATATYPE* imgRow = img->data.DATATYPE[row]; \
+        for (unsigned col=0;col<c;col++) { \
+            imgRow[col] = 6.0; \
+        } \
+    } \
+    img2 = psImageAlloc(c/2,r/2,PS_TYPE_##DATATYPE); \
+    for (unsigned row=0;row<r/2;row++) { \
+        ps##DATATYPE* img2Row = img2->data.DATATYPE[row]; \
+        for (unsigned col=0;col<c/2;col++) { \
+            img2Row[col] = 2.0; \
+        } \
+    } \
+    retVal = psImageOverlaySection(img,img2,c/4,r/4,OPSTRING); \
+    if (retVal != 0) { \
+        psError(__func__,"psImageOverlaySection returned non-zero %s op",OPSTRING); \
+        return 1; \
+    } \
+    for (unsigned row=0;row<r;row++) { \
+        ps##DATATYPE* imgRow = img->data.DATATYPE[row]; \
+        ps##DATATYPE* img2Row = img2->data.DATATYPE[row]; \
+        for (unsigned col=0;col<c;col++) { \
+            ps##DATATYPE val = 6.0; \
+            if ( ! (row < r/4 || row >= r/2+r/4 || col < c/4 || col >= c/2+c/4)) { \
+                val OP 2.0; \
+            } \
+            if (fabsf(imgRow[col] - val) > FLT_EPSILON) { \
+                psError(__func__,"Value incorrect at %d,%d (%.2f vs %.2f for %s)", \
+                        col,row,imgRow[col],val,OPSTRING); \
+                return 2; \
+            } \
+            if (row < r/2 && col < c/2 && fabsf(img2Row[col] - 2.0) > FLT_EPSILON) { \
+                psError(__func__,"Overlay modified at %d,%d (%.2f for %s)", \
+                        col,row,img2Row[col],OPSTRING); \
+                return 2; \
+            } \
+        } \
+    } \
+    psFree(img); \
+    psFree(img2);
+
+    #define testOverlayType(DATATYPE) \
+    testOverlayTypeOP(DATATYPE,+=,"+"); \
+    testOverlayTypeOP(DATATYPE,-=,"-"); \
+    testOverlayTypeOP(DATATYPE,*=,"*");\
+    testOverlayTypeOP(DATATYPE,/=,"/");\
+    testOverlayTypeOP(DATATYPE,=,"=");
+
+    testOverlayType(C64);
+    testOverlayType(C32);
+    testOverlayType(F64);
+    testOverlayType(F32);
+    testOverlayType(S16);
+    testOverlayType(S8);
+    testOverlayType(U16);
+    testOverlayType(U8);
+
+    /*
+    Verify the returned integer is equal to non-zero and the input psImage structure
+    is unmodified, if the overlay specified is not within the data range of the
+    input psImage structure.
+    */
+
+    img = psImageAlloc(c,r,PS_TYPE_F32);
+    for (unsigned row=0;row<r;row++) {
+        psF32* imgRow = img->data.F32[row];
+        for (unsigned col=0;col<c;col++) {
+            imgRow[col] = 6.0f;
+        }
+    }
+    img2 = psImageAlloc(c,r,PS_TYPE_F32);
+    for (unsigned row=0;row<r;row++) {
+        psF32* img2Row = img2->data.F32[row];
+        for (unsigned col=0;col<c;col++) {
+            img2Row[col] = 2.0f;
+        }
+    }
+
+    psLogMsg(__func__,PS_LOG_INFO,"Following should error as overlay isn't within image boundaries");
+    retVal = psImageOverlaySection(img,img2,c/4,r/4,"+");
+    if (retVal == 0) {
+        psError(__func__,"psImageOverlaySection returned zero even though "
+                "overlay too big");
+        return 3;
+    }
+    for (unsigned row=0;row<r;row++) {
+        psF32* imgRow = img->data.F32[row];
+        for (unsigned col=0;col<c;col++) {
+            if (imgRow[col] != 6.0f) {
+                psError(__func__,"Input image modified when overlay size too big");
+                return 4;
+            }
+        }
+    }
+
+    /*
+    Verify the returned integer is equal to non-zero, the input psImage
+    structure is unmodified and program execution doesn't stop, if the
+    overlay specified is null.
+    */
+
+    psLogMsg(__func__,PS_LOG_INFO,"Following should error as overlay is NULL");
+    retVal = psImageOverlaySection(img,NULL,c/4,r/4,"+");
+    if (retVal == 0) {
+        psError(__func__,"psImageOverlaySection returned zero even though "
+                "overlay too big");
+        return 5;
+    }
+    for (unsigned row=0;row<r;row++) {
+        psF32* imgRow = img->data.F32[row];
+        for (unsigned col=0;col<c;col++) {
+            if (imgRow[col] != 6.0f) {
+                psError(__func__,"Input image modified when overlay NULL");
+                return 6;
+            }
+        }
+    }
+
+    /*
+    Verify the returned integer is equal to non-zero and program execution
+    doesn't stop, if the input parameter image is null.
+    */
+
+    psLogMsg(__func__,PS_LOG_INFO,"Following should error as image input is NULL");
+    retVal = psImageOverlaySection(NULL,img2,c/4,r/4,"+");
+    if (retVal == 0) {
+        psError(__func__,"psImageOverlaySection returned zero even though "
+                "overlay too big");
+        return 7;
+    }
+
+    /*
+    Verify program execution doen't stop, if the overly image contains
+    zero values with division operation is specified.
+    */
+    for (unsigned row=0;row<r;row++) {
+        psF32* img2Row = img2->data.F32[row];
+        for (unsigned col=0;col<c;col++) {
+            img2Row[col] = 0.0f;
+        }
+    }
+    retVal = psImageOverlaySection(img,img2,0,0,"/");
+    if (retVal != 0) {
+        psError(__func__,"psImageOverlaySection returned non-zero when "
+                "checking divide-by-zero.");
+        return 8;
+    }
+
+    psFree(img);
+    psFree(img2);
+
+    return 0;
+}
Index: /trunk/psLib/test/image/verified/tst_psImage.stderr
===================================================================
--- /trunk/psLib/test/image/verified/tst_psImage.stderr	(revision 1211)
+++ /trunk/psLib/test/image/verified/tst_psImage.stderr	(revision 1212)
@@ -100,49 +100,2 @@
 ---> TESTPOINT PASSED (psImage{psImageCopy} | tst_psImage.c)
 
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psImage.c                                              *
-*            TestPoint: psImage{psImageClip}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
- <DATE> <TIME> |<HOST>|I|  testImageClip|psImageClip shall limit the minimum and maximum data value within a psImage structure
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of F64 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of F32 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of S32 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of S16 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of S8 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of U32 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of U16 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of U8 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of C32 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Testing clipping of C64 imagery
- <DATE> <TIME> |<HOST>|I|  testImageClip|Following should be an error (max<min)
- <DATE> <TIME> |<HOST>|E|    psImageClip|psImageClip can not be invoked with max < min.
-
----> TESTPOINT PASSED (psImage{psImageClip} | tst_psImage.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psImage.c                                              *
-*            TestPoint: psImage{psImageClipNAN}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
- <DATE> <TIME> |<HOST>|I|testImageClipNA|psImageClipNaN shall modified pixel values of NaN with a specified value
-
----> TESTPOINT PASSED (psImage{psImageClipNAN} | tst_psImage.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psImage.c                                              *
-*            TestPoint: psImage{psImageOverlay}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
- <DATE> <TIME> |<HOST>|I|testImageOverla|Following should error as overlay isn't within image boundaries
- <DATE> <TIME> |<HOST>|E|psImageOverlayS|Overlay image (32,64 -> 159,319) is partially outside of the input image (128 x 256).
- <DATE> <TIME> |<HOST>|I|testImageOverla|Following should error as overlay is NULL
- <DATE> <TIME> |<HOST>|E|psImageOverlayS|one of the input images was NULL.
- <DATE> <TIME> |<HOST>|I|testImageOverla|Following should error as image input is NULL
- <DATE> <TIME> |<HOST>|E|psImageOverlayS|one of the input images was NULL.
-
----> TESTPOINT PASSED (psImage{psImageOverlay} | tst_psImage.c)
-
Index: /trunk/psLib/test/runTest
===================================================================
--- /trunk/psLib/test/runTest	(revision 1211)
+++ /trunk/psLib/test/runTest	(revision 1212)
@@ -30,5 +30,5 @@
 #
 #  $Revison:  $  $Name: not supported by cvs2svn $
-#  $Date: 2004-07-08 19:34:18 $
+#  $Date: 2004-07-13 01:37:58 $
 #
 #  Copyright 2004 Maui High Performance Computering Center, University of Hawaii
@@ -36,4 +36,23 @@
 ################################################################################
 
+# Provides functions for handling long command line options
+use Getopt::Long;
+
+# Assign variables based on the presence of command line options to the script
+GetOptions("reset!"=>\$reset,
+           "resetStderr!"=>\$resetStderr,
+           "resetStdout!"=>\$resetStdout,
+           "help!"=>\$help);
+
+if ($help) {
+    print "Usage: runTest [--reset] [--resetStderr] [--resetStdout] testfile(s)\n\n";
+    exit(0);
+}
+
+if ($reset) {
+    $resetStderr = 1;
+    $resetStdout = 1;
+}
+    
 # Initialize exit value
 $exitValue = 0;
@@ -55,123 +74,132 @@
 $ENV{'DYLD_LIBRARY_PATH'} = "$ENV{'PSLIB_ROOT'}/lib:$ENV{'DYLD_LIBRARY_PATH'}";
 
-# Get test driver name from arguement list
-$testFile = $ARGV[0];
-
-# Check if a temp directory already exists in the current work directory
-if ( !( -e "temp" )) {
-   # Create temp directory to store STDOUT, STDERR files during test run
-   `mkdir temp`;
-   # Display message of new directory created
-   print("Creating temp directory\n");
-}
-
-# Check if a verified directory exists in the current work directory
-if ( !( -e "verified" )) {
-    # Display message that verified subdirectory doesn't exist
-    print("        Verified directory doesn't exist.\n");
-    # Exit script since the test cannot be run with verified files
-    $exitValue = 1;
-}
-
-# Check if the test driver file exists and is executable
-if ( (-e $testFile) && (-x $testFile) ) {
-
-    # Display message the test driver is being executed
-    print("--- Executing test driver: $testFile\n");
-
-    # Invoke the test driver
-    system("./$testFile 1> temp/$testFile.stdout 2> temp/$testFile.stderr");
-
-    # Check the return value of the test driver.  A value other than 0
-    # indicates failure of the test driver unless the test driver is name
-    # with a leading 'a' which indicates the test driver is expecting an
-    # abort condition to terminate the driver.
-    if ( ( $? != 0  && ( $testFile !~ /^A/i)) || 
-         ( $? == 0  && ( $testFile =~ /^A/i)) ) {
-
-        # Display failure message with return value to user
-        if ( $? != 0 && ( $testFile !~ /^A/i) ) {
-            print("        Failed - Test Driver expected 0 return value (Return value $?)\n");
-        } elsif ( $? == 0 && ( $testFile =~ /^A/i) ) {
-            print("        Failed - Test Driver expected abort (Return value $?)\n");
+# Loop through the arguements passed to the script
+foreach (@ARGV) {
+    chomp;
+    $testFile = $_;
+
+    # Check if a temp directory already exists in the current work directory
+    if ( !( -e "temp" )) {
+    # Create temp directory to store STDOUT, STDERR files during test run
+    `mkdir temp`;
+    # Display message of new directory created
+    print("Creating temp directory\n");
+    }
+    
+    # Check if a verified directory exists in the current work directory
+    if ( !( -e "verified" )) {
+        # Display message that verified subdirectory doesn't exist
+        print("        Verified directory doesn't exist.\n");
+        # Exit script since the test cannot be run with verified files
+        $exitValue = 1;
+    }
+    
+    # Check if the test driver file exists and is executable
+    if ( (-e $testFile) && (-x $testFile) ) {
+    
+        # Display message the test driver is being executed
+        print("--- Executing test driver: $testFile\n");
+    
+        # Invoke the test driver
+        system("./$testFile 1> temp/$testFile.stdout 2> temp/$testFile.stderr");
+        
+        # Check the return value of the test driver.  A value other than 0
+        # indicates failure of the test driver unless the test driver is name
+        # with a leading 'a' which indicates the test driver is expecting an
+        # abort condition to terminate the driver.
+        if ( ( $? != 0  && ( $testFile !~ /^A/i)) || 
+            ( $? == 0  && ( $testFile =~ /^A/i)) ) {
+    
+            # Display failure message with return value to user
+            if ( $? != 0 && ( $testFile !~ /^A/i) ) {
+                print("        Failed - Test Driver expected 0 return value (Return value $?)\n");
+            } elsif ( $? == 0 && ( $testFile =~ /^A/i) ) {
+                print("        Failed - Test Driver expected abort (Return value $?)\n");
+            }
+            $exitValue |= 256;
+        } else {
+    
+            # Test driver succeeded.
+    
+            # Create filtered version of stdout and stderr
+                
+            # Open the STDOUT file for reading       
+            open(OUTFILE, "< temp/$testFile.stdout");
+            # Open mod file to place filtered STDOUT
+            open(MODFILE, "> temp/$testFile.stdout.mod");
+            open(MODFILE2, "> verified/$testFile.stdout") if $resetStdout;
+            # Replace the variable date, time and host information with constants
+            $hostname = `hostname`;
+            chop $hostname;
+            while( <OUTFILE> ) {
+                s/\d+:\d+:\d+/ <DATE> /;
+                s/\s+\d+:\d+:\d+\w/ <TIME> /;
+                s/$hostname/<HOST>/;
+                # Filter lines with malloc.  This is an artifact of memory testing
+                # with the Mac testbed
+                if ( ! m/\*\*\*\smalloc/ ) {
+                print MODFILE ($_);
+                print MODFILE2 ($_) if $resetStdout;
+                }
+            }
+            # Close mod file
+            close(MODFILE);
+            close(MODFILE2) if $resetStdout;
+            # Close STDERR file
+            close(OUTFILE);
+    
+            # Open the STDERR file for reading 
+            open(OUTFILE, "< temp/$testFile.stderr");
+            # Open mod file to place filtered STDERR
+            open(MODFILE, "> temp/$testFile.stderr.mod");
+            open(MODFILE2, "> verified/$testFile.stderr") if $resetStderr;
+            # Replace the variable date, time and host information with constants
+            while( <OUTFILE> ) {
+                s/\d+:\d+:\d+/ <DATE> /;
+                s/\s+\d+:\d+:\d+\w/ <TIME> /;
+                s/$hostname/<HOST>/;
+                # Filter lines with malloc.  This is an artifact of memory testing
+                # with the Mac testbed
+                if ( ! m/\*\*\*\smalloc/ ) {
+                print MODFILE ($_);
+                print MODFILE2 ($_) if $resetStderr;
+                }
+            }
+            # Close mod file
+            close(MODFILE);
+            close(MODFILE2) if $resetStderr;
+            # Close STDERR file
+            close(OUTFILE);
+    
+            # Compare STDOUT capture with verified file
+            $exitValue |= &compareStream("verified/$testFile.stdout");
+    
+            # Check exit value to determine if verified file doesn't exist
+            if ( $exitValue & 2 ) {
+    
+                # STDOUT verified doesn't exist.  Search STDOUT capture
+                # for strings indicating error or failure
+                $exitValue |= &errorStrSearch("$testFile.stdout");
+            }
+    
+            # Compare STDERR capture with verified file
+            $exitValue |= &compareStream("verified/$testFile.stderr");
+    
+            # Check exit value to determine if verified file doesn't exist
+            if ( $exitValue & 4 ) {
+    
+                # STDERR verified doesn't exist.  Search STDERR capture
+                # for strings indicating error or failure
+                $exitValue |= &errorStrSearch("$testFile.stderr");
+            }
         }
-        $exitValue |= 256;
     } else {
-  
-        # Test driver succeeded.
-  
-        # Create filtered version of stdout and stderr
-      
-        # Open the STDOUT file for reading
-        open(OUTFILE, "< temp/$testFile.stdout");
-        # Open mod file to place filtered STDOUT
-        open(MODFILE, ">temp/$testFile.stdout.mod");
-        # Replace the variable date, time and host information with constants
-        $hostname = `hostname`;
-        chop $hostname;
-        while( <OUTFILE> ) {
-            s/\d+:\d+:\d+/ <DATE> /;
-            s/\s+\d+:\d+:\d+\w/ <TIME> /;
-            s/$hostname/<HOST>/;
-            # Filter lines with malloc.  This is an artifact of memory testing
-            # with the Mac testbed
-            if ( ! m/\*\*\*\smalloc/ ) {
-               print MODFILE ($_);
-            }
-        }
-        # Close mod file
-        close(MODFILE);
-        # Close STDERR file
-        close(OUTFILE);
-
-        # Open the STDERR file for reading 
-        open(OUTFILE, "< temp/$testFile.stderr");
-        # Open mod file to place filtered STDERR
-        open(MODFILE, "> temp/$testFile.stderr.mod");
-        # Replace the variable date, time and host information with constants
-        while( <OUTFILE> ) {
-            s/\d+:\d+:\d+/ <DATE> /;
-            s/\s+\d+:\d+:\d+\w/ <TIME> /;
-            s/$hostname/<HOST>/;
-            # Filter lines with malloc.  This is an artifact of memory testing
-            # with the Mac testbed
-            if ( ! m/\*\*\*\smalloc/ ) {
-               print MODFILE ($_);
-            }
-        }
-        # Close mod file
-        close(MODFILE);
-        # Close STDERR file
-        close(OUTFILE);
-
-        # Compare STDOUT capture with verified file
-        $exitValue |= &compareStream("verified/$testFile.stdout");
-
-        # Check exit value to determine if verified file doesn't exist
-        if ( $exitValue & 2 ) {
-
-            # STDOUT verified doesn't exist.  Search STDOUT capture
-            # for strings indicating error or failure
-            $exitValue |= &errorStrSearch("$testFile.stdout");
-        }
-
-        # Compare STDERR capture with verified file
-        $exitValue |= &compareStream("verified/$testFile.stderr");
-
-        # Check exit value to determine if verified file doesn't exist
-        if ( $exitValue & 4 ) {
-
-            # STDERR verified doesn't exist.  Search STDERR capture
-            # for strings indicating error or failure
-            $exitValue |= &errorStrSearch("$testFile.stderr");
-        }
-    }
-} else {
-    # Since test driver doesn't exist or is not executable then display 
-    # message to user.
-    print("        Need to specify an executable test file within directory.\n");
-    
-    # Exit value set to indicate test driver doesn't exist or not executable
-    $exitValue |= 32;
+        # Since test driver doesn't exist or is not executable then display 
+        # message to user.
+        print("        Need to specify an executable test file within directory.\n");
+        
+        # Exit value set to indicate test driver doesn't exist or not executable
+        $exitValue |= 32;
+    }
 }
 
Index: /trunk/psLib/test/sysUtils/Makefile
===================================================================
--- /trunk/psLib/test/sysUtils/Makefile	(revision 1211)
+++ /trunk/psLib/test/sysUtils/Makefile	(revision 1212)
@@ -3,6 +3,6 @@
 ##  Makefile:   test/sysUtils
 ##
-##  $Revision: 1.16 $  $Name: not supported by cvs2svn $
-##  $Date: 2004-06-26 03:05:12 $
+##  $Revision: 1.17 $  $Name: not supported by cvs2svn $
+##  $Date: 2004-07-13 01:37:59 $
 ##
 ##  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -16,7 +16,6 @@
 include ../../src/Makefile.Globals
 
-PSLIB_INCL_DIR = ../../include
-
-PSLIB_LIB_DIR = ../../lib
+CFLAGS := -I../../include $(CFLAGS)
+LDFLAGS := -L../../lib -lpslib -lpstest $(LDFLAGS)
 
 TARGET = atst_psAbort_01  \
@@ -41,35 +40,14 @@
          tst_psTrace04
 
-DEPENDENCIES = $(addprefix builddir/,$(addsuffix .d,$(TARGET)))
-OBJS = $(addprefix builddir/,$(addsuffix .o,$(TARGET)))
+OBJS = $(addsuffix .o,$(TARGET))
 
-all: builddir $(TARGET)
-
-builddir:
-	mkdir builddir
-
-include $(DEPENDENCIES)
+all: $(TARGET)
 
 clean:
-	@echo "    Deleting executable and binary files for 'test/sysUtils'"
-	$(RM) $(OBJS) *.lint
+	@echo "    Deleting executable and binary files for 'test/collections'"
+	$(RM) $(OBJS)
 
 distclean: clean
 	$(RM) $(TARGET)
-
-cleandependencies:
-	$(RM) $(DEPENDENCIES)
-
-builddir/%.o : %.c
-	$(CC) $(CFLAGS) $(CPPFLAGS) -I.. -I$(PSLIB_INCL_DIR) -c -o $@ $<
-
-%   : builddir/%.o
-	$(CC) -o $@ $< -L$(PSLIB_LIB_DIR) -lpslib -lpstest $(LDFLAGS)
-
-%.lint: %.c
-	splint +posixlib -exportlocal -realcompare $(INCLUDE_GLOBAL) $? > $@; cat $@
-
-builddir/%.d: %.c
-	$(CC) -MM $(CFLAGS) -I$(PSLIB_INCL_DIR) $< | sed 's|\(.*\.o\)|builddir/\1|' > $@
 
 install: $(testbindir) $(testbindir)/verified $(TARGET)
@@ -83,2 +61,3 @@
 	mkdir -p $(testbindir)/verified
 
+
Index: unk/psLib/test/sysUtils/builddir/atst_psAbort_01.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/atst_psAbort_01.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/atst_psAbort_01.o: atst_psAbort_01.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/atst_psAbort_02.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/atst_psAbort_02.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/atst_psAbort_02.o: atst_psAbort_02.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/atst_psAbort_03.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/atst_psAbort_03.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/atst_psAbort_03.o: atst_psAbort_03.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psError.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psError.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psError.o: tst_psError.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psHash00.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psHash00.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psHash00.o: tst_psHash00.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psHash01.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psHash01.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psHash01.o: tst_psHash01.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psHash02.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psHash02.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psHash02.o: tst_psHash02.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psHash03.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psHash03.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psHash03.o: tst_psHash03.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psHash04.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psHash04.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psHash04.o: tst_psHash04.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psLogMsg00.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psLogMsg00.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psLogMsg00.o: tst_psLogMsg00.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psLogMsg01.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psLogMsg01.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psLogMsg01.o: tst_psLogMsg01.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psLogMsg02.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psLogMsg02.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psLogMsg02.o: tst_psLogMsg02.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psLogMsg03.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psLogMsg03.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psLogMsg03.o: tst_psLogMsg03.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psMemory.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psMemory.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psMemory.o: tst_psMemory.c ../../include/psTest.h \
-  ../../include/pslib.h ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h
Index: unk/psLib/test/sysUtils/builddir/tst_psStringCopy.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psStringCopy.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psStringCopy.o: tst_psStringCopy.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psTrace00.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psTrace00.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psTrace00.o: tst_psTrace00.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psTrace01.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psTrace01.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psTrace01.o: tst_psTrace01.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psTrace02.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psTrace02.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psTrace02.o: tst_psTrace02.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psTrace03.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psTrace03.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psTrace03.o: tst_psTrace03.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
Index: unk/psLib/test/sysUtils/builddir/tst_psTrace04.d
===================================================================
--- /trunk/psLib/test/sysUtils/builddir/tst_psTrace04.d	(revision 1211)
+++ 	(revision )
@@ -1,9 +1,0 @@
-builddir/tst_psTrace04.o: tst_psTrace04.c ../../include/pslib.h \
-  ../../include/psMemory.h ../../include/psLogMsg.h \
-  ../../include/psTrace.h ../../include/psAbort.h ../../include/psError.h \
-  ../../include/psString.h ../../include/psType.h ../../include/psList.h \
-  ../../include/psCompare.h ../../include/psVector.h \
-  ../../include/psHash.h ../../include/psScalar.h ../../include/psImage.h \
-  ../../include/psBitSet.h ../../include/psSort.h ../../include/psStats.h \
-  ../../include/psMatrix.h ../../include/psMatrixVectorArithmetic.h \
-  ../../include/psFFT.h ../../include/psImageIO.h ../../include/psTest.h
