summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
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 /CMakeLists.txt
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
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt19
1 files changed, 14 insertions, 5 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})