diff --git a/.gitignore b/.gitignore index cd1b9d0..2db8127 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,5 @@ SOURCES/release-keys.asc /lldb-16.0.0.src.tar.xz.sig /lldb-16.0.6.src.tar.xz /lldb-16.0.6.src.tar.xz.sig +/lldb-17.0.2.src.tar.xz +/lldb-17.0.2.src.tar.xz.sig diff --git a/0001-lldb-Change-LLVM_COMMON_CMAKE_UTILS-usage.patch b/0001-lldb-Change-LLVM_COMMON_CMAKE_UTILS-usage.patch deleted file mode 100644 index bebc548..0000000 --- a/0001-lldb-Change-LLVM_COMMON_CMAKE_UTILS-usage.patch +++ /dev/null @@ -1,30 +0,0 @@ -From fb389f0cd6b4e8996157fa7d7bc347fde7b43656 Mon Sep 17 00:00:00 2001 -From: Tulio Magno Quites Machado Filho -Date: Thu, 23 Mar 2023 16:06:10 -0300 -Subject: [PATCH] [lldb] Change LLVM_COMMON_CMAKE_UTILS usage - -Let LLVM_COMMON_CMAKE_UTILS store the directory where cmake modules are -available and stop assuming its directory structure. ---- - lldb/CMakeLists.txt | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lldb/CMakeLists.txt b/lldb/CMakeLists.txt -index 20d584c48bad..7bad2a9928cd 100644 ---- a/lldb/CMakeLists.txt -+++ b/lldb/CMakeLists.txt -@@ -1,9 +1,9 @@ - cmake_minimum_required(VERSION 3.13.4) - - if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) -- set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) -+ set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/Modules) - endif() --include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake -+include(${LLVM_COMMON_CMAKE_UTILS}/CMakePolicy.cmake - NO_POLICY_SCOPE) - - # Add path for custom modules. --- -2.39.2 - diff --git a/increase-m_hwp_regs-size.patch b/increase-m_hwp_regs-size.patch deleted file mode 100644 index 7bf03f1..0000000 --- a/increase-m_hwp_regs-size.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN lldb-13.0.1.src.orig/source/Plugins/Process/Linux/NativeRegisterContextLinux_ppc64le.h lldb-13.0.1.src/source/Plugins/Process/Linux/NativeRegisterContextLinux_ppc64le.h ---- a/lldb-13.0.1.src.orig/source/Plugins/Process/Linux/NativeRegisterContextLinux_ppc64le.h 2022-01-20 22:31:59.000000000 +0100 -+++ b/lldb-13.0.1.src/source/Plugins/Process/Linux/NativeRegisterContextLinux_ppc64le.h 2022-03-30 08:02:16.292360951 +0200 -@@ -122,7 +122,7 @@ - int mode; // Defines if watchpoint is read/write/access. - }; - -- std::array m_hwp_regs; -+ std::array m_hwp_regs; - - // 16 is just a maximum value, query hardware for actual watchpoint count - uint32_t m_max_hwp_supported = 16; diff --git a/lldb.spec b/lldb.spec index a5d7a93..d565add 100644 --- a/lldb.spec +++ b/lldb.spec @@ -1,7 +1,10 @@ -%global lldb_version 16.0.6 +# Opt out of https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer +# https://bugzilla.redhat.com/show_bug.cgi?id=2158587 +%undefine _include_frame_pointers + +%global lldb_version 17.0.2 #global rc_ver 4 %global lldb_srcdir %{name}-%{lldb_version}%{?rc_ver:rc%{rc_ver}}.src -%global cmake_srcdir cmake-%{lldb_version}%{?rc_ver:rc%{rc_ver}}.src %ifarch ppc64le # Too many threads on some systems causes OOM errors. @@ -19,6 +22,14 @@ Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{lldb_v Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{lldb_version}%{?rc_ver:-rc%{rc_ver}}/%{lldb_srcdir}.tar.xz.sig Source2: release-keys.asc +# There is a problem with the debug info generated by the +# GCC version we ship in RHEL 8. It somehow makes it very +# hard for lldb to inspect std::vector types. +# Disable the pretty-printer for now, since otherwise +# such vectors look empty to the developer even though +# they aren't. +# See https://bugzilla.redhat.com/show_bug.cgi?id=2082508 +Patch002: 0001-lldb-Disable-std-vector-pretty-printer.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -26,6 +37,7 @@ BuildRequires: cmake BuildRequires: ninja-build BuildRequires: llvm-devel = %{version} BuildRequires: llvm-test = %{version} +BuildRequires: llvm-cmake-utils = %{version} BuildRequires: clang-devel = %{version} BuildRequires: ncurses-devel BuildRequires: swig @@ -39,16 +51,6 @@ BuildRequires: multilib-rpm-config Requires: python3-lldb -Patch0: 0001-lldb-Change-LLVM_COMMON_CMAKE_UTILS-usage.patch -# There is a problem with the debug info generated by the -# GCC version we ship in RHEL 8. It somehow makes it very -# hard for lldb to inspect std::vector types. -# Disable the pretty-printer for now, since otherwise -# such vectors look empty to the developer even though -# they aren't. -# See https://bugzilla.redhat.com/show_bug.cgi?id=2082508 -Patch001: 0001-lldb-Disable-std-vector-pretty-printer.patch - # For origin certification BuildRequires: gnupg2 @@ -82,19 +84,17 @@ The package contains the LLDB Python module. %build -mkdir -p %{_vpath_builddir} -cd %{_vpath_builddir} +%undefine __cmake_in_source_build CFLAGS="%{optflags} -Wno-error=format-security" CXXFLAGS="%{optflags} -Wno-error=format-security" -%cmake .. -GNinja \ +%cmake -GNinja \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_SKIP_RPATH:BOOL=ON \ -DLLVM_LINK_LLVM_DYLIB:BOOL=ON \ -DLLVM_CONFIG:FILEPATH=/usr/bin/llvm-config-%{__isa_bits} \ - -DLLVM_COMMON_CMAKE_UTILS=%{_libdir}/cmake/llvm/ \ - \ + -DLLVM_COMMON_CMAKE_UTILS=%{_datadir}/llvm/cmake \ -DLLDB_DISABLE_CURSES:BOOL=OFF \ -DLLDB_DISABLE_LIBEDIT:BOOL=OFF \ -DLLDB_DISABLE_PYTHON:BOOL=OFF \ @@ -109,13 +109,13 @@ CXXFLAGS="%{optflags} -Wno-error=format-security" -DPYTHON_VERSION_MINOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.minor)") \ -DLLVM_EXTERNAL_LIT=%{_bindir}/lit \ -DCLANG_LINK_CLANG_DYLIB=ON \ + -DCLANG_RESOURCE_DIR=$(realpath --relative-to=/usr/bin %{clang_resource_dir}) \ -DLLVM_LIT_ARGS="-sv \ --path %{_libdir}/llvm" \ %cmake_build %install -cd %{_vpath_builddir} %cmake_install %multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h @@ -150,6 +150,9 @@ rm -f %{buildroot}%{python3_sitearch}/six.* %{python3_sitearch}/lldb %changelog +* Wed Oct 04 2023 Nikita Popov - 17.0.2-1 +- Update to LLVM 17.0.2 + * Fri Jun 23 2023 Tom Stellard - 16.0.6-1 - 16.0.6 Release diff --git a/sources b/sources index 1a37194..3696eeb 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (lldb-16.0.6.src.tar.xz) = 85c611c362d96b302df9b981bb9c8bd754938d0b55c5e24220f333300b48ac9bd3b7eb708be1f3ba9dcfbebe621e6562841b38d8458110452e5cc06c714e8d10 -SHA512 (lldb-16.0.6.src.tar.xz.sig) = bb93c93cfe082631dd00b3727ed6f36dc3ac450c331a8bf5444be947614e7409e7468021e2ae9155a5bad7e7166d7a6b12ea69692a89f2316ff2bb0d0e8200d7 +SHA512 (lldb-17.0.2.src.tar.xz) = 448f19293564cb704714afb56fc545c5f415c12cd531c0520629f75ad65274aab7feb3b828550c2bd1da2107d7ffe8a0e7407fd03d0bd2a8dfbed32b957e9967 +SHA512 (lldb-17.0.2.src.tar.xz.sig) = b12bc909fbe28c1b8d659592edb7bf6507925914d6350bb71af5a1910ee7f4478861cea0dfdfc6ed823cc8ebde033fcde8d778ce92d5b0ca0d3a0825c2359c5c