Source tarball: "fatal: Not a git repository" at each compilation step; CMake gets the version wrong in 3.11.0.
This commit is contained in:
parent
26fad480c6
commit
652f482240
116
CMakeLists.txt
116
CMakeLists.txt
|
@ -16,9 +16,9 @@ endif(NOT DEFINED CMAKE_BUILD_TYPE)
|
||||||
# add additional CMake modules
|
# add additional CMake modules
|
||||||
MESSAGE(STATUS "CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}")
|
MESSAGE(STATUS "CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}")
|
||||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/mk/cmake/Modules)
|
list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/mk/cmake/Modules)
|
||||||
|
IF(CMAKE_BUILD_TYPE)
|
||||||
MESSAGE(STATUS "Build type for this compile will be: ${CMAKE_BUILD_TYPE}")
|
MESSAGE(STATUS "Build type for this compile will be: ${CMAKE_BUILD_TYPE}")
|
||||||
|
ENDIF()
|
||||||
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
|
||||||
SET(CMAKE_COMPILER_IS_GNUCXX "YES")
|
SET(CMAKE_COMPILER_IS_GNUCXX "YES")
|
||||||
# ADD_DEFINITIONS("-Qunused-arguments -Wno-switch")
|
# ADD_DEFINITIONS("-Qunused-arguments -Wno-switch")
|
||||||
|
@ -45,38 +45,35 @@ include(${CMAKE_SOURCE_DIR}/mk/cmake/Modules/SpecialMacros.cmake)
|
||||||
|
|
||||||
SET(PKG_NAME "megaglest")
|
SET(PKG_NAME "megaglest")
|
||||||
# read version
|
# read version
|
||||||
file(READ ${PROJECT_SOURCE_DIR}/source/glest_game/facilities/game_util.cpp MG_VERSION_H_CONTENTS)
|
FILE(READ ${PROJECT_SOURCE_DIR}/source/glest_game/facilities/game_util.cpp MG_VERSION_H_CONTENTS)
|
||||||
# find the version string
|
|
||||||
#
|
|
||||||
MESSAGE(STATUS "Determining version number system type to use:")
|
MESSAGE(STATUS "Determining version number system type to use:")
|
||||||
string (REGEX MATCH "\"v([0-9]).([0-9]).([0-9].*)[^\";]" _threePartMatch ${MG_VERSION_H_CONTENTS})
|
SET(Begin_otv_string "string glestVersionString")
|
||||||
if(NOT _threePartMatch)
|
STRING(REGEX MATCH "${Begin_otv_string}[ \t]*=[ \t]*\"[ \t]*v[ \t]*([0-9][^\\.]*)(\\.)([^\\.]*)(\\.)([^\"\\.;]*)\";" _threePartMatch "${MG_VERSION_H_CONTENTS}")
|
||||||
MESSAGE(STATUS "** Trying 2 part versioning] ")
|
STRING(REGEX MATCH "${Begin_otv_string}[ \t]*=[ \t]*\"[ \t]*v[ \t]*([0-9][^\\.]*)(\\.)([^\"\\.;]*)\";" _twoPartMatch "${MG_VERSION_H_CONTENTS}")
|
||||||
string (REGEX MATCH "\"v([0-9]).([0-9].*)[^\";]" _threePartMatch ${MG_VERSION_H_CONTENTS})
|
STRING(REGEX MATCH "${Begin_otv_string}[ \t]*=[ \t]*\"[ \t]*v[ \t]*([0-9][^\"\\.;]*)\";" _onePartMatch "${MG_VERSION_H_CONTENTS}")
|
||||||
|
IF(_threePartMatch)
|
||||||
if (_threePartMatch)
|
MESSAGE(STATUS "** Trying 3 part versioning ")
|
||||||
# parse the parts of the version string
|
STRING(REGEX REPLACE "[^=]*=[ \t]*\"[ \t]*v[ \t]*([0-9][^\\.]*)\\.[^\\.]*\\..*" "\\1" VER_MAJOR "${_threePartMatch}")
|
||||||
STRING(REGEX REPLACE "\"v([0-9])\\.[0-9].*" "\\1" VER_MAJOR "${_threePartMatch}")
|
STRING(REGEX REPLACE "[^=]*=[ \t]*\"[ \t]*v[ \t]*[0-9][^\\.]*\\.([^\\.]*)\\..*" "\\1" VER_MINOR "${_threePartMatch}")
|
||||||
STRING(REGEX REPLACE "\"v[0-9]\\.([0-9]).*" "\\1" VER_MINOR "${_threePartMatch}")
|
STRING(REGEX REPLACE "[^=]*=[ \t]*\"[ \t]*v[ \t]*[0-9][^\\.]*\\.[^\\.]*\\.([^\"\\.;]*).*" "\\1" VER_PATCH "${_threePartMatch}")
|
||||||
|
SET(MEGAGLEST_VERSION "${VER_MAJOR}.${VER_MINOR}.${VER_PATCH}")
|
||||||
MESSAGE(STATUS "MegaGlest Version is [${VER_MAJOR}.${VER_MINOR}] ")
|
ELSEIF(_twoPartMatch)
|
||||||
endif()
|
MESSAGE(STATUS "** Trying 2 part versioning ")
|
||||||
# parse the version string
|
STRING(REGEX REPLACE "[^=]*=[ \t]*\"[ \t]*v[ \t]*([0-9][^\\.]*)\\..*" "\\1" VER_MAJOR "${_twoPartMatch}")
|
||||||
else()
|
STRING(REGEX REPLACE "[^=]*=[ \t]*\"[ \t]*v[ \t]*[0-9][^\\.]*\\.([^\"\\.;]*).*" "\\1" VER_MINOR "${_twoPartMatch}")
|
||||||
MESSAGE(STATUS "** Trying 3 part versioning] ")
|
SET(VER_PATCH "0")
|
||||||
if (_threePartMatch)
|
SET(MEGAGLEST_VERSION "${VER_MAJOR}.${VER_MINOR}")
|
||||||
# parse the parts of the version string
|
ELSEIF(_onePartMatch)
|
||||||
STRING(REGEX REPLACE "\"v([0-9])\\.[0-9]\\.[0-9].*" "\\1" VER_MAJOR "${_threePartMatch}")
|
MESSAGE(STATUS "** Trying 1 part versioning ")
|
||||||
STRING(REGEX REPLACE "\"v[0-9]\\.([0-9])\\.[0-9].*" "\\1" VER_MINOR "${_threePartMatch}")
|
STRING(REGEX REPLACE "[^=]*=[ \t]*\"[ \t]*v[ \t]*([0-9][^\"\\.;]*).*" "\\1" VER_MAJOR "${_onePartMatch}")
|
||||||
STRING(REGEX REPLACE "\"v[0-9]\\.[0-9]\\.([0-9]).*" "\\1" VER_RELEASE "${_threePartMatch}")
|
SET(VER_MINOR "0")
|
||||||
|
SET(VER_PATCH "0")
|
||||||
#MESSAGE(STATUS "******* TEST3 MegaGlest Version #1 is [${VER_MAJOR}] ")
|
SET(MEGAGLEST_VERSION "${VER_MAJOR}")
|
||||||
#MESSAGE(STATUS "******* TEST3 MegaGlest Version #2 is [${VER_MINOR}] ")
|
ENDIF()
|
||||||
#MESSAGE(STATUS "******* TEST3 MegaGlest Version #3 is [${VER_RELEASE}] ")
|
FOREACH(ver_var VER_MAJOR;VER_MINOR;VER_PATCH;MEGAGLEST_VERSION)
|
||||||
|
STRING(REGEX REPLACE "[ \t]" "" "${ver_var}" "${${ver_var}}")
|
||||||
MESSAGE(STATUS "MegaGlest Version is [${VER_MAJOR}.${VER_MINOR}.${VER_RELEASE}] ")
|
ENDFOREACH()
|
||||||
endif()
|
MESSAGE(STATUS "Detected MegaGlest Version is [v${MEGAGLEST_VERSION}] ")
|
||||||
endif()
|
|
||||||
|
|
||||||
## Compiler flags, CPACK configuration and other Apple specific code.
|
## Compiler flags, CPACK configuration and other Apple specific code.
|
||||||
IF(APPLE)
|
IF(APPLE)
|
||||||
|
@ -215,9 +212,9 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
|
||||||
SET(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} -s") ## Strip binary
|
SET(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} -s") ## Strip binary
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
# Get the git revision info for the binary
|
# Get the git revision info for the binary
|
||||||
SET(HAS_GIT "FALSE")
|
SET(HAS_GIT "FALSE")
|
||||||
SET(GIT_LIVE_REV_CMD "")
|
SET(GIT_LIVE_REV_CMD "")
|
||||||
|
|
||||||
OPTION(WANT_GIT_STAMP "use git revision stamp" ON)
|
OPTION(WANT_GIT_STAMP "use git revision stamp" ON)
|
||||||
IF(WANT_GIT_STAMP)
|
IF(WANT_GIT_STAMP)
|
||||||
|
@ -225,7 +222,7 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
|
||||||
# the FindGit.cmake module is part of the standard distribution
|
# the FindGit.cmake module is part of the standard distribution
|
||||||
include(FindGit)
|
include(FindGit)
|
||||||
|
|
||||||
IF(GIT_FOUND)
|
IF(GIT_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/.git/")
|
||||||
SET(HAS_GIT "TRUE")
|
SET(HAS_GIT "TRUE")
|
||||||
MESSAGE(STATUS "Found GIT and using GIT version stamping...")
|
MESSAGE(STATUS "Found GIT and using GIT version stamping...")
|
||||||
|
|
||||||
|
@ -249,15 +246,14 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
|
||||||
|
|
||||||
MESSAGE(STATUS "Using GIT revision stamp: [${GIT_COMMIT_COUNT}.${GIT_SHA1}] CMD [${GIT_LIVE_REV_CMD}]")
|
MESSAGE(STATUS "Using GIT revision stamp: [${GIT_COMMIT_COUNT}.${GIT_SHA1}] CMD [${GIT_LIVE_REV_CMD}]")
|
||||||
|
|
||||||
|
IF(CMAKE_GENERATOR STREQUAL Xcode)
|
||||||
|
SET(GIT_VERSION_CMD "-DGITVERSION='\\\\'${GIT_LIVE_REV_CMD}\\\\''")
|
||||||
|
ELSE()
|
||||||
|
SET(GIT_VERSION_CMD "-DGITVERSION='\\\"${GIT_LIVE_REV_CMD}\\\"'")
|
||||||
|
ENDIF()
|
||||||
ENDIF()
|
ENDIF()
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
IF(CMAKE_GENERATOR STREQUAL Xcode)
|
|
||||||
SET(GIT_VERSION_CMD "-DGITVERSION='\\\\'${GIT_LIVE_REV_CMD}\\\\''")
|
|
||||||
ELSE()
|
|
||||||
SET(GIT_VERSION_CMD "-DGITVERSION='\\\"${GIT_LIVE_REV_CMD}\\\"'")
|
|
||||||
ENDIF()
|
|
||||||
|
|
||||||
IF(CMAKE_INSTALL_PREFIX STREQUAL "")
|
IF(CMAKE_INSTALL_PREFIX STREQUAL "")
|
||||||
MESSAGE(STATUS "*NOTE: NOT USING a Custom Data Install Path...")
|
MESSAGE(STATUS "*NOTE: NOT USING a Custom Data Install Path...")
|
||||||
ELSE()
|
ELSE()
|
||||||
|
@ -288,11 +284,18 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
|
||||||
MESSAGE(STATUS "*NOTE: Custom Data Install Path is [${CUSTOM_DATA_INSTALL_PATH}]")
|
MESSAGE(STATUS "*NOTE: Custom Data Install Path is [${CUSTOM_DATA_INSTALL_PATH}]")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
SET(CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE} ${GIT_VERSION_CMD} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
IF(HAS_GIT STREQUAL "TRUE")
|
||||||
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${GIT_VERSION_CMD} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
SET(CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE} ${GIT_VERSION_CMD}")
|
||||||
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${GIT_VERSION_CMD} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${GIT_VERSION_CMD}")
|
||||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${GIT_VERSION_CMD} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${GIT_VERSION_CMD}")
|
||||||
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${GIT_VERSION_CMD} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${GIT_VERSION_CMD}")
|
||||||
|
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${GIT_VERSION_CMD}")
|
||||||
|
ENDIF()
|
||||||
|
SET(CMAKE_CXX_FLAGS_NONE "${CMAKE_CXX_FLAGS_NONE} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
||||||
|
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
||||||
|
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
||||||
|
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
||||||
|
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} ${CUSTOM_DATA_INSTALL_PATH_VALUE}")
|
||||||
|
|
||||||
# We do some funky character escaping to get the right stuff written out to
|
# We do some funky character escaping to get the right stuff written out to
|
||||||
# the final Makefile so we get the GIT Global Revsion #
|
# the final Makefile so we get the GIT Global Revsion #
|
||||||
|
@ -308,9 +311,9 @@ IF(CMAKE_COMPILER_IS_GNUCXX OR MINGW)
|
||||||
message("CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}")
|
message("CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}")
|
||||||
ELSEIF( CMAKE_BUILD_TYPE STREQUAL Release )
|
ELSEIF( CMAKE_BUILD_TYPE STREQUAL Release )
|
||||||
message("CMAKE_CXX_FLAGS_RELEASE: ${CMAKE_CXX_FLAGS_RELEASE}")
|
message("CMAKE_CXX_FLAGS_RELEASE: ${CMAKE_CXX_FLAGS_RELEASE}")
|
||||||
ELSEIF( CMAKE_BUILD_TYPE STREQUAL RELWITHDEBINFO )
|
ELSEIF( CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo )
|
||||||
message("CMAKE_CXX_FLAGS_RELWITHDEBINFO: ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
message("CMAKE_CXX_FLAGS_RELWITHDEBINFO: ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
|
||||||
ELSEIF( CMAKE_BUILD_TYPE STREQUAL MINSIZEREL )
|
ELSEIF( CMAKE_BUILD_TYPE STREQUAL MinSizeRel )
|
||||||
message("CMAKE_CXX_FLAGS_MINSIZEREL: ${CMAKE_CXX_FLAGS_MINSIZEREL}")
|
message("CMAKE_CXX_FLAGS_MINSIZEREL: ${CMAKE_CXX_FLAGS_MINSIZEREL}")
|
||||||
|
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
@ -388,9 +391,10 @@ SET(CPACK_PACKAGE_VENDOR "megaglest.org")
|
||||||
#SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
|
#SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
|
||||||
#SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
|
#SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
|
||||||
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "megaglest")
|
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "megaglest")
|
||||||
SET(CPACK_PACKAGE_VERSION_MAJOR ${VER_MAJOR})
|
SET(CPACK_PACKAGE_VERSION "${MEGAGLEST_VERSION}")
|
||||||
SET(CPACK_PACKAGE_VERSION_MINOR ${VER_MINOR})
|
SET(CPACK_PACKAGE_VERSION_MAJOR "${VER_MAJOR}")
|
||||||
SET(CPACK_PACKAGE_VERSION_PATCH ${VER_RELEASE})
|
SET(CPACK_PACKAGE_VERSION_MINOR "${VER_MINOR}")
|
||||||
|
SET(CPACK_PACKAGE_VERSION_PATCH "${VER_PATCH}")
|
||||||
|
|
||||||
|
|
||||||
# Debian specific generator options
|
# Debian specific generator options
|
||||||
|
@ -417,6 +421,7 @@ IF(NOT DEFINED CPACK_GENERATOR)
|
||||||
libxml2-dev,
|
libxml2-dev,
|
||||||
libz-dev,
|
libz-dev,
|
||||||
libfribidi-dev")
|
libfribidi-dev")
|
||||||
|
# FIXME ^ cpack configuration should be fixed and tested
|
||||||
|
|
||||||
#find_program(DPKG_PROGRAM dpkg DOC "dpkg program of Debian-based systems")
|
#find_program(DPKG_PROGRAM dpkg DOC "dpkg program of Debian-based systems")
|
||||||
#if(DPKG_PROGRAM)
|
#if(DPKG_PROGRAM)
|
||||||
|
@ -441,12 +446,9 @@ get_directory_property( DirDefs DIRECTORY ${CMAKE_SOURCE_DIR} COMPILE_DEFINITION
|
||||||
foreach( d ${DirDefs} )
|
foreach( d ${DirDefs} )
|
||||||
message( STATUS "=====> Found Define: " ${d} )
|
message( STATUS "=====> Found Define: " ${d} )
|
||||||
endforeach()
|
endforeach()
|
||||||
message( STATUS "=====> DirDefs: " ${DirDefs} )
|
#MESSAGE( STATUS "=====> DirDefs: " ${DirDefs} )
|
||||||
#MESSAGE(STATUS "*** Compiler definitions are [${COMPILE_DEFINITIONS}]")
|
#MESSAGE(STATUS "*** Compiler definitions are [${COMPILE_DEFINITIONS}]")
|
||||||
|
|
||||||
MARK_AS_ADVANCED(SDLMAIN_LIBRARY)
|
MARK_AS_ADVANCED(SDLMAIN_LIBRARY)
|
||||||
MARK_AS_ADVANCED(SDL_INCLUDE_DIR)
|
MARK_AS_ADVANCED(SDL_INCLUDE_DIR)
|
||||||
MARK_AS_ADVANCED(SDL_LIBRARY)
|
MARK_AS_ADVANCED(SDL_LIBRARY)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue