lldb-4: Patch to fix libedit usage on Linux

Idea from:
https://bugs.llvm.org//show_bug.cgi?id=28898#c7

Fixes ability to use arrow keys.
This commit is contained in:
Will Dietz 2017-05-25 15:07:00 -05:00
parent 80918692e1
commit 5e659e94a6
2 changed files with 32 additions and 5 deletions

View file

@ -0,0 +1,30 @@
From 94764369222a8e6c65420a6981d7f179a18a5417 Mon Sep 17 00:00:00 2001
From: Will Dietz <w@wdtz.org>
Date: Thu, 25 May 2017 15:03:42 -0500
Subject: [PATCH] EditLine.h: libedit supports wide chars on NixOS
---
include/lldb/Host/Editline.h | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/include/lldb/Host/Editline.h b/include/lldb/Host/Editline.h
index faed373bc..b248cdee1 100644
--- a/include/lldb/Host/Editline.h
+++ b/include/lldb/Host/Editline.h
@@ -43,12 +43,9 @@
// will only be
// used in cases where this is true. This is a compile time dependecy, for now
// selected per target Platform
-#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__)
+// (libedit on NixOS is always wide-char capable)
#define LLDB_EDITLINE_USE_WCHAR 1
#include <codecvt>
-#else
-#define LLDB_EDITLINE_USE_WCHAR 0
-#endif
#include "lldb/Host/ConnectionFileDescriptor.h"
#include "lldb/lldb-private.h"
--
2.13.0

View file

@ -19,7 +19,8 @@ stdenv.mkDerivation {
src = fetch "lldb" "0g83hbw1r4gd0z8hlph9i34xs6dlcc69vz3h2bqwkhb2qq2qzg9d";
patchPhase = ''
patches = [ ./lldb-libedit.patch ];
postPatch = ''
# Fix up various paths that assume llvm and clang are installed in the same place
sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \
cmake/modules/LLDBStandalone.cmake
@ -35,10 +36,6 @@ stdenv.mkDerivation {
CXXFLAGS = "-fno-rtti";
hardeningDisable = [ "format" ];
cmakeFlags = [
"-DLLDB_DISABLE_LIBEDIT=ON"
];
enableParallelBuilding = true;
meta = with stdenv.lib; {