diff --git a/.compiler-rt.metadata b/.compiler-rt.metadata index 181a005..f138bf8 100644 --- a/.compiler-rt.metadata +++ b/.compiler-rt.metadata @@ -1,2 +1,2 @@ -68e9e2f569ccfe0af9f5df61ec74808688198946 SOURCES/compiler-rt-13.0.1.src.tar.xz +91f03b578aff0fda6b9d3e2185e6ea5e588c6d47 SOURCES/compiler-rt-14.0.6.src.tar.xz b8d2648a01d36ed0186fd2c5af325fd28797f9a0 SOURCES/tstellar-gpg-key.asc diff --git a/.gitignore b/.gitignore index 941953c..671a08d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/compiler-rt-13.0.1.src.tar.xz +SOURCES/compiler-rt-14.0.6.src.tar.xz SOURCES/tstellar-gpg-key.asc diff --git a/SOURCES/0001-PATCH-compiler-rt-Workaround-libstdc-limitation-wrt..patch b/SOURCES/0001-PATCH-compiler-rt-Workaround-libstdc-limitation-wrt..patch deleted file mode 100644 index 047e658..0000000 --- a/SOURCES/0001-PATCH-compiler-rt-Workaround-libstdc-limitation-wrt..patch +++ /dev/null @@ -1,44 +0,0 @@ -From f4d4ada2e920136870468f43e0f3c1efa265f2f7 Mon Sep 17 00:00:00 2001 -From: serge-sans-paille -Date: Thu, 25 Feb 2021 14:12:57 +0100 -Subject: [PATCH] [PATCH][compiler-rt] Workaround libstdc++ limitation wrt. - thread copy - ---- - compiler-rt/lib/fuzzer/FuzzerDefs.h | 6 ++++++ - compiler-rt/lib/fuzzer/FuzzerDriver.cpp | 2 +- - 2 files changed, 7 insertions(+), 1 deletion(-) - -diff --git a/compiler-rt/lib/fuzzer/FuzzerDefs.h b/compiler-rt/lib/fuzzer/FuzzerDefs.h -index 1a2752a..abfbb8d 100644 ---- a/compiler-rt/lib/fuzzer/FuzzerDefs.h -+++ b/compiler-rt/lib/fuzzer/FuzzerDefs.h -@@ -50,6 +50,12 @@ template - - template - struct rebind { typedef fuzzer_allocator other; }; -+ -+ template< class U, class... Args > -+ void construct( U* p, Args&&... args ) { -+ std::allocator::construct(p, std::forward(args)...); -+ } -+ - }; - - template -diff --git a/compiler-rt/lib/fuzzer/FuzzerDriver.cpp b/compiler-rt/lib/fuzzer/FuzzerDriver.cpp -index 447cafc..2fce139 100644 ---- a/compiler-rt/lib/fuzzer/FuzzerDriver.cpp -+++ b/compiler-rt/lib/fuzzer/FuzzerDriver.cpp -@@ -294,7 +294,7 @@ static int RunInMultipleProcesses(const Vector &Args, - std::thread Pulse(PulseThread); - Pulse.detach(); - for (unsigned i = 0; i < NumWorkers; i++) -- V.push_back(std::thread(WorkerThread, std::ref(Cmd), &Counter, NumJobs, &HasErrors)); -+ V.emplace_back(WorkerThread, std::ref(Cmd), &Counter, NumJobs, &HasErrors); - for (auto &T : V) - T.join(); - return HasErrors ? 1 : 0; --- -1.8.3.1 - diff --git a/SOURCES/add-llvm-cmake-package.patch b/SOURCES/add-llvm-cmake-package.patch new file mode 100644 index 0000000..b7b63b6 --- /dev/null +++ b/SOURCES/add-llvm-cmake-package.patch @@ -0,0 +1,37 @@ +commit b18bde7a9bd6ed80f5721c47c805f0158b4fe9f8 +Author: Timm Bäder +Date: Wed Mar 9 07:17:21 2022 +0100 + + [compiler-rt] Add LLVM cmake package in standalone builds + + So the other files from the toplevel cmake/Modules directory have a + chance of being found. + +diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt +index 3a41aa43e406..6516e10fa3c5 100644 +--- a/compiler-rt/CMakeLists.txt ++++ b/compiler-rt/CMakeLists.txt +@@ -28,6 +28,12 @@ else() + set(CMAKE_CFG_RESOLVED_INTDIR "") + endif() + ++if(COMPILER_RT_STANDALONE_BUILD) ++ # Needed to find the other modules from the toplevel cmake/Modules dir ++ find_package(LLVM REQUIRED HINTS "${LLVM_CMAKE_DIR}") ++ list(APPEND CMAKE_MODULE_PATH "${LLVM_DIR}") ++endif() ++ + include(SetPlatformToolchainTools) + include(base-config-ix) + include(CompilerRTUtils) +diff --git a/compiler-rt/test/CMakeLists.txt b/compiler-rt/test/CMakeLists.txt +index 5c2b634e1180..098fb0481517 100644 +--- a/compiler-rt/test/CMakeLists.txt ++++ b/compiler-rt/test/CMakeLists.txt +@@ -1,6 +1,3 @@ +-# Needed for lit support in standalone builds. +-include(AddLLVM) +- + option(COMPILER_RT_TEST_STANDALONE_BUILD_LIBS + "When set to ON and testing in a standalone build, test the runtime \ + libraries built by this standalone build rather than the runtime libraries \ diff --git a/SOURCES/compiler-rt-13.0.1.src.tar.xz.sig b/SOURCES/compiler-rt-13.0.1.src.tar.xz.sig deleted file mode 100644 index 92caabc..0000000 Binary files a/SOURCES/compiler-rt-13.0.1.src.tar.xz.sig and /dev/null differ diff --git a/SOURCES/compiler-rt-14.0.6.src.tar.xz.sig b/SOURCES/compiler-rt-14.0.6.src.tar.xz.sig new file mode 100644 index 0000000..c88e808 Binary files /dev/null and b/SOURCES/compiler-rt-14.0.6.src.tar.xz.sig differ diff --git a/SPECS/compiler-rt.spec b/SPECS/compiler-rt.spec index a7ca0fa..a90e24e 100644 --- a/SPECS/compiler-rt.spec +++ b/SPECS/compiler-rt.spec @@ -1,6 +1,5 @@ -#global rc_ver 3 - -%global compiler_rt_version 13.0.1 +%global compiler_rt_version 14.0.6 +#global rc_ver 2 %global crt_srcdir compiler-rt-%{compiler_rt_version}%{?rc_ver:rc%{rc_ver}}.src # see https://sourceware.org/bugzilla/show_bug.cgi?id=25271 @@ -20,14 +19,14 @@ Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compil Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compiler_rt_version}%{?rc_ver:-rc%{rc_ver}}/%{crt_srcdir}.tar.xz.sig Source2: tstellar-gpg-key.asc -Patch0: 0001-PATCH-compiler-rt-Workaround-libstdc-limitation-wrt..patch +Patch0: add-llvm-cmake-package.patch BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: cmake BuildRequires: ninja-build BuildRequires: python3 -# We need python3-devel for pathfix.py. +# We need python3-devel for %%py3_shebang_fix BuildRequires: python3-devel BuildRequires: llvm-devel = %{version} @@ -46,10 +45,10 @@ instrumentation, and Blocks C language extension. %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %autosetup -n %{crt_srcdir} -p2 -pathfix.py -i %{__python3} -pn lib/hwasan/scripts/hwasan_symbolize +%py3_shebang_fix lib/hwasan/scripts/hwasan_symbolize %build -%cmake -GNinja \ +%cmake -GNinja \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DLLVM_CONFIG_PATH:FILEPATH=%{_bindir}/llvm-config-%{__isa_bits} \ -DCMAKE_SKIP_RPATH:BOOL=ON \ @@ -104,13 +103,25 @@ popd %files %license LICENSE.TXT %{_includedir}/* -%{_libdir}/clang/%{version}/lib/* -%{_libdir}/clang/%{version}/share/* +%{_libdir}/clang/%{compiler_rt_version}/lib/* +%{_libdir}/clang/%{compiler_rt_version}/share/* %ifarch x86_64 aarch64 %{_bindir}/hwasan_symbolize %endif %changelog +* Wed Jul 20 2022 Timm Bäder - 14.0.6-1 +- 14.0.6 Release + +* Wed Jun 22 2022 Timm Bäder - 14.0.5-1 +- 14.0.5 Release + +* Thu May 12 2022 Timm Bäder - 14.0.0-2 +- Disable execstack on s390x + +* Mon Apr 25 2022 Timm Bäder - 14.0.0-1 +- 14.0.0 Release + * Thu Feb 03 2022 Tom Stellard - 13.0.1-1 - 13.0.1 Release