@@ -5,38 +5,53 @@ cmake_minimum_required(VERSION 3.2)
5
5
6
6
project (linuxdeployqt )
7
7
8
- # read Git revision ID
9
- execute_process (
10
- COMMAND git rev-parse --short HEAD
11
- WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
12
- OUTPUT_VARIABLE GIT_COMMIT
13
- OUTPUT_STRIP_TRAILING_WHITESPACE
14
- )
8
+ find_program (GIT git )
15
9
16
10
# make sure Git revision ID and latest tag is not stored in the CMake cache
17
11
# otherwise, one would have to reset the CMake cache on every new commit to make sure the Git commit ID is up to date
18
12
unset (GIT_COMMIT CACHE )
19
13
unset (GIT_LATEST_TAG CACHE )
20
14
15
+ if ("${GIT} " STREQUAL "GIT-NOTFOUND" )
16
+ message (FATAL_ERROR "Could not find git" )
17
+ endif ()
18
+
21
19
# read Git revision ID and latest tag number
22
20
execute_process (
23
- COMMAND git rev-parse --short HEAD
21
+ COMMAND " ${GIT} " rev-parse --short HEAD
24
22
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
25
23
OUTPUT_VARIABLE GIT_COMMIT
26
24
OUTPUT_STRIP_TRAILING_WHITESPACE
25
+ RESULT_VARIABLE GIT_COMMIT_RESULT
27
26
)
27
+ if (NOT GIT_COMMIT_RESULT EQUAL 0 )
28
+ message (FATAL_ERROR "Failed to determine git commit ID" )
29
+ endif ()
30
+ mark_as_advanced (GIT_COMMIT GIT_COMMIT_RESULT )
31
+
28
32
execute_process (
29
- COMMAND git rev-list --tags --skip=1 --max-count=1
33
+ COMMAND " ${GIT} " rev-list --tags --skip=1 --max-count=1
30
34
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
31
35
OUTPUT_VARIABLE GIT_TAG_ID
32
36
OUTPUT_STRIP_TRAILING_WHITESPACE
37
+ RESULT_VARIABLE GIT_TAG_ID_RESULT
33
38
)
39
+ if (NOT GIT_TAG_ID_RESULT EQUAL 0 )
40
+ message (FATAL_ERROR "Failed to determine git tag ID" )
41
+ endif ()
42
+ mark_as_advanced (GIT_TAG_ID GIT_TAG_ID_RESULT )
43
+
34
44
execute_process (
35
- COMMAND git describe --tags ${GIT_TAG_ID} --abbrev=0
45
+ COMMAND " ${GIT} " describe --tags ${GIT_TAG_ID} --abbrev=0
36
46
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
37
47
OUTPUT_VARIABLE GIT_TAG_NAME
38
48
OUTPUT_STRIP_TRAILING_WHITESPACE
49
+ RESULT_VARIABLE GIT_TAG_NAME_RESULT
39
50
)
51
+ if (NOT GIT_TAG_NAME_RESULT EQUAL 0 )
52
+ message (FATAL_ERROR "Failed to determine git tag name" )
53
+ endif ()
54
+ mark_as_advanced (GIT_TAG_NAME GIT_TAG_NAME_RESULT )
40
55
41
56
# set version and build number
42
57
set (VERSION 1-alpha )
@@ -51,6 +66,11 @@ execute_process(
51
66
COMMAND env LC_ALL=C date -u "+%Y-%m-%d %H:%M:%S %Z"
52
67
OUTPUT_VARIABLE DATE
53
68
OUTPUT_STRIP_TRAILING_WHITESPACE
69
+ RESULT_VARIABLE DATE_RESULT
54
70
)
71
+ if (NOT DATE_RESULT EQUAL 0 )
72
+ message (FATAL_ERROR "Failed to determine date string" )
73
+ endif ()
74
+ mark_as_advanced (DATE DATE_RESULT )
55
75
56
76
add_subdirectory (tools/linuxdeployqt )
0 commit comments