blob: 7d6533a728fc698ea69f619305dc3dd679afdac6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# This is called by cmake as an extermal process from
# ./src/CMakeLists.txt and creates inkscape-version.cpp
#
# It's also included directly in ./CMakeLists.txt to
# determine INKSCAPE_REVISION for the 'dist' target
#
# These variables are defined by the caller, matching the CMake equivilents.
# - ${INKSCAPE_SOURCE_DIR}
# - ${INKSCAPE_BINARY_DIR}
set(INKSCAPE_REVISION "unknown")
if(EXISTS ${INKSCAPE_SOURCE_DIR}/.git)
execute_process(COMMAND git rev-parse --short HEAD
WORKING_DIRECTORY ${INKSCAPE_SOURCE_DIR}
OUTPUT_VARIABLE INKSCAPE_REV_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND git log -n 1 --pretty=%cd --date=short
WORKING_DIRECTORY ${INKSCAPE_SOURCE_DIR}
OUTPUT_VARIABLE INKSCAPE_REV_DATE
OUTPUT_STRIP_TRAILING_WHITESPACE)
set(INKSCAPE_REVISION "${INKSCAPE_REV_HASH}, ${INKSCAPE_REV_DATE}")
execute_process(COMMAND
git status -s ${INKSCAPE_SOURCE_DIR}/src
WORKING_DIRECTORY ${INKSCAPE_SOURCE_DIR}
OUTPUT_VARIABLE INKSCAPE_SOURCE_MODIFIED
OUTPUT_STRIP_TRAILING_WHITESPACE)
if(NOT INKSCAPE_SOURCE_MODIFIED STREQUAL "")
set(INKSCAPE_REVISION "${INKSCAPE_REVISION}, custom")
endif()
endif()
if(NOT "${INKSCAPE_BINARY_DIR}" STREQUAL "")
message("revision is " ${INKSCAPE_REVISION})
configure_file(${INKSCAPE_BINARY_DIR}/src/inkscape-version.cpp.in ${INKSCAPE_BINARY_DIR}/src/inkscape-version.cpp)
endif()
|