24 lines
1.2 KiB
CMake
24 lines
1.2 KiB
CMake
execute_process(COMMAND ${GIT_EXECUTABLE} describe --tags --long
|
|
WORKING_DIRECTORY "${dfhack_SOURCE_DIR}"
|
|
OUTPUT_VARIABLE DFHACK_GIT_DESCRIPTION)
|
|
execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse HEAD
|
|
WORKING_DIRECTORY "${dfhack_SOURCE_DIR}"
|
|
OUTPUT_VARIABLE DFHACK_GIT_COMMIT)
|
|
execute_process(COMMAND ${GIT_EXECUTABLE} describe --tags --exact-match
|
|
WORKING_DIRECTORY "${dfhack_SOURCE_DIR}"
|
|
RESULT_VARIABLE DFHACK_GIT_TAGGED_RESULT
|
|
OUTPUT_QUIET ERROR_QUIET)
|
|
string(STRIP ${DFHACK_GIT_DESCRIPTION} DFHACK_GIT_DESCRIPTION)
|
|
file(WRITE ${dfhack_SOURCE_DIR}/library/include/git-describe.tmp.h
|
|
"#define DFHACK_GIT_DESCRIPTION \"${DFHACK_GIT_DESCRIPTION}\"\n")
|
|
string(STRIP ${DFHACK_GIT_COMMIT} DFHACK_GIT_COMMIT)
|
|
file(APPEND ${dfhack_SOURCE_DIR}/library/include/git-describe.tmp.h
|
|
"#define DFHACK_GIT_COMMIT \"${DFHACK_GIT_COMMIT}\"\n")
|
|
if(${DFHACK_GIT_TAGGED_RESULT} EQUAL 0)
|
|
file(APPEND ${dfhack_SOURCE_DIR}/library/include/git-describe.tmp.h
|
|
"#define DFHACK_GIT_TAGGED\n")
|
|
endif()
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
|
${dfhack_SOURCE_DIR}/library/include/git-describe.tmp.h
|
|
${dfhack_SOURCE_DIR}/library/include/git-describe.h)
|