summaryrefslogtreecommitdiff
path: root/dev-util/binaryen/files/binaryen-undo-compile-flag-braindamage.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/binaryen/files/binaryen-undo-compile-flag-braindamage.patch')
-rw-r--r--dev-util/binaryen/files/binaryen-undo-compile-flag-braindamage.patch68
1 files changed, 68 insertions, 0 deletions
diff --git a/dev-util/binaryen/files/binaryen-undo-compile-flag-braindamage.patch b/dev-util/binaryen/files/binaryen-undo-compile-flag-braindamage.patch
new file mode 100644
index 0000000..93a7b9a
--- /dev/null
+++ b/dev-util/binaryen/files/binaryen-undo-compile-flag-braindamage.patch
@@ -0,0 +1,68 @@
+diff -ru a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt 2021-04-16 14:09:26.000000000 -0400
++++ b/CMakeLists.txt 2021-04-24 09:48:11.792348791 -0400
+@@ -137,17 +137,6 @@
+ set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY${SUFFIX} "${PROJECT_BINARY_DIR}/lib")
+ endforeach()
+
+-option(BYN_ENABLE_LTO "Build with LTO" Off)
+-if(BYN_ENABLE_LTO)
+- if(NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+- message(FATAL_ERROR "ThinLTO is only supported by clang")
+- endif()
+- if(NOT APPLE)
+- add_link_flag("-fuse-ld=lld")
+- endif()
+- add_compile_flag("-flto=thin")
+-endif()
+-
+ if(MSVC)
+ if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "19.0") # VS2013 and older explicitly need /arch:sse2 set, VS2015 no longer has that option, but always enabled.
+ add_compile_flag("/arch:sse2")
+@@ -212,15 +201,6 @@
+ set(CMAKE_THREAD_PREFER_PTHREAD ON)
+ find_package(Threads REQUIRED)
+ add_cxx_flag("-std=c++${CXX_STANDARD}")
+- if(NOT EMSCRIPTEN)
+- if(CMAKE_SYSTEM_PROCESSOR MATCHES "^i.86$")
+- # wasm doesn't allow for x87 floating point math
+- add_compile_flag("-msse2")
+- add_compile_flag("-mfpmath=sse")
+- elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^armv[2-6]" AND NOT CMAKE_CXX_FLAGS MATCHES "-mfpu=")
+- add_compile_flag("-mfpu=vfpv3")
+- endif()
+- endif()
+ add_compile_flag("-Wall")
+ if(ENABLE_WERROR)
+ add_compile_flag("-Werror")
+@@ -244,14 +224,6 @@
+ elseif(NOT EMSCRIPTEN)
+ add_compile_flag("-fPIC")
+ endif()
+- add_debug_compile_flag("-O0")
+- add_debug_compile_flag("-g3")
+- if(EMSCRIPTEN)
+- # really focus on minimizing output size when compiling sources
+- add_nondebug_compile_flag("-Oz")
+- else()
+- add_nondebug_compile_flag("-O2")
+- endif()
+ if(BYN_ENABLE_ASSERTIONS)
+ # On non-Debug builds cmake automatically defines NDEBUG, so we
+ # explicitly undefine it:
+@@ -273,15 +245,6 @@
+ add_nondebug_compile_flag("-flto")
+ endif()
+
+-# clang doesn't print colored diagnostics when invoked from Ninja
+-if(UNIX AND CMAKE_GENERATOR STREQUAL "Ninja")
+- if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+- add_compile_flag("-fdiagnostics-color=always")
+- elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+- add_compile_flag("-fcolor-diagnostics")
+- endif()
+-endif()
+-
+ # Static libraries
+ # Current (partial) dependency structure is as follows:
+ # passes -> wasm -> asmjs -> support