aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2020-12-31 16:41:42 -0700
committerAndrew Kelley <andrew@ziglang.org>2020-12-31 16:41:42 -0700
commitd96d8639e592b4bb4b2e330c4bd7412256b297d2 (patch)
treee534e9d9cd33c3bebb2af201836e56536e149ac0 /CMakeLists.txt
parente8810f579406673edad0c9780c9d990f3034717a (diff)
downloadzig-d96d8639e592b4bb4b2e330c4bd7412256b297d2.tar.gz
zig-d96d8639e592b4bb4b2e330c4bd7412256b297d2.zip
Revert "Comply with semantic versioning pre-release format"
This reverts commit bbe2cca1ae32af322abcf4cc4a6d6bee671bf5b8.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt29
1 files changed, 8 insertions, 21 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e023777dd9..a9dc38b40b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,8 +25,8 @@ project(zig C CXX)
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
set(ZIG_VERSION_MAJOR 0)
-set(ZIG_VERSION_MINOR 8)
-set(ZIG_VERSION_PATCH 0)
+set(ZIG_VERSION_MINOR 7)
+set(ZIG_VERSION_PATCH 1)
set(ZIG_VERSION "" CACHE STRING "Override Zig version string. Default is to find out with git.")
if("${ZIG_VERSION}" STREQUAL "")
@@ -34,31 +34,18 @@ if("${ZIG_VERSION}" STREQUAL "")
find_program(GIT_EXE NAMES git)
if(GIT_EXE)
execute_process(
- COMMAND ${GIT_EXE} -C ${CMAKE_SOURCE_DIR} describe --match *.*.* --tags
+ COMMAND ${GIT_EXE} -C ${CMAKE_SOURCE_DIR} name-rev HEAD --tags --name-only --no-undefined --always
RESULT_VARIABLE EXIT_STATUS
- OUTPUT_VARIABLE GIT_DESCRIBE
+ OUTPUT_VARIABLE ZIG_GIT_REV
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_QUIET)
if(EXIT_STATUS EQUAL "0")
- if(GIT_DESCRIBE MATCHES "^v?([0-9]+\\.[0-9]+\\.[0-9]+)$")
- # Tagged release version.
- set(GIT_TAG ${CMAKE_MATCH_1})
- if(NOT GIT_TAG VERSION_EQUAL ZIG_VERSION)
- message(SEND_ERROR "Configured Zig version (${ZIG_VERSION}) does not match Git tag (${GIT_TAG}).")
+ if(ZIG_GIT_REV MATCHES "\\^0$")
+ if(NOT("${ZIG_GIT_REV}" STREQUAL "${ZIG_VERSION}^0"))
+ message("WARNING: Tag does not match configured Zig version")
endif()
- elseif(GIT_DESCRIBE MATCHES "^v?([0-9]+\\.[0-9]+\\.[0-9]+)-([0-9]+)-(.+)$")
- # Untagged pre-release. The Zig version is updated to include the number of commits
- # since the last tagged version and the commit hash. The version is formatted in
- # accordance with the https://semver.org specification.
- set(GIT_TAG ${CMAKE_MATCH_1})
- set(GIT_COMMITS_AFTER_TAG ${CMAKE_MATCH_2})
- set(GIT_COMMIT ${CMAKE_MATCH_3})
- if(NOT ZIG_VERSION VERSION_GREATER GIT_TAG)
- message(SEND_ERROR "Configured Zig version (${ZIG_VERSION}) must be greater than tagged ancestor (${GIT_TAG}).")
- endif()
- set(ZIG_VERSION "${ZIG_VERSION}-dev.${GIT_COMMITS_AFTER_TAG}+${GIT_COMMIT}")
else()
- message(WARNING "Failed to parse version from output of `git describe`.")
+ set(ZIG_VERSION "${ZIG_VERSION}+${ZIG_GIT_REV}")
endif()
endif()
endif()