mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-29 08:32:02 +00:00
only use -flto when supported, quenched policy warnings
This commit is contained in:
parent
60c36db1c9
commit
faaee1cbbd
@ -27,14 +27,23 @@ set(Python_ADDITIONAL_VERSIONS 3.4 3.5 3.6)
|
|||||||
find_package(PythonLibs ${PYBIND11_PYTHON_VERSION} REQUIRED)
|
find_package(PythonLibs ${PYBIND11_PYTHON_VERSION} REQUIRED)
|
||||||
find_package(PythonInterp ${PYBIND11_PYTHON_VERSION} REQUIRED)
|
find_package(PythonInterp ${PYBIND11_PYTHON_VERSION} REQUIRED)
|
||||||
|
|
||||||
if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU")
|
include(CheckCXXCompilerFlag)
|
||||||
|
|
||||||
|
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
||||||
# Enable C++11 mode on C++ / Clang
|
# Enable C++11 mode on C++ / Clang
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
||||||
|
|
||||||
# Enable link time optimization and set the default symbol
|
# Enable link time optimization and set the default symbol
|
||||||
# visibility to hidden (very important to obtain small binaries)
|
# visibility to hidden (very important to obtain small binaries)
|
||||||
if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
|
if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -flto")
|
# Default symbol visibility
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
|
||||||
|
|
||||||
|
# Check for Link Time Optimization support
|
||||||
|
CHECK_CXX_COMPILER_FLAG("-flto" HAS_LTO_FLAG)
|
||||||
|
if (HAS_LTO_FLAG)
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user