aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYamakaky <yamakaky@yamaworld.fr>2016-02-21 16:52:16 +0100
committerYamakaky <yamakaky@yamaworld.fr>2016-02-21 18:33:28 +0100
commit1132b67b5b21e10678387511ed5006114ca186ba (patch)
tree6b00d980e4393c0fd931f2b2f5625215c759ef52
parentfc51f86b727bb3bd8e65b8a0bab0548a90582269 (diff)
downloadrneovim-1132b67b5b21e10678387511ed5006114ca186ba.tar.gz
rneovim-1132b67b5b21e10678387511ed5006114ca186ba.tar.bz2
rneovim-1132b67b5b21e10678387511ed5006114ca186ba.zip
Enable link-time optimisations on Release build.
Fixes https://github.com/neovim/neovim/issues/3136
-rw-r--r--CMakeLists.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 527a085d3e..73f33292ff 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -82,6 +82,12 @@ if(CMAKE_C_FLAGS_RELEASE MATCHES "-O3")
string(REPLACE "-O3" "-O2" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}")
endif()
+# Enable link-time optimisations on release builds.
+check_c_compiler_flag(-flto HAS_FLTO_FLAG)
+if(HAS_FLTO_FLAG)
+ set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -flto")
+endif()
+
# Disable logging for release-type builds.
if(NOT CMAKE_C_FLAGS_RELEASE MATCHES DDISABLE_LOG)
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DDISABLE_LOG")