From acc075d79d009bfa1e9b1a67a4a559c9fa9772e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tiziano=20M=C3=BCller?= Date: Mon, 2 Nov 2020 14:39:21 +0100 Subject: [PATCH] llvm: fix +lldb build with external ncurses on openSUSE (#19627) fixes #19625 --- .../llvm/lldb_external_ncurses-10.patch | 31 +++++++++++++++++++ .../repos/builtin/packages/llvm/package.py | 4 +++ 2 files changed, 35 insertions(+) create mode 100644 var/spack/repos/builtin/packages/llvm/lldb_external_ncurses-10.patch diff --git a/var/spack/repos/builtin/packages/llvm/lldb_external_ncurses-10.patch b/var/spack/repos/builtin/packages/llvm/lldb_external_ncurses-10.patch new file mode 100644 index 00000000000..34ed0e3cd21 --- /dev/null +++ b/var/spack/repos/builtin/packages/llvm/lldb_external_ncurses-10.patch @@ -0,0 +1,31 @@ +diff --git a/lldb/include/lldb/Host/Config.h.cmake b/lldb/include/lldb/Host/Config.h.cmake +--- a/lldb/include/lldb/Host/Config.h.cmake ++++ b/lldb/include/lldb/Host/Config.h.cmake +@@ -38,6 +38,8 @@ + + #cmakedefine01 LLDB_ENABLE_CURSES + ++#cmakedefine01 CURSES_HAVE_NCURSES_CURSES_H ++ + #cmakedefine01 LLDB_ENABLE_LIBEDIT + + #cmakedefine01 LLDB_ENABLE_LIBXML2 +diff --git a/lldb/source/Core/IOHandlerCursesGUI.cpp b/lldb/source/Core/IOHandlerCursesGUI.cpp +--- a/lldb/source/Core/IOHandlerCursesGUI.cpp ++++ b/lldb/source/Core/IOHandlerCursesGUI.cpp +@@ -10,9 +10,14 @@ + #include "lldb/Host/Config.h" + + #if LLDB_ENABLE_CURSES ++#if CURSES_HAVE_NCURSES_CURSES_H ++#include ++#include ++#else + #include + #include + #endif ++#endif + + #if defined(__APPLE__) + #include + diff --git a/var/spack/repos/builtin/packages/llvm/package.py b/var/spack/repos/builtin/packages/llvm/package.py index b87d6b92e36..3d4bfe8d53e 100644 --- a/var/spack/repos/builtin/packages/llvm/package.py +++ b/var/spack/repos/builtin/packages/llvm/package.py @@ -208,6 +208,10 @@ class Llvm(CMakePackage, CudaPackage): # https://bugs.llvm.org/show_bug.cgi?id=39696 patch("thread-p9.patch", when="@develop+libcxx") + # https://github.com/spack/spack/issues/19625, + # merged in llvm-11.0.0_rc2 + patch("lldb_external_ncurses-10.patch", when="@10.0.0:10.99+lldb") + # The functions and attributes below implement external package # detection for LLVM. See: #