authorgravatar for sentrycraft123@gmail.comJan200101 <sentrycraft123@gmail.com> 2020-10-04 13:41:05+02:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-10-04 21:40:48-04:00
logd0a4110d34b8d80a9212a01f21d7be7629de8813
tree72a360923c856a2fa4871a5cf0801e79790e5aec
parent65991092f7d7460390529a012cb7e7893799fc34

Allow specifying build version using cmake


1 files changed, 19 insertions(+), 16 deletions(-)

CMakeLists.txt+19-16
...@@ -27,23 +27,26 @@ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})...@@ -27,23 +27,26 @@ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
27set(ZIG_VERSION_MAJOR 0)27set(ZIG_VERSION_MAJOR 0)
28set(ZIG_VERSION_MINOR 6)28set(ZIG_VERSION_MINOR 6)
29set(ZIG_VERSION_PATCH 0)29set(ZIG_VERSION_PATCH 0)
30set(ZIG_VERSION "${ZIG_VERSION_MAJOR}.${ZIG_VERSION_MINOR}.${ZIG_VERSION_PATCH}")30set(ZIG_VERSION "" CACHE STRING "Override Zig version string. Default is to find out with git.")
3131
32find_program(GIT_EXE NAMES git)32if("${ZIG_VERSION}" STREQUAL "")
33if(GIT_EXE)33 set(ZIG_VERSION "${ZIG_VERSION_MAJOR}.${ZIG_VERSION_MINOR}.${ZIG_VERSION_PATCH}")
34 execute_process(34 find_program(GIT_EXE NAMES git)
35 COMMAND ${GIT_EXE} -C ${CMAKE_SOURCE_DIR} name-rev HEAD --tags --name-only --no-undefined --always35 if(GIT_EXE)
36 RESULT_VARIABLE EXIT_STATUS36 execute_process(
37 OUTPUT_VARIABLE ZIG_GIT_REV37 COMMAND ${GIT_EXE} -C ${CMAKE_SOURCE_DIR} name-rev HEAD --tags --name-only --no-undefined --always
38 OUTPUT_STRIP_TRAILING_WHITESPACE38 RESULT_VARIABLE EXIT_STATUS
39 ERROR_QUIET)39 OUTPUT_VARIABLE ZIG_GIT_REV
40 if(EXIT_STATUS EQUAL "0")40 OUTPUT_STRIP_TRAILING_WHITESPACE
41 if(ZIG_GIT_REV MATCHES "\\^0$")41 ERROR_QUIET)
42 if(NOT("${ZIG_GIT_REV}" STREQUAL "${ZIG_VERSION}^0"))42 if(EXIT_STATUS EQUAL "0")
43 message("WARNING: Tag does not match configured Zig version")43 if(ZIG_GIT_REV MATCHES "\\^0$")
44 if(NOT("${ZIG_GIT_REV}" STREQUAL "${ZIG_VERSION}^0"))
45 message("WARNING: Tag does not match configured Zig version")
46 endif()
47 else()
48 set(ZIG_VERSION "${ZIG_VERSION}+${ZIG_GIT_REV}")
44 endif()49 endif()
45 else()
46 set(ZIG_VERSION "${ZIG_VERSION}+${ZIG_GIT_REV}")
47 endif()50 endif()
48 endif()51 endif()
49endif()52endif()