initial release
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# Generate version.h with the current git commit hash and date.
|
||||
# Only rewrites the file if the content changed (avoids rebuild cascade).
|
||||
# Usage: cmake -DSRC_DIR=... -DOUTPUT=... -P version.cmake
|
||||
|
||||
execute_process(
|
||||
COMMAND git rev-parse --short HEAD
|
||||
WORKING_DIRECTORY "${SRC_DIR}"
|
||||
OUTPUT_VARIABLE GIT_HASH
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
ERROR_QUIET
|
||||
RESULT_VARIABLE GIT_RESULT
|
||||
)
|
||||
if(NOT GIT_RESULT EQUAL 0)
|
||||
set(GIT_HASH "unknown")
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND git show -s --format=%cs HEAD
|
||||
WORKING_DIRECTORY "${SRC_DIR}"
|
||||
OUTPUT_VARIABLE GIT_DATE
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
ERROR_QUIET
|
||||
RESULT_VARIABLE DATE_RESULT
|
||||
)
|
||||
if(NOT DATE_RESULT EQUAL 0)
|
||||
set(GIT_DATE "unknown")
|
||||
endif()
|
||||
|
||||
set(CONTENT "#pragma once\n#define OMNIVOICE_VERSION \"${GIT_HASH} (${GIT_DATE})\"\n")
|
||||
|
||||
if(EXISTS "${OUTPUT}")
|
||||
file(READ "${OUTPUT}" EXISTING)
|
||||
if("${EXISTING}" STREQUAL "${CONTENT}")
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
file(WRITE "${OUTPUT}" "${CONTENT}")
|
||||
Reference in New Issue
Block a user