Unverified Commit da90ef78 authored by Dominik Charousset's avatar Dominik Charousset Committed by GitHub

Merge pull request #824

Allow IPO on gcc/clang
parents d8a529ea 6f9c046e
......@@ -263,6 +263,18 @@ if(CAF_MORE_WARNINGS)
string(REPLACE ";" "" WFLAGS_STR ${WFLAGS})
build_string("EXTRA_FLAGS" "${WFLAGS_STR}")
endif()
# allow enabling IPO on gcc/clang
if(POLICY CMP0069)
cmake_policy(SET CMP0069 NEW)
else()
if(CMAKE_INTERPROCEDURAL_OPTIMIZATION)
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
build_string("EXTRA_FLAGS" "-flto")
elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
build_string("EXTRA_FLAGS" "-flto -fno-fat-lto-objects")
endif()
endif()
endif()
# add -stdlib=libc++ when using Clang if possible
if(NOT CAF_NO_AUTO_LIBCPP AND CMAKE_CXX_COMPILER_ID MATCHES "Clang")
......@@ -315,7 +327,7 @@ if(MINGW)
build_string("EXTRA_FLAGS" "-static")
elseif(CYGWIN)
build_string("EXTRA_FLAGS" "-U__STRICT_ANSI__")
else()
elseif(NOT CAF_BUILD_STATIC_ONLY)
build_string("EXTRA_FLAGS" "-fPIC")
endif()
if (WIN32)
......
cmake_minimum_required(VERSION 2.8)
project(caf_examples CXX)
add_custom_target(all_examples)
......
cmake_minimum_required(VERSION 2.8.12)
project(caf_core C CXX)
# get header files; only needed by CMake generators,
......
cmake_minimum_required(VERSION 2.8.12)
project(caf_io C CXX)
# get header files; only needed by CMake generators,
......
cmake_minimum_required(VERSION 3.1)
project(caf_opencl C CXX)
# get header files; only needed by CMake generators,
......
cmake_minimum_required(VERSION 2.8)
project(caf_openssl C CXX)
# get header files; only needed by CMake generators,
......
cmake_minimum_required(VERSION 2.8)
project(caf_tools CXX)
add_custom_target(all_tools)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment