aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorElie Tournier <tournier.elie@gmail.com>2017-04-20 14:06:56 +0100
committerSzczepan Zalega <szczepan@nitrokey.com>2017-11-02 16:10:06 +0100
commitdab6f2bcf292dfd6ee629a4ad9b2216e104d7c1d (patch)
tree5cba9802797b105365d263dcdbce734975553b36 /CMakeLists.txt
parent7797c8fb5fa69068dd659c369bc774ca74f592fe (diff)
downloadlibnitrokey-dab6f2bcf292dfd6ee629a4ad9b2216e104d7c1d.tar.gz
libnitrokey-dab6f2bcf292dfd6ee629a4ad9b2216e104d7c1d.tar.bz2
Add a getter for the library version.
This value is save when running CMake. Signed-off-by: Elie Tournier <tournier.elie@gmail.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt23
1 files changed, 23 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8259f67..537a54a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,6 +41,29 @@ include(GNUInstallDirs)
OPTION(LIBNITROKEY_STATIC "Build libnitrokey statically" FALSE)
+# Getter for the library version
+#
+# If a git tag is available, we use it.
+# Else, we use a git version and we raise a warning.
+#
+exec_program(
+ "git"
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ARGS "describe"
+ OUTPUT_VARIABLE GIT_VERSION)
+
+IF(${GIT_TAG} MATCHES "fatal:.*")
+MESSAGE(WARNING "Unable to find a git tag. Using git version instead.")
+exec_program(
+ "git"
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ARGS "rev-parse HEAD"
+ OUTPUT_VARIABLE GIT_VERSION)
+ENDIF()
+
+MESSAGE("LIBRARY VERSION: ${GIT_VERSION} ")
+ADD_DEFINITIONS(-DVERSION="${GIT_VERSION}")
+
IF (NOT CMAKE_BUILD_TYPE)
IF(APPLE)