mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2024-11-14 19:57:17 +01:00
45 lines
1.6 KiB
CMake
45 lines
1.6 KiB
CMake
#
|
|
# Copyright (C) 2013-2016 MariaDB Corporation AB
|
|
#
|
|
# Redistribution and use is allowed according to the terms of the New
|
|
# BSD license.
|
|
# For details see the COPYING-CMAKE-SCRIPTS file.
|
|
#
|
|
FUNCTION(GET_FILE_VERSION FILE_NAME FILE_VERSION)
|
|
|
|
# if we build from a git repository, we calculate the file version:
|
|
# Patch number is numer of commits for given file
|
|
IF(EXISTS ${CC_SOURCE_DIR}/.git)
|
|
EXECUTE_PROCESS(COMMAND git --git-dir=${CC_SOURCE_DIR}/.git --work-tree=${CC_SOURCE_DIR} rev-list HEAD --count -- ${FILE_NAME}
|
|
OUTPUT_VARIABLE FV)
|
|
STRING(REPLACE "\n" "" FV ${FV})
|
|
SET(${FILE_VERSION} ${FV} PARENT_SCOPE)
|
|
ELSE()
|
|
SET(${FILE_VERSION} 0)
|
|
ENDIF()
|
|
ENDFUNCTION()
|
|
|
|
MACRO(SET_VERSION_INFO)
|
|
SET(FILE_VERSION "0")
|
|
FOREACH(PROPERTY ${ARGN})
|
|
IF(${PROPERTY} MATCHES "TARGET:")
|
|
STRING(REGEX REPLACE "^[TARGET:\\s]" "" TARGET ${PROPERTY})
|
|
ELSEIF(${PROPERTY} MATCHES "FILE_TYPE:")
|
|
STRING(REGEX REPLACE "^[FILE_TYPE:\\s]" "" FILE_TYPE ${PROPERTY})
|
|
ELSEIF(${PROPERTY} MATCHES "ORIGINAL_FILE_NAME:")
|
|
STRING(REGEX REPLACE "^[ORIGINAL_FILE_NAME:\\s]" "" ORIGINAL_FILE_NAME ${PROPERTY})
|
|
ELSEIF(${PROPERTY} MATCHES "SOURCE_FILE:")
|
|
STRING(REGEX REPLACE "^[SOURCE_FILE:\\s]" "" SOURCE ${PROPERTY})
|
|
GET_FILE_VERSION(${SOURCE} FILE_VERSION)
|
|
ELSEIF(${PROPERTY} MATCHES "FILE_DESCRIPTION:")
|
|
STRING(REPLACE "FILE_DESCRIPTION:" "" FILE_DESCRIPTION ${PROPERTY})
|
|
ENDIF()
|
|
ENDFOREACH()
|
|
CONFIGURE_FILE(${CC_SOURCE_DIR}/win/resource.rc.in
|
|
${CC_BINARY_DIR}/win/${TARGET}.rc)
|
|
SET(${TARGET}_RC ${CC_BINARY_DIR}/win/${TARGET}.rc)
|
|
ENDMACRO()
|
|
|
|
|
|
|