forked from pool/llvm15
Compare commits
49 Commits
Author | SHA256 | Date | |
---|---|---|---|
5167204776 | |||
|
903a252218 | ||
f1cfc5188e | |||
|
2c267fdc50 | ||
69fc699874 | |||
|
424bb239c3 | ||
629b636c9e | |||
|
5435029fbe | ||
ea81ebb6c2 | |||
|
624dee5c5c | ||
bf47457a7c | |||
e965932128 | |||
|
5858c6c9d8 | ||
5dad10d0bc | |||
|
5cb7475a21 | ||
|
4cca689cfc | ||
|
54e2b2e872 | ||
|
ca30ec3f09 | ||
a7efc575d1 | |||
|
afd15335d0 | ||
953a93ecc9 | |||
|
fb27179f05 | ||
7267371896 | |||
|
1ce3a6787f | ||
6c0bea0c0e | |||
|
69ca4dfaf5 | ||
7c01aa291d | |||
|
0b5e480781 | ||
|
ace2a39c9e | ||
843eb90638 | |||
|
d0057caff2 | ||
|
cdc7a41102 | ||
|
04d8fe57b7 | ||
|
fd7506d9e1 | ||
|
8960de2413 | ||
97b956f05a | |||
|
f89973a798 | ||
9a389837d7 | |||
|
59979293cd | ||
85caa9a272 | |||
|
2084b76b6f | ||
2d8ebd3948 | |||
|
3771228637 | ||
9369e9872c | |||
|
5f29e80d74 | ||
1605db3ba7 | |||
|
33e568f2f7 | ||
9fce52f067 | |||
43f9d469ce |
26
clang-shlib-symbol-versioning.patch
Normal file
26
clang-shlib-symbol-versioning.patch
Normal file
@@ -0,0 +1,26 @@
|
||||
diff --git a/clang/tools/clang-shlib/CMakeLists.txt b/clang/tools/clang-shlib/CMakeLists.txt
|
||||
index aa7fcd1efed4..054c7d59ec34 100644
|
||||
--- a/clang/tools/clang-shlib/CMakeLists.txt
|
||||
+++ b/clang/tools/clang-shlib/CMakeLists.txt
|
||||
@@ -48,6 +48,14 @@ add_clang_library(clang-cpp
|
||||
${_OBJECTS}
|
||||
LINK_LIBS
|
||||
${_DEPS})
|
||||
+
|
||||
+configure_file(simple_version_script.map.in simple_version_script.map)
|
||||
+
|
||||
+if (NOT LLVM_LINKER_IS_SOLARISLD AND NOT MINGW)
|
||||
+ # Solaris ld does not accept global: *; so there is no way to version *all* global symbols
|
||||
+ target_link_options(clang-cpp PRIVATE LINKER:--version-script,${CMAKE_CURRENT_BINARY_DIR}/simple_version_script.map)
|
||||
+endif()
|
||||
+
|
||||
# Optimize function calls for default visibility definitions to avoid PLT and
|
||||
# reduce dynamic relocations.
|
||||
if (NOT APPLE AND NOT MINGW)
|
||||
diff --git a/clang/tools/clang-shlib/simple_version_script.map.in b/clang/tools/clang-shlib/simple_version_script.map.in
|
||||
new file mode 100644
|
||||
index 000000000000..cb2306d1f596
|
||||
--- /dev/null
|
||||
+++ b/clang/tools/clang-shlib/simple_version_script.map.in
|
||||
@@ -0,0 +1 @@
|
||||
+@LLVM_SHLIB_SYMBOL_VERSION@ { global: *; };
|
19
libcxx-remove-unused-imports.patch
Normal file
19
libcxx-remove-unused-imports.patch
Normal file
@@ -0,0 +1,19 @@
|
||||
From 017396310bb6515786eb9d9cf9fb0256de08d65b Mon Sep 17 00:00:00 2001
|
||||
From: "Stephan T. Lavavej" <stl@nuwen.net>
|
||||
Date: Tue, 28 Nov 2023 16:33:11 -0800
|
||||
Subject: [PATCH] Remove unused Python imports.
|
||||
|
||||
Index: libcxx-15.0.7.src/utils/libcxx/test/format.py
|
||||
===================================================================
|
||||
--- libcxx-15.0.7.src.orig/utils/libcxx/test/format.py
|
||||
+++ libcxx-15.0.7.src/utils/libcxx/test/format.py
|
||||
@@ -9,9 +9,7 @@
|
||||
import lit
|
||||
import lit.formats
|
||||
import os
|
||||
-import pipes
|
||||
import re
|
||||
-import shutil
|
||||
|
||||
def _getTempPaths(test):
|
||||
"""
|
51
libcxx-use-shlex-quote.patch
Normal file
51
libcxx-use-shlex-quote.patch
Normal file
@@ -0,0 +1,51 @@
|
||||
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(-)
|
||||
|
||||
Index: libcxx-15.0.7.src/test/libcxx/lit.local.cfg
|
||||
===================================================================
|
||||
--- libcxx-15.0.7.src.orig/test/libcxx/lit.local.cfg
|
||||
+++ libcxx-15.0.7.src/test/libcxx/lit.local.cfg
|
||||
@@ -1,3 +1,3 @@
|
||||
# The tests in this directory need to run Python
|
||||
-import pipes, sys
|
||||
-config.substitutions.append(('%{python}', pipes.quote(sys.executable)))
|
||||
+import shlex, sys
|
||||
+config.substitutions.append(('%{python}', shlex.quote(sys.executable)))
|
||||
Index: libcxx-15.0.7.src/utils/libcxx/test/dsl.py
|
||||
===================================================================
|
||||
--- libcxx-15.0.7.src.orig/utils/libcxx/test/dsl.py
|
||||
+++ libcxx-15.0.7.src/utils/libcxx/test/dsl.py
|
||||
@@ -8,9 +8,9 @@
|
||||
|
||||
import os
|
||||
import pickle
|
||||
-import pipes
|
||||
import platform
|
||||
import re
|
||||
+import shlex
|
||||
import shutil
|
||||
import tempfile
|
||||
|
||||
@@ -261,7 +261,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))
|
||||
def compilerMacros(config, flags=''):
|
87
lldb-support-python-3.13.patch
Normal file
87
lldb-support-python-3.13.patch
Normal file
@@ -0,0 +1,87 @@
|
||||
Index: lldb-15.0.7.src/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
|
||||
===================================================================
|
||||
--- lldb-15.0.7.src.orig/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
|
||||
+++ lldb-15.0.7.src/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
|
||||
@@ -71,10 +71,12 @@ Expected<std::string> python::As<std::st
|
||||
}
|
||||
|
||||
static bool python_is_finalizing() {
|
||||
-#if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 7
|
||||
- return _Py_Finalizing != nullptr;
|
||||
-#else
|
||||
+#if PY_VERSION_HEX >= 0x030d0000
|
||||
+ return Py_IsFinalizing();
|
||||
+#elif PY_VERSION_HEX >= 0x03070000
|
||||
return _Py_IsFinalizing();
|
||||
+#else
|
||||
+ return _Py_Finalizing != nullptr;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -772,7 +774,7 @@ bool PythonCallable::Check(PyObject *py_
|
||||
return PyCallable_Check(py_obj);
|
||||
}
|
||||
|
||||
-#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3
|
||||
+#if PY_VERSION_HEX >= 0x03030000
|
||||
static const char get_arg_info_script[] = R"(
|
||||
from inspect import signature, Parameter, ismethod
|
||||
from collections import namedtuple
|
||||
@@ -801,7 +803,7 @@ Expected<PythonCallable::ArgInfo> Python
|
||||
if (!IsValid())
|
||||
return nullDeref();
|
||||
|
||||
-#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3
|
||||
+#if PY_VERSION_HEX >= 0x03030000
|
||||
|
||||
// no need to synchronize access to this global, we already have the GIL
|
||||
static PythonScript get_arg_info(get_arg_info_script);
|
||||
Index: lldb-15.0.7.src/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
|
||||
===================================================================
|
||||
--- lldb-15.0.7.src.orig/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
|
||||
+++ lldb-15.0.7.src/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
|
||||
@@ -69,8 +69,7 @@ extern "C" PyObject *PyInit__lldb(void);
|
||||
#define LLDB_USE_PYTHON_SET_INTERRUPT 0
|
||||
#else
|
||||
// PyErr_SetInterrupt was introduced in 3.2.
|
||||
-#define LLDB_USE_PYTHON_SET_INTERRUPT \
|
||||
- (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 2) || (PY_MAJOR_VERSION > 3)
|
||||
+#define LLDB_USE_PYTHON_SET_INTERRUPT PY_VERSION_HEX >= 0x03020000
|
||||
#endif
|
||||
|
||||
static ScriptInterpreterPythonImpl *GetPythonInterpreter(Debugger &debugger) {
|
||||
@@ -169,24 +168,33 @@ private:
|
||||
// would always return `true` and `PyGILState_Ensure/Release` flow would be
|
||||
// executed instead of unlocking GIL with `PyEval_SaveThread`. When
|
||||
// an another thread calls `PyGILState_Ensure` it would get stuck in deadlock.
|
||||
-#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7) || (PY_MAJOR_VERSION > 3)
|
||||
+#if PY_VERSION_HEX >= 0x03070000
|
||||
// The only case we should go further and acquire the GIL: it is unlocked.
|
||||
if (PyGILState_Check())
|
||||
return;
|
||||
#endif
|
||||
|
||||
+// `PyEval_ThreadsInitialized` was deprecated in Python 3.9 and removed in
|
||||
+// Python 3.13. It has been returning `true` always since Python 3.7.
|
||||
+#if PY_VERSION_HEX < 0x03090000
|
||||
if (PyEval_ThreadsInitialized()) {
|
||||
+#endif
|
||||
Log *log = GetLog(LLDBLog::Script);
|
||||
|
||||
m_was_already_initialized = true;
|
||||
m_gil_state = PyGILState_Ensure();
|
||||
LLDB_LOGV(log, "Ensured PyGILState. Previous state = {0}locked\n",
|
||||
m_gil_state == PyGILState_UNLOCKED ? "un" : "");
|
||||
+
|
||||
+// `PyEval_InitThreads` was deprecated in Python 3.9 and removed in
|
||||
+// Python 3.13.
|
||||
+#if PY_VERSION_HEX < 0x03090000
|
||||
return;
|
||||
}
|
||||
|
||||
// InitThreads acquires the GIL if it hasn't been called before.
|
||||
PyEval_InitThreads();
|
||||
+#endif
|
||||
}
|
||||
|
||||
PyGILState_STATE m_gil_state = PyGILState_UNLOCKED;
|
50
llvm-fix-gcc15-build.patch
Normal file
50
llvm-fix-gcc15-build.patch
Normal file
@@ -0,0 +1,50 @@
|
||||
--- a/llvm/include/llvm/ADT/SmallVector.h
|
||||
+++ b/llvm/include/llvm/ADT/SmallVector.h
|
||||
@@ -19,6 +19,7 @@
|
||||
#include <algorithm>
|
||||
#include <cassert>
|
||||
#include <cstddef>
|
||||
+#include <cstdint>
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
#include <functional>
|
||||
--- a/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
|
||||
+++ b/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
|
||||
@@ -13,6 +13,7 @@
|
||||
#ifndef LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCTARGETDESC_H
|
||||
#define LLVM_LIB_TARGET_X86_MCTARGETDESC_X86MCTARGETDESC_H
|
||||
|
||||
+#include <cstdint>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
--- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
|
||||
+++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
|
||||
@@ -15,6 +15,7 @@
|
||||
#ifndef LLVM_LIB_TARGET_AMDGPU_MCTARGETDESC_AMDGPUMCTARGETDESC_H
|
||||
#define LLVM_LIB_TARGET_AMDGPU_MCTARGETDESC_AMDGPUMCTARGETDESC_H
|
||||
|
||||
+#include <cstdint>
|
||||
#include <memory>
|
||||
|
||||
namespace llvm {
|
||||
--- a/llvm/utils/unittest/googletest/src/gtest-death-test.cc
|
||||
+++ b/llvm/utils/unittest/googletest/src/gtest-death-test.cc
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
#include "gtest/gtest-death-test.h"
|
||||
|
||||
+#include <cstdint>
|
||||
#include <utility>
|
||||
|
||||
#include "gtest/internal/gtest-port.h"
|
||||
--- a/llvm/compiler-rt-15.0.7.src/lib/orc/error.h
|
||||
+++ b/llvm/compiler-rt-15.0.7.src/lib/orc/error.h
|
||||
@@ -14,6 +14,7 @@
|
||||
#include "stl_extras.h"
|
||||
|
||||
#include <cassert>
|
||||
+#include <cstdint>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <type_traits>
|
@@ -1,3 +1,36 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 24 19:27:38 UTC 2025 - Bernhard Wiedemann <bwiedemann@suse.de>
|
||||
|
||||
- Disable ASLR during build to make libomp.so reproducible (boo#1199076)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 11 05:41:04 UTC 2025 - Bernhard Wiedemann <bwiedemann@suse.com>
|
||||
|
||||
- Add reproducible.patch to make libomp.so reproducible (boo#1199076)
|
||||
- Replace usage of %jobs for reproducible builds (boo#1237231)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jun 21 21:26:21 UTC 2025 - Aaron Puchert <aaronpuchert@alice-dsl.net>
|
||||
|
||||
- Add llvm-fix-gcc15-build.patch to fix build with GCC 15.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 6 08:08:26 UTC 2025 - Daniel Garcia <daniel.garcia@suse.com>
|
||||
|
||||
- Add patches, to actually fix the build with Python 3.13:
|
||||
* libcxx-use-shlex-quote.patch
|
||||
* libcxx-remove-unused-imports.patch
|
||||
* lldb-support-python-3.13.patch
|
||||
* use-shlex-quote.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Nov 16 22:38:02 UTC 2024 - Aaron Puchert <aaronpuchert@alice-dsl.net>
|
||||
|
||||
- Apply clang-shlib-symbol-versioning.patch to add symbol versions
|
||||
to libclang-cpp.so similar to libLLVM.so. This is required when
|
||||
multiple versions of the library are loaded into the same
|
||||
process. (boo#1219405, boo#1221183, boo#1233220)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 20 21:20:37 UTC 2024 - Aaron Puchert <aaronpuchert@alice-dsl.net>
|
||||
|
||||
|
27
llvm15.spec
27
llvm15.spec
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package llvm15
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -104,7 +104,7 @@
|
||||
# Set max_<type>_jobs so that every job of the given type has at least the
|
||||
# given amount of memory.
|
||||
%define set_jobs() \
|
||||
max_%{1}_jobs="%{?jobs:%{jobs}}" \
|
||||
max_%{1}_jobs="$(echo %{?_smp_mflags} | cut -c 3-)" \
|
||||
if test -n "$max_%{1}_jobs" -a "$max_%{1}_jobs" -gt 1 ; then \
|
||||
max_jobs="$(($avail_mem / %2))" \
|
||||
test "$max_%{1}_jobs" -gt "$max_jobs" && max_%{1}_jobs="$max_jobs" && echo "Warning: Reducing number of %{1} jobs to $max_jobs because of memory limits" \
|
||||
@@ -375,6 +375,8 @@ Patch16: llvm-workaround-superfluous-branches.patch
|
||||
Patch17: llvm-suse-implicit-gnu.patch
|
||||
# PATCH-FIX-UPSTREAM: Don't implicitly add RUNPATHs to openmp executable. (boo#1206837)
|
||||
Patch18: openmp-drop-rpath.patch
|
||||
# PATCH-FIX-UPSTREAM: make libomp reproducible (boo#1199076)
|
||||
Patch19: reproducible.patch
|
||||
Patch20: llvm_build_tablegen_component_as_shared_library.patch
|
||||
Patch21: tests-use-python3.patch
|
||||
Patch22: llvm-better-detect-64bit-atomics-support.patch
|
||||
@@ -384,6 +386,8 @@ Patch24: opt-viewer-Find-style-css-in-usr-share.patch
|
||||
Patch25: check-no-llvm-exegesis.patch
|
||||
# PATCH-FIX-OPENSUSE lld-default-sha1.patch
|
||||
Patch26: lld-default-sha1.patch
|
||||
# PATCH-FIX-UPSTREAM: Fix build with GCC 15.
|
||||
Patch31: llvm-fix-gcc15-build.patch
|
||||
# Fix lookup of targets in installed CMake files. (boo#1180748, https://reviews.llvm.org/D96670)
|
||||
Patch33: CMake-Look-up-target-subcomponents-in-LLVM_AVAILABLE_LIBS.patch
|
||||
# Make sure we link libatomic into libLLVM if necessary. Fixes build on ppc. (https://reviews.llvm.org/D132799)
|
||||
@@ -394,6 +398,16 @@ Patch35: libcxxabi-fix-armv7-test.patch
|
||||
Patch36: clang-test-xfail-gnuless-triple.patch
|
||||
# Fix lowering of "icmp uge <4 x i32> zeroinitializer, ..." on armv7. (https://reviews.llvm.org/D136447?id=469567, boo#1204267, gh#llvm/llvm-project#58514)
|
||||
Patch37: llvm-armv7-fix-vector-compare-with-zero-lowering.patch
|
||||
# PATCH-FIX-UPSTREAM: Use symbol versioning also for libclang-cpp.so.
|
||||
Patch38: clang-shlib-symbol-versioning.patch
|
||||
# PATCH-FIX-UPSTREAM: use shlib.quote to fix Python 3.13 compatibility
|
||||
Patch39: libcxx-use-shlex-quote.patch
|
||||
# PATCH-FIX-UPSTREAM: Adapt lldb to support Python 3.13
|
||||
Patch40: lldb-support-python-3.13.patch
|
||||
# PATCH-FIX-UPSTREAM: Remove unused imports fix Python 3.13 compatibility
|
||||
Patch41: libcxx-remove-unused-imports.patch
|
||||
# PATCH-FIX-OPENSUSE: Remove shlex.quote to fix Python 3.13 compatibility
|
||||
Patch42: use-shlex-quote.patch
|
||||
BuildRequires: binutils-devel >= 2.21.90
|
||||
BuildRequires: cmake >= 3.13.4
|
||||
BuildRequires: fdupes
|
||||
@@ -404,6 +418,7 @@ BuildRequires: ninja
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: python3-base
|
||||
BuildRequires: python3-setuptools
|
||||
BuildRequires: pkgconfig(libedit)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
Requires(post): update-alternatives
|
||||
@@ -828,9 +843,11 @@ This package contains the development files for Polly.
|
||||
%patch -P 22 -p1
|
||||
%patch -P 24 -p1
|
||||
%patch -P 25 -p2
|
||||
%patch -P 31 -p2
|
||||
%patch -P 33 -p2
|
||||
%patch -P 34 -p2
|
||||
%patch -P 37 -p1
|
||||
%patch -P 42 -p1
|
||||
|
||||
pushd clang-%{_version}.src
|
||||
%patch -P 2 -p1
|
||||
@@ -840,6 +857,7 @@ pushd clang-%{_version}.src
|
||||
%patch -P 9 -p2
|
||||
%patch -P 18 -p2
|
||||
%patch -P 36 -p2
|
||||
%patch -P 38 -p2
|
||||
|
||||
# We hardcode openSUSE
|
||||
rm unittests/Driver/DistroTest.cpp
|
||||
@@ -863,6 +881,7 @@ popd
|
||||
%if %{with lldb}
|
||||
pushd lldb-%{_version}.src
|
||||
%patch -P 11 -p1
|
||||
%patch -P 40 -p1
|
||||
popd
|
||||
%endif
|
||||
|
||||
@@ -873,6 +892,8 @@ popd
|
||||
|
||||
pushd libcxx-%{_version}.src
|
||||
%patch -P 15 -p2
|
||||
%patch -P 39 -p1
|
||||
%patch -P 41 -p1
|
||||
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_wide.pass.cpp
|
||||
@@ -900,6 +921,7 @@ mv lldb-%{_version}.src tools/lldb
|
||||
|
||||
%if %{with openmp}
|
||||
mv openmp-%{_version}.src projects/openmp
|
||||
%patch -P 19 -p1
|
||||
%endif
|
||||
|
||||
%if %{with libcxx}
|
||||
@@ -1099,6 +1121,7 @@ MALLOC_CHECK_BACK=$MALLOC_CHECK_
|
||||
unset MALLOC_CHECK_
|
||||
%endif
|
||||
|
||||
setarch -R \
|
||||
ninja -v %{?_smp_mflags}
|
||||
|
||||
%if %{with thin_lto}
|
||||
|
47
reproducible.patch
Normal file
47
reproducible.patch
Normal file
@@ -0,0 +1,47 @@
|
||||
From: "Bernhard M. Wiedemann" <bwiedemann@suse.de>
|
||||
Date: Fri, 11 Jul 2025 08:26:10 +0200
|
||||
Subject: [PATCH] Drop timestamp in generated source code
|
||||
|
||||
Fixes #72206
|
||||
|
||||
This helps reproducible builds of libomp.so
|
||||
probably because LLVM's LTO computed a hash of inputs
|
||||
to generate its symbol names.
|
||||
|
||||
This patch was done while working on reproducible builds for openSUSE.
|
||||
---
|
||||
|
||||
Index: openmp-15.0.7.src/docs/conf.py
|
||||
===================================================================
|
||||
--- a/projects/openmp/docs/conf.py
|
||||
+++ b/projects/openmp/docs/conf.py
|
||||
@@ -12,7 +12,6 @@
|
||||
# serve to show the default.
|
||||
|
||||
import sys, os
|
||||
-from datetime import date
|
||||
|
||||
# If extensions (or modules to document with autodoc) are in another directory,
|
||||
# add these directories to sys.path here. If the directory is relative to the
|
||||
@@ -42,7 +41,7 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'LLVM/OpenMP'
|
||||
-copyright = u'2013-%d, LLVM/OpenMP' % date.today().year
|
||||
+copyright = u'2013-%d, LLVM/OpenMP' % 2023
|
||||
|
||||
# The version info for the project you're documenting, acts as replacement for
|
||||
# |version| and |release|, also used in various other places throughout the
|
||||
Index: openmp-15.0.7.src/runtime/tools/message-converter.pl
|
||||
===================================================================
|
||||
--- a/projects/openmp/runtime/tools/message-converter.pl
|
||||
+++ b/projects/openmp/runtime/tools/message-converter.pl
|
||||
@@ -50,7 +50,7 @@ sub _generate_comment($$$) {
|
||||
my $bulk =
|
||||
$open . " Do not edit this file! " . $close . "\n" .
|
||||
$open . " The file was generated from " . get_file( $data->{ "%meta" }->{ source } ) .
|
||||
- " by " . $tool . " on " . localtime() . ". " . $close . "\n";
|
||||
+ " by " . $tool . ". " . $close . "\n";
|
||||
return $bulk;
|
||||
|
||||
}; # sub _generate_comment
|
19
use-shlex-quote.patch
Normal file
19
use-shlex-quote.patch
Normal file
@@ -0,0 +1,19 @@
|
||||
Index: llvm-15.0.7.src/test/Bindings/Go/lit.local.cfg
|
||||
===================================================================
|
||||
--- llvm-15.0.7.src.orig/test/Bindings/Go/lit.local.cfg
|
||||
+++ llvm-15.0.7.src/test/Bindings/Go/lit.local.cfg
|
||||
@@ -1,5 +1,4 @@
|
||||
import os
|
||||
-import pipes
|
||||
import shlex
|
||||
import sys
|
||||
|
||||
@@ -56,7 +55,7 @@ def fixup_compiler_path(compiler):
|
||||
except (AttributeError, OSError):
|
||||
pass
|
||||
|
||||
- return ' '.join([pipes.quote(arg) for arg in args])
|
||||
+ return ' '.join([shlex.quote(arg) for arg in args])
|
||||
|
||||
config.environment['CC'] = fixup_compiler_path(config.host_cc)
|
||||
config.environment['CXX'] = fixup_compiler_path(config.host_cxx)
|
Reference in New Issue
Block a user