diff options
author | Maksim Andrianov <maksimandrianov1@gmail.com> | 2019-05-14 13:30:17 +0300 |
---|---|---|
committer | Maksim Andrianov <maksimandrianov1@gmail.com> | 2019-05-17 12:53:50 +0300 |
commit | bb7a7dc729ab4d3d01f6f0cd0a8060da537ad870 (patch) | |
tree | e1a3ce32f06a8c4104791f209f827ea5ba948514 /cmake | |
parent | 9949124c92d8563aba3f2bca2525f987778171bb (diff) |
[omim][generator] Added generator_tool version.
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/BuildVersion.cmake | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/cmake/BuildVersion.cmake b/cmake/BuildVersion.cmake new file mode 100644 index 0000000000..311a1fda53 --- /dev/null +++ b/cmake/BuildVersion.cmake @@ -0,0 +1,45 @@ +function(get_last_git_commit_hash result_name) + find_package(Git) + if (GIT_FOUND) + execute_process(COMMAND + "${GIT_EXECUTABLE}" describe --match="" --always --abbrev=40 --dirty + WORKING_DIRECTORY "${OMIM_ROOT}" + OUTPUT_VARIABLE GIT_HASH + ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) + endif() + + if (NOT GIT_HASH) + message(WARNING "Failed to get last commit from git.") + set(GIT_HASH "") + endif() + + set(${result_name} ${GIT_HASH} PARENT_SCOPE) +endfunction() + +function(get_last_git_commit_timestamp result_name) + find_package(Git) + if (GIT_FOUND) + execute_process(COMMAND + "${GIT_EXECUTABLE}" log -1 --format=%ad --date=unix + WORKING_DIRECTORY "${OMIM_ROOT}" + OUTPUT_VARIABLE GIT_TIMESTAMP + ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) + endif() + + if (NOT GIT_TIMESTAMP) + message(WARNING "Failed to get last commit from git.") + set(GIT_TIMESTAMP "0") + endif() + + set(${result_name} ${GIT_TIMESTAMP} PARENT_SCOPE) +endfunction() + +function(configure_build_version_hpp) + message("Configure build version ...") + get_last_git_commit_hash(GIT_HASH) + get_last_git_commit_timestamp(GIT_TIMESTAMP) + configure_file("${OMIM_ROOT}/build_version.hpp.in" "${OMIM_ROOT}/build_version.hpp" @ONLY) +endfunction() + + +configure_build_version_hpp() |