Accepting request 1248580 from devel:tools:compiler

- add libcxx-use-shlex-quote.patch to fix build with python 3.13

- Use correct LLVM_HOST_TRIPLE for riscv64
- Rebase llvm-do-not-install-static-libraries.patch.
- Add upstream patch to export compiler-rt FuzzedDataProvider header,
  * compiler-rt-move-fdp.patch
- Drop llvm5-devel-static. llvm5-devel contains shared library with
- Package libLLVMFuzzer
- Use gcc6 on SLE12
- Package license & credits
  * See
- Enable BPF for all arches bsc#1026191
- libc++ must depend on libc++abi
- Disable libcxx/lldb/openmp for SLE fate#319582
- Update rpmlintrc to whitelist libLTO.so
- Re-enable glibc-2.23 patch for Tumbleweed
- Add glibc-2.23-libcxx.patch to fix test failures with glibc 2.23
-  Remove FFI support because its fragile
- Enable OpenMP for x86, x86_64, ppc64 and ppc64le
- Enable all targets on x86, x86_64
- fix build on s390x (one typo in ifarch and one change in filelist)
- Add llvm-fix-parsearmarch.patch to fix parsing armv{6,7}hl archs.
- Rename llvm-remove-werror-date-time.patch to
- Require llvm-clang not just clang
- Add libcxxabi-exceptions.patch to fix libcxxabi exception handling
- Remove asan-disable-hugemalloctest.patch and
- build compiler-rt on ppc64 (don't delete it)
- complete ifarchs for s390
- Remove non-existing doc subpackage
- Update to r196371 from release_34 branch

OBS-URL: https://build.opensuse.org/request/show/1248580
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/llvm18?expand=0&rev=12
This commit is contained in:
Dominique Leuenberger 2025-02-27 13:49:01 +00:00 committed by Git OBS Bridge
commit 651e287e19
3 changed files with 154 additions and 94 deletions

@ -0,0 +1,52 @@
From d3ce1078186389ce39505f06c2a0100dce9187a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Mon, 27 May 2024 19:26:56 +0200
Subject: [PATCH] [libcxx] [test] Use `shlex.quote()` to fix Python 3.13
compatibility (#93376)
Replace the use of `pipes.quote()` with `shlex.quote()` to fix
compatibility with Python 3.13. The former was always an undocumented
alias to the latter, and the `pipes` module was removed completely in
Python 3.13.
Fixes #93375
---
libcxx/test/libcxx/lit.local.cfg | 5 +++--
libcxx/utils/libcxx/test/dsl.py | 4 ++--
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/libcxx/test/libcxx/lit.local.cfg b/libcxx/test/libcxx/lit.local.cfg
index 147367323d4a6d..4467d8070cc708 100644
--- a/libcxx/test/libcxx/lit.local.cfg
+++ b/libcxx/test/libcxx/lit.local.cfg
@@ -1,4 +1,5 @@
# The tests in this directory need to run Python
-import pipes, sys
+import shlex
+import sys
-config.substitutions.append(("%{python}", pipes.quote(sys.executable)))
+config.substitutions.append(("%{python}", shlex.quote(sys.executable)))
diff --git a/libcxx/utils/libcxx/test/dsl.py b/libcxx/utils/libcxx/test/dsl.py
index 387862ae6f496d..7ac66d449b1cf4 100644
--- a/libcxx/utils/libcxx/test/dsl.py
+++ b/libcxx/utils/libcxx/test/dsl.py
@@ -8,8 +8,8 @@
import os
import pickle
-import pipes
import platform
+import shlex
import shutil
import tempfile
@@ -290,7 +290,7 @@ def hasAnyLocale(config, locales):
}
#endif
"""
- return programSucceeds(config, program, args=[pipes.quote(l) for l in locales])
+ return programSucceeds(config, program, args=[shlex.quote(l) for l in locales])
@_memoizeExpensiveOperation(lambda c, flags="": (c.substitutions, c.environment, flags))

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Fri Nov 22 17:12:00 UTC 2024 - Dirk Müller <dmueller@suse.com>
- add libcxx-use-shlex-quote.patch to fix build with python 3.13
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Nov 16 22:38:02 UTC 2024 - Aaron Puchert <aaronpuchert@alice-dsl.net> Sat Nov 16 22:38:02 UTC 2024 - Aaron Puchert <aaronpuchert@alice-dsl.net>

@ -431,6 +431,8 @@ Patch29: clang-fix-modules-test-riscv.patch
Patch30: clang-fix-openmp-test-non-x86.patch Patch30: clang-fix-openmp-test-non-x86.patch
# PATCH-FIX-UPSTREAM: Use symbol versioning also for libclang-cpp.so. # PATCH-FIX-UPSTREAM: Use symbol versioning also for libclang-cpp.so.
Patch31: clang-shlib-symbol-versioning.patch Patch31: clang-shlib-symbol-versioning.patch
# PATCH-FIX-UPSTREAM: use shlib.quote to fix Python 3.13 compatibility
Patch32: libcxx-use-shlex-quote.patch
BuildRequires: binutils-devel >= 2.21.90 BuildRequires: binutils-devel >= 2.21.90
BuildRequires: cmake >= 3.13.4 BuildRequires: cmake >= 3.13.4
BuildRequires: fdupes BuildRequires: fdupes
@ -926,6 +928,7 @@ sed -i '/set(LLVM_COMMON_CMAKE_UTILS/ s/CMAKE_CURRENT_SOURCE_DIR/CMAKE_SOURCE_DI
sed -i '\"runtimes/cmake/Modules" s/CMAKE_CURRENT_SOURCE_DIR/CMAKE_SOURCE_DIR/g' libcxx{,abi}-%{_version}.src/CMakeLists.txt sed -i '\"runtimes/cmake/Modules" s/CMAKE_CURRENT_SOURCE_DIR/CMAKE_SOURCE_DIR/g' libcxx{,abi}-%{_version}.src/CMakeLists.txt
pushd libcxx-%{_version}.src pushd libcxx-%{_version}.src
%patch -P 15 -p2 %patch -P 15 -p2
%patch -P 32 -p2
rm test/libcxx/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp rm test/libcxx/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
rm test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp rm test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp
rm test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp rm test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp