set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
+set(CMAKE_CXX_EXTENSIONS OFF)
if (CMAKE_VERSION VERSION_LESS "3.1")
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR CMAKE_COMPILER_IS_GNUCXX)
include(CheckCXXCompilerFlag)
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
addflags("-Werror")
addflags("-pedantic-errors")
+ set(CMAKE_VERBOSE_MAKEFILE ON)
+ addflags(-fstack-protector -fstack-protector-strong -fstack-protector-all)
+ #addflags("-fsanitize=address,undefined") # break __asan::ReportGenericError
+
+ #add_definitions(-D_GLIBCXX_DEBUG=1)
+ #add_definitions(-D_GLIBCXX_DEBUG_PEDANTIC=1)
endif ()
addflags("-Wall")
addflags("-pedantic")
addflags_c("-Wno-deprecated-declarations") # vfs.c: g_strdown
+addflags_cxx("-Wno-deprecated-declarations") # various gtk
addflags("-Wno-unused-function")
addflags("-Wno-unused-variable")
# Game packs
#-----------------------------------------------------------------------
-option(DOWNLOAD_GAMEPACKS "Download game packs" ON)
-if (DOWNLOAD_GAMEPACKS)
- add_custom_target(game_packs
- COMMAND ${CMAKE_COMMAND} -E make_directory games
- COMMAND DOWNLOAD_GAMEPACKS=yes SOURCE_DIR="${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/install-gamepacks.sh" "${PROJECT_BINARY_DIR}"
- COMMENT "Downloading free game packs"
- )
+option(DOWNLOAD_GAMEPACKS "Download game packs" OFF)
+add_custom_target(game_packs_free
+ COMMAND ${CMAKE_COMMAND} -E make_directory games
+ COMMAND DOWNLOAD_GAMEPACKS=yes SOURCE_DIR="${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/install-gamepacks.sh" "${PROJECT_BINARY_DIR}"
+ COMMENT "Downloading free game packs"
+ )
+add_custom_target(game_packs_all
+ COMMAND ${CMAKE_COMMAND} -E make_directory games
+ COMMAND DOWNLOAD_GAMEPACKS=all SOURCE_DIR="${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/install-gamepacks.sh" "${PROJECT_BINARY_DIR}"
+ COMMENT "Downloading all game packs"
+ )
- add_custom_target(game_packs_all
- COMMAND ${CMAKE_COMMAND} -E make_directory games
- COMMAND DOWNLOAD_GAMEPACKS=all SOURCE_DIR="${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/install-gamepacks.sh" "${PROJECT_BINARY_DIR}"
- COMMENT "Downloading all game packs"
- )
+if (DOWNLOAD_GAMEPACKS)
+ set(DOWNLOAD_GAMEPACKS "all")
+endif()
+if ("${DOWNLOAD_GAMEPACKS}" STREQUAL "free")
+ add_custom_target(game_packs_go ALL DEPENDS game_packs_free)
+elseif ("${DOWNLOAD_GAMEPACKS}" STREQUAL "all")
+ add_custom_target(game_packs_go ALL DEPENDS game_packs_all)
endif ()
#-----------------------------------------------------------------------