From a3c312ece0a77310a9d8ecde1dd0f1267646f4ff Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Sun, 25 Mar 2018 14:38:40 +0200 Subject: [PATCH] Adds commit hash to the version. Added the short hash coming from git lastest git commit to the version number. In addition of the dirty flag it make possible to know from where modifications divergences begin. Change-Id: Id25256f896c8179009d8588f79e7801cc2c90821 Signed-off-by: Romain Forlot --- cmake/cmake.d/02-variables.cmake | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cmake/cmake.d/02-variables.cmake b/cmake/cmake.d/02-variables.cmake index b4940f2..dc1c313 100644 --- a/cmake/cmake.d/02-variables.cmake +++ b/cmake/cmake.d/02-variables.cmake @@ -67,6 +67,13 @@ execute_process(COMMAND git describe --abbrev=0 OUTPUT_STRIP_TRAILING_WHITESPACE ) +# Get the git commit hash to append to the version +execute_process(COMMAND git rev-parse --short HEAD + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + OUTPUT_VARIABLE COMMIT_HASH + OUTPUT_STRIP_TRAILING_WHITESPACE +) + # Detect unstaged or untracked changes execute_process(COMMAND git status --short WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} @@ -84,7 +91,9 @@ endif() # attributes then add the dirty flag if git repo not sync'ed project(${PROJECT_NAME} VERSION ${PROJECT_VERSION} LANGUAGES ${PROJECT_LANGUAGES}) if(NOT ${DIRTY_FLAG}) -set(PROJECT_VERSION "${PROJECT_VERSION}-dirty") + set(PROJECT_VERSION "${PROJECT_VERSION}-${COMMIT_HASH}-dirty") +else() + set(PROJECT_VERSION "${PROJECT_VERSION}-${COMMIT_HASH}") endif() set(AFB_TOKEN "" CACHE PATH "Default AFB_TOKEN") -- 2.16.6