Commit 26b4c996 authored by HDF Group's avatar HDF Group Committed by Brad King

hdf5 1.8.5-r19245 (reduced)

This tree was extracted from upstream hdf5 by the following shell code.

url=https://svn.hdfgroup.uiuc.edu/hdf5/branches/hdf5_1_8_cmake
v=1.8.5
r=19245
paths="
  ACKNOWLEDGMENTS
  CTestConfig.cmake
  README.txt
  config/cmake
  CMakeLists.txt
  COPYING
  src
  c++/CMakeLists.txt
  c++/COPYING
  c++/src
  hl/CMakeLists.txt
  hl/COPYING
  hl/src
  hl/c++/CMakeLists.txt
  hl/c++/COPYING
  hl/c++/src
"
date=$(svn log -q -c$r $url |
       sed -n "/^r/ {s/[^|]*|[^|]*|//;p;}")
svn export -r$r $url hdf5-$v-r$r &&
mkdir hdf5-$v-r$r-reduced &&
(cd hdf5-$v-r$r && tar c $paths) |
(cd hdf5-$v-r$r-reduced && tar x)
echo "r$r date: $date"
parents
Acknowledgments - June 2010
---------------------------
We would like to thank the following people who have contributed directly
or indirectly to HDF5:
John A. Biddiscombe, Mike Jackson, and Sean McBride for contributing and
testing CMake code included in the HDF5 1.8.5 distribution.
The HDF5 community for helping shape the development of HDF5 by contributing
bug reports and patches, joining in on forum discussions, and continually
supporting our software.
Finally, we'd like to thank all organizations whose funding has made HDF5
possible.
This diff is collapsed.
Copyright Notice and License Terms for
HDF5 (Hierarchical Data Format 5) Software Library and Utilities
-----------------------------------------------------------------------------
HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright 2006-2010 by The HDF Group.
NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright 1998-2006 by the Board of Trustees of the University of Illinois.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted for any purpose (including commercial purposes)
provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions, and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions, and the following disclaimer in the documentation
and/or materials provided with the distribution.
3. In addition, redistributions of modified forms of the source or binary
code must carry prominent notices stating that the original code was
changed and the date of the change.
4. All publications or advertising materials mentioning features or use of
this software are asked, but not required, to acknowledge that it was
developed by The HDF Group and by the National Center for Supercomputing
Applications at the University of Illinois at Urbana-Champaign and
credit the contributors.
5. Neither the name of The HDF Group, the name of the University, nor the
name of any Contributor may be used to endorse or promote products derived
from this software without specific prior written permission from
The HDF Group, the University, or the Contributor, respectively.
DISCLAIMER:
THIS SOFTWARE IS PROVIDED BY THE HDF GROUP AND THE CONTRIBUTORS
"AS IS" WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. In no
event shall The HDF Group or the Contributors be liable for any damages
suffered by the users arising out of the use of this software, even if
advised of the possibility of such damage.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
Contributors: National Center for Supercomputing Applications (NCSA) at
the University of Illinois, Fortner Software, Unidata Program Center (netCDF),
The Independent JPEG Group (JPEG), Jean-loup Gailly and Mark Adler (gzip),
and Digital Equipment Corporation (DEC).
-----------------------------------------------------------------------------
Portions of HDF5 were developed with support from the Lawrence Berkeley
National Laboratory (LBNL) and the United States Department of Energy
under Prime Contract No. DE-AC02-05CH11231.
-----------------------------------------------------------------------------
Portions of HDF5 were developed with support from the University of
California, Lawrence Livermore National Laboratory (UC LLNL).
The following statement applies to those portions of the product and must
be retained in any redistribution of source code, binaries, documentation,
and/or accompanying materials:
This work was partially produced at the University of California,
Lawrence Livermore National Laboratory (UC LLNL) under contract
no. W-7405-ENG-48 (Contract 48) between the U.S. Department of Energy
(DOE) and The Regents of the University of California (University)
for the operation of UC LLNL.
DISCLAIMER:
This work was prepared as an account of work sponsored by an agency of
the United States Government. Neither the United States Government nor
the University of California nor any of their employees, makes any
warranty, express or implied, or assumes any liability or responsibility
for the accuracy, completeness, or usefulness of any information,
apparatus, product, or process disclosed, or represents that its use
would not infringe privately- owned rights. Reference herein to any
specific commercial products, process, or service by trade name,
trademark, manufacturer, or otherwise, does not necessarily constitute
or imply its endorsement, recommendation, or favoring by the United
States Government or the University of California. The views and
opinions of authors expressed herein do not necessarily state or reflect
those of the United States Government or the University of California,
and shall not be used for advertising or product endorsement purposes.
-----------------------------------------------------------------------------
## This file should be placed in the root directory of your project.
## Then modify the CMakeLists.txt file in the root directory of your
## project to incorporate the testing dashboard.
## # The following are required to uses Dart and the Cdash dashboard
## ENABLE_TESTING()
## INCLUDE(CTest)
set(CTEST_PROJECT_NAME "HDF5.1.8")
set(CTEST_NIGHTLY_START_TIME "20:00:00 CST")
set(CTEST_DROP_METHOD "http")
set(CTEST_DROP_SITE "nei.hdfgroup.uiuc.edu")
set(CTEST_DROP_LOCATION "/cdash/submit.php?project=HDF5.1.8")
set(CTEST_DROP_SITE_CDASH TRUE)
set(UPDATE_TYPE svn)
HDF5 version 1.8.5-snap5 currently under development
Please refer to the release_docs/INSTALL file for installation instructions.
------------------------------------------------------------------------------
This release is fully functional for the API described in the documentation.
See the RELEASE.txt file in the release_docs/ directory for information
specific to this release of the library. Several INSTALL* files can also be
found in the release_docs/ directory: INSTALL contains instructions for
compiling and installing the library; INSTALL_parallel contains instructions
for installing the parallel version of the library; similarly-named files
contain instructions for VMS and several environments on MS Windows systems.
Documentation for this release can be found at the following URL:
http://www.hdfgroup.org/HDF5/doc/.
The following mailing lists are currently set up for HDF5 Library users:
news - For announcements of HDF5 related developments,
not a discussion list.
hdf-forum - For general discussion of the HDF5 library with
other users.
hdf5dev - For discussion of the HDF5 library development
with developers and other interested parties.
To subscribe to a list, send mail to "<list>-subscribe@hdfgroup.org".
where <list> is the name of the list. For example, send a request
to subscribe to the 'news' mail list to the following address:
news-subscribe@hdfgroup.org
Messages sent to the list should be addressed to "<list>@hdfgroup.org".
Periodic code snapshots are provided at the following URL:
ftp://ftp.hdfgroup.uiuc.edu/pub/outgoing/hdf5/snapshots
Please read the README.txt file in that directory before working with a
library snapshot.
The HDF5 website is located at http://hdfgroup.org/HDF5/
Bugs should be reported to help@hdfgroup.org.
cmake_minimum_required (VERSION 2.8)
PROJECT (HDF5_CPP)
#-----------------------------------------------------------------------------
# Shared/Static Libs
#-----------------------------------------------------------------------------
IF (BUILD_SHARED_LIBS)
SET (CPP_BUILT_AS_DYNAMIC_LIB 1)
ENDIF (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
# Generate configure file
#-----------------------------------------------------------------------------
CONFIGURE_FILE (${HDF5_RESOURCES_DIR}/H5cxx_config.h.in
${HDF5_BINARY_DIR}/H5cxx_pubconf.h
)
#-----------------------------------------------------------------------------
# Setup Include directories
#-----------------------------------------------------------------------------
INCLUDE_DIRECTORIES (${HDF5_CPP_SOURCE_DIR}/src)
INCLUDE_DIRECTORIES (${HDF5_BINARY_DIR})
#-----------------------------------------------------------------------------
# Parallel/MPI, prevent spurious cpp/cxx warnings
#-----------------------------------------------------------------------------
IF (H5_HAVE_PARALLEL)
ADD_DEFINITIONS ("-DMPICH_SKIP_MPICXX")
ADD_DEFINITIONS ("-DMPICH_IGNORE_CXX_SEEK")
ENDIF (H5_HAVE_PARALLEL)
ADD_SUBDIRECTORY (${HDF5_CPP_SOURCE_DIR}/src ${HDF5_CPP_BINARY_DIR}/src)
#-----------------------------------------------------------------------------
# Build the CPP Examples
#-----------------------------------------------------------------------------
IF (HDF5_BUILD_EXAMPLES)
ADD_SUBDIRECTORY (${HDF5_CPP_SOURCE_DIR}/examples ${HDF5_CPP_BINARY_DIR}/examples)
ENDIF (HDF5_BUILD_EXAMPLES)
#-----------------------------------------------------------------------------
# Build the CPP unit tests
#-----------------------------------------------------------------------------
IF (BUILD_TESTING)
ADD_SUBDIRECTORY (${HDF5_CPP_SOURCE_DIR}/test ${HDF5_CPP_BINARY_DIR}/test)
ENDIF (BUILD_TESTING)
Copyright by The HDF Group and
The Board of Trustees of the University of Illinois.
All rights reserved.
The files and subdirectories in this directory are 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://www.hdfgroup.org/HDF5/doc/Copyright.html. If you do not
have access to either file, you may request a copy from
help@hdfgroup.org.
cmake_minimum_required (VERSION 2.8)
PROJECT (HDF5_CPP_SRC)
#-----------------------------------------------------------------------------
# Shared/Static Libs
#-----------------------------------------------------------------------------
IF (BUILD_SHARED_LIBS)
SET (CPP_BUILT_AS_DYNAMIC_LIB 1)
ENDIF (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
# Generate configure file
#-----------------------------------------------------------------------------
CONFIGURE_FILE (${HDF5_RESOURCES_DIR}/H5cxx_config.h.in
${HDF5_BINARY_DIR}/H5cxx_pubconf.h
)
#-----------------------------------------------------------------------------
# Define cpp Library
#-----------------------------------------------------------------------------
SET (CPP_SRCS
${HDF5_CPP_SOURCE_DIR}/src/H5AbstractDs.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5ArrayType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5AtomType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5Attribute.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5CommonFG.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5CompType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5DataSet.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5DataSpace.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5DataType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5DcreatProp.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5DxferProp.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5EnumType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5Exception.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5FaccProp.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5FcreatProp.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5File.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5FloatType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5Group.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5IdComponent.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5IntType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5Library.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5Object.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5PredType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5PropList.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5StrType.cpp
${HDF5_CPP_SOURCE_DIR}/src/H5VarLenType.cpp
)
SET (CPP_HDRS
${HDF5_CPP_SOURCE_DIR}/src/H5AbstractDs.h
${HDF5_CPP_SOURCE_DIR}/src/H5Alltypes.h
${HDF5_CPP_SOURCE_DIR}/src/H5ArrayType.h
${HDF5_CPP_SOURCE_DIR}/src/H5AtomType.h
${HDF5_CPP_SOURCE_DIR}/src/H5Attribute.h
${HDF5_CPP_SOURCE_DIR}/src/H5Classes.h
${HDF5_CPP_SOURCE_DIR}/src/H5CommonFG.h
${HDF5_CPP_SOURCE_DIR}/src/H5CompType.h
${HDF5_CPP_SOURCE_DIR}/src/H5Cpp.h
${HDF5_CPP_SOURCE_DIR}/src/H5CppDoc.h
${HDF5_CPP_SOURCE_DIR}/src/H5DataSet.h
${HDF5_CPP_SOURCE_DIR}/src/H5DataSpace.h
${HDF5_CPP_SOURCE_DIR}/src/H5DataType.h
${HDF5_CPP_SOURCE_DIR}/src/H5DcreatProp.h
${HDF5_CPP_SOURCE_DIR}/src/H5DxferProp.h
${HDF5_CPP_SOURCE_DIR}/src/H5EnumType.h
${HDF5_CPP_SOURCE_DIR}/src/H5Exception.h
${HDF5_CPP_SOURCE_DIR}/src/H5FaccProp.h
${HDF5_CPP_SOURCE_DIR}/src/H5FcreatProp.h
${HDF5_CPP_SOURCE_DIR}/src/H5File.h
${HDF5_CPP_SOURCE_DIR}/src/H5FloatType.h
${HDF5_CPP_SOURCE_DIR}/src/H5Group.h
${HDF5_CPP_SOURCE_DIR}/src/H5IdComponent.h
${HDF5_CPP_SOURCE_DIR}/src/H5Include.h
${HDF5_CPP_SOURCE_DIR}/src/H5IntType.h
${HDF5_CPP_SOURCE_DIR}/src/H5Library.h
${HDF5_CPP_SOURCE_DIR}/src/H5Object.h
${HDF5_CPP_SOURCE_DIR}/src/H5PredType.h
${HDF5_CPP_SOURCE_DIR}/src/H5PropList.h
${HDF5_CPP_SOURCE_DIR}/src/H5StrType.h
${HDF5_CPP_SOURCE_DIR}/src/H5VarLenType.h
)
ADD_LIBRARY (${HDF5_CPP_LIB_TARGET} ${LIB_TYPE} ${CPP_SRCS} ${CPP_HDRS})
TARGET_LINK_LIBRARIES (${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
SET_GLOBAL_VARIABLE (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIB_TARGET}")
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} ${LIB_TYPE})
#-----------------------------------------------------------------------------
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
INSTALL (
FILES
${CPP_HDRS}
DESTINATION
include/cpp
COMPONENT
cppheaders
)
#-----------------------------------------------------------------------------
# Add Target(s) to CMake Install for import into other projects
#-----------------------------------------------------------------------------
IF (HDF5_EXPORTED_TARGETS)
INSTALL (
TARGETS
${HDF5_CPP_LIB_TARGET}
EXPORT
${HDF5_EXPORTED_TARGETS}
LIBRARY DESTINATION lib COMPONENT cpplibraries
ARCHIVE DESTINATION lib COMPONENT cpplibraries
RUNTIME DESTINATION bin COMPONENT cpplibraries
)
ENDIF (HDF5_EXPORTED_TARGETS)
This diff is collapsed.
// C++ informative line for the emacs editor: -*- C++ -*-
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* 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. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
// Class AbstractDs is an abstract base class, from which Attribute and
// DataSet inherit. It provides the services that are common to both
// Attribute and DataSet. It also inherits from H5Object and passes down
// the services that H5Object provides.
#ifndef _AbstractDs_H
#define _AbstractDs_H
#ifndef H5_NO_NAMESPACE
namespace H5 {
#endif
class ArrayType;
class CompType;
class EnumType;
class FloatType;
class IntType;
class StrType;
class VarLenType;
class H5_DLLCPP AbstractDs {
public:
// Gets a copy the datatype of that this abstract dataset uses.
// Note that this datatype is a generic one and can only be accessed
// via generic member functions, i.e., member functions belong
// to DataType. To get specific datatype, i.e. EnumType, FloatType,
// etc..., use the specific functions, that follow, instead.
DataType getDataType() const;
// Gets a copy of the specific datatype of this abstract dataset.
ArrayType getArrayType() const;
CompType getCompType() const;
EnumType getEnumType() const;
IntType getIntType() const;
FloatType getFloatType() const;
StrType getStrType() const;
VarLenType getVarLenType() const;
// Gets the size in memory of this abstract dataset.
virtual size_t getInMemDataSize() const = 0;
// Gets the dataspace of this abstract dataset - pure virtual.
virtual DataSpace getSpace() const = 0;
// Gets the class of the datatype that is used by this abstract
// dataset.
H5T_class_t getTypeClass() const;
// Returns the amount of storage size required for this abstract
// dataset - pure virtual.
virtual hsize_t getStorageSize() const = 0;
// Returns this class name
virtual H5std_string fromClass() const = 0;
// Copy constructor
AbstractDs( const AbstractDs& original );
// Destructor
virtual ~AbstractDs();
protected:
// Default constructor
AbstractDs();
// Constructor that takes an attribute id or a dataset id.
AbstractDs( const hid_t ds_id );
private:
// This member function is implemented by DataSet and Attribute.
virtual hid_t p_get_type() const = 0;
};
#ifndef H5_NO_NAMESPACE
}
#endif
#endif // _AbstractDs_H
// C++ informative line for the emacs editor: -*- C++ -*-
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* 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 header file simply serves as a container to hold the
// header files of all datatypes. It simplifies the header
// file including in the code.
#include "H5DataType.h"
#include "H5AtomType.h"
#include "H5EnumType.h"
#include "H5IntType.h"