mirror of
https://github.com/scp-fs2open/fs2open.github.com.git
synced 2026-11-07 08:15:59 -10:00
Also removed all checks for C++11 support since we only support compilers that have this already.
46 lines
1.4 KiB
CMake
46 lines
1.4 KiB
CMake
|
|
include(CheckFunctionExists)
|
|
include(CheckIncludeFiles)
|
|
include(CheckIncludeFile)
|
|
include(CheckIncludeFileCXX)
|
|
include(CheckLibraryExists)
|
|
include(CheckPrototypeDefinition)
|
|
include(CheckStructHasMember)
|
|
include(CheckSymbolExists)
|
|
include(CheckCXXSymbolExists)
|
|
include(CheckTypeSize)
|
|
|
|
CHECK_INCLUDE_FILE("execinfo.h" SCP_HAVE_EXECINFO_H)
|
|
CHECK_INCLUDE_FILE_CXX("cxxabi.h" SCP_HAVE_CXXAPI_H)
|
|
|
|
CHECK_TYPE_SIZE("max_align_t" MAX_ALIGN_T)
|
|
|
|
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
|
|
set(CMAKE_REQUIRED_FLAGS "-std=c++11") # required for g++ <= 5
|
|
endif()
|
|
|
|
set(CMAKE_EXTRA_INCLUDE_FILES "cstddef")
|
|
CHECK_TYPE_SIZE("std::max_align_t" STD_MAX_ALIGN_T LANGUAGE CXX)
|
|
set(CMAKE_EXTRA_INCLUDE_FILES)
|
|
|
|
CHECK_TYPE_SIZE("char32_t" CHAR32_T LANGUAGE CXX)
|
|
CHECK_TYPE_SIZE("U'b'" UNICODE_CHAR_LITERAL LANGUAGE CXX)
|
|
|
|
set(CMAKE_REQUIRED_FLAGS)
|
|
|
|
|
|
CHECK_FUNCTION_EXISTS(strcasecmp SCP_HAVE_STRCASECMP)
|
|
CHECK_FUNCTION_EXISTS(strncasecmp SCP_HAVE_STRNCASECMP)
|
|
|
|
CHECK_FUNCTION_EXISTS(_stricmp SCP_HAVE__STRICMP)
|
|
CHECK_FUNCTION_EXISTS(_strnicmp SCP_HAVE__STRNICMP)
|
|
|
|
CHECK_FUNCTION_EXISTS(strlwr SCP_HAVE_STRLWR)
|
|
|
|
CHECK_INCLUDE_FILE("strings.h" SCP_HAVE_STRINGS_H)
|
|
|
|
check_symbol_exists(snprintf "stdio.h" SCP_HAVE_SNPRINTF)
|
|
|
|
set(PLATFORM_CHECK_HEADER "${GENERATED_SOURCE_DIR}/platformChecks.h")
|
|
CONFIGURE_FILE(${CMAKE_CURRENT_LIST_DIR}/platformChecks.h.in "${PLATFORM_CHECK_HEADER}")
|