X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;ds=inline;f=CMakeLists.txt;h=ee73e777079b2682729ee9ec3971d2600555dd99;hb=3d0fc88a41d3774bbbcaee76efdb996bbacc6c45;hp=65f043af95dae68a52e4cc6057debc088e94686c;hpb=dd8e93cdc193d69bc7c3b33964b2b98fbfff0eee;p=supertux.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 65f043af9..ee73e7770 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -39,8 +39,12 @@ PROJECT(SUPERTUX) ### CMake configuration -# allow building with old CMake. Use some bundled modules as a fallback +# allow building with old CMake. Set compatibility options. Use some bundled modules as a fallback CMAKE_MINIMUM_REQUIRED(VERSION 2.4) +IF(COMMAND cmake_policy) + CMAKE_POLICY(SET CMP0003 NEW) +ENDIF(COMMAND cmake_policy) + SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${SUPERTUX_SOURCE_DIR}/mk/cmake) # move some config clutter to the advanced section @@ -140,9 +144,10 @@ ENDIF(SVNVERSION_EXECUTABLE) INCLUDE(ConfigureChecks) -## Create config.h +## Create config.h and version.h configure_file(config.h.cmake ${CMAKE_BINARY_DIR}/config.h ) +configure_file(version.h.cmake ${CMAKE_BINARY_DIR}/version.h ) include_directories (${CMAKE_BINARY_DIR}/) ## Also execute instructions in src/squirrel/CMakeLists.txt @@ -196,14 +201,24 @@ ENDIF(PRECOMPILE_HEADERS) ## Debug options -OPTION(WERROR "Stops on first compiler warning in debug mode" ON) +OPTION(DEBUG "Build with debugging options" ON) +OPTION(WERROR "Stop on first compiler warning" ON) IF(CMAKE_COMPILER_IS_GNUCC) - ADD_DEFINITIONS(-Wall -Wextra) + ADD_DEFINITIONS(-Wall -Wextra -W) + IF (DEBUG) + REMOVE_DEFINITIONS(-O2) + ADD_DEFINITIONS(-O0 -g) + ELSE (DEBUG) + ADD_DEFINITIONS(-O2) + REMOVE_DEFINITIONS(-O0 -g) + ENDIF (DEBUG) SET(CMAKE_CXX_FLAGS_PROFILE "-pg") SET(CMAKE_C_FLAGS_PROFILE "-pg") SET(CMAKE_LD_FLAGS_PROFILE "-pg") IF(WERROR) ADD_DEFINITIONS(-Werror) + ELSE(WERROR) + REMOVE_DEFINITIONS(-Werror) ENDIF(WERROR) ENDIF(CMAKE_COMPILER_IS_GNUCC) @@ -272,7 +287,7 @@ IF(GENERATE_MESSAGESPOT) ADD_CUSTOM_COMMAND( OUTPUT ${MESSAGES_POT_FILE} COMMAND ${XGETTEXT_EXECUTABLE} - ARGS --keyword="_:1" --language=Lisp --sort-by-file --output=${MESSAGES_POT_FILE} ${SUPERTUX_LEVELS} + ARGS --keyword="_:1" --language=Lisp --force-po --sort-by-file "--output=${MESSAGES_POT_FILE}" ${SUPERTUX_LEVELS} DEPENDS ${SUPERTUX_LEVELS} WORKING_DIRECTORY ${SUPERTUX_SOURCE_DIR} COMMENT "Generating POT file ${MESSAGES_POT_FILE}"