IPO support

- When BUILD_SHARED_LIBS=ON and CMake version >= 3.9 use IPO

Signed-off-by: Joel Winarske <joel.winarske@gmail.com>
This commit is contained in:
Joel Winarske 2022-10-01 09:23:35 -07:00
parent dd8a678a66
commit 89d101550d

View File

@ -398,3 +398,16 @@ if (GLFW_INSTALL)
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}") LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
endif() endif()
#--------------------------------------------------------------------
# Link Time Optimization
#--------------------------------------------------------------------
if (BUILD_SHARED_LIBS AND ${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.9.0")
include(CheckIPOSupported)
check_ipo_supported(RESULT result OUTPUT output)
if(result)
message(STATUS "glfw: Using IPO")
set_property(TARGET glfw PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)
else()
message(WARNING "IPO is not supported: ${output}")
endif ()
endif ()