summaryrefslogtreecommitdiffstats
path: root/hl/examples
diff options
context:
space:
mode:
Diffstat (limited to 'hl/examples')
-rw-r--r--hl/examples/Makefile.am13
-rw-r--r--hl/examples/Makefile.in43
-rwxr-xr-xhl/examples/run-hl-ex.sh36
-rwxr-xr-xhl/examples/run-hlc-ex.sh.in102
4 files changed, 186 insertions, 8 deletions
diff --git a/hl/examples/Makefile.am b/hl/examples/Makefile.am
index 9d601ee..64a29d4 100644
--- a/hl/examples/Makefile.am
+++ b/hl/examples/Makefile.am
@@ -26,7 +26,8 @@ if BUILD_PARALLEL_CONDITIONAL
endif
# Example directory
-EXAMPLEDIR=$(docdir)/hdf5/examples/hl/c
+EXAMPLEDIR=${DESTDIR}/$(exec_prefix)/share/hdf5_examples/hl/c
+EXAMPLETOPDIR=${DESTDIR}/$(exec_prefix)/share/hdf5_examples/hl
# Example programs.
# Don't tell automake about them, because if it knew they were programs,
@@ -41,7 +42,15 @@ TEST_PROG = ex_lite1 ex_lite2 ex_lite3 ptExampleFL ptExampleVL \
# Install files
# List all file that should be installed in examples directory
-INSTALL_FILES = ptExampleFL.c ptExampleVL.c
+INSTALL_FILES = ex_lite1.c ex_lite2.c ex_lite3.c ptExampleFL.c ptExampleVL.c \
+ ex_image1.c ex_image2.c \
+ ex_table_01.c ex_table_02.c ex_table_03.c ex_table_04.c \
+ ex_table_05.c ex_table_06.c ex_table_07.c ex_table_08.c \
+ ex_table_09.c ex_table_10.c ex_table_11.c ex_table_12.c \
+ ex_ds1.c image24pixel.txt image8.txt pal_rgb.h
+
+INSTALL_SCRIPT_FILES = run-hlc-ex.sh
+INSTALL_TOP_SCRIPT_FILES = run-hl-ex.sh
# Additional dependencies for each program are listed below.
if BUILD_PARALLEL_CONDITIONAL
diff --git a/hl/examples/Makefile.in b/hl/examples/Makefile.in
index 2b18c3d..5f3e801 100644
--- a/hl/examples/Makefile.in
+++ b/hl/examples/Makefile.in
@@ -55,7 +55,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(top_srcdir)/config/commence.am \
+ $(srcdir)/run-hlc-ex.sh.in $(top_srcdir)/config/commence.am \
$(top_srcdir)/config/conclude.am \
$(top_srcdir)/config/examples.am
TESTS =
@@ -66,7 +66,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/H5config.h
-CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_FILES = run-hlc-ex.sh
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
@@ -111,6 +111,7 @@ CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
+CXX_VERSION = @CXX_VERSION@
CYGPATH_W = @CYGPATH_W@
DEBUG_PKG = @DEBUG_PKG@
DEFAULT_API_VERSION = @DEFAULT_API_VERSION@
@@ -136,6 +137,7 @@ FC = @FC@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
+FC_VERSION = @FC_VERSION@
FGREP = @FGREP@
FILTERS = @FILTERS@
FSEARCH_DIRS = @FSEARCH_DIRS@
@@ -333,7 +335,8 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.h5
@BUILD_PARALLEL_CONDITIONAL_TRUE@TEST_PROG_PARA =
# Example directory
-EXAMPLEDIR = $(docdir)/hdf5/examples/hl/c
+EXAMPLEDIR = ${DESTDIR}/$(exec_prefix)/share/hdf5_examples/hl/c
+EXAMPLETOPDIR = ${DESTDIR}/$(exec_prefix)/share/hdf5_examples/hl
# Example programs.
# Don't tell automake about them, because if it knew they were programs,
@@ -349,7 +352,15 @@ TEST_PROG = ex_lite1 ex_lite2 ex_lite3 ptExampleFL ptExampleVL \
# Install files
# List all file that should be installed in examples directory
-INSTALL_FILES = ptExampleFL.c ptExampleVL.c
+INSTALL_FILES = ex_lite1.c ex_lite2.c ex_lite3.c ptExampleFL.c ptExampleVL.c \
+ ex_image1.c ex_image2.c \
+ ex_table_01.c ex_table_02.c ex_table_03.c ex_table_04.c \
+ ex_table_05.c ex_table_06.c ex_table_07.c ex_table_08.c \
+ ex_table_09.c ex_table_10.c ex_table_11.c ex_table_12.c \
+ ex_ds1.c image24pixel.txt image8.txt pal_rgb.h
+
+INSTALL_SCRIPT_FILES = run-hlc-ex.sh
+INSTALL_TOP_SCRIPT_FILES = run-hl-ex.sh
# Assume that all tests in this directory are examples, and tell
# conclude.am when to build them.
@@ -408,6 +419,8 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
+run-hlc-ex.sh: $(top_builddir)/config.status $(srcdir)/run-hlc-ex.sh.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
mostlyclean-libtool:
-rm -f *.lo
@@ -617,6 +630,8 @@ ex_table12: $(srcdir)/ex_table12.c
# How to create EXAMPLEDIR if it doesn't already exist
$(EXAMPLEDIR):
-$(top_srcdir)/bin/mkdirs $@
+$(EXAMPLETOPDIR):
+ -$(top_srcdir)/bin/mkdirs $@
# Install and uninstall rules. We install the source files, not the
# example programs themselves.
@@ -631,10 +646,26 @@ install-examples: $(EXAMPLEDIR) $(INSTALL_FILES)
(set -x; $(INSTALL) $(srcdir)/$$f $(EXAMPLEDIR)/. || exit 1);\
fi; \
done
+ @for f in X $(INSTALL_SCRIPT_FILES); do \
+ if test $$f != X; then \
+ (set -x; $(INSTALL) $$f $(EXAMPLEDIR)/. || exit 1);\
+ fi; \
+ done
+ @for f in X $(INSTALL_TOP_SCRIPT_FILES); do \
+ if test $$f != X; then \
+ (set -x; $(INSTALL) $(srcdir)/$$f $(EXAMPLETOPDIR)/. || exit 1); \
+ fi; \
+ done
uninstall-examples:
- @if test -n "$(INSTALL_FILES)" -a -d $(EXAMPLEDIR); then \
- set -x; cd $(EXAMPLEDIR) && $(RM) $(INSTALL_FILES); \
+ @if test -n "$(INSTALL_FILES)" -a -d $(EXAMPLEDIR); then \
+ set -x; cd $(EXAMPLEDIR) && $(RM) $(INSTALL_FILES); \
+ fi
+ @if test -n "$(INSTALL_SCRIPT_FILES)" -a -d $(EXAMPLEDIR); then \
+ set -x; cd $(EXAMPLEDIR) && $(RM) $(INSTALL_SCRIPT_FILES); \
+ fi
+ @if test -n "$(INSTALL_TOP_SCRIPT_FILES)" -a -d $(EXAMPLETOPDIR); then \
+ set -x; cd $(EXAMPLETOPDIR) && $(RM) $(INSTALL_TOP_SCRIPT_FILES); \
fi
installcheck-local:
diff --git a/hl/examples/run-hl-ex.sh b/hl/examples/run-hl-ex.sh
new file mode 100755
index 0000000..0478f76
--- /dev/null
+++ b/hl/examples/run-hl-ex.sh
@@ -0,0 +1,36 @@
+#! /bin/sh
+#
+# Copyright by The HDF Group.
+# All rights reserved.
+#
+# This file is part of HDF5. The full HDF5 copyright notice, including
+# terms governing use, modification, and redistribution, is contained in
+# the files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
+# access to either file, you may request a copy from help@hdfgroup.org.
+
+#
+# This file: run-hl-ex.sh
+# Written by: Larry Knox
+# Date: May 11, 2010
+#
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+# #
+# This script will run the scripts to compile and run the hdf5 hl examples. #
+# #
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+
+if (echo "Run hl c examples" && \
+ (cd c; sh ./run-hlc-ex.sh) && \
+ echo "Run hl fortran examples" && \
+ (cd fortran; sh ./run-hlfortran-ex.sh) && \
+ echo "Run hl c++ examples" && \
+ (cd c++; sh ./run-hlc++-ex.sh)); then
+ echo "Finished running hl examples"
+ exit 0
+else
+ exit 1
+fi
diff --git a/hl/examples/run-hlc-ex.sh.in b/hl/examples/run-hlc-ex.sh.in
new file mode 100755
index 0000000..d66d9e0
--- /dev/null
+++ b/hl/examples/run-hlc-ex.sh.in
@@ -0,0 +1,102 @@
+#! /bin/sh
+#
+# Copyright by The HDF Group.
+# All rights reserved.
+#
+# This file is part of HDF5. The full HDF5 copyright notice, including
+# terms governing use, modification, and redistribution, is contained in
+# the files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
+# access to either file, you may request a copy from help@hdfgroup.org.
+
+#
+# This file: run-hlc-ex.sh
+# Written by: Larry Knox
+# Date: May 11, 2010
+#
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+# #
+# This script will compile and run the c examples from source files installed #
+# in .../share/hdf5_examples/hl/c using h5cc or h5pc. The order for running #
+# programs with RunTest in the MAIN section below is taken from the Makefile. #
+# The order is important since some of the test programs use data files created #
+# by earlier test programs. Any future additions should be placed accordingly. #
+# #
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+
+# Initializations
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+
+# Where the tool is installed.
+prefix="${prefix:-${DESTDIR}/@prefix@}"
+PARALLEL=@PARALLEL@ # Am I in parallel mode?
+AR="@AR@"
+RANLIB="@RANLIB@"
+if [ "$PARALLEL" = no ]; then
+ H5TOOL="h5cc" # The tool name
+else
+ H5TOOL="h5pcc" # The tool name
+fi
+H5TOOL_BIN="${prefix}/bin/${H5TOOL}" # The path of the tool binary
+
+#### Run test ####
+RunTest()
+{
+ Test=$1".c"
+
+ echo
+ echo "################# $1 #################"
+ ${H5TOOL_BIN} $Test
+ if [ $? -ne 0 ]
+ then
+ echo "messed up compiling $Test"
+ exit 1
+ fi
+ ./a.out
+}
+
+
+
+################## MAIN ##################
+
+# Run tests
+if [ $? -eq 0 ]
+then
+ if (RunTest ex_lite1 &&\
+ RunTest ex_lite2 &&\
+ RunTest ex_lite3 &&\
+ RunTest ptExampleFL &&\
+ RunTest ptExampleVL &&\
+ RunTest ex_image1 &&\
+ RunTest ex_image2 &&\
+ RunTest ex_table_01 &&\
+ RunTest ex_table_02 &&\
+ RunTest ex_table_03 &&\
+ RunTest ex_table_04 &&\
+ RunTest ex_table_05 &&
+ RunTest ex_table_06 &&\
+ RunTest ex_table_07 &&\
+ RunTest ex_table_08 &&\
+ RunTest ex_table_09 &&\
+ RunTest ex_table_10 &&\
+ RunTest ex_table_11 &&\
+ RunTest ex_table_12 &&\
+ RunTest ex_ds1); then
+ EXIT_VALUE=${EXIT_SUCCESS}
+ else
+ EXIT_VALUE=${EXIT_FAILURE}
+ fi
+fi
+
+# Cleanup
+rm a.out
+rm *.o
+rm *.h5
+echo
+
+exit $EXIT_VALUE
+