blob: 329a8cc7ba81614bc812fc3b676a964baa0da860 [file] [log] [blame]
Austin Schuh272c6132020-11-14 16:37:52 -08001set(VERSION_MAJOR 1)
2set(VERSION_MINOR 12)
3set(VERSION_PATCH 0)
4set(VERSION_COMMIT 0)
5
Austin Schuhe89fa2d2019-08-14 20:24:23 -07006find_program(GIT git)
Austin Schuh272c6132020-11-14 16:37:52 -08007if(GIT)
8 execute_process(
9 COMMAND ${GIT} describe
10 WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
11 OUTPUT_VARIABLE GIT_DESCRIBE_DIRTY
12 OUTPUT_STRIP_TRAILING_WHITESPACE
13 RESULT_VARIABLE GIT_DESCRIBE_RESULT
14 )
15
16 if(GIT_DESCRIBE_RESULT EQUAL 0)
17 string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" VERSION_MAJOR "${GIT_DESCRIBE_DIRTY}")
18 string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${GIT_DESCRIBE_DIRTY}")
19 string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_PATCH "${GIT_DESCRIBE_DIRTY}")
20 string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.[0-9]+\\-([0-9]+).*" "\\1" VERSION_COMMIT "${GIT_DESCRIBE_DIRTY}")
21 else()
22 message(WARNING "git describe failed with exit code: ${GIT_DESCRIBE_RESULT}")
23 endif()
24else()
25 message(WARNING "git is not found")
26endif()
27
28message("Proceeding with version: ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.${VERSION_COMMIT}")