Compare commits

...

No commits in common. "c8-stream-rhel8" and "stream-llvm-toolset-rhel8-rhel-8.9.0" have entirely different histories.

15 changed files with 201 additions and 28 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

12
.gitignore vendored
View File

@ -1,2 +1,10 @@
SOURCES/lldb-17.0.6.src.tar.xz SOURCES/lldb-15.0.7.src.tar.xz
SOURCES/lldb-17.0.6.src.tar.xz.sig SOURCES/release-keys.asc
/lldb-15.0.7.src.tar.xz
/release-keys.asc
/lldb-16.0.1.src.tar.xz
/lldb-16.0.1.src.tar.xz.sig
/lldb-16.0.0.src.tar.xz
/lldb-16.0.0.src.tar.xz.sig
/lldb-16.0.6.src.tar.xz
/lldb-16.0.6.src.tar.xz.sig

View File

@ -1,2 +0,0 @@
fc7260e1768ad2ee3b9d5a91d90d17e58e20df14 SOURCES/lldb-17.0.6.src.tar.xz
fe7372c59ada760ed06814ed92c24c47fb2a055d SOURCES/lldb-17.0.6.src.tar.xz.sig

View File

@ -0,0 +1,30 @@
From fb389f0cd6b4e8996157fa7d7bc347fde7b43656 Mon Sep 17 00:00:00 2001
From: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
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

18
gating.yaml Normal file
View File

@ -0,0 +1,18 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier0.functional}

52
hans-gpg-key.asc Normal file
View File

@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
67H2IH//2sf8dw==
=ADVe
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -0,0 +1,12 @@
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<DREG, 4> m_hwp_regs;
+ std::array<DREG, 16> m_hwp_regs;
// 16 is just a maximum value, query hardware for actual watchpoint count
uint32_t m_max_hwp_supported = 16;

BIN
lldb-14.0.0.src.tar.xz.sig Normal file

Binary file not shown.

BIN
lldb-15.0.7.src.tar.xz.sig Normal file

Binary file not shown.

View File

@ -1,10 +1,7 @@
# Opt out of https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer %global lldb_version 16.0.6
# https://bugzilla.redhat.com/show_bug.cgi?id=2158587
%undefine _include_frame_pointers
%global lldb_version 17.0.6
#global rc_ver 4 #global rc_ver 4
%global lldb_srcdir %{name}-%{lldb_version}%{?rc_ver:rc%{rc_ver}}.src %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 %ifarch ppc64le
# Too many threads on some systems causes OOM errors. # Too many threads on some systems causes OOM errors.
@ -22,14 +19,6 @@ 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 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 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
BuildRequires: gcc-c++ BuildRequires: gcc-c++
@ -37,7 +26,6 @@ BuildRequires: cmake
BuildRequires: ninja-build BuildRequires: ninja-build
BuildRequires: llvm-devel = %{version} BuildRequires: llvm-devel = %{version}
BuildRequires: llvm-test = %{version} BuildRequires: llvm-test = %{version}
BuildRequires: llvm-cmake-utils = %{version}
BuildRequires: clang-devel = %{version} BuildRequires: clang-devel = %{version}
BuildRequires: ncurses-devel BuildRequires: ncurses-devel
BuildRequires: swig BuildRequires: swig
@ -51,6 +39,16 @@ BuildRequires: multilib-rpm-config
Requires: python3-lldb 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 # For origin certification
BuildRequires: gnupg2 BuildRequires: gnupg2
@ -84,17 +82,19 @@ The package contains the LLDB Python module.
%build %build
%undefine __cmake_in_source_build mkdir -p %{_vpath_builddir}
cd %{_vpath_builddir}
CFLAGS="%{optflags} -Wno-error=format-security" CFLAGS="%{optflags} -Wno-error=format-security"
CXXFLAGS="%{optflags} -Wno-error=format-security" CXXFLAGS="%{optflags} -Wno-error=format-security"
%cmake -GNinja \ %cmake .. -GNinja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_SKIP_RPATH:BOOL=ON \ -DCMAKE_SKIP_RPATH:BOOL=ON \
-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \ -DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
-DLLVM_CONFIG:FILEPATH=/usr/bin/llvm-config-%{__isa_bits} \ -DLLVM_CONFIG:FILEPATH=/usr/bin/llvm-config-%{__isa_bits} \
-DLLVM_COMMON_CMAKE_UTILS=%{_datadir}/llvm/cmake \ -DLLVM_COMMON_CMAKE_UTILS=%{_libdir}/cmake/llvm/ \
\
-DLLDB_DISABLE_CURSES:BOOL=OFF \ -DLLDB_DISABLE_CURSES:BOOL=OFF \
-DLLDB_DISABLE_LIBEDIT:BOOL=OFF \ -DLLDB_DISABLE_LIBEDIT:BOOL=OFF \
-DLLDB_DISABLE_PYTHON: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)") \ -DPYTHON_VERSION_MINOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.minor)") \
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \ -DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
-DCLANG_LINK_CLANG_DYLIB=ON \ -DCLANG_LINK_CLANG_DYLIB=ON \
-DCLANG_RESOURCE_DIR=$(realpath --relative-to=/usr/bin %{clang_resource_dir}) \
-DLLVM_LIT_ARGS="-sv \ -DLLVM_LIT_ARGS="-sv \
--path %{_libdir}/llvm" \ --path %{_libdir}/llvm" \
%cmake_build %cmake_build
%install %install
cd %{_vpath_builddir}
%cmake_install %cmake_install
%multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h %multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h
@ -150,12 +150,6 @@ rm -f %{buildroot}%{python3_sitearch}/six.*
%{python3_sitearch}/lldb %{python3_sitearch}/lldb
%changelog %changelog
* Wed Nov 29 2023 Nikita Popov <npopov@redhat.com> - 17.0.6-1
- Update to LLVM 17.0.6
* Wed Oct 04 2023 Nikita Popov <npopov@redhat.com> - 17.0.2-1
- Update to LLVM 17.0.2
* Fri Jun 23 2023 Tom Stellard <tstellar@redhat.com> - 16.0.6-1 * Fri Jun 23 2023 Tom Stellard <tstellar@redhat.com> - 16.0.6-1
- 16.0.6 Release - 16.0.6 Release

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (lldb-16.0.6.src.tar.xz) = 85c611c362d96b302df9b981bb9c8bd754938d0b55c5e24220f333300b48ac9bd3b7eb708be1f3ba9dcfbebe621e6562841b38d8458110452e5cc06c714e8d10
SHA512 (lldb-16.0.6.src.tar.xz.sig) = bb93c93cfe082631dd00b3727ed6f36dc3ac450c331a8bf5444be947614e7409e7468021e2ae9155a5bad7e7166d7a6b12ea69692a89f2316ff2bb0d0e8200d7

