From 18565dd286ee6f164e54f8cb6cd1dcb716b2a72a Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Mon, 10 Apr 2023 12:19:55 +0200 Subject: [PATCH] Ports/llvm: Increase the default stack size for LLVM executables --- ...he-default-stack-size-when-running-o.patch | 24 +++++++++++++++++++ Toolchain/Patches/llvm/ReadMe.md | 5 ++++ 2 files changed, 29 insertions(+) create mode 100644 Toolchain/Patches/llvm/0012-cmake-Increase-the-default-stack-size-when-running-o.patch diff --git a/Toolchain/Patches/llvm/0012-cmake-Increase-the-default-stack-size-when-running-o.patch b/Toolchain/Patches/llvm/0012-cmake-Increase-the-default-stack-size-when-running-o.patch new file mode 100644 index 0000000000..538bd92068 --- /dev/null +++ b/Toolchain/Patches/llvm/0012-cmake-Increase-the-default-stack-size-when-running-o.patch @@ -0,0 +1,24 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Tim Schumacher +Date: Mon, 10 Apr 2023 12:17:32 +0200 +Subject: [PATCH] cmake: Increase the default stack size when running on + SerenityOS + +--- + llvm/cmake/modules/HandleLLVMOptions.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake +index 8597d80d3afd3e70e1306fdb7c36963f8e6aede4..2b1609ad43fe65d3f0492cc9a590e38c62e99c22 100644 +--- a/llvm/cmake/modules/HandleLLVMOptions.cmake ++++ b/llvm/cmake/modules/HandleLLVMOptions.cmake +@@ -444,6 +444,9 @@ elseif(MINGW) # FIXME: Also cygwin? + if (NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang") + append("-Wa,-mbig-obj" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) + endif() ++elseif(SERENITYOS) ++ # SerenityOS sets a very low default stack size value, so increase it to 4MB manually. ++ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,stack-size=4194304") + endif() + + option(LLVM_ENABLE_WARNINGS "Enable compiler warnings." ON) diff --git a/Toolchain/Patches/llvm/ReadMe.md b/Toolchain/Patches/llvm/ReadMe.md index e5e7636b51..f803a66f7f 100644 --- a/Toolchain/Patches/llvm/ReadMe.md +++ b/Toolchain/Patches/llvm/ReadMe.md @@ -93,3 +93,8 @@ Prevent the use of POSIX shm on SerenityOS POSIX shm is not supported by SerenityOS yet, so this causes a compilation error. +## `0012-cmake-Increase-the-default-stack-size-when-running-o.patch` + +cmake: Increase the default stack size when running on SerenityOS + +