diff --git a/rx/CMakeLists.txt b/rx/CMakeLists.txt index c3ac34840..258caea75 100644 --- a/rx/CMakeLists.txt +++ b/rx/CMakeLists.txt @@ -20,31 +20,34 @@ PRIVATE include/${PROJECT_NAME} ) +if (Git_FOUND) + execute_process(COMMAND ${GIT_EXECUTABLE} log --date=format:%Y%m%d --pretty=format:'%cd' -n 1 WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" OUTPUT_VARIABLE GIT_DATE) -execute_process(COMMAND date +%+4Y%m%d OUTPUT_VARIABLE RAW_VERSION) -string(STRIP "${RAW_VERSION}" RAW_VERSION) + execute_process(COMMAND ${GIT_EXECUTABLE} log --pretty=format:'%h' -n 1 + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + OUTPUT_VARIABLE GIT_REV) -execute_process(COMMAND git log --date=format:%Y%m%d --pretty=format:'%cd' -n 1 WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" OUTPUT_VARIABLE GIT_DATE) + execute_process( + COMMAND ${GIT_EXECUTABLE} diff --quiet --exit-code + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + RESULT_VARIABLE GIT_DIRTY ERROR_QUIET) -execute_process(COMMAND git log --pretty=format:'%h' -n 1 - WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" - OUTPUT_VARIABLE GIT_REV) + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + OUTPUT_VARIABLE GIT_BRANCH) -execute_process( - COMMAND git diff --quiet --exit-code - WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" - RESULT_VARIABLE GIT_DIRTY ERROR_QUIET) - -execute_process( - COMMAND git rev-parse --abbrev-ref HEAD - WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" - OUTPUT_VARIABLE GIT_BRANCH) - -string(SUBSTRING ${GIT_DATE} 1 8 GIT_DATE) -string(STRIP "${GIT_REV}" GIT_REV) -string(SUBSTRING "${GIT_REV}" 1 7 GIT_REV) -string(STRIP "${GIT_DIRTY}" GIT_DIRTY) -string(STRIP "${GIT_BRANCH}" GIT_BRANCH) + string(SUBSTRING ${GIT_DATE} 1 8 GIT_DATE) + string(STRIP "${GIT_REV}" GIT_REV) + string(SUBSTRING "${GIT_REV}" 1 7 GIT_REV) + string(STRIP "${GIT_DIRTY}" GIT_DIRTY) + string(STRIP "${GIT_BRANCH}" GIT_BRANCH) +else() + set(GIT_DATE 0) + set(GIT_REV 0) + set(RX_GIT_DIRTY 1) + set(RX_GIT_BRANCH Unknown) +endif() target_compile_definitions(${PROJECT_NAME} PRIVATE RX_RAW_VERSION=${GIT_DATE}