summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/.distdep110
-rw-r--r--test/Makefile.in117
-rw-r--r--test/dtypes.c15
3 files changed, 99 insertions, 143 deletions
diff --git a/test/.distdep b/test/.distdep
index 5706161..e99e3c0 100644
--- a/test/.distdep
+++ b/test/.distdep
@@ -1,9 +1,3 @@
-testhdf5.o: \
- testhdf5.c \
- testhdf5.h \
- ../src/H5private.h \
- ../src/H5public.h \
- ../src/H5config.h
tattr.o: \
tattr.c \
testhdf5.h \
@@ -157,34 +151,6 @@ th5s.o: \
../src/H5Zprivate.h \
../src/H5Zpublic.h \
../src/H5Pprivate.h
-dtypes.o: \
- dtypes.c \
- ../src/hdf5.h \
- ../src/H5public.h \
- ../src/H5config.h \
- ../src/H5Ipublic.h \
- ../src/H5Apublic.h \
- ../src/H5ACpublic.h \
- ../src/H5Bpublic.h \
- ../src/H5Dpublic.h \
- ../src/H5Epublic.h \
- ../src/H5Fpublic.h \
- ../src/H5Gpublic.h \
- ../src/H5HGpublic.h \
- ../src/H5HLpublic.h \
- ../src/H5MFpublic.h \
- ../src/H5MMpublic.h \
- ../src/H5Opublic.h \
- ../src/H5Ppublic.h \
- ../src/H5Zpublic.h \
- ../src/H5Spublic.h \
- ../src/H5Tpublic.h \
- ../src/H5Tpkg.h \
- ../src/H5HGprivate.h \
- ../src/H5Fprivate.h \
- ../src/H5private.h \
- ../src/H5Tprivate.h \
- ../src/H5Gprivate.h
hyperslab.o: \
hyperslab.c \
../src/H5private.h \
@@ -238,27 +204,6 @@ dsets.o: \
../src/H5Zpublic.h \
../src/H5Spublic.h \
../src/H5Tpublic.h
-cmpd_dset.o: \
- cmpd_dset.c \
- ../src/hdf5.h \
- ../src/H5public.h \
- ../src/H5config.h \
- ../src/H5Ipublic.h \
- ../src/H5Apublic.h \
- ../src/H5ACpublic.h \
- ../src/H5Bpublic.h \
- ../src/H5Dpublic.h \
- ../src/H5Epublic.h \
- ../src/H5Fpublic.h \
- ../src/H5Gpublic.h \
- ../src/H5HGpublic.h \
- ../src/H5HLpublic.h \
- ../src/H5MFpublic.h \
- ../src/H5MMpublic.h \
- ../src/H5Opublic.h \
- ../src/H5Ppublic.h \
- ../src/H5Zpublic.h \
- ../src/H5Spublic.h
extend.o: \
extend.c \
../src/hdf5.h \
@@ -446,3 +391,58 @@ bittests.o: \
../src/H5Gprivate.h \
../src/H5Gpublic.h \
../src/H5Bprivate.h
+cmpd_dset.o: \
+ cmpd_dset.c \
+ ../src/hdf5.h \
+ ../src/H5public.h \
+ ../src/H5config.h \
+ ../src/H5Ipublic.h \
+ ../src/H5Apublic.h \
+ ../src/H5ACpublic.h \
+ ../src/H5Bpublic.h \
+ ../src/H5Dpublic.h \
+ ../src/H5Epublic.h \
+ ../src/H5Fpublic.h \
+ ../src/H5Gpublic.h \
+ ../src/H5HGpublic.h \
+ ../src/H5HLpublic.h \
+ ../src/H5MFpublic.h \
+ ../src/H5MMpublic.h \
+ ../src/H5Opublic.h \
+ ../src/H5Ppublic.h \
+ ../src/H5Zpublic.h \
+ ../src/H5Spublic.h
+testhdf5.o: \
+ testhdf5.c \
+ testhdf5.h \
+ ../src/H5private.h \
+ ../src/H5public.h \
+ ../src/H5config.h
+dtypes.o: \
+ dtypes.c \
+ ../src/hdf5.h \
+ ../src/H5public.h \
+ ../src/H5config.h \
+ ../src/H5Ipublic.h \
+ ../src/H5Apublic.h \
+ ../src/H5ACpublic.h \
+ ../src/H5Bpublic.h \
+ ../src/H5Dpublic.h \
+ ../src/H5Epublic.h \
+ ../src/H5Fpublic.h \
+ ../src/H5Gpublic.h \
+ ../src/H5HGpublic.h \
+ ../src/H5HLpublic.h \
+ ../src/H5MFpublic.h \
+ ../src/H5MMpublic.h \
+ ../src/H5Opublic.h \
+ ../src/H5Ppublic.h \
+ ../src/H5Zpublic.h \
+ ../src/H5Spublic.h \
+ ../src/H5Tpublic.h \
+ ../src/H5Tpkg.h \
+ ../src/H5HGprivate.h \
+ ../src/H5Fprivate.h \
+ ../src/H5private.h \
+ ../src/H5Tprivate.h \
+ ../src/H5Gprivate.h
diff --git a/test/Makefile.in b/test/Makefile.in
index 3a68a67..8ddd2d8 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -11,8 +11,6 @@ CPPFLAGS=-I. -I../src @CPPFLAGS@
# These are our main targets. They should be listed in the order to be
# executed, generally most specific tests to least specific tests.
-PROGS=testhdf5 gheap hyperslab istore bittests dtypes dsets cmpd_dset extend \
- external shtype iopipe big links chunk
TESTS=testhdf5 gheap hyperslab istore bittests dtypes dsets cmpd_dset extend \
external shtype links
TIMINGS=iopipe chunk
@@ -26,62 +24,14 @@ MOSTLYCLEAN=cmpd_dset.h5 dataset.h5 extend.h5 istore.h5 tfile1.h5 tfile2.h5 \
gheap1.h5 gheap2.h5 gheap3.h5 gheap4.h5 shtype0.h5 shtype1.h5 \
shtype2a.h5 shtype2b.h5 shtype3.h5 links.h5 chunk.h5
-# Source and object files for programs... The PROG_SRC list contains all the
+# Source and object files for programs... The TEST_SRC list contains all the
# source files and is used for things like dependencies, archiving, etc. The
# other source lists are for the individual tests, the files of which may
# overlap with other tests.
-PROG_SRC=testhdf5.c tattr.c tfile.c theap.c tmeta.c tohdr.c tstab.c th5s.c \
+TEST_SRC=testhdf5.c tattr.c tfile.c theap.c tmeta.c tohdr.c tstab.c th5s.c \
dtypes.c hyperslab.c istore.c dsets.c cmpd_dset.c extend.c external.c \
iopipe.c gheap.c shtype.c big.c links.c chunk.c bittests.c
-PROG_OBJ=$(PROG_SRC:.c=.o)
-
-TESTHDF5_SRC=testhdf5.c tattr.c tfile.c theap.c tmeta.c tohdr.c tstab.c th5s.c
-TESTHDF5_OBJ=$(TESTHDF5_SRC:.c=.o)
-
-GHEAP_SRC=gheap.c
-GHEAP_OBJ=$(GHEAP_SRC:.c=.o)
-
-DSETS_SRC=dsets.c
-DSETS_OBJ=$(DSETS_SRC:.c=.o)
-
-BITTESTS_SRC=bittests.c
-BITTESTS_OBJ=$(BITTESTS_SRC:.c=.o)
-
-DTYPES_SRC=dtypes.c
-DTYPES_OBJ=$(DTYPES_SRC:.c=.o)
-
-HYPERSLAB_SRC=hyperslab.c
-HYPERSLAB_OBJ=$(HYPERSLAB_SRC:.c=.o)
-
-ISTORE_SRC=istore.c
-ISTORE_OBJ=$(ISTORE_SRC:.c=.o)
-
-CMPD_DSET_SRC=cmpd_dset.c
-CMPD_DSET_OBJ=$(CMPD_DSET_SRC:.c=.o)
-
-EXTEND_SRC=extend.c
-EXTEND_OBJ=$(EXTEND_SRC:.c=.o)
-
-EXTERNAL_SRC=external.c
-EXTERNAL_OBJ=$(EXTERNAL_SRC:.c=.o)
-
-GRPTIME_SRC=grptime.c
-GRPTIME_OBJ=$(GRPTIME_SRC:.c=.o)
-
-SHTYPE_SRC=shtype.c
-SHTYPE_OBJ=$(SHTYPE_SRC:.c=.o)
-
-IOPIPE_SRC=iopipe.c
-IOPIPE_OBJ=$(IOPIPE_SRC:.c=.o)
-
-BIG_SRC=big.c
-BIG_OBJ=$(BIG_SRC:.c=.o)
-
-LINKS_SRC=links.c
-LINKS_OBJ=$(LINKS_SRC:.c=.o)
-
-CHUNK_SRC=chunk.c
-CHUNK_OBJ=$(CHUNK_SRC:.c=.o)
+TEST_OBJ=$(PROG_SRC:.c=.o)
# Private header files (not to be installed)...
PRIVATE_HDR=testhdf5.h
@@ -97,52 +47,53 @@ timings _timings: $(TIMINGS)
done;
# How to build the programs...
+TESTHDF5_OBJ=testhdf5.o tattr.o tfile.o theap.o tmeta.o tohdr.o tstab.o th5s.o
testhdf5: $(TESTHDF5_OBJ) ../src/libhdf5.a
$(CC) $(CFLAGS) -o $@ $(TESTHDF5_OBJ) ../src/libhdf5.a $(LIBS)
-gheap: $(GHEAP_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(GHEAP_OBJ) ../src/libhdf5.a $(LIBS)
+gheap: gheap.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ gheap.o ../src/libhdf5.a $(LIBS)
-dsets: $(DSETS_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(DSETS_OBJ) ../src/libhdf5.a $(LIBS)
+dsets: dsets.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ dsets.o ../src/libhdf5.a $(LIBS)
-bittests: $(BITTESTS_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(BITTESTS_OBJ) ../src/libhdf5.a $(LIBS)
+bittests: bittests.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ bittests.o ../src/libhdf5.a $(LIBS)
-dtypes: $(DTYPES_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(DTYPES_OBJ) ../src/libhdf5.a $(LIBS)
+dtypes: dtypes.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ dtypes.o ../src/libhdf5.a $(LIBS)
-hyperslab: $(HYPERSLAB_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(HYPERSLAB_OBJ) ../src/libhdf5.a $(LIBS)
+hyperslab: hyperslab.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ hyperslab.o ../src/libhdf5.a $(LIBS)
-istore: $(ISTORE_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(ISTORE_OBJ) ../src/libhdf5.a $(LIBS)
+istore: istore.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ istore.o ../src/libhdf5.a $(LIBS)
-cmpd_dset: $(CMPD_DSET_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(CMPD_DSET_OBJ) ../src/libhdf5.a $(LIBS)
+cmpd_dset: cmpd_dset.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ cmpd_dset.o ../src/libhdf5.a $(LIBS)
-extend: $(EXTEND_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(EXTEND_OBJ) ../src/libhdf5.a $(LIBS)
+extend: extend.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ extend.o ../src/libhdf5.a $(LIBS)
-external: $(EXTERNAL_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(EXTERNAL_OBJ) ../src/libhdf5.a $(LIBS)
+external: external.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ external.o ../src/libhdf5.a $(LIBS)
-shtype: $(SHTYPE_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(SHTYPE_OBJ) ../src/libhdf5.a $(LIBS)
+shtype: shtype.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ shtype.o ../src/libhdf5.a $(LIBS)
-iopipe: $(IOPIPE_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(IOPIPE_OBJ) ../src/libhdf5.a $(LIBS)
+iopipe: iopipe.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ iopipe.o ../src/libhdf5.a $(LIBS)
-grptime: $(GRPTIME_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(GRPTIME_OBJ) ../src/libhdf5.a $(LIBS)
+grptime: grptime.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ grptime.o ../src/libhdf5.a $(LIBS)
-big: $(BIG_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(BIG_OBJ) ../src/libhdf5.a $(LIBS)
+big: big.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ big.o ../src/libhdf5.a $(LIBS)
-links: $(LINKS_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(LINKS_OBJ) ../src/libhdf5.a $(LIBS)
+links: links.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ links.o ../src/libhdf5.a $(LIBS)
-chunk: $(CHUNK_OBJ) ../src/libhdf5.a
- $(CC) $(CFLAGS) -o $@ $(CHUNK_OBJ) ../src/libhdf5.a $(LIBS)
+chunk: chunk.o ../src/libhdf5.a
+ $(CC) $(CFLAGS) -o $@ chunk.o ../src/libhdf5.a $(LIBS)
@CONCLUDE@
diff --git a/test/dtypes.c b/test/dtypes.c
index 9bd8747..8898adc 100644
--- a/test/dtypes.c
+++ b/test/dtypes.c
@@ -62,7 +62,9 @@ static int noverflows_g = 0;
* signal. Therefore, if the following constant is defined then tests that
* might raise SIGFPE are executed in a child process.
*/
-#define HANDLE_SIGFPE
+#if defined(HAVE_FORK) && defined(HAVE_WAITPID)
+# define HANDLE_SIGFPE
+#endif
/*-------------------------------------------------------------------------
@@ -79,15 +81,17 @@ static int noverflows_g = 0;
*
*-------------------------------------------------------------------------
*/
-#ifdef HANDLE_SIGFPE
static void
fpe_handler(int __unused__ signo)
{
puts(" -SKIP-");
puts(" Test skipped due to SIGFPE from probable overflow.");
+#ifndef HANDLE_SIGFPE
+ puts(" Remaining tests could not be run.");
+ puts(" Please turn off SIGFPE on overflows and try again.");
+#endif
exit(255);
}
-#endif
/*-------------------------------------------------------------------------
@@ -870,12 +874,13 @@ test_conv_flt_1 (const char *name, hid_t src, hid_t dst)
return 1;
}
}
+#endif
/*
- * The remainder of this function is executed only by the child.
+ * The remainder of this function is executed only by the child if
+ * HANDLE_SIGFPE is defined.
*/
signal(SIGFPE,fpe_handler);
-#endif
/* What are the names of the source and destination types */
if (H5Tequal(src, H5T_NATIVE_FLOAT)) {