summaryrefslogtreecommitdiffstats
path: root/cmake/checks.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/checks.cmake')
-rw-r--r--cmake/checks.cmake15
1 files changed, 15 insertions, 0 deletions
diff --git a/cmake/checks.cmake b/cmake/checks.cmake
index 225c443..62d10d0 100644
--- a/cmake/checks.cmake
+++ b/cmake/checks.cmake
@@ -9,6 +9,21 @@ if(ARCH_X86 OR ARCH_X86_64)
check_c_compiler_flag("-mpclmul" HAVE_PCLMUL)
endif(ARCH_X86 OR ARCH_X86_64)
+
+
+if(ENABLE_LTO)
+ set(CFLAGS_LTO "-flto")
+ set(CFLAGS_NO_LTO "-fno-lto")
+
+ check_c_compiler_flag("-fwhole-program" HAVE_FLAG_WHOLE_PROGRAM)
+ if(HAVE_FLAG_WHOLE_PROGRAM)
+ set(LDFLAGS_LTO "-flto -fwhole-program")
+ else(HAVE_FLAG_WHOLE_PROGRAM)
+ set(LDFLAGS_LTO "-flto")
+ endif(HAVE_FLAG_WHOLE_PROGRAM)
+endif(ENABLE_LTO)
+
+
check_c_source_compiles("
#include <sys/types.h>
#include <sys/socket.h>