Split calculated values out of Version.txt

Version.txt should only contain values that you set manually. Anything
that's derived from that or calculated separately should be in a
separate file.
stable-6.1
Nicolas Hake 2015-05-21 22:57:16 +02:00
parent 88ee2f7db8
commit b3b30e1631
3 changed files with 73 additions and 48 deletions

View File

@ -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})

View File

@ -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()

View File

@ -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()