Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot

* upstream/rawhide:
  tests: CRB in CentOS has different name
  Update to LLVM 13.0.1 final
  Switch to an unconditionally applied patch
  Revert "Set _package_note_linker on arm"
  Disable CrashRecoveryTest.DumpStackCleanup test on aarch64
  Fix rpm build warning/error: absolute symlink
  Set _package_note_linker on arm
  Update to LLVM 13.0.1rc3
  - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
  Remove no longer necessary patch
  Update to LLVM 13.0.1rc2
This commit is contained in:
Konrad Kleine 2022-02-11 16:47:39 +01:00
commit 2529f7f335
6 changed files with 69 additions and 85 deletions

6
.gitignore vendored
View file

@ -118,3 +118,9 @@
/llvm-13.0.0.src.tar.xz.sig
/llvm-13.0.1rc1.src.tar.xz
/llvm-13.0.1rc1.src.tar.xz.sig
/llvm-13.0.1rc2.src.tar.xz
/llvm-13.0.1rc2.src.tar.xz.sig
/llvm-13.0.1rc3.src.tar.xz
/llvm-13.0.1rc3.src.tar.xz.sig
/llvm-13.0.1.src.tar.xz
/llvm-13.0.1.src.tar.xz.sig

View file

@ -0,0 +1,35 @@
From 3df079ae29426b4bee3ca11681a41958d72b983a Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov@redhat.com>
Date: Mon, 31 Jan 2022 10:33:27 +0100
Subject: [PATCH] Disable CrashRecoveryTest.DumpStackCleanup test on aarch64
Produces a non-reproducible failure on aarch64:
https://bugzilla.redhat.com/show_bug.cgi?id=2048440
---
llvm/unittests/Support/CrashRecoveryTest.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/llvm/unittests/Support/CrashRecoveryTest.cpp b/llvm/unittests/Support/CrashRecoveryTest.cpp
index e95513eb2841..afb1d3a1f6a2 100644
--- a/llvm/unittests/Support/CrashRecoveryTest.cpp
+++ b/llvm/unittests/Support/CrashRecoveryTest.cpp
@@ -76,6 +76,7 @@ TEST(CrashRecoveryTest, Cleanup) {
llvm::CrashRecoveryContext::Disable();
}
+#ifndef __aarch64__
TEST(CrashRecoveryTest, DumpStackCleanup) {
SmallString<128> Filename;
std::error_code EC = sys::fs::createTemporaryFile("crash", "test", Filename);
@@ -101,6 +102,7 @@ TEST(CrashRecoveryTest, DumpStackCleanup) {
EXPECT_EQ(GlobalInt, 1);
llvm::CrashRecoveryContext::Disable();
}
+#endif
TEST(CrashRecoveryTest, LimitedStackTrace) {
std::string Res;
--
2.34.1

View file

@ -1,75 +0,0 @@
From 152b4150466f3018a87e63f8b44d506a964649b6 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar@redhat.com>
Date: Tue, 9 Nov 2021 15:08:44 +0100
Subject: [PATCH 3/3] [PATCH] cmake: Allow shared libraries to customize the
soname using LLVM_ABI_REVISION
The LLVM_ABI_REVISION variable is intended to be used for release
candidates which introduce an ABI change to a shared library. This
variable can be specified per library, so there is not one global value
for all of LLVM.
For example, if we LLVM X.0.0-rc2 introduces an ABI change for a library
compared with LLVM X.0.0-rc1, then the LLVM_ABI_REVISION number for
library will be incremented by 1.
In the main branch, LLVM_ABI_REVISION should always be 0, it is only
meant to be used in the release branch.
Differential Revision: https://reviews.llvm.org/D105594
---
llvm/cmake/modules/AddLLVM.cmake | 7 +++++--
llvm/tools/llvm-shlib/CMakeLists.txt | 9 +++++++++
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
index 6e3bfd131064..97f126995a80 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
@@ -607,11 +607,14 @@ function(llvm_add_library name)
# Set SOVERSION on shared libraries that lack explicit SONAME
# specifier, on *nix systems that are not Darwin.
if(UNIX AND NOT APPLE AND NOT ARG_SONAME)
+ if (NOT LLVM_ABI_REVISION)
+ set(LLVM_ABI_REVISION 0)
+ endif()
set_target_properties(${name}
PROPERTIES
# Since 4.0.0, the ABI version is indicated by the major version
- SOVERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}
- VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX})
+ SOVERSION ${LLVM_VERSION_MAJOR}.${LLVM_ABI_REVISION}
+ VERSION ${LLVM_VERSION_MAJOR}.${LLVM_ABI_REVISION})
endif()
endif()
diff --git a/llvm/tools/llvm-shlib/CMakeLists.txt b/llvm/tools/llvm-shlib/CMakeLists.txt
index 8e2b78f1b85c..0c831ed37f0c 100644
--- a/llvm/tools/llvm-shlib/CMakeLists.txt
+++ b/llvm/tools/llvm-shlib/CMakeLists.txt
@@ -2,6 +2,11 @@
# library is enabled by setting LLVM_BUILD_LLVM_DYLIB=yes on the CMake
# commandline. By default the shared library only exports the LLVM C API.
+# In the main branch, LLVM_ABI_REVISION should always be 0. In the release
+# branches, this should be incremented before each release candidate every
+# time the ABI of libLLVM.so changes.
+set(LLVM_ABI_REVISION 0 CACHE STRING "ABI Revision number for SONAMEs (default: 0)")
+
set(SOURCES
libllvm.cpp
)
@@ -67,6 +72,10 @@ if(LLVM_BUILD_LLVM_DYLIB)
set_property(TARGET LLVM APPEND_STRING PROPERTY
LINK_FLAGS
" -compatibility_version 1 -current_version ${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}")
+ else()
+ set_target_properties(LLVM
+ PROPERTIES
+ SOVERSION ${LLVM_ABI_REVISION})
endif()
if(TARGET libLLVMExports)
--
2.31.1

