import lldb-12.0.1-1.module+el8.5.0+11871+08d0eab5

This commit is contained in:
CentOS Sources 2021-11-09 04:57:15 -05:00 committed by Stepan Oksanichenko
parent 29766d9290
commit d2179cff2b
7 changed files with 180 additions and 19 deletions

3
.gitignore vendored
View File

@ -1 +1,2 @@
SOURCES/lldb-11.0.1.src.tar.xz
SOURCES/lldb-12.0.1.src.tar.xz
SOURCES/tstellar-gpg-key.asc

View File

@ -1 +1,2 @@
49f5d91e20672b9e9756a776fc800c8c7da8eba2 SOURCES/lldb-11.0.1.src.tar.xz
07c4844f5a13ff063fed5b7c5c67b8aef4d1bb7b SOURCES/lldb-12.0.1.src.tar.xz
b8d2648a01d36ed0186fd2c5af325fd28797f9a0 SOURCES/tstellar-gpg-key.asc

View File

@ -0,0 +1,26 @@
From 6349965eccf12178cd4235e9f8996142d12ff607 Mon Sep 17 00:00:00 2001
From: serge-sans-paille <sguelton@redhat.com>
Date: Thu, 25 Feb 2021 14:27:43 +0100
Subject: [PATCH 1/2] [PATCH][lldb] Portable asm/ptrace.h include
---
lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
index 344eae2..c483abc 100644
--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
+++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
@@ -14,7 +14,8 @@
#include "Plugins/Process/Linux/NativeRegisterContextLinux.h"
#include "Plugins/Process/Utility/RegisterInfoPOSIX_arm64.h"
-#include <asm/ptrace.h>
+#include <sys/ptrace.h>
+#include <linux/ptrace.h>
namespace lldb_private {
namespace process_linux {
--
1.8.3.1

View File

@ -0,0 +1,131 @@
From 2e94dca0c2cedf0bdbcf8517db2f3750ba95513b Mon Sep 17 00:00:00 2001
From: serge-sans-paille <sguelton@redhat.com>
Date: Tue, 2 Mar 2021 14:08:02 +0100
Subject: [PATCH 2/2] [PATCH][lldb] Support DWARF-5 DW_FORM_line_strp (used by
GCC)
---
.../SymbolFile/DWARF/DWARFDebugInfoEntry.cpp | 1 +
.../Plugins/SymbolFile/DWARF/DWARFFormValue.cpp | 73 +++++++++++-----------
2 files changed, 39 insertions(+), 35 deletions(-)
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
index 4212988..bce2529 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
@@ -173,6 +173,7 @@ bool DWARFDebugInfoEntry::Extract(const DWARFDataExtractor &data,
break;
case DW_FORM_strp:
+ case DW_FORM_line_strp:
case DW_FORM_sec_offset:
data.GetU32(&offset);
break;
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
index 305f1cb..ec78c5b 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
@@ -150,40 +150,40 @@ struct FormSize {
uint8_t valid:1, size:7;
};
static FormSize g_form_sizes[] = {
- {0,0}, // 0x00 unused
- {0,0}, // 0x01 DW_FORM_addr
- {0,0}, // 0x02 unused
- {0,0}, // 0x03 DW_FORM_block2
- {0,0}, // 0x04 DW_FORM_block4
- {1,2}, // 0x05 DW_FORM_data2
- {1,4}, // 0x06 DW_FORM_data4
- {1,8}, // 0x07 DW_FORM_data8
- {0,0}, // 0x08 DW_FORM_string
- {0,0}, // 0x09 DW_FORM_block
- {0,0}, // 0x0a DW_FORM_block1
- {1,1}, // 0x0b DW_FORM_data1
- {1,1}, // 0x0c DW_FORM_flag
- {0,0}, // 0x0d DW_FORM_sdata
- {1,4}, // 0x0e DW_FORM_strp
- {0,0}, // 0x0f DW_FORM_udata
- {0,0}, // 0x10 DW_FORM_ref_addr (addr size for DWARF2 and earlier, 4 bytes for
- // DWARF32, 8 bytes for DWARF32 in DWARF 3 and later
- {1,1}, // 0x11 DW_FORM_ref1
- {1,2}, // 0x12 DW_FORM_ref2
- {1,4}, // 0x13 DW_FORM_ref4
- {1,8}, // 0x14 DW_FORM_ref8
- {0,0}, // 0x15 DW_FORM_ref_udata
- {0,0}, // 0x16 DW_FORM_indirect
- {1,4}, // 0x17 DW_FORM_sec_offset
- {0,0}, // 0x18 DW_FORM_exprloc
- {1,0}, // 0x19 DW_FORM_flag_present
- {0,0}, // 0x1a
- {0,0}, // 0x1b
- {0,0}, // 0x1c
- {0,0}, // 0x1d
- {0,0}, // 0x1e
- {0,0}, // 0x1f
- {1,8}, // 0x20 DW_FORM_ref_sig8
+ {0, 0}, // 0x00 unused
+ {0, 0}, // 0x01 DW_FORM_addr
+ {0, 0}, // 0x02 unused
+ {0, 0}, // 0x03 DW_FORM_block2
+ {0, 0}, // 0x04 DW_FORM_block4
+ {1, 2}, // 0x05 DW_FORM_data2
+ {1, 4}, // 0x06 DW_FORM_data4
+ {1, 8}, // 0x07 DW_FORM_data8
+ {0, 0}, // 0x08 DW_FORM_string
+ {0, 0}, // 0x09 DW_FORM_block
+ {0, 0}, // 0x0a DW_FORM_block1
+ {1, 1}, // 0x0b DW_FORM_data1
+ {1, 1}, // 0x0c DW_FORM_flag
+ {0, 0}, // 0x0d DW_FORM_sdata
+ {1, 4}, // 0x0e DW_FORM_strp
+ {0, 0}, // 0x0f DW_FORM_udata
+ {0, 0}, // 0x10 DW_FORM_ref_addr (addr size for DWARF2 and earlier, 4 bytes
+ // for DWARF32, 8 bytes for DWARF32 in DWARF 3 and later
+ {1, 1}, // 0x11 DW_FORM_ref1
+ {1, 2}, // 0x12 DW_FORM_ref2
+ {1, 4}, // 0x13 DW_FORM_ref4
+ {1, 8}, // 0x14 DW_FORM_ref8
+ {0, 0}, // 0x15 DW_FORM_ref_udata
+ {0, 0}, // 0x16 DW_FORM_indirect
+ {1, 4}, // 0x17 DW_FORM_sec_offset
+ {0, 0}, // 0x18 DW_FORM_exprloc
+ {1, 0}, // 0x19 DW_FORM_flag_present
+ {0, 0}, // 0x1a DW_FORM_strx (ULEB128)
+ {0, 0}, // 0x1b DW_FORM_addrx (ULEB128)
+ {1, 4}, // 0x1c DW_FORM_ref_sup4
+ {0, 0}, // 0x1d DW_FORM_strp_sup (4 bytes for DWARF32, 8 bytes for DWARF64)
+ {1, 16}, // 0x1e DW_FORM_data16
+ {1, 4}, // 0x1f DW_FORM_line_strp
+ {1, 8}, // 0x20 DW_FORM_ref_sig8
};
llvm::Optional<uint8_t>
@@ -286,6 +286,7 @@ bool DWARFFormValue::SkipValue(dw_form_t form,
// 32 bit for DWARF 32, 64 for DWARF 64
case DW_FORM_sec_offset:
case DW_FORM_strp:
+ case DW_FORM_line_strp:
*offset_ptr += 4;
return true;
@@ -398,7 +399,8 @@ void DWARFFormValue::Dump(Stream &s) const {
case DW_FORM_udata:
s.PutULEB128(uvalue);
break;
- case DW_FORM_strp: {
+ case DW_FORM_strp:
+ case DW_FORM_line_strp: {
const char *dbg_str = AsCString();
if (dbg_str) {
s.QuotedCString(dbg_str);
@@ -606,6 +608,7 @@ bool DWARFFormValue::FormIsSupported(dw_form_t form) {
case DW_FORM_flag:
case DW_FORM_sdata:
case DW_FORM_strp:
+ case DW_FORM_line_strp:
case DW_FORM_strx:
case DW_FORM_strx1:
case DW_FORM_strx2:
--
1.8.3.1

Binary file not shown.

Binary file not shown.

View File

@ -1,19 +1,16 @@
#%%global rc_ver 6
%global baserelease 1
#%%global rc_ver 5
%global lldb_srcdir %{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src
# Too many threads causes OOM errors.
%global _smp_mflags -j8
Name: lldb
Version: 11.0.1
Release: %{baserelease}%{?rc_ver:.rc%{rc_ver}}%{?dist}
Version: 12.0.1%{?rc_ver:~rc%{rc_ver}}
Release: 1%{?dist}
Summary: Next generation high-performance debugger
License: NCSA
URL: http://lldb.llvm.org/
Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}%{?rc_ver:-rc%{rc_ver}}/%{lldb_srcdir}.tar.xz
Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}%{?rc_ver:-rc%{rc_ver}}/%{lldb_srcdir}.tar.xz.sig
Source2: tstellar-gpg-key.asc
BuildRequires: gcc
BuildRequires: gcc-c++
@ -34,6 +31,10 @@ BuildRequires: multilib-rpm-config
Requires: python3-lldb
Patch0: 0001-PATCH-lldb-Portable-asm-ptrace.h-include.patch
Patch1: 0002-PATCH-lldb-Support-DWARF-5-DW_FORM_line_strp-used-by.patch
%description
LLDB is a next generation, high-performance debugger. It is built as a set
of reusable components which highly leverage existing libraries in the
@ -51,6 +52,7 @@ The package contains header files for the LLDB debugger.
%{?python_provide:%python_provide python3-lldb}
Summary: Python module for LLDB
BuildRequires: python3-devel
BuildRequires: python3-setuptools
Requires: python3-six
Requires: %{name}%{?_isa} = %{version}-%{release}
@ -62,11 +64,8 @@ The package contains the LLDB Python module.
%build
mkdir -p _build
cd _build
## Python version detection is broken
#LDFLAGS="%{__global_ldflags} -lpthread -ldl"
mkdir -p %{_vpath_builddir}
cd %{_vpath_builddir}
CFLAGS="%{optflags} -Wno-error=format-security"
CXXFLAGS="%{optflags} -Wno-error=format-security"
@ -94,11 +93,11 @@ CXXFLAGS="%{optflags} -Wno-error=format-security"
-DLLVM_LIT_ARGS="-sv \
--path %{_libdir}/llvm" \
%ninja_build
%cmake_build
%install
cd _build
%ninja_install
cd %{_vpath_builddir}
%cmake_install
%multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h
@ -132,8 +131,11 @@ rm -f %{buildroot}%{python3_sitearch}/six.*
%{python3_sitearch}/lldb
%changelog
* Thu Sep 02 2021 Tom Stellard <tstellar@redhat.com> 11.0.1-1
- 11.0.1 Release
* Fri Jul 16 2021 sguelton@redhat.com - 12.0.1-1
- 12.0.1
* Thu May 6 2021 sguelton@redhat.com - 12.0.0-1
- 12.0.0
* Thu Oct 29 2020 sguelton@redhat.com - 11.0.0-1
- 11.0.0 final