summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2010-07-08 13:45:20 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2010-07-08 13:45:20 (GMT)
commite1bd8be26c943f053ca30f659e15556ac711009f (patch)
tree5b43440634f3ab786b973dbe229cc64b3f1e5947
parent435f58c1b8bc3002cb23bfa935dc9c3cc5a8d68a (diff)
downloadhdf5-e1bd8be26c943f053ca30f659e15556ac711009f.zip
hdf5-e1bd8be26c943f053ca30f659e15556ac711009f.tar.gz
hdf5-e1bd8be26c943f053ca30f659e15556ac711009f.tar.bz2
[svn-r19054] Added code to retrieve version info from H5public.h and corrected a typo in a configure check
-rw-r--r--CMakeLists.txt19
-rw-r--r--ConfigureChecks.cmake2
2 files changed, 15 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d84115c..4f9b264 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -78,11 +78,6 @@ PROJECT (HDF5 C CXX)
#-----------------------------------------------------------------------------
# Basic HDF5 stuff here
#-----------------------------------------------------------------------------
-SET (H5_VERS_MAJOR 1)
-SET (H5_VERS_MINOR 8)
-SET (H5_VERS_RELEASE 5)
-SET (H5_VERS_SUBRELEASE "snap2")
-#-----------------------------------------------------------------------------
SET (HDF5_PACKAGE "hdf5")
SET (HDF5_PACKAGE_NAME "HDF5")
SET (HDF5_PACKAGE_VERSION "${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}")
@@ -348,6 +343,20 @@ IF (CMAKE_COMPILER_IS_GNUCXX)
ENDIF (CMAKE_COMPILER_IS_GNUCXX)
#-----------------------------------------------------------------------------
+# parse the full version number from H5public.h and include in H5_VERS_INFO
+#-----------------------------------------------------------------------------
+FILE (READ ${HDF5_SRC_DIR}/H5public.h _h5public_h_contents)
+STRING (REGEX REPLACE ".*#define[ \t]+H5_VERS_MAJOR[ \t]+([0-9]*).*$"
+ "\\1" H5_VERS_MAJOR ${_h5public_h_contents})
+STRING (REGEX REPLACE ".*#define[ \t]+H5_VERS_MINOR[ \t]+([0-9]*).*$"
+ "\\1" H5_VERS_MINOR ${_h5public_h_contents})
+STRING (REGEX REPLACE ".*#define[ \t]+H5_VERS_RELEASE[ \t]+([0-9]*).*$"
+ "\\1" H5_VERS_RELEASE ${_h5public_h_contents})
+STRING (REGEX REPLACE ".*#define[ \t]+H5_VERS_SUBRELEASE[ \t]+\"([0-9A-Za-z.]*)\".*$"
+ "\\1" H5_VERS_SUBRELEASE ${_h5public_h_contents})
+#MESSAGE (STATUS "VERSION: ${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}-${H5_VERS_SUBRELEASE}")
+
+#-----------------------------------------------------------------------------
# All libs/tests/examples need the main include directories
#-----------------------------------------------------------------------------
INCLUDE_DIRECTORIES (${HDF5_BINARY_DIR} ${HDF5_SRC_DIR})
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 27fb1a8..f2cd86d 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -551,7 +551,7 @@ ENDIF (INLINE_TEST___inline__)
#-----------------------------------------------------------------------------
# Check how to print a Long Long integer
#-----------------------------------------------------------------------------
-SET (H5_H5_PRINTF_LL_WIDTH "H5_PRINTF_LL_WIDTH")
+SET (H5_PRINTF_LL_WIDTH "H5_PRINTF_LL_WIDTH")
IF (H5_PRINTF_LL_WIDTH MATCHES "^H5_PRINTF_LL_WIDTH$")
SET (PRINT_LL_FOUND 0)
MESSAGE (STATUS "Checking for appropriate format for 64 bit long:")