mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-02-02 11:04:00 +01:00
* cmake : detect support of c++11 via compiler flags
This commit is contained in:
parent
4fc3b8026a
commit
1661ebb537
|
@ -58,8 +58,20 @@ endif ()
|
||||||
|
|
||||||
# compiler flags customization (by vendor)
|
# compiler flags customization (by vendor)
|
||||||
add_definitions ( "-Wall -Wextra" )
|
add_definitions ( "-Wall -Wextra" )
|
||||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
|
||||||
|
# check for c++11 support
|
||||||
|
include(CheckCXXCompilerFlag)
|
||||||
|
CHECK_CXX_COMPILER_FLAG("-std=c++11" CXX11_SUPPORTED)
|
||||||
|
CHECK_CXX_COMPILER_FLAG("-std=c++0x" CXX0X_SUPPORTED)
|
||||||
|
if (CXX11_SUPPORTED)
|
||||||
add_definitions( "-std=c++11" )
|
add_definitions( "-std=c++11" )
|
||||||
|
elseif (CXX0X_SUPPORTED) # gcc 4.6
|
||||||
|
add_definitions( "-std=c++0x" )
|
||||||
|
else ()
|
||||||
|
message(SEND_ERROR "C++11 standart not seems to be supported by compiler. Too old version?")
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||||
if (WITH_HARDENING)
|
if (WITH_HARDENING)
|
||||||
add_definitions( "-D_FORTIFY_SOURCE=2" )
|
add_definitions( "-D_FORTIFY_SOURCE=2" )
|
||||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wformat -Wformat-security -Werror=format-security" )
|
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wformat -Wformat-security -Werror=format-security" )
|
||||||
|
@ -67,7 +79,7 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIE -pie" )
|
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIE -pie" )
|
||||||
endif ()
|
endif ()
|
||||||
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
||||||
add_definitions( "-std=c++11" )
|
# more tweaks
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# compiler flags customization (by system)
|
# compiler flags customization (by system)
|
||||||
|
|
Loading…
Reference in a new issue