diff --git a/cmake/DeployMacros.cmake b/cmake/DeployMacros.cmake index a22c9d3e..3095ce66 100644 --- a/cmake/DeployMacros.cmake +++ b/cmake/DeployMacros.cmake @@ -129,6 +129,7 @@ endif() macro(set_version _T) + set(_VERSION_ 1) # macro version set(_name) set(_is_name 1) set(_is_out 0) @@ -177,24 +178,41 @@ macro(set_version _T) set(_${_T}_CACHED_VERSION "${_${_T}_VERSION_WB}" CACHE STRING "" FORCE) set(_${_T}_VERSION_CHANGED 1) endif() + if ((NOT _${_T}_CACHED_VERSION_VER) OR (NOT ("x${_${_T}_CACHED_VERSION_VER}" STREQUAL "x${_VERSION_}"))) + set(_${_T}_CACHED_VERSION_VER "${_VERSION_}" CACHE STRING "" FORCE) + set(_${_T}_VERSION_CHANGED 1) + endif() if ((NOT EXISTS "${_out}") OR _${_T}_VERSION_CHANGED) get_filename_component(_def "${_out}" NAME) string(MAKE_C_IDENTIFIER "${_T}_${_def}" _def) string(TOUPPER "${_def}" _def) string(TOUPPER "${_T}" _TN) + string(TIMESTAMP _cur_date "%d.%m.%Y %H:%M") file(WRITE "${_out}" -"// This file generated by CMake set_version() +"// This file generated by CMake set_version() version ${_VERSION_} #ifndef ${_def} #define ${_def} + +// Project + #define ${_TN}_VERSION_MAJOR ${${_T}_VERSION_MAJOR} #define ${_TN}_VERSION_MINOR ${${_T}_VERSION_MINOR} #define ${_TN}_VERSION_REVISION ${${_T}_VERSION_REVISION} #define ${_TN}_VERSION_BUILD ${${_T}_VERSION_BUILD} #define ${_TN}_VERSION_SUFFIX \"${${_T}_VERSION_SUFFIX}\" #define ${_TN}_VERSION_NAME \"${${_T}_VERSION}\" -#define ${_TN}_VERSION ((${_TN}_VERSION_MAJOR << 16) | (${_TN}_VERSION_MINOR < 8) | ${_TN}_VERSION_REVISION) +#define ${_TN}_VERSION ((${_TN}_VERSION_MAJOR << 16) | (${_TN}_VERSION_MINOR << 8) | ${_TN}_VERSION_REVISION) + + +// Tools + +#define ${_TN}_CMAKE_VERSION \"${CMAKE_VERSION}\" +#define ${_TN}_CXX_COMPILER \"${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}\" +#define ${_TN}_BUILD_DATE \"${_cur_date}\" +#define ${_TN}_ARCH \"${MY_ARCH}\" + #endif // ${_def} ")