import lldb-7.0.1-2.module+el8+2589+a06d5ff1
This commit is contained in:
commit
cea738dec1
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
SOURCES/lldb-7.0.1.src.tar.xz
|
1
.lldb.metadata
Normal file
1
.lldb.metadata
Normal file
@ -0,0 +1 @@
|
||||
6286b90b2762404baee55a69a2a7e9ed0fce58a2 SOURCES/lldb-7.0.1.src.tar.xz
|
@ -0,0 +1,165 @@
|
||||
From 660490d17fa1c649a7ad86da4a197c91090ce97a Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Wed, 3 Oct 2018 15:44:30 -0700
|
||||
Subject: [PATCH] Convert symbolication.py to python3 using 2to3
|
||||
|
||||
---
|
||||
examples/python/symbolication.py | 70 ++++++++++++++++++++--------------------
|
||||
1 file changed, 35 insertions(+), 35 deletions(-)
|
||||
|
||||
diff --git a/examples/python/symbolication.py b/examples/python/symbolication.py
|
||||
index b655ad0..313d724 100755
|
||||
--- a/examples/python/symbolication.py
|
||||
+++ b/examples/python/symbolication.py
|
||||
@@ -27,7 +27,7 @@
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
import lldb
|
||||
-import commands
|
||||
+import subprocess
|
||||
import optparse
|
||||
import os
|
||||
import plistlib
|
||||
@@ -203,13 +203,13 @@ class Section:
|
||||
if op == '+':
|
||||
self.end_addr += self.start_addr
|
||||
return True
|
||||
- print 'error: invalid section info string "%s"' % s
|
||||
- print 'Valid section info formats are:'
|
||||
- print 'Format Example Description'
|
||||
- print '--------------------- -----------------------------------------------'
|
||||
- print '<name>=<base> __TEXT=0x123000 Section from base address only'
|
||||
- print '<name>=<base>-<end> __TEXT=0x123000-0x124000 Section from base address and end address'
|
||||
- print '<name>=<base>+<size> __TEXT=0x123000+0x1000 Section from base address and size'
|
||||
+ print('error: invalid section info string "%s"' % s)
|
||||
+ print('Valid section info formats are:')
|
||||
+ print('Format Example Description')
|
||||
+ print('--------------------- -----------------------------------------------')
|
||||
+ print('<name>=<base> __TEXT=0x123000 Section from base address only')
|
||||
+ print('<name>=<base>-<end> __TEXT=0x123000-0x124000 Section from base address and end address')
|
||||
+ print('<name>=<base>+<size> __TEXT=0x123000+0x1000 Section from base address and size')
|
||||
return False
|
||||
|
||||
def __str__(self):
|
||||
@@ -261,21 +261,21 @@ class Image:
|
||||
return obj
|
||||
|
||||
def dump(self, prefix):
|
||||
- print "%s%s" % (prefix, self)
|
||||
+ print("%s%s" % (prefix, self))
|
||||
|
||||
def debug_dump(self):
|
||||
- print 'path = "%s"' % (self.path)
|
||||
- print 'resolved_path = "%s"' % (self.resolved_path)
|
||||
- print 'resolved = %i' % (self.resolved)
|
||||
- print 'unavailable = %i' % (self.unavailable)
|
||||
- print 'uuid = %s' % (self.uuid)
|
||||
- print 'section_infos = %s' % (self.section_infos)
|
||||
- print 'identifier = "%s"' % (self.identifier)
|
||||
- print 'version = %s' % (self.version)
|
||||
- print 'arch = %s' % (self.arch)
|
||||
- print 'module = %s' % (self.module)
|
||||
- print 'symfile = "%s"' % (self.symfile)
|
||||
- print 'slide = %i (0x%x)' % (self.slide, self.slide)
|
||||
+ print('path = "%s"' % (self.path))
|
||||
+ print('resolved_path = "%s"' % (self.resolved_path))
|
||||
+ print('resolved = %i' % (self.resolved))
|
||||
+ print('unavailable = %i' % (self.unavailable))
|
||||
+ print('uuid = %s' % (self.uuid))
|
||||
+ print('section_infos = %s' % (self.section_infos))
|
||||
+ print('identifier = "%s"' % (self.identifier))
|
||||
+ print('version = %s' % (self.version))
|
||||
+ print('arch = %s' % (self.arch))
|
||||
+ print('module = %s' % (self.module))
|
||||
+ print('symfile = "%s"' % (self.symfile))
|
||||
+ print('slide = %i (0x%x)' % (self.slide, self.slide))
|
||||
|
||||
def __str__(self):
|
||||
s = ''
|
||||
@@ -428,12 +428,12 @@ class Image:
|
||||
if self.has_section_load_info():
|
||||
err = self.load_module(target)
|
||||
if err:
|
||||
- print 'ERROR: ', err
|
||||
+ print('ERROR: ', err)
|
||||
return target
|
||||
else:
|
||||
- print 'error: unable to create a valid target for (%s) "%s"' % (self.arch, self.path)
|
||||
+ print('error: unable to create a valid target for (%s) "%s"' % (self.arch, self.path))
|
||||
else:
|
||||
- print 'error: unable to locate main executable (%s) "%s"' % (self.arch, self.path)
|
||||
+ print('error: unable to locate main executable (%s) "%s"' % (self.arch, self.path))
|
||||
return None
|
||||
|
||||
|
||||
@@ -554,7 +554,7 @@ class Symbolicator:
|
||||
if symbolicated_addresses:
|
||||
return symbolicated_addresses
|
||||
else:
|
||||
- print 'error: no target in Symbolicator'
|
||||
+ print('error: no target in Symbolicator')
|
||||
return None
|
||||
|
||||
|
||||
@@ -602,22 +602,22 @@ def disassemble_instructions(
|
||||
end_idx = inst_idx
|
||||
for i in range(start_idx, end_idx + 1):
|
||||
if i == pc_index:
|
||||
- print ' -> ', lines[i]
|
||||
+ print(' -> ', lines[i])
|
||||
else:
|
||||
- print ' ', lines[i]
|
||||
+ print(' ', lines[i])
|
||||
|
||||
|
||||
def print_module_section_data(section):
|
||||
- print section
|
||||
+ print(section)
|
||||
section_data = section.GetSectionData()
|
||||
if section_data:
|
||||
ostream = lldb.SBStream()
|
||||
section_data.GetDescription(ostream, section.GetFileAddress())
|
||||
- print ostream.GetData()
|
||||
+ print(ostream.GetData())
|
||||
|
||||
|
||||
def print_module_section(section, depth):
|
||||
- print section
|
||||
+ print(section)
|
||||
if depth > 0:
|
||||
num_sub_sections = section.GetNumSubSections()
|
||||
for sect_idx in range(num_sub_sections):
|
||||
@@ -632,7 +632,7 @@ def print_module_sections(module, depth):
|
||||
|
||||
def print_module_symbols(module):
|
||||
for sym in module:
|
||||
- print sym
|
||||
+ print(sym)
|
||||
|
||||
|
||||
def Symbolicate(command_args):
|
||||
@@ -709,17 +709,17 @@ def Symbolicate(command_args):
|
||||
|
||||
target = symbolicator.create_target()
|
||||
if options.verbose:
|
||||
- print symbolicator
|
||||
+ print(symbolicator)
|
||||
if target:
|
||||
for addr_str in args:
|
||||
addr = int(addr_str, 0)
|
||||
symbolicated_addrs = symbolicator.symbolicate(
|
||||
addr, options.verbose)
|
||||
for symbolicated_addr in symbolicated_addrs:
|
||||
- print symbolicated_addr
|
||||
- print
|
||||
+ print(symbolicated_addr)
|
||||
+ print()
|
||||
else:
|
||||
- print 'error: no target for %s' % (symbolicator)
|
||||
+ print('error: no target for %s' % (symbolicator))
|
||||
|
||||
if __name__ == '__main__':
|
||||
# Create a new debugger instance
|
||||
--
|
||||
1.8.3.1
|
||||
|
251
SPECS/lldb.spec
Normal file
251
SPECS/lldb.spec
Normal file
@ -0,0 +1,251 @@
|
||||
%global enable_python 1
|
||||
|
||||
Name: lldb
|
||||
Version: 7.0.1
|
||||
Release: 2%{?dist}
|
||||
Summary: Next generation high-performance debugger
|
||||
|
||||
License: NCSA
|
||||
URL: http://lldb.llvm.org/
|
||||
Source0: http://llvm.org/releases/%{version}/%{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src.tar.xz
|
||||
|
||||
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
|
||||
|
||||
Patch0: 0001-Convert-symbolication.py-to-python3-using-2to3.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
BuildRequires: llvm-devel = %{version}
|
||||
BuildRequires: clang-devel = %{version}
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: swig
|
||||
BuildRequires: llvm-static = %{version}
|
||||
BuildRequires: libffi-devel
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: libedit-devel
|
||||
BuildRequires: multilib-rpm-config
|
||||
|
||||
%if 0%{?enable_python}
|
||||
Requires: python3-lldb
|
||||
%endif
|
||||
|
||||
%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
|
||||
larger LLVM Project, such as the Clang expression parser and LLVM
|
||||
disassembler.
|
||||
|
||||
%package devel
|
||||
Summary: Development header files for LLDB
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
The package contains header files for the LLDB debugger.
|
||||
|
||||
%if 0%{?enable_python}
|
||||
|
||||
%package -n python3-lldb
|
||||
Summary: Python module for LLDB
|
||||
BuildRequires: python3-devel
|
||||
Requires: python3-six
|
||||
Requires: lldb = %{version}-%{release}
|
||||
|
||||
%description -n python3-lldb
|
||||
The package contains the LLDB Python module.
|
||||
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src -p1
|
||||
|
||||
%if 0%{?enable_python}
|
||||
# HACK so that lldb can find its custom readline.so, because we move it
|
||||
# after install.
|
||||
sed -i -e "s~import sys~import sys\nsys.path.insert\(1, '%{python3_sitearch}/lldb'\)~g" source/Interpreter/embedded_interpreter.py
|
||||
%endif
|
||||
|
||||
%build
|
||||
|
||||
mkdir -p _build
|
||||
cd _build
|
||||
|
||||
# Python version detection is broken
|
||||
|
||||
LDFLAGS="%{__global_ldflags} -lpthread -ldl"
|
||||
|
||||
CFLAGS="%{optflags} -Wno-error=format-security"
|
||||
CXXFLAGS="%{optflags} -Wno-error=format-security"
|
||||
|
||||
%cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
|
||||
-DLLVM_CONFIG:FILEPATH=%{_bindir}/llvm-config \
|
||||
\
|
||||
-DLLDB_PATH_TO_LLVM_BUILD=%{_prefix} \
|
||||
-DLLDB_PATH_TO_CLANG_BUILD=%{_prefix} \
|
||||
\
|
||||
-DLLDB_DISABLE_CURSES:BOOL=OFF \
|
||||
-DLLDB_DISABLE_LIBEDIT:BOOL=OFF \
|
||||
%if 0%{?enable_python}
|
||||
-DLLDB_DISABLE_PYTHON:BOOL=OFF \
|
||||
%else
|
||||
-DLLDB_DISABLE_PYTHON:BOOL=ON \
|
||||
%endif
|
||||
%if 0%{?__isa_bits} == 64
|
||||
-DLLVM_LIBDIR_SUFFIX=64 \
|
||||
%else
|
||||
-DLLVM_LIBDIR_SUFFIX= \
|
||||
%endif
|
||||
\
|
||||
-DPYTHON_EXECUTABLE:STRING=%{__python3}
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
cd _build
|
||||
make install DESTDIR=%{buildroot}
|
||||
|
||||
%multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h
|
||||
|
||||
# remove static libraries
|
||||
rm -fv %{buildroot}%{_libdir}/*.a
|
||||
|
||||
%if 0%{?enable_python}
|
||||
# python: fix binary libraries location
|
||||
liblldb=$(basename $(readlink -e %{buildroot}%{_libdir}/liblldb.so))
|
||||
ln -vsf "../../../${liblldb}" %{buildroot}%{python3_sitearch}/lldb/_lldb.so
|
||||
mv -v %{buildroot}%{python3_sitearch}/readline.so %{buildroot}%{python3_sitearch}/lldb/readline.so
|
||||
|
||||
# remove bundled six.py
|
||||
rm -f %{buildroot}%{python3_sitearch}/six.*
|
||||
%endif
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%{_bindir}/lldb*
|
||||
%{_libdir}/liblldb.so.*
|
||||
%{_libdir}/liblldbIntelFeatures.so.*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/lldb
|
||||
%{_libdir}/*.so
|
||||
|
||||
%if 0%{?enable_python}
|
||||
%files -n python3-lldb
|
||||
%{python3_sitearch}/lldb
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Dec 17 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-2
|
||||
- Fix multilib conflict
|
||||
|
||||
* Fri Dec 14 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-1
|
||||
- 7.0.1 Release
|
||||
|
||||
* Mon Dec 10 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-0.1.rc3
|
||||
- 7.0.1-rc3 Release
|
||||
|
||||
* Thu Dec 06 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-7
|
||||
- Re-enable python module for real
|
||||
|
||||
* Wed Oct 03 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-6
|
||||
- Re-enable python module and fix build with python3
|
||||
|
||||
* Wed Oct 03 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-5
|
||||
- Disable python module
|
||||
|
||||
* Mon Oct 01 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-4
|
||||
- Drop scl macros
|
||||
|
||||
* Tue Aug 28 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-3
|
||||
- Re-enable python module
|
||||
|
||||
* Tue Aug 07 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-2
|
||||
- Install ld.so.conf file in the root filesystem
|
||||
|
||||
* Wed Jul 11 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-1
|
||||
- 6.0.1 Release
|
||||
|
||||
* Thu Jan 25 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-3
|
||||
- Drop explicit dependencies for llvm-libs and clang-libs
|
||||
|
||||
* Tue Jan 16 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-2
|
||||
- Rebuid for i686
|
||||
|
||||
* Thu Jan 11 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-1
|
||||
- 5.0.1 Release
|
||||
|
||||
* Wed Aug 16 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-4
|
||||
- Fix crash when loading Fedora debuginfo
|
||||
Resloves: #1479529
|
||||
|
||||
* Mon Jul 31 2017 Jan Kratochvil <jan.kratochvil@redhat.com> - 4.0.1-3
|
||||
- Backport lldb r303907
|
||||
Resolves: #1356140
|
||||
|
||||
* Thu Jun 22 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-2
|
||||
- Fix requires for python-lldb
|
||||
|
||||
* Wed Jun 21 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
|
||||
- Build for llvm-toolset-7 rename
|
||||
|
||||
* Wed Jun 07 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-3
|
||||
- Build for llvm-toolset-7 rename
|
||||
|
||||
* Thu May 18 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-2
|
||||
- Fix Requires
|
||||
|
||||
* Fri Mar 24 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-1
|
||||
- lldb 4.0.0
|
||||
|
||||
* Tue Mar 21 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-4
|
||||
- Add explicit Requires for llvm-libs and clang-libs
|
||||
|
||||
* Fri Mar 17 2017 Tom Stellard <tstellar@redhat.org> - 3.9.1-3
|
||||
- Adjust python sys.path so lldb can find readline.so
|
||||
|
||||
* Tue Mar 14 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-2
|
||||
- Fix build with gcc 7
|
||||
|
||||
* Thu Mar 02 2017 Dave Airlie <airlied@redhat.com - 3.9.1-1
|
||||
- lldb 3.9.1
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Mon Nov 14 2016 Nathaniel McCallum <npmccallum@redhat.com> - 3.9.0-3
|
||||
- Disable libedit support until upstream fixes it (#1356140)
|
||||
|
||||
* Wed Nov 2 2016 Peter Robinson <pbrobinson@fedoraproject.org> 3.9.0-2
|
||||
- Set upstream supported architectures in an ExclusiveArch
|
||||
|
||||
* Wed Oct 26 2016 Dave Airlie <airlied@redhat.com> - 3.9.0-1
|
||||
- lldb 3.9.0
|
||||
- fixup some issues with MIUtilParse by removing it
|
||||
- build with -fno-rtti
|
||||
|
||||
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.8.0-2
|
||||
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
|
||||
|
||||
* Thu Mar 10 2016 Dave Airlie <airlied@redhat.com> 3.8.0-1
|
||||
- lldb 3.8.0
|
||||
|
||||
* Thu Mar 03 2016 Dave Airlie <airlied@redhat.com> 3.8.0-0.3
|
||||
- lldb 3.8.0 rc3
|
||||
|
||||
* Wed Feb 24 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.2
|
||||
- dynamically link to llvm
|
||||
|
||||
* Thu Feb 18 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.1
|
||||
- lldb 3.8.0 rc2
|
||||
|
||||
* Sun Feb 14 2016 Dave Airlie <airlied@redhat.com> 3.7.1-3
|
||||
- rebuild lldb against latest llvm
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Tue Oct 06 2015 Jan Vcelak <jvcelak@fedoraproject.org> 3.7.0-100
|
||||
- initial version using cmake build system
|
Loading…
Reference in New Issue
Block a user