diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2010-07-20 16:51:49 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2010-07-20 16:51:49 (GMT) |
commit | de3a870bcd4953a3654b3e9dc92edab86fe858cd (patch) | |
tree | 8bf2fc6e0814f67b1388c23136aaff9e4a7cba96 /c++ | |
parent | 98754fa9d12090f5e048fdb05cc5e9ce9111676f (diff) | |
download | hdf5-de3a870bcd4953a3654b3e9dc92edab86fe858cd.zip hdf5-de3a870bcd4953a3654b3e9dc92edab86fe858cd.tar.gz hdf5-de3a870bcd4953a3654b3e9dc92edab86fe858cd.tar.bz2 |
[svn-r19110] Description:
Bring r19049:19109 from trunk to revise_chunks branch
Tested on:
FreeBSD/32 6.3 (duty) in debug mode
FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
w/C++ & FORTRAN, w/threadsafe, in debug mode
Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
w/C++ & FORTRAN, in production mode
Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
w/szip filter, w/threadsafe, in production mode
Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
in production mode
Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
Mac OS X/32 10.6.4 (amazon) in debug mode
Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
in production mode
Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
Diffstat (limited to 'c++')
-rw-r--r-- | c++/CMakeLists.txt | 2 | ||||
-rw-r--r-- | c++/Makefile.in | 2 | ||||
-rw-r--r-- | c++/examples/Makefile.am | 5 | ||||
-rw-r--r-- | c++/examples/Makefile.in | 36 | ||||
-rwxr-xr-x | c++/examples/run-c++-ex.sh.in | 85 | ||||
-rw-r--r-- | c++/src/CMakeLists.txt | 2 | ||||
-rw-r--r-- | c++/src/Makefile.in | 4 | ||||
-rw-r--r-- | c++/test/Makefile.in | 2 |
8 files changed, 127 insertions, 11 deletions
diff --git a/c++/CMakeLists.txt b/c++/CMakeLists.txt index b1edc06..7571e54 100644 --- a/c++/CMakeLists.txt +++ b/c++/CMakeLists.txt @@ -11,7 +11,7 @@ ENDIF (BUILD_SHARED_LIBS) #----------------------------------------------------------------------------- # Generate configure file #----------------------------------------------------------------------------- -CONFIGURE_FILE (${HDF5_SOURCE_DIR}/Resources/H5cxx_config.h.in +CONFIGURE_FILE (${HDF5_RESOURCES_DIR}/H5cxx_config.h.in ${HDF5_BINARY_DIR}/H5cxx_pubconf.h ) diff --git a/c++/Makefile.in b/c++/Makefile.in index e82d4a1..0fad20e 100644 --- a/c++/Makefile.in +++ b/c++/Makefile.in @@ -145,6 +145,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@ @@ -170,6 +171,7 @@ FC = @FC@ FCFLAGS = @FCFLAGS@ FCFLAGS_f90 = @FCFLAGS_f90@ FCLIBS = @FCLIBS@ +FC_VERSION = @FC_VERSION@ FGREP = @FGREP@ FILTERS = @FILTERS@ FSEARCH_DIRS = @FSEARCH_DIRS@ diff --git a/c++/examples/Makefile.am b/c++/examples/Makefile.am index f97a3f3..8a6a1d6 100644 --- a/c++/examples/Makefile.am +++ b/c++/examples/Makefile.am @@ -27,8 +27,9 @@ TEST_PROG=create readdata writedata compound extend_ds chunks h5group TEST_SCRIPT=testh5c++.sh # These are the example files to be installed -INSTALL_FILES=create.cpp readdata.cpp writedata.cpp compound.cpp \ +INSTALL_FILES=create.cpp readdata.cpp writedata.cpp compound.cpp \ extend_ds.cpp chunks.cpp h5group.cpp +INSTALL_SCRIPT_FILES = run-c++-ex.sh # Some of the examples depend on files created by running other examples readdata.chkexe_: create.chkexe_ @@ -38,7 +39,7 @@ chunks.chkexe_: extend_ds.chkexe_ CXX_API=yes # Where to install examples -EXAMPLEDIR=$(docdir)/hdf5/examples/c++ +EXAMPLEDIR=${DESTDIR}/$(exec_prefix)/share/hdf5_examples/c++ # How to build programs using h5c++ $(EXTRA_PROG): $(H5CPP) diff --git a/c++/examples/Makefile.in b/c++/examples/Makefile.in index 63ed0e9..c9662fd 100644 --- a/c++/examples/Makefile.in +++ b/c++/examples/Makefile.in @@ -55,7 +55,8 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/testh5c++.sh.in $(top_srcdir)/config/commence.am \ + $(srcdir)/run-c++-ex.sh.in $(srcdir)/testh5c++.sh.in \ + $(top_srcdir)/config/commence.am \ $(top_srcdir)/config/conclude.am \ $(top_srcdir)/config/examples.am TESTS = @@ -66,7 +67,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 = testh5c++.sh +CONFIG_CLEAN_FILES = run-c++-ex.sh testh5c++.sh CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = @@ -111,6 +112,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 +138,7 @@ FC = @FC@ FCFLAGS = @FCFLAGS@ FCFLAGS_f90 = @FCFLAGS_f90@ FCLIBS = @FCLIBS@ +FC_VERSION = @FC_VERSION@ FGREP = @FGREP@ FILTERS = @FILTERS@ FSEARCH_DIRS = @FSEARCH_DIRS@ @@ -337,15 +340,16 @@ TEST_PROG = create readdata writedata compound extend_ds chunks h5group TEST_SCRIPT = testh5c++.sh # These are the example files to be installed -INSTALL_FILES = create.cpp readdata.cpp writedata.cpp compound.cpp \ +INSTALL_FILES = create.cpp readdata.cpp writedata.cpp compound.cpp \ extend_ds.cpp chunks.cpp h5group.cpp +INSTALL_SCRIPT_FILES = run-c++-ex.sh # Tell conclude.am that these are C++ tests. CXX_API = yes # Where to install examples -EXAMPLEDIR = $(docdir)/hdf5/examples/c++ +EXAMPLEDIR = ${DESTDIR}/$(exec_prefix)/share/hdf5_examples/c++ # Assume that all tests in this directory are examples, and tell # conclude.am when to build them. @@ -404,6 +408,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-c++-ex.sh: $(top_builddir)/config.status $(srcdir)/run-c++-ex.sh.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ testh5c++.sh: $(top_builddir)/config.status $(srcdir)/testh5c++.sh.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ @@ -598,6 +604,8 @@ h5group: $(srcdir)/h5group.cpp # 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. @@ -612,10 +620,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/c++/examples/run-c++-ex.sh.in b/c++/examples/run-c++-ex.sh.in new file mode 100755 index 0000000..79a4ccf --- /dev/null +++ b/c++/examples/run-c++-ex.sh.in @@ -0,0 +1,85 @@ +#! /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-c++-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/c++ using h5c++. 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@}" +AR="@AR@" +RANLIB="@RANLIB@" +H5TOOL="h5c++" # The tool name +H5TOOL_BIN="${prefix}/bin/${H5TOOL}" # The path of the tool binary + +#### Run test #### +RunTest() +{ + Test=$1".cpp" + + 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 create &&\ + RunTest readdata &&\ + RunTest writedata &&\ + RunTest compound &&\ + RunTest extend_ds &&\ + RunTest chunks &&\ + RunTest h5group); then + EXIT_VALUE=${EXIT_SUCCESS} + else + EXIT_VALUE=${EXIT_FAILURE} + fi +fi + +# Cleanup +rm a.out +rm *.o +rm *.h5 +echo + +exit $EXIT_VALUE + diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt index 2cf3d7b..fee9a6a 100644 --- a/c++/src/CMakeLists.txt +++ b/c++/src/CMakeLists.txt @@ -11,7 +11,7 @@ ENDIF (BUILD_SHARED_LIBS) #----------------------------------------------------------------------------- # Generate configure file #----------------------------------------------------------------------------- -CONFIGURE_FILE (${HDF5_SOURCE_DIR}/Resources/H5cxx_config.h.in +CONFIGURE_FILE (${HDF5_RESOURCES_DIR}/H5cxx_config.h.in ${HDF5_BINARY_DIR}/H5cxx_pubconf.h ) diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in index 5ee5f64..5f7c6f3 100644 --- a/c++/src/Makefile.in +++ b/c++/src/Makefile.in @@ -167,6 +167,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@ @@ -192,6 +193,7 @@ FC = @FC@ FCFLAGS = @FCFLAGS@ FCFLAGS_f90 = @FCFLAGS_f90@ FCLIBS = @FCLIBS@ +FC_VERSION = @FC_VERSION@ FGREP = @FGREP@ FILTERS = @FILTERS@ FSEARCH_DIRS = @FSEARCH_DIRS@ @@ -390,7 +392,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog # Add libtool shared library version numbers to the HDF5 library # See libtool versioning documentation online. LT_VERS_INTERFACE = 6 -LT_VERS_REVISION = 63 +LT_VERS_REVISION = 65 LT_VERS_AGE = 0 # Include src directory diff --git a/c++/test/Makefile.in b/c++/test/Makefile.in index 9e68dcd..e0bacda 100644 --- a/c++/test/Makefile.in +++ b/c++/test/Makefile.in @@ -134,6 +134,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@ @@ -159,6 +160,7 @@ FC = @FC@ FCFLAGS = @FCFLAGS@ FCFLAGS_f90 = @FCFLAGS_f90@ FCLIBS = @FCLIBS@ +FC_VERSION = @FC_VERSION@ FGREP = @FGREP@ FILTERS = @FILTERS@ FSEARCH_DIRS = @FSEARCH_DIRS@ |