summaryrefslogtreecommitdiffstats
path: root/Resources
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2010-06-14 19:08:23 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2010-06-14 19:08:23 (GMT)
commit15193c18b47ad8294ce2c8da311fd3b628a0a4b5 (patch)
tree23c3291023ff4101e69609e37967e6dd48e69a80 /Resources
parent4e4c5d3e0f16271330443688dc4afcf1a41aa830 (diff)
downloadhdf5-15193c18b47ad8294ce2c8da311fd3b628a0a4b5.zip
hdf5-15193c18b47ad8294ce2c8da311fd3b628a0a4b5.tar.gz
hdf5-15193c18b47ad8294ce2c8da311fd3b628a0a4b5.tar.bz2
[svn-r18996] Updated config files and install commands per external developers recommendations.
Tested: local linux
Diffstat (limited to 'Resources')
-rw-r--r--Resources/FindHDF5.cmake56
-rw-r--r--Resources/HDF5-config.cmake.build.in42
-rw-r--r--Resources/HDF5-config.cmake.install.in43
-rw-r--r--Resources/HDF5Config.cmake.in32
4 files changed, 141 insertions, 32 deletions
diff --git a/Resources/FindHDF5.cmake b/Resources/FindHDF5.cmake
new file mode 100644
index 0000000..4e448ca
--- /dev/null
+++ b/Resources/FindHDF5.cmake
@@ -0,0 +1,56 @@
+#
+# To be used by projects that make use of Cmakeified hdf5-1.8
+#
+
+#
+# Find the HDF5 includes and get all installed hdf5 library settings from
+# HDF5-config.cmake file : Requires a CMake compatible hdf5-1.8.5 or later
+# for this feature to work. The following vars are set if hdf5 is found.
+#
+# HDF5_FOUND - True if found, otherwise all other vars are undefined
+# HDF5_INCLUDE_DIR - The include dir for main *.h files
+# HDF5_FORTRAN_INCLUDE_DIR - The include dir for fortran modules and headers
+# HDF5_VERSION_STRING - full version (e.g. 1.8.5)
+# HDF5_VERSION_MAJOR - major part of version (e.g. 1.8)
+# HDF5_VERSION_MINOR - minor part (e.g. 5)
+#
+# The following boolean vars will be defined
+# HDF5_ENABLE_PARALLEL - 1 if HDF5 parallel supported
+# HDF5_BUILD_FORTRAN - 1 if HDF5 was compiled with fortran on
+# HDF5_BUILD_CPP_LIB - 1 if HDF5 was compiled with cpp on
+# HDF5_BUILD_TOOLS - 1 if HDF5 was compiled with tools on
+# HDF5_BUILD_HL_LIB - 1 if HDF5 was compiled with parallel on
+#
+# Target names that are valid (depending on enabled options)
+# will be the following
+#
+# hdf5 : HDF5 C library
+# hdf5_tools : the tools library
+# hdf5_f90cstub : used by Fortran to C interface
+# hdf5_fortran : Fortran HDF5 library
+# hdf5_cpp : HDF5 cpp interface library
+# hdf5_hl : High Level library
+# hdf5_hl_f90cstub : used by Fortran to C interface to High Level library
+# hdf5_hl_fortran : Fortran High Level library
+# hdf5_hl_cpp : High Level cpp interface library
+#
+# To aid in finding HDF5 as part of a subproject set
+# HDF5_ROOT_DIR_HINT to the location where HDF5-config.cmake lies
+
+FIND_PATH (HDF5_ROOT_DIR "HDF5-config.cmake"
+ ${HDF5_ROOT_DIR_HINT}
+ /usr/local/lib
+ /usr/local/lib64
+ /usr/lib
+ /usr/lib64
+ "C:/Program Files/HDF5/lib"
+)
+
+FIND_PATH (HDF5_INCLUDE_DIR "H5public.h"
+ ${HDF5_ROOT_DIR}/../include
+)
+
+IF (HDF5_INCLUDE_DIR)
+ SET (HDF5_FOUND "YES")
+ INCLUDE (${HDF5_ROOT_DIR}/HDF5-config.cmake)
+ENDIF (HDF5_INCLUDE_DIR)
diff --git a/Resources/HDF5-config.cmake.build.in b/Resources/HDF5-config.cmake.build.in
new file mode 100644
index 0000000..132e8be
--- /dev/null
+++ b/Resources/HDF5-config.cmake.build.in
@@ -0,0 +1,42 @@
+#-----------------------------------------------------------------------------
+# HDF5 Config file for compiling against hdf5 build directory
+#-----------------------------------------------------------------------------
+
+SET (HDF5_INCLUDE_DIRS "@HDF5_INCLUDES_BUILD_TIME@")
+
+#-----------------------------------------------------------------------------
+# Don't include targets if this file is being picked up by another
+# project which has already build hdf5 as a subproject
+#-----------------------------------------------------------------------------
+IF (NOT TARGET "hdf5" AND NOT HDF5_INSTALL_SKIP_TARGETS)
+ GET_FILENAME_COMPONENT (SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+ INCLUDE (${SELF_DIR}/HDF5-targets.cmake)
+ENDIF (NOT TARGET "hdf5" AND NOT HDF5_INSTALL_SKIP_TARGETS)
+
+SET (HDF5_VERSION_STRING @HDF5_VERSION_STRING@)
+SET (HDF5_VERSION_MAJOR @HDF5_VERSION_MAJOR@)
+SET (HDF5_VERSION_MINOR @HDF5_VERSION_MINOR@)
+
+SET (HDF5_ENABLE_PARALLEL @HDF5_ENABLE_PARALLEL@)
+SET (HDF5_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@)
+SET (HDF5_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
+SET (HDF5_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
+SET (HDF5_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
+
+#
+# To be continued ...
+#
+# XXX_INCLUDE_DIRS The final set of include directories listed in one variable for use by client code. This should not be a cache entry.
+# XXX_LIBRARIES The libraries to link against to use XXX. These should include full paths. This should not be a cache entry.
+# XXX_DEFINITIONS Definitions to use when compiling code that uses XXX. This really shouldn't include options such as (-DHAS_JPEG)that a client source-code file uses to decide whether to #include <jpeg.h>
+# XXX_EXECUTABLE Where to find the XXX tool.
+# XXX_YYY_EXECUTABLE Where to find the YYY tool that comes with XXX.
+# XXX_LIBRARY_DIRS Optionally, the final set of library directories listed in one variable for use by client code. This should not be a cache entry.
+# XXX_ROOT_DIR Where to find the base directory of XXX.
+# XXX_VERSION_YY Expect Version YY if true. Make sure at most one of these is ever true.
+# XXX_WRAP_YY If False, do not try to use the relevent CMake wrapping command.
+# XXX_YY_FOUND If False, optional YY part of XXX sytem is not available.
+# XXX_FOUND Set to false, or undefined, if we haven't found, or don't want to use XXX.
+# XXX_RUNTIME_LIBRARY_DIRS Optionally, the runtime library search path for use when running an executable linked to shared libraries.
+# The list should be used by user code to create the PATH on windows or LD_LIBRARY_PATH on unix.
+# This should not be a cache entry.
diff --git a/Resources/HDF5-config.cmake.install.in b/Resources/HDF5-config.cmake.install.in
new file mode 100644
index 0000000..2c33edf
--- /dev/null
+++ b/Resources/HDF5-config.cmake.install.in
@@ -0,0 +1,43 @@
+#-----------------------------------------------------------------------------
+# HDF5 Config file for compiling against hdf5 install directory
+#-----------------------------------------------------------------------------
+
+GET_FILENAME_COMPONENT (SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+GET_FILENAME_COMPONENT (HDF5_INCLUDE_DIRS "${SELF_DIR}/../include" ABSOLUTE)
+SET (HDF5_FORTRAN_DIR ${HDF5_INCLUDE_DIRS}/fortran)
+
+#-----------------------------------------------------------------------------
+# Don't include targets if this file is being picked up by another
+# project which has already build hdf5 as a subproject
+#-----------------------------------------------------------------------------
+IF (NOT TARGET "hdf5")
+ INCLUDE (${SELF_DIR}/HDF5-targets.cmake)
+ENDIF (NOT TARGET "hdf5")
+
+SET (HDF5_VERSION_STRING @HDF5_VERSION_STRING@)
+SET (HDF5_VERSION_MAJOR @HDF5_VERSION_MAJOR@)
+SET (HDF5_VERSION_MINOR @HDF5_VERSION_MINOR@)
+
+SET (HDF5_ENABLE_PARALLEL @HDF5_ENABLE_PARALLEL@)
+SET (HDF5_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@)
+SET (HDF5_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
+SET (HDF5_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
+SET (HDF5_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
+
+#
+# To be continued ...
+#
+# XXX_INCLUDE_DIRS The final set of include directories listed in one variable for use by client code. This should not be a cache entry.
+# XXX_LIBRARIES The libraries to link against to use XXX. These should include full paths. This should not be a cache entry.
+# XXX_DEFINITIONS Definitions to use when compiling code that uses XXX. This really shouldn't include options such as (-DHAS_JPEG)that a client source-code file uses to decide whether to #include <jpeg.h>
+# XXX_EXECUTABLE Where to find the XXX tool.
+# XXX_YYY_EXECUTABLE Where to find the YYY tool that comes with XXX.
+# XXX_LIBRARY_DIRS Optionally, the final set of library directories listed in one variable for use by client code. This should not be a cache entry.
+# XXX_ROOT_DIR Where to find the base directory of XXX.
+# XXX_VERSION_YY Expect Version YY if true. Make sure at most one of these is ever true.
+# XXX_WRAP_YY If False, do not try to use the relevent CMake wrapping command.
+# XXX_YY_FOUND If False, optional YY part of XXX sytem is not available.
+# XXX_FOUND Set to false, or undefined, if we haven't found, or don't want to use XXX.
+# XXX_RUNTIME_LIBRARY_DIRS Optionally, the runtime library search path for use when running an executable linked to shared libraries.
+# The list should be used by user code to create the PATH on windows or LD_LIBRARY_PATH on unix.
+# This should not be a cache entry.
diff --git a/Resources/HDF5Config.cmake.in b/Resources/HDF5Config.cmake.in
deleted file mode 100644
index f7d1fd6..0000000
--- a/Resources/HDF5Config.cmake.in
+++ /dev/null
@@ -1,32 +0,0 @@
-#
-# HDF5 Config file for CMake
-#
-
-SET(HDF5_INCLUDE_DIRS "@HDF5_INCLUDE_DIRECTORIES@i" )
-SET(HDF5_LIBRARIES "@HDF5_LIBRARIES@" )
-SET(HDF5_LINK_DIRECTORIES "@CMAKE_LIBRARY_OUTPUT_DIRECTORY@" )
-
-# Names for hdf5 library
-SET(HDF5_LIB_NAME "@HDF5_LIB_NAME@")
-SET(HDF5_LIB_NAME_RELEASE "@HDF5_LIB_NAME_RELEASE@")
-SET(HDF5_LIB_NAME_DEBUG "@HDF5_LIB_NAME_DEBUG@")
-
-# Names for hdf5_hl library
-SET(HDF5_HL_LIB_NAME "@HDF5_HL_LIB_NAME@")
-SET(HDF5_HL_LIB_NAME_RELEASE "@HDF5_HL_LIB_NAME_RELEASE@")
-SET(HDF5_HL_LIB_NAME_DEBUG "@HDF5_HL_LIB_NAME_DEBUG@")
-
-# Names for hdf5_cpp library
-SET(HDF5_CPP_LIB_NAME "@HDF5_CPP_LIB_NAME@")
-SET(HDF5_CPP_LIB_NAME_RELEASE "@HDF5_CPP_LIB_NAME_RELEASE@")
-SET(HDF5_CPP_LIB_NAME_DEBUG "@HDF5_CPP_LIB_NAME_DEBUG@")
-
-# Names for hdf5_test library
-SET(HDF5_TEST_LIB_NAME "@HDF5_TEST_LIB_NAME@")
-SET(HDF5_TEST_LIB_NAME_RELEASE "@HDF5_TEST_LIB_NAME_RELEASE@")
-SET(HDF5_TEST_LIB_NAME_DEBUG "@HDF5_TEST_LIB_NAME_DEBUG@")
-
-# Names for hdf5_test library
-SET(HDF5_TOOLS_LIB_NAME "@HDF5_TOOLS_LIB_NAME@")
-SET(HDF5_TOOLS_LIB_NAME_RELEASE "@HDF5_TOOLS_LIB_NAME_RELEASE@")
-SET(HDF5_TOOLS_LIB_NAME_DEBUG "@HDF5_TOOLS_LIB_NAME_DEBUG@")