diff --git a/CMakeLists.txt b/CMakeLists.txt index eb8327f..e6eeda5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,10 +4,9 @@ project(aws-lambda-runtime VERSION 0.2.6 LANGUAGES CXX) +option(ENABLE_LTO "Enables link-time optimization, requires compiler support." ON) option(ENABLE_TESTS "Enables building the test project, requires AWS C++ SDK." OFF) -include(CheckIPOSupported) - add_library(${PROJECT_NAME} "src/logging.cpp" "src/runtime.cpp" @@ -23,11 +22,14 @@ target_include_directories(${PROJECT_NAME} PUBLIC $ $) -check_ipo_supported(RESULT has_lto OUTPUT lto_check_output) -if(has_lto) - set_property(TARGET ${PROJECT_NAME} PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE) -else() - message(WARNING "Link-time optimization (LTO) is not supported: ${lto_check_output}") +if (ENABLE_LTO) + include(CheckIPOSupported) + check_ipo_supported(RESULT has_lto OUTPUT lto_check_output) + if(has_lto) + set_property(TARGET ${PROJECT_NAME} PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE) + else() + message(WARNING "Link-time optimization (LTO) is not supported: ${lto_check_output}") + endif() endif() find_package(CURL REQUIRED)