diff options
Diffstat (limited to 'package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch')
-rw-r--r-- | package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch b/package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch deleted file mode 100644 index 489c7269f8..0000000000 --- a/package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch +++ /dev/null @@ -1,69 +0,0 @@ -From: Alexander Dahl <alex@netz39.de> -Date: Wed, 28 Oct 2015 16:04:13 +0100 -Subject: [PATCH] cmake: use INTERPROCEDURAL_OPTIMIZATION target property - -Instead of hacking on compiler flags use the cmake way for handling -interprocedural optimization. Tests showed cmake currently ignores this -for gcc and clang, at least on Debian Wheezy and Jessie. This actually -results in no interprocedural optimization for the moment. However it -allows to compile fastd against a toolchain without LTO support, which -was broken because of a hack included here for finding binutils. - -According to the upstream author of fastd the main reason for enabling -LTO was binary size on an OpenWRT target for Freifunk Gluon, where they -have very few space left on devices with only 4 MB flash memory. - -Signed-off-by: Alexander Dahl <post@lespocky.de> ---- - cmake/checks.cmake | 14 -------------- - src/CMakeLists.txt | 9 +++++++++ - 2 files changed, 9 insertions(+), 14 deletions(-) - -diff --git a/cmake/checks.cmake b/cmake/checks.cmake -index 27c073f..8a671a1 100644 ---- a/cmake/checks.cmake -+++ b/cmake/checks.cmake -@@ -10,20 +10,6 @@ if(ARCH_X86 OR ARCH_X86_64) - 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> -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 829b3ab..7612b40 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -48,6 +48,15 @@ add_executable(fastd - set_property(TARGET fastd PROPERTY COMPILE_FLAGS "${FASTD_CFLAGS}") - set_property(TARGET fastd PROPERTY LINK_FLAGS "${PTHREAD_LDFLAGS} ${LIBUECC_LDFLAGS_OTHER} ${NACL_LDFLAGS_OTHER} ${JSON_C_LDFLAGS_OTHER} ${LDFLAGS_LTO}") - set_property(TARGET fastd APPEND PROPERTY INCLUDE_DIRECTORIES ${LIBCAP_INCLUDE_DIR} ${NACL_INCLUDE_DIRS} ${JSON_C_INCLUDE_DIR}) -+if(ENABLE_LTO) -+ set_target_properties(fastd PROPERTIES -+ INTERPROCEDURAL_OPTIMIZATION ON -+ ) -+else(ENABLE_LTO) -+ set_target_properties(fastd PROPERTIES -+ INTERPROCEDURAL_OPTIMIZATION OFF -+ ) -+endif(ENABLE_LTO) - target_link_libraries(fastd protocols methods ciphers macs ${RT_LIBRARY} ${LIBCAP_LIBRARY} ${LIBUECC_LIBRARIES} ${NACL_LIBRARIES} ${OPENSSL_CRYPTO_LIBRARY} ${JSON_C_LIBRARIES}) - - add_dependencies(fastd version) --- -2.1.4 - |