diff --git a/CMakeLists.txt b/CMakeLists.txt index fa9006a84..7038d1f04 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,7 +22,7 @@ endif() set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") -include(Version.txt) +include(Version) set(CMAKE_ADDITIONAL_DEPS_PATH "${CMAKE_CURRENT_BINARY_DIR}/deps" CACHE PATH "Additional directory to search for libraries and headers") list(APPEND CMAKE_PREFIX_PATH ${CMAKE_ADDITIONAL_DEPS_PATH}) diff --git a/Version.txt b/Version.txt index a1a756441..8814def06 100644 --- a/Version.txt +++ b/Version.txt @@ -1,3 +1,15 @@ +# OpenClonk, http://www.openclonk.org +# +# Copyright (c) 2009-2015, The OpenClonk Team and contributors +# +# Distributed under the terms of the ISC license; see accompanying file +# "COPYING" for details. +# +# "Clonk" is a registered trademark of Matthes Bender, used with permission. +# See accompanying file "TRADEMARK" for details. +# +# To redistribute this file separately, substitute the full license texts +# for the above references. ############################################################################ # Project version information @@ -9,7 +21,6 @@ SET(C4PROJECT_TLD "org") SET(C4PROJECT_URL "http://${C4PROJECT_DOMAIN}.${C4PROJECT_TLD}") SET(C4ENGINENAME "OpenClonk") SET(C4ENGINENICK "openclonk") -SET(C4ENGINEID "${C4PROJECT_TLD}.${C4PROJECT_DOMAIN}.${C4ENGINENICK}") SET(C4XVER1 6) SET(C4XVER2 0) @@ -22,49 +33,3 @@ SET(C4VERSIONEXTRA) # for alpha and beta releases, and meaningful and stable for stable releases. # This variable needs to start with a space if it isn't empty. SET(C4VERSIONBUILDNAME "") - -############################################################################ -# Get revision from Git -############################################################################ -include(GitGetChangesetID) -git_get_changeset_id(C4REVISION) - -############################################################################ -# Get year -############################################################################ - -IF(CMAKE_HOST_UNIX) - EXECUTE_PROCESS(COMMAND "date" "+%Y" OUTPUT_VARIABLE DATE) -ELSEIF(CMAKE_HOST_WIN32) - EXECUTE_PROCESS(COMMAND "cscript.exe" "//nologo" "${CMAKE_CURRENT_SOURCE_DIR}/tools/get_current_year.vbs" OUTPUT_VARIABLE DATE) -ENDIF() -STRING(REGEX REPLACE "(.+)\n" "\\1" YEARFIXED "${DATE}") -SET(C4COPYRIGHT_YEAR ${YEARFIXED}) - -############################################################################ -# Build version strings -############################################################################ - -set(C4ENGINECAPTION "${C4ENGINECAPTION} ${C4VERSIONBUILDNAME}") -set(C4ENGINEINFO "${C4ENGINENAME}") - -set(C4VERSION "${C4XVER1}.${C4XVER2}") - -if(C4VERSIONEXTRA) - set(C4VERSION "${C4VERSION}-${C4VERSIONEXTRA}") -endif() - -if(WIN32) - set(C4VERSION "${C4VERSION} win") -elseif(APPLE) - set(C4VERSION "${C4VERSION} mac") -elseif(UNIX) - set(C4VERSION "${C4VERSION} unix") -else() - set(C4VERSION "${C4VERSION} strange") -endif() - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/C4Version.h.in ${CMAKE_CURRENT_BINARY_DIR}/C4Version.h ESCAPE_QUOTES) -if(WIN32) - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/res/WindowsGamesExplorer.xml.in ${CMAKE_CURRENT_BINARY_DIR}/WindowsGamesExplorer.xml ESCAPE_QUOTES) -endif() diff --git a/cmake/Version.cmake b/cmake/Version.cmake new file mode 100644 index 000000000..949b6bf50 --- /dev/null +++ b/cmake/Version.cmake @@ -0,0 +1,60 @@ +# OpenClonk, http://www.openclonk.org +# +# Copyright (c) 2009-2015, The OpenClonk Team and contributors +# +# Distributed under the terms of the ISC license; see accompanying file +# "COPYING" for details. +# +# "Clonk" is a registered trademark of Matthes Bender, used with permission. +# See accompanying file "TRADEMARK" for details. +# +# To redistribute this file separately, substitute the full license texts +# for the above references. + +include(Version.txt) + +############################################################################ +# Get revision from Git +############################################################################ +include(GitGetChangesetID) +git_get_changeset_id(C4REVISION) + +############################################################################ +# Get year +############################################################################ + +IF(CMAKE_HOST_UNIX) + EXECUTE_PROCESS(COMMAND "date" "+%Y" OUTPUT_VARIABLE DATE) +ELSEIF(CMAKE_HOST_WIN32) + EXECUTE_PROCESS(COMMAND "cscript.exe" "//nologo" "${CMAKE_CURRENT_SOURCE_DIR}/tools/get_current_year.vbs" OUTPUT_VARIABLE DATE) +ENDIF() +STRING(REGEX REPLACE "(.+)\n" "\\1" YEARFIXED "${DATE}") +SET(C4COPYRIGHT_YEAR ${YEARFIXED}) + +############################################################################ +# Build version strings +############################################################################ +SET(C4ENGINEID "${C4PROJECT_TLD}.${C4PROJECT_DOMAIN}.${C4ENGINENICK}") +set(C4ENGINECAPTION "${C4ENGINECAPTION} ${C4VERSIONBUILDNAME}") +set(C4ENGINEINFO "${C4ENGINENAME}") + +set(C4VERSION "${C4XVER1}.${C4XVER2}") + +if(C4VERSIONEXTRA) + set(C4VERSION "${C4VERSION}-${C4VERSIONEXTRA}") +endif() + +if(WIN32) + set(C4VERSION "${C4VERSION} win") +elseif(APPLE) + set(C4VERSION "${C4VERSION} mac") +elseif(UNIX) + set(C4VERSION "${C4VERSION} unix") +else() + set(C4VERSION "${C4VERSION} strange") +endif() + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/C4Version.h.in ${CMAKE_CURRENT_BINARY_DIR}/C4Version.h ESCAPE_QUOTES) +if(WIN32) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/res/WindowsGamesExplorer.xml.in ${CMAKE_CURRENT_BINARY_DIR}/WindowsGamesExplorer.xml ESCAPE_QUOTES) +endif()