|
19 | 19 | set(VERSION_SRC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/src/dwarfs/version.cpp)
|
20 | 20 | set(VERSION_HDR_FILE ${CMAKE_CURRENT_SOURCE_DIR}/include/dwarfs/version.h)
|
21 | 21 |
|
| 22 | +execute_process( |
| 23 | + COMMAND git rev-parse --show-toplevel |
| 24 | + OUTPUT_VARIABLE GIT_TOPLEVEL |
| 25 | + OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET) |
| 26 | + |
22 | 27 | execute_process(
|
23 | 28 | COMMAND git log --pretty=format:%h -n 1
|
24 | 29 | OUTPUT_VARIABLE PRJ_GIT_REV
|
25 |
| - ERROR_QUIET) |
| 30 | + OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET) |
26 | 31 |
|
27 |
| -if("${PRJ_GIT_REV}" STREQUAL "") |
| 32 | +if((NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${GIT_TOPLEVEL}") |
| 33 | + OR ("${PRJ_GIT_REV}" STREQUAL "")) |
28 | 34 | if(NOT EXISTS ${VERSION_SRC_FILE} OR NOT EXISTS ${VERSION_HDR_FILE})
|
29 | 35 | message(FATAL_ERROR "missing version files")
|
| 36 | + message("CMAKE_CURRENT_SOURCE_DIR: ${CMAKE_CURRENT_SOURCE_DIR}") |
| 37 | + message("GIT_TOPLEVEL: ${GIT_TOPLEVEL}") |
| 38 | + message("PRJ_GIT_REV: ${PRJ_GIT_REV}") |
30 | 39 | endif()
|
31 | 40 | else()
|
32 |
| - execute_process(COMMAND git describe --tags --match "v*" --dirty |
33 |
| - OUTPUT_VARIABLE PRJ_GIT_DESC) |
34 |
| - execute_process(COMMAND git rev-parse --abbrev-ref HEAD |
35 |
| - OUTPUT_VARIABLE PRJ_GIT_BRANCH) |
| 41 | + execute_process( |
| 42 | + COMMAND git describe --tags --match "v*" --dirty |
| 43 | + OUTPUT_STRIP_TRAILING_WHITESPACE |
| 44 | + OUTPUT_VARIABLE PRJ_GIT_DESC) |
| 45 | + execute_process( |
| 46 | + COMMAND git rev-parse --abbrev-ref HEAD |
| 47 | + OUTPUT_STRIP_TRAILING_WHITESPACE |
| 48 | + OUTPUT_VARIABLE PRJ_GIT_BRANCH) |
36 | 49 |
|
37 | 50 | string(STRIP "${PRJ_GIT_REV}" PRJ_GIT_REV)
|
38 | 51 | string(STRIP "${PRJ_GIT_DESC}" PRJ_GIT_DESC)
|
|
0 commit comments