From 659c5f28e587d85635676429b6d55bdfde92321a Mon Sep 17 00:00:00 2001 From: Daniel Dada Date: Tue, 16 Dec 2025 00:37:18 +0300 Subject: [PATCH] versioning --- CMakeLists.txt | 36 +++++++++++++++++++++--------------- VERSION | 1 + VERSION.in | 1 + flake.nix | 10 +++++----- src/core/version.hpp | 2 +- 5 files changed, 29 insertions(+), 21 deletions(-) create mode 100644 VERSION create mode 100644 VERSION.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 48dbeb8..a523e66 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -31,27 +31,27 @@ if(DEFINED CLRSYNC_SEMVER) else() find_package(Git QUIET) - if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git") + if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git") execute_process( - COMMAND git describe --tags --long --always - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - OUTPUT_VARIABLE GIT_DESCRIBE - OUTPUT_STRIP_TRAILING_WHITESPACE - ERROR_QUIET + COMMAND git describe --tags --long --always + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + OUTPUT_VARIABLE GIT_DESCRIBE + OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_QUIET ) - endif() + endif() - if(GIT_DESCRIBE MATCHES "^[vV]?[0-9]+\\.[0-9]+\\.[0-9]+-[0-9]+-g[0-9a-f]+") + if(GIT_DESCRIBE MATCHES "^[vV]?[0-9]+\\.[0-9]+\\.[0-9]+-[0-9]+-g[0-9a-f]+") string(REGEX REPLACE - "^[vV]?([0-9]+\\.[0-9]+\\.[0-9]+)-([0-9]+)-g([0-9a-f]+)" - "\\1+\\2.git.g\\3" - SEMVER "${GIT_DESCRIBE}" + "^[vV]?([0-9]+\\.[0-9]+\\.[0-9]+)-([0-9]+)-g([0-9a-f]+)" + "\\1+git.g\\3" + SEMVER "${GIT_DESCRIBE}" ) - elseif(GIT_DESCRIBE) - set(SEMVER "${PROJECT_VERSION}+0.git.${GIT_DESCRIBE}") - else() + elseif(GIT_DESCRIBE) + set(SEMVER "${PROJECT_VERSION}.git.${GIT_DESCRIBE}") + else() set(SEMVER "${PROJECT_VERSION}") - endif() + endif() endif() message(STATUS "clrsync version: ${SEMVER}") @@ -62,6 +62,12 @@ configure_file( @ONLY ) +configure_file( + ${CMAKE_SOURCE_DIR}/VERSION.in + ${CMAKE_SOURCE_DIR}/VERSION + @ONLY +) + configure_file( ${CMAKE_SOURCE_DIR}/AUR/PKGBUILD.in ${CMAKE_SOURCE_DIR}/AUR/PKGBUILD diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..845639e --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.1.4 diff --git a/VERSION.in b/VERSION.in new file mode 100644 index 0000000..c0afd7d --- /dev/null +++ b/VERSION.in @@ -0,0 +1 @@ +@PROJECT_VERSION@ \ No newline at end of file diff --git a/flake.nix b/flake.nix index f65360d..a68b6f2 100644 --- a/flake.nix +++ b/flake.nix @@ -14,12 +14,12 @@ forAllSystems = nixpkgs.lib.genAttrs supportedSystems; nixpkgsFor = forAllSystems (system: import nixpkgs { inherit system; }); - baseVersion = "0.1.4"; + baseVersion = nixpkgs.lib.removeSuffix "\n" (builtins.readFile ./VERSION); -semver = - if self ? rev - then "${baseVersion}+${toString self.revCount}.git.${builtins.substring 0 7 self.rev}" - else "${baseVersion}+dev"; # Accept that local builds show "+dev" + semver = + if self ? rev + then "${baseVersion}+git.${builtins.substring 0 7 self.rev}" + else "${baseVersion}+dev"; in { packages = forAllSystems ( diff --git a/src/core/version.hpp b/src/core/version.hpp index d2623c2..2eb1d22 100644 --- a/src/core/version.hpp +++ b/src/core/version.hpp @@ -7,7 +7,7 @@ namespace clrsync::core { -const std::string GIT_SEMVER = "0.1.4+4.git.ga5d6503"; +const std::string GIT_SEMVER = "0.1.4+git.gcd81744"; const std::string version_string(); } // namespace clrsync::core