View file

@ -15,7 +15,7 @@
%global llvm_libdir %{_libdir}/%{name}
%global build_llvm_libdir %{buildroot}%{llvm_libdir}
%global rc_ver 1
#global rc_ver 3
%global maj_ver 13
%global min_ver 0
%global patch_ver 1
@ -102,11 +102,9 @@ Source3: run-lit-tests
Source4: lit.fedora.cfg.py
%endif
%if 0%{?abi_revision}
Patch0: 0003-PATCH-cmake-Allow-shared-libraries-to-customize-the-.patch
%endif
Patch2: 0002-PATCH-XFAIL-missing-abstract-variable.ll-test-on-ppc.patch
Patch3: 0001-PATCH-llvm-Make-source-interleave-prefix-test-case-c.patch
Patch1: 0002-PATCH-XFAIL-missing-abstract-variable.ll-test-on-ppc.patch
Patch2: 0001-PATCH-llvm-Make-source-interleave-prefix-test-case-c.patch
Patch3: 0001-Disable-CrashRecoveryTest.DumpStackCleanup-test-on-a.patch
BuildRequires: gcc
BuildRequires: gcc-c++
@ -608,6 +606,18 @@ fi
%changelog
%{?llvm_snapshot_changelog_entry}
* Wed Feb 02 2022 Nikita Popov <npopov@redhat.com> - 13.0.1-1
- Update to LLVM 13.0.1 final
* Tue Jan 25 2022 Nikita Popov <npopov@redhat.com> - 13.0.1~rc3-1
- Update to LLVM 13.0.1rc3
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 13.0.1~rc2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jan 13 2022 Nikita Popov <npopov@redhat.com> - 13.0.1~rc2-1
- Update to LLVM 13.0.1rc2
* Mon Jan 10 2022 Nikita Popov <npopov@redhat.com> - 13.0.1~rc1-1
- Upstream 13.0.1 rc1 release

View file

@ -1,2 +1,2 @@
SHA512 (llvm-13.0.1rc1.src.tar.xz) = 45852c74ad232410f7b2cdcb11c51946d65d6634a4358ad12b965d1722e207da3b4a8aba08f12a8e15e923ec384910ca6269191313346fee84dcb123893439ad
SHA512 (llvm-13.0.1rc1.src.tar.xz.sig) = 0994871e800a21b631b4031f87976fbd53c19ada46ab40f7109c53d2da8e18fb0f9d3751800f5408dab62be7c90a6683c29289e397ed04fd5fa3c80b1233160a
SHA512 (llvm-13.0.1.src.tar.xz) = 05fbe8708ac3d0dfef3a9135ee88185a95ed492095429a97d33b8aadb0187e59ad42d1a7184f02b5c84fdd31f3d7227c65bd292ed0aa039b29522e59cf90a965
SHA512 (llvm-13.0.1.src.tar.xz.sig) = 0db0076fee269faa477ff7ff42c3ef5bd24cb3816219bbc093080fd4f7516e5414dc0f686325761ff57255d91307cd3f4dbba9066ea7cd69fb819a856f05bde8

View file

@ -24,6 +24,15 @@ adjust:
WITH_SCL: "scl enable llvm-toolset-13.0 rust-toolset-1.58"
when: "collection == llvm-toolset-13.0"
# Unfortunatelly, TMT does not support more declarative approach, we need to run commands on our own.
- because: "On CentOS, CRB must be enabled to provide rarer packages"
prepare+:
- name: Enable CRB
how: shell
script: dnf config-manager --set-enabled crb
when: >-
distro == centos
# Unfortunatelly, 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"
prepare+:
@ -31,8 +40,7 @@ adjust:
how: shell
script: dnf config-manager --set-enabled rhel-CRB
when: >-
distro == centos
or distro == rhel-9
distro == rhel-9
or distro == rhel-8
# Unfortunatelly, TMT does not support more declarative approach, we need to run commands on our own.