]> icculus.org git repositories - taylor/freespace2.git/blob - cmake/GitInfo.cmake
fix incorrect FS2 demo ifdef
[taylor/freespace2.git] / cmake / GitInfo.cmake
1
2 find_package(Git)
3
4 if(Git_FOUND)
5   execute_process(
6     COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
7     WORKING_DIRECTORY ${SOURCE_DIR}
8     OUTPUT_VARIABLE GIT_BRANCH
9     ERROR_QUIET
10     OUTPUT_STRIP_TRAILING_WHITESPACE
11   )
12
13   execute_process(
14     COMMAND ${GIT_EXECUTABLE} log -1 --format=%h
15     WORKING_DIRECTORY ${SOURCE_DIR}
16     OUTPUT_VARIABLE GIT_COMMIT_HASH
17     ERROR_QUIET
18     OUTPUT_STRIP_TRAILING_WHITESPACE
19   )
20
21   execute_process(
22     COMMAND ${GIT_EXECUTABLE} log -1 --format=%ad --date=format:%Y%m%d
23     WORKING_DIRECTORY ${SOURCE_DIR}
24     OUTPUT_VARIABLE GIT_COMMIT_DATE
25     ERROR_QUIET
26     OUTPUT_STRIP_TRAILING_WHITESPACE
27   )
28
29   execute_process(
30     COMMAND ${GIT_EXECUTABLE} describe
31     WORKING_DIRECTORY ${SOURCE_DIR}
32     OUTPUT_VARIABLE GIT_TAG
33     ERROR_QUIET
34     OUTPUT_STRIP_TRAILING_WHITESPACE
35   )
36
37   if(${GIT_TAG})
38     message("Building for Git version: ${GIT_COMMIT_DATE}~${GIT_BRANCH}:${GIT_COMMIT_HASH} (${GIT_TAG})")
39   else()
40     message("Building for Git version: ${GIT_COMMIT_DATE}~${GIT_BRANCH}:${GIT_COMMIT_HASH}")
41   endif()
42 endif()
43
44 configure_file(
45   ${SOURCE_DIR}/include/gitinfo.h.in
46   ${BINARY_DIR}/include/gitinfo.h
47 )