Merge pull request 'Several CMake-related improvements and bugfixes' (#23) from cmake-fixes into main
Reviewed-on: #23
This commit is contained in:
commit
ec61c3700e
17 changed files with 49 additions and 305 deletions
|
@ -34,21 +34,23 @@ IF(APPLE)
|
|||
ENDIF(APPLE)
|
||||
|
||||
option(SD_ASSUME_DATADIR "Assume default directory for speed-dreams-data")
|
||||
set(data_version 2.3.0)
|
||||
include(GNUInstallDirs)
|
||||
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_LIST_DIR}/cmake)
|
||||
|
||||
if(SD_ASSUME_DATADIR)
|
||||
set(SD_DATADIR ${CMAKE_INSTALL_DATADIR}/games/speed-dreams-2)
|
||||
set(SD_DATADIR_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/games/speed-dreams-2)
|
||||
set(SD_DATADIR_ABS ${SD_DATADIR_INSTALL_PREFIX})
|
||||
message(STATUS "Data directory: ${SD_DATADIR_ABS} (assumed)")
|
||||
elseif(EXISTS speed-dreams-data/CMakeLists.txt)
|
||||
elseif(EXISTS ${CMAKE_CURRENT_LIST_DIR}/speed-dreams-data/CMakeLists.txt)
|
||||
add_subdirectory(speed-dreams-data)
|
||||
set(SD_DATADIR ${CMAKE_INSTALL_DATADIR}/games/speed-dreams-2)
|
||||
set(SD_DATADIR_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/games/speed-dreams-2)
|
||||
set(SD_DATADIR_ABS ${CMAKE_CURRENT_SOURCE_DIR}/speed-dreams-data/data)
|
||||
message(STATUS "Data directory: ${SD_DATADIR_ABS} (in-tree)")
|
||||
else()
|
||||
set(data_version 2.3.0)
|
||||
find_package(speed-dreams-data ${data_version} QUIET)
|
||||
|
||||
if(NOT SD_DATADIR)
|
||||
|
@ -72,9 +74,23 @@ else()
|
|||
message(STATUS "Data directory: ${SD_DATADIR_ABS}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID)
|
||||
set(SD_BUILD_INFO_COMPILER_NAME ${CMAKE_CXX_COMPILER_ID})
|
||||
else()
|
||||
set(SD_BUILD_INFO_COMPILER_NAME "Unknown")
|
||||
endif()
|
||||
|
||||
INCLUDE(cmake/macros.cmake)
|
||||
INCLUDE(cmake/checks.cmake)
|
||||
|
||||
set(CMAKE_INSTALL_RPATH
|
||||
${CMAKE_INSTALL_RPATH}
|
||||
${CMAKE_INSTALL_PREFIX}/${SD_LIBDIR}/lib
|
||||
/usr/${SD_LIBDIR}/lib
|
||||
)
|
||||
|
||||
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
|
||||
CHECK_HEADERS_H()
|
||||
CHECK_FUNCTIONS()
|
||||
CHECK_LIBRARIES()
|
||||
|
@ -128,31 +144,9 @@ IF(MSVC)
|
|||
INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc/userman/images/ DESTINATION ./doc/images/)
|
||||
ENDIF(MSVC)
|
||||
|
||||
|
||||
# Useful for using an installation of SD as a robot development framework without building it.
|
||||
# Only do for an in source tree build as INSTALL_SD_CMAKE() doesn't seem to use CMAKE_INSTALL_PREFIX
|
||||
IF("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
|
||||
INSTALL_SD_CMAKE()
|
||||
ENDIF("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
|
||||
|
||||
# Must be the last ADD_SUBDIRECTORY for FIXUP_BUNDLE to work
|
||||
ADD_SUBDIRECTORY(packaging)
|
||||
|
||||
# Generate a 'make clobber'-like clobber.sh/.bat script in case of an in-source build.
|
||||
IF("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
|
||||
SD_GENERATE_CLOBBER_SCRIPT()
|
||||
ENDIF("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
|
||||
|
||||
# Add an unistall target.
|
||||
CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/cmake/uninstall.cmake"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/uninstall.cmake" IMMEDIATE @ONLY)
|
||||
IF(MSVC)
|
||||
SET(_UNINST_TGT_NAME "UNINSTALL")
|
||||
ELSE(MSVC)
|
||||
SET(_UNINST_TGT_NAME "uninstall")
|
||||
ENDIF(MSVC)
|
||||
ADD_CUSTOM_TARGET(${_UNINST_TGT_NAME} "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/uninstall.cmake" )
|
||||
|
||||
IF(OPTION_CHECK_CONTENTS)
|
||||
INCLUDE(cmake/prerelease.cmake)
|
||||
ENDIF(OPTION_CHECK_CONTENTS)
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
IF(NOT DEFINED SOURCE_DIR)
|
||||
MESSAGE(ERROR ": Please first include macro's")
|
||||
ENDIF(NOT DEFINED SOURCE_DIR)
|
||||
|
||||
INCLUDE(CheckIncludeFiles)
|
||||
INCLUDE(CheckFunctionExists)
|
||||
INCLUDE(CheckLibraryExists)
|
||||
|
|
|
@ -159,19 +159,7 @@
|
|||
# define SD_BUILD_INFO_CONFIGURATION "${CMAKE_BUILD_TYPE}"
|
||||
#endif
|
||||
|
||||
#if defined(_MSC_VER)
|
||||
# define SD_BUILD_INFO_COMPILER_NAME "MSC"
|
||||
#elif defined(__GNUC__)
|
||||
# if defined(__MINGW32__)
|
||||
# define SD_BUILD_INFO_COMPILER_NAME "MinGW GCC"
|
||||
# elif defined(__INTEL_COMPILER)
|
||||
# define SD_BUILD_INFO_COMPILER_NAME "Intel"
|
||||
# else
|
||||
# define SD_BUILD_INFO_COMPILER_NAME "GCC"
|
||||
# endif
|
||||
#else
|
||||
# define SD_BUILD_INFO_COMPILER_NAME "Unknown"
|
||||
#endif
|
||||
#define SD_BUILD_INFO_COMPILER_NAME "${SD_BUILD_INFO_COMPILER_NAME}"
|
||||
|
||||
/* Run-time directories */
|
||||
#define SD_DATADIR "${SD_DATADIR}/"
|
||||
|
|
|
@ -114,7 +114,7 @@ FULL_PATH_NAMES = YES
|
|||
# If left blank the directory from which doxygen is run is used as the
|
||||
# path to strip.
|
||||
|
||||
STRIP_FROM_PATH = @SOURCE_DIR@
|
||||
STRIP_FROM_PATH = @CMAKE_SOURCE_DIR@
|
||||
|
||||
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
|
||||
# the path mentioned in the documentation of a class, which tells
|
||||
|
@ -564,7 +564,7 @@ WARN_LOGFILE =
|
|||
# directories like "/usr/src/myproject". Separate the files or directories
|
||||
# with spaces.
|
||||
|
||||
INPUT = @SOURCE_DIR@/src
|
||||
INPUT = @CMAKE_SOURCE_DIR@/src
|
||||
|
||||
# This tag can be used to specify the character encoding of the source files
|
||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
|
||||
|
|
|
@ -50,8 +50,8 @@ ENDMACRO(_GET_TARGET_REAL_PATHNAME TGT_NAME VAR_PATHNAME)
|
|||
# Installs bt.so in ${prefix}/${SD_LIBDIR}/drivers/bt
|
||||
# SD_INSTALL_FILES(BIN TARGETS speed-dreams)
|
||||
# Installs the speed-dreams target in ${prefix}/${SD_BINDIR}
|
||||
# SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES sd2-menuview.6)
|
||||
# Installs ${SOURCE_DIR}/doc/man/sd2-menuview.6 in ${prefix}/${SD_MANDIR}/man6
|
||||
# SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES sd2-menuview.6)
|
||||
# Installs ${CMAKE_SOURCE_DIR}/doc/man/sd2-menuview.6 in ${prefix}/${SD_MANDIR}/man6
|
||||
MACRO(SD_INSTALL_FILES)
|
||||
|
||||
SET(SD_INSTALL_FILES_SYNTAX ${SD_INSTALL_FILES_SYNTAX} "LIB,1,1,IS_LIB,LIB_PATH")
|
||||
|
|
|
@ -20,11 +20,6 @@
|
|||
|
||||
#MESSAGE(STATUS "Processing ${CMAKE_CURRENT_SOURCE_DIR} ...")
|
||||
|
||||
# By default, we assume an "in-source" build.
|
||||
IF(NOT DEFINED IN_SOURCETREE)
|
||||
SET(IN_SOURCETREE TRUE)
|
||||
ENDIF(NOT DEFINED IN_SOURCETREE)
|
||||
|
||||
# Setup the install prefix.
|
||||
IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
||||
IF(WIN32)
|
||||
|
@ -36,34 +31,11 @@ IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
|||
ENDIF()
|
||||
ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
||||
|
||||
# Determine the source folder if ???
|
||||
IF(NOT SOURCE_DIR AND IN_SOURCETREE)
|
||||
SET(SOURCE_DIR ${CMAKE_SOURCE_DIR})
|
||||
MARK_AS_ADVANCED(SOURCE_DIR)
|
||||
ENDIF(NOT SOURCE_DIR AND IN_SOURCETREE)
|
||||
|
||||
# The path of the folder of the current CMakeLists.txt
|
||||
GET_FILENAME_COMPONENT(CURRENT_LIST_FILE_PATH ${CMAKE_CURRENT_LIST_FILE} PATH)
|
||||
|
||||
# Macros arg list parsing tools.
|
||||
IF(NOT _ALREADY_DONE)
|
||||
INCLUDE(${CURRENT_LIST_FILE_PATH}/splitargn.cmake)
|
||||
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/splitargn.cmake)
|
||||
ENDIF(NOT _ALREADY_DONE)
|
||||
|
||||
# Include dir for config.h
|
||||
IF(IN_SOURCETREE)
|
||||
FIND_PATH(CONFIGH_INCLUDE_DIR config.h PATHS ${SOURCE_DIR} ${CMAKE_BINARY_DIR} NO_DEFAULT_PATH)
|
||||
FIND_PATH(CONFIGH_INCLUDE_DIR config.h PATHS ${SOURCE_DIR} ${CMAKE_BINARY_DIR})
|
||||
MARK_AS_ADVANCED(CONFIGH_INCLUDE_DIR)
|
||||
IF(CONFIGH_INCLUDE_DIR)
|
||||
SET(HAVE_CONFIG_H TRUE)
|
||||
ELSE(CONFIGH_INCLUDE_DIR)
|
||||
SET(HAVE_CONFIG_H FALSE)
|
||||
ENDIF(CONFIGH_INCLUDE_DIR)
|
||||
ELSE(IN_SOURCETREE)
|
||||
SET(HAVE_CONFIG_H FALSE)
|
||||
ENDIF(IN_SOURCETREE)
|
||||
|
||||
# Determine the default value of the user settings folder.
|
||||
IF(WIN32)
|
||||
SET(SD_LOCALDIR "~/speed-dreams-2.settings" CACHE STRING "Where the user settings files should go")
|
||||
|
@ -77,86 +49,33 @@ ENDIF(WIN32)
|
|||
SET(SD_TOOLS_EXECPREFIX "sd2-" CACHE STRING "Prefix for the tools executable names")
|
||||
MARK_AS_ADVANCED(SD_TOOLS_EXECPREFIX)
|
||||
|
||||
# Determine the default value of the data, bin and lib (and man) folders.
|
||||
IF(IN_SOURCETREE)
|
||||
IF(CMAKE_SIZEOF_VOID_P MATCHES 4)
|
||||
SET(_DEFLIBDIR "lib")
|
||||
ELSE()
|
||||
SET(_DEFLIBDIR "lib64")
|
||||
ENDIF()
|
||||
IF(WIN32)
|
||||
SET(SD_BINDIR bin CACHE PATH "Place where the executables should go")
|
||||
SET(SD_LIBDIR ${_DEFLIBDIR} CACHE PATH "Place where the libraries should go")
|
||||
SET(SD_INCLUDEDIR include CACHE PATH "Place where the include files should go")
|
||||
ELSE(WIN32) #UNIX
|
||||
SET(SD_BINDIR games CACHE PATH "Place where the executables should go")
|
||||
SET(SD_LIBDIR ${_DEFLIBDIR}/games/speed-dreams-2 CACHE PATH "Place where the libraries should go")
|
||||
SET(SD_INCLUDEDIR include/speed-dreams-2 CACHE PATH "Place where the include files should go")
|
||||
SET(SD_MANDIR share/man CACHE PATH "Place where the manual pages should go")
|
||||
ENDIF(WIN32)
|
||||
MARK_AS_ADVANCED(SD_BINDIR)
|
||||
MARK_AS_ADVANCED(SD_LIBDIR)
|
||||
MARK_AS_ADVANCED(SD_INCLUDEDIR)
|
||||
IF(UNIX)
|
||||
MARK_AS_ADVANCED(SD_MANDIR)
|
||||
ENDIF(UNIX)
|
||||
ELSE(IN_SOURCETREE)
|
||||
SET(SD_LIBDIR ${SD_LIBDIR_ABS})
|
||||
SET(SD_BINDIR ${SD_BINDIR_ABS})
|
||||
SET(SD_INCLUDEDIR ${SD_INCLUDEDIR_ABS})
|
||||
IF(UNIX)
|
||||
SET(SD_MANDIR ${SD_MANDIR_ABS})
|
||||
ENDIF(UNIX)
|
||||
ENDIF(IN_SOURCETREE)
|
||||
IF(WIN32)
|
||||
SET(SD_BINDIR ${CMAKE_INSTALL_BINDIR} CACHE PATH "Place where the executables should go")
|
||||
ELSE()
|
||||
SET(SD_BINDIR games CACHE PATH "Place where the executables should go")
|
||||
ENDIF()
|
||||
|
||||
# Determine the aboslute paths of the data, bin and lib (and man) folders.
|
||||
|
||||
IF(IS_ABSOLUTE ${SD_LIBDIR})
|
||||
GET_FILENAME_COMPONENT(SD_LIBDIR_ABS ${SD_LIBDIR} ABSOLUTE)
|
||||
ELSE(IS_ABSOLUTE ${SD_LIBDIR})
|
||||
GET_FILENAME_COMPONENT(SD_LIBDIR_ABS ${CMAKE_INSTALL_PREFIX}/${SD_LIBDIR} ABSOLUTE)
|
||||
ENDIF(IS_ABSOLUTE ${SD_LIBDIR})
|
||||
|
||||
IF(IS_ABSOLUTE ${SD_BINDIR})
|
||||
GET_FILENAME_COMPONENT(SD_BINDIR_ABS ${SD_BINDIR} ABSOLUTE)
|
||||
ELSE(IS_ABSOLUTE ${SD_BINDIR})
|
||||
GET_FILENAME_COMPONENT(SD_BINDIR_ABS ${CMAKE_INSTALL_PREFIX}/${SD_BINDIR} ABSOLUTE)
|
||||
ENDIF(IS_ABSOLUTE ${SD_BINDIR})
|
||||
|
||||
IF(IS_ABSOLUTE ${SD_INCLUDEDIR})
|
||||
GET_FILENAME_COMPONENT(SD_INCLUDEDIR_ABS ${SD_INCLUDEDIR} ABSOLUTE)
|
||||
ELSE(IS_ABSOLUTE ${SD_INCLUDEDIR})
|
||||
GET_FILENAME_COMPONENT(SD_INCLUDEDIR_ABS ${CMAKE_INSTALL_PREFIX}/${SD_INCLUDEDIR} ABSOLUTE)
|
||||
ENDIF(IS_ABSOLUTE ${SD_INCLUDEDIR})
|
||||
|
||||
IF(UNIX)
|
||||
IF(IS_ABSOLUTE ${SD_MANDIR})
|
||||
GET_FILENAME_COMPONENT(SD_MANDIR_ABS ${SD_MANDIR} ABSOLUTE)
|
||||
ELSE(IS_ABSOLUTE ${SD_MANDIR})
|
||||
GET_FILENAME_COMPONENT(SD_MANDIR_ABS ${CMAKE_INSTALL_PREFIX}/${SD_MANDIR} ABSOLUTE)
|
||||
ENDIF(IS_ABSOLUTE ${SD_MANDIR})
|
||||
ENDIF(UNIX)
|
||||
SET(SD_LIBDIR ${CMAKE_INSTALL_LIBDIR}/games/speed-dreams-2 CACHE PATH "Place where the libraries should go")
|
||||
SET(SD_INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR}/speed-dreams-2 CACHE PATH "Place where the include files should go")
|
||||
SET(SD_MANDIR ${CMAKE_INSTALL_MANDIR} CACHE PATH "Place where the manual pages should go")
|
||||
|
||||
STRING(REGEX REPLACE "^(.*[^/])/*$" "\\1" SD_LOCALDIR_TMP ${SD_LOCALDIR})
|
||||
SET(SD_LOCALDIR ${SD_LOCALDIR_TMP})
|
||||
|
||||
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CURRENT_LIST_FILE_PATH})
|
||||
SET(CMAKE_INSTALL_RPATH "${SD_LIBDIR_ABS}/lib")
|
||||
|
||||
# Configuration options macros.
|
||||
INCLUDE(${CURRENT_LIST_FILE_PATH}/options.cmake)
|
||||
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/options.cmake)
|
||||
|
||||
# Robots-related macros.
|
||||
INCLUDE(${CURRENT_LIST_FILE_PATH}/robot.cmake)
|
||||
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/robot.cmake)
|
||||
|
||||
# Robots-related macros.
|
||||
INCLUDE(${CURRENT_LIST_FILE_PATH}/install.cmake)
|
||||
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/install.cmake)
|
||||
|
||||
# Internal dependencies macros (includes and libs).
|
||||
INCLUDE(${CURRENT_LIST_FILE_PATH}/internaldeps.cmake)
|
||||
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/internaldeps.cmake)
|
||||
|
||||
# 3rd party dependencies macros (includes and libs).
|
||||
INCLUDE(${CURRENT_LIST_FILE_PATH}/thirdpartydeps.cmake)
|
||||
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/thirdpartydeps.cmake)
|
||||
|
||||
# Use as a replacement of native ADD_DIRECTORY if the target folder may be optional
|
||||
# (if it is actually not there, and OPTION_CHECK_CONTENTS is Off,
|
||||
|
@ -272,116 +191,8 @@ MACRO(SD_ADD_LIBRARY TARGET_NAME TARGET_TYPE)
|
|||
|
||||
ENDMACRO(SD_ADD_LIBRARY TARGET_NAME TARGET_TYPE)
|
||||
|
||||
|
||||
|
||||
# Generate clobber.sh/bat shell script (remove _any_ build system generated file)
|
||||
MACRO(SD_GENERATE_CLOBBER_SCRIPT)
|
||||
|
||||
IF(MSVC)
|
||||
|
||||
SET(TGT_SCRIPT "${SOURCE_DIR}/clobber.bat")
|
||||
FILE(WRITE "${TGT_SCRIPT}" "@echo off\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem CMake-generated script for in-source build tree total cleanup\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem (remove any build-system-generated file (+ .bak, *~, ... etc), \n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem in case you want to get back to something like\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem right after a 'svn checkout' command).\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem Check if we are on top of a CMake-enabled SD source tree\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "if not exist CMakeLists.txt goto ERROR\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "if not exist cmake goto ERROR\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "if not exist data goto ERROR\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "if not exist src goto ERROR\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "echo Cleaning up in-source build tree ...\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem CMake/compiler generated files and dirs\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del CMakeCache.txt\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del CMakeLists.txt.user\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del config.h\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del CPackConfig.cmake\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del CPackSourceConfig.cmake\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del uninstall.cmake\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del doxygen_config\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del install_manifest.txt\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del speed-dreams-2.ncb\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /ah speed-dreams-2.suo\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del speed-dreams-2.sln\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del version.h\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del xmlversion_loc.txt\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.vcproj*\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q cmake_install.cmake\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "for /f \"tokens=*\" %%G in ('dir /b /ad /s CMakeFiles*') do rmdir /s /q %%G\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "for /f \"tokens=*\" %%G in ('dir /b /ad /s *.dir') do rmdir /s /q %%G\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "for /f \"tokens=*\" %%G in ('dir /b /ad /s Debug*') do rmdir /s /q %%G\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "for /f \"tokens=*\" %%G in ('dir /b /ad /s Release*') do rmdir /s /q %%G\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rmdir /s /q _CPack_Packages\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "rem Other useless files\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.*~\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.~*\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.bak\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.flc\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.orig\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "del /s /q *.cbp\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "echo Done.\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "goto END\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" ":ERROR\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "echo Bad current dir for that ; please run from the root folder of a CMake-enabled SD source tree.\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" ":END\n")
|
||||
|
||||
ELSE(MSVC)
|
||||
|
||||
SET(TGT_SCRIPT "${SOURCE_DIR}/clobber.sh")
|
||||
FILE(WRITE "${TGT_SCRIPT}" "#!/bin/sh\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "# CMake-generated script for in-source build tree total cleanup\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "# (remove any build-system-generated file (+ .bak, *~, ... etc), \n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "# in case you want to get back to something like\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "# right after a 'svn checkout' command).\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "# Check if we are on top of a CMake-enabled SD source tree\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "if [ -f CMakeLists.txt -a -d cmake -a -d data -a -d src ] ; then\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " echo \"Cleaning up in-source build tree ...\"\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " \n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " # CMake/compiler generated files and dirs\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " rm -f CMakeCache.txt CMakeLists.txt.user config.h doxygen_config\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " rm -f CPackConfig.cmake CPackSourceConfig.cmake\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " rm -f uninstall.cmake\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " rm -f xmlversion_loc.txt install_manifest.txt version.h.txt\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " rm -fr _CPack_Packages\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -depth -type d -name \"CMakeFiles\" -exec rm -fr {} \\;\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"cmake_install.cmake\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"Makefile\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.so\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find src/tools -type f -name \"sd2-*\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find src/tools/xmlversion -type f -name \"xmlversion\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find src/main -type f -name \"speed-dreams-2\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " # Other useless files\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.rej\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.orig\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.flc\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.bak\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.cbp\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.a\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*~\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " find . -type f -name \"*.~*\" -delete\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " \n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " echo \"Done.\"\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " \n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "else\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" " echo \"Bad current dir for that ; please run from the root folder of a CMake-enabled SD source tree.\"\n")
|
||||
FILE(APPEND "${TGT_SCRIPT}" "fi\n")
|
||||
EXECUTE_PROCESS(COMMAND chmod ugo+x ${TGT_SCRIPT})
|
||||
ENDIF(MSVC)
|
||||
|
||||
ENDMACRO(SD_GENERATE_CLOBBER_SCRIPT)
|
||||
ADD_COMPILE_DEFINITIONS(HAVE_CONFIG_H)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
|
||||
|
||||
# Add non-default compile options.
|
||||
ADD_SD_COMPILE_OPTIONS()
|
||||
|
|
|
@ -22,27 +22,6 @@ INCLUDE(CMakeDependentOption)
|
|||
|
||||
MACRO(ADD_SD_COMPILE_OPTIONS)
|
||||
|
||||
# This has to be done more than once, because HAVE_CONFIG_H may change.
|
||||
IF(HAVE_CONFIG_H)
|
||||
|
||||
ADD_DEFINITIONS(-DHAVE_CONFIG_H)
|
||||
|
||||
IF(IN_SOURCETREE)
|
||||
SET(INCLUDE_CANDIDATE ${SOURCE_DIR})
|
||||
ELSE(IN_SOURCETREE)
|
||||
SET(INCLUDE_CANDIDATE "")
|
||||
ENDIF(IN_SOURCETREE)
|
||||
FIND_PATH(CONFIGH_INCLUDE_DIR config.h ${INCLUDE_CANDIDATE} /usr/include /usr/local/include NO_DEFAULT_PATH)
|
||||
FIND_PATH(CONFIGH_INCLUDE_DIR config.h ${INCLUDE_CANDIDATE} /usr/include /usr/local/include)
|
||||
MARK_AS_ADVANCED(CONFIGH_INCLUDE_DIR)
|
||||
IF(CONFIGH_INCLUDE_DIR)
|
||||
INCLUDE_DIRECTORIES(${CONFIGH_INCLUDE_DIR})
|
||||
ELSE(CONFIGH_INCLUDE_DIR)
|
||||
MESSAGE(FATAL_ERROR "Cannot find config.h header file")
|
||||
ENDIF(CONFIGH_INCLUDE_DIR)
|
||||
|
||||
ENDIF(HAVE_CONFIG_H)
|
||||
|
||||
# Build options (do it only once).
|
||||
IF(NOT _ALREADY_DONE)
|
||||
|
||||
|
|
|
@ -64,11 +64,7 @@ MACRO(GENERATE_ROBOT_DEF_FILE ROBOTNAME DEF_FILE)
|
|||
|
||||
# Generate the .def file
|
||||
SET(ROBOT_NAME "${ROBOTNAME}")
|
||||
IF(IN_SOURCETREE)
|
||||
CONFIGURE_FILE(${SOURCE_DIR}/cmake/robot.def.in.cmake ${DEF_FILE})
|
||||
ELSE(IN_SOURCETREE)
|
||||
CONFIGURE_FILE(${SD_DATADIR}/cmake/robot.def.in.cmake ${DEF_FILE})
|
||||
ENDIF(IN_SOURCETREE)
|
||||
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/robot.def.in.cmake ${DEF_FILE})
|
||||
|
||||
ENDMACRO(GENERATE_ROBOT_DEF_FILE ROBOTNAME DEF_FILE)
|
||||
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
# CMake script behind the 'uninstall' target.
|
||||
|
||||
IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
|
||||
MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
|
||||
ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
|
||||
|
||||
FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" FILES_TO_REMOVE)
|
||||
STRING(REGEX REPLACE "\n" ";" FILES_TO_REMOVE "${FILES_TO_REMOVE}")
|
||||
FOREACH(FILE_TO_REMOVE ${FILES_TO_REMOVE})
|
||||
MESSAGE(STATUS "Uninstalling: $ENV{DESTDIR}${FILE_TO_REMOVE}")
|
||||
IF(EXISTS "$ENV{DESTDIR}${FILE_TO_REMOVE}")
|
||||
EXEC_PROGRAM("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${FILE_TO_REMOVE}\""
|
||||
OUTPUT_VARIABLE RM_OUT RETURN_VALUE RM_RETVAL)
|
||||
IF(NOT "${RM_RETVAL}" STREQUAL "0")
|
||||
MESSAGE(FATAL_ERROR "Failed to remove $ENV{DESTDIR}${FILE_TO_REMOVE} (err code ${RM_RETVAL})")
|
||||
ENDIF(NOT "${RM_RETVAL}" STREQUAL "0")
|
||||
ELSE(EXISTS "$ENV{DESTDIR}${FILE_TO_REMOVE}")
|
||||
MESSAGE(STATUS "File \"$ENV{DESTDIR}${FILE_TO_REMOVE}\" does not exist.")
|
||||
ENDIF(EXISTS "$ENV{DESTDIR}${FILE_TO_REMOVE}")
|
||||
ENDFOREACH(FILE_TO_REMOVE)
|
|
@ -45,7 +45,7 @@ IF(MINGW)
|
|||
ENDIF(MINGW)
|
||||
|
||||
IF(UNIX)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
ENDIF(UNIX)
|
||||
|
||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||
|
|
|
@ -55,7 +55,7 @@ SET(CONFSCREENS_HEADERS ${CS}/confscreens.h ${CS}/advancedgraphconfig.h
|
|||
SET(RS racescreens)
|
||||
SET(RACESCREENS_SOURCES ${RS}/raceselectmenu.cpp
|
||||
#${RS}/raceweekendmenu.cpp
|
||||
${RS}/racemanmenu.cpp ${RS}/fileselect.cpp ${RS}/networkingmenu.cpp
|
||||
${RS}/racemanmenu.cpp ${RS}/fileselect.cpp
|
||||
${RS}/raceconfigstate.cpp
|
||||
${RS}/trackselect.cpp ${RS}/driverselect.cpp ${RS}/garagemenu.cpp
|
||||
${RS}/raceparamsmenu.cpp ${RS}/carsetupmenu.cpp
|
||||
|
@ -67,6 +67,8 @@ IF(OPTION_CLIENT_SERVER)
|
|||
SET(RACESCREENS_SOURCES ${RACESCREENS_SOURCES} ${RS}/csnetworkingmenu.cpp
|
||||
${RS}/csnetclientsettings.cpp
|
||||
${RS}/csnetserversettings.cpp)
|
||||
ELSE()
|
||||
SET(RACESCREENS_SOURCES ${RACESCREENS_SOURCES} ${RS}/networkingmenu.cpp)
|
||||
ENDIF(OPTION_CLIENT_SERVER)
|
||||
|
||||
SET(RACESCREENS_HEADERS ${RS}/racescreens.h ${RS}/garagemenu.h ${RS}/carsetupmenu.h) #${RS}/raceweekendscreens.h)
|
||||
|
|
|
@ -22,7 +22,6 @@
|
|||
Should also allow choosing IP address, track, etc ...
|
||||
*/
|
||||
|
||||
#ifndef CLIENT_SERVER
|
||||
#include <cstdlib>
|
||||
#include <cstdio>
|
||||
#include <string>
|
||||
|
@ -1110,4 +1109,3 @@ GetHumanDriver(NetDriver &driver,int index)
|
|||
|
||||
return 1;
|
||||
}
|
||||
#endif // #ifndef CLIENT_SERVER
|
||||
|
|
|
@ -15,7 +15,7 @@ SD_ADD_EXECUTABLE(${_TARGET_NAME} ${ACCC_SOURCES} ${ACCC_HEADERS})
|
|||
ADD_SDLIB_LIBRARY(${_TARGET_NAME} portability)
|
||||
|
||||
IF(UNIX)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
ENDIF(UNIX)
|
||||
|
||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||
|
|
|
@ -47,7 +47,7 @@ IF(MINGW)
|
|||
ENDIF(MINGW)
|
||||
|
||||
IF(UNIX)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
ENDIF(UNIX)
|
||||
|
||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||
|
|
|
@ -13,7 +13,7 @@ SD_ADD_EXECUTABLE(${_TARGET_NAME} ${NFS2AC_SOURCES})
|
|||
ADD_SDLIB_LIBRARY(${_TARGET_NAME} portability)
|
||||
|
||||
IF(UNIX)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
ENDIF(UNIX)
|
||||
|
||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||
|
|
|
@ -19,7 +19,7 @@ ADD_SDLIB_LIBRARY(${_TARGET_NAME} portability tgf txml) # txml ignored if OPTION
|
|||
ADD_DL_LIBRARY(${_TARGET_NAME})
|
||||
|
||||
IF(UNIX)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
ENDIF(UNIX)
|
||||
|
||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||
|
|
|
@ -51,7 +51,7 @@ IF(MINGW)
|
|||
ENDIF(MINGW)
|
||||
|
||||
IF(UNIX)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
SD_INSTALL_FILES(MAN man6 PREFIX ${CMAKE_SOURCE_DIR}/doc/man FILES ${_TARGET_NAME}.6)
|
||||
ENDIF(UNIX)
|
||||
|
||||
SD_INSTALL_FILES(BIN TARGETS ${_TARGET_NAME})
|
||||
|
|
Loading…
Reference in a new issue