58
tests/build-gating.fmf Normal file
View File

@ -0,0 +1,58 @@
#
# Build/PR gating tests for *LLVM 13*
#
# Imports and runs tests provided by Fedora LLVM git for the matching LLVM version.
#
# NOTE: *always* keep this file in sync with upstream, i.e. Fedora. Since we cannot "discover" a plan,
# we must duplicate at least some part of upstream plan setup, like `adjust` or `provision`. Not necessarily
# all steps, but if we do need some of them here, let's focus on making changes in upstream first, to preserve
# one source of truth. Once TMT learns to include whole plans, we could drop the copied content from here.
#
summary: lldb tests for build/PR gating
adjust:
- because: "Plan to be ran when either executed locally, or executed by CI system to gate a build or PR."
when: >-
trigger is defined
and trigger != commit
and trigger != build
enabled: false
- because: "When testing SCL-ized LLVM, the collection must be enabled first"
environment+:
WITH_SCL: "scl enable llvm-toolset-13.0 rust-toolset-1.58"
when: "collection == llvm-toolset-13.0"
# Unfortunately, TMT does not support more declarative approach, we need to run commands on our own.
- because: "On RHEL, CRB must be enabled to provide rarer packages"
when: >-
distro == rhel-9
or distro == rhel-8
prepare+:
- name: Enable CRB
how: shell
script: dnf config-manager --set-enabled rhel-CRB
- because: "On CentOS, CRB must be enabled to provide rarer packages"
when: >-
distro == centos
prepare+:
- name: Enable CRB
how: shell
script: dnf config-manager --set-enabled crb
discover:
- name: upstream-lldb-tests
how: fmf
url: https://src.fedoraproject.org/rpms/lldb.git
ref: rawhide
- name: upstream-llvm-integration-testsuite
how: fmf
url: https://src.fedoraproject.org/rpms/llvm.git
ref: rawhide
test: integration-test-suite
execute:
how: tmt
provision:
hardware:
memory: ">= 4 GiB"

BIN
tstellar-gpg-key.asc Normal file

Binary file not shown.