From 415c09748934637332b90d2dddedfb56603bc152 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anna=20=E2=80=9CCyberTailor=E2=80=9D?= Date: Mon, 21 Feb 2022 11:54:14 +0500 Subject: [PATCH] CMakeLists.txt: use git only when in repository Allow building fastfetch from tarballs with -DPROJECT_VERSION and -DPROJECT_VERSION_MAJOR options. --- CMakeLists.txt | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c425e98b4..843ebdd7a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,21 +24,25 @@ endif() set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wconversion") set(CMAKE_EXE_LINKER_FLAGS_RELEASE "-Wl,-O3") -execute_process( - COMMAND git rev-list --count HEAD - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" - OUTPUT_VARIABLE GIT_REV_LIST - OUTPUT_STRIP_TRAILING_WHITESPACE -) -execute_process( - COMMAND git rev-parse --short HEAD - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" - OUTPUT_VARIABLE GIT_REV_PARSE - OUTPUT_STRIP_TRAILING_WHITESPACE -) +set(PROJECT_VERSION "r0.0" CACHE STRING "Full version") +set(PROJECT_VERSION_MAJOR "0" CACHE STRING "Major version") +if (EXISTS "${CMAKE_SOURCE_DIR}/.git") + execute_process( + COMMAND git rev-list --count HEAD + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + OUTPUT_VARIABLE GIT_REV_LIST + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + execute_process( + COMMAND git rev-parse --short HEAD + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + OUTPUT_VARIABLE GIT_REV_PARSE + OUTPUT_STRIP_TRAILING_WHITESPACE + ) -set(PROJECT_VERSION "r${GIT_REV_LIST}.${GIT_REV_PARSE}") -set(PROJECT_VERSION_MAJOR "${GIT_REV_LIST}") + set(PROJECT_VERSION "r${GIT_REV_LIST}.${GIT_REV_PARSE}") + set(PROJECT_VERSION_MAJOR "${GIT_REV_LIST}") +endif() function(fastfetch_load_text FILENAME OUTVAR) file(READ "${FILENAME}" TEMP)