Compare commits

...

No commits in common. "imports/c9/compiler-rt-16.0.6-2.el9_3" and "c8-stream-rhel8" have entirely different histories.

4 changed files with 117 additions and 250 deletions

View File

@ -0,0 +1,24 @@
From f007934385dc76b9299bd72cdef102fe979af93b Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar@redhat.com>
Date: Wed, 5 Sep 2018 21:07:42 -0700
Subject: [PATCH] Drop -fno-stack-protector from the compiler flags
---
compiler-rt/CMakeLists.txt | 1 -
1 file changed, 1 deletion(-)
diff --git compiler-rt.orig/CMakeLists.txt compiler-rt/CMakeLists.txt
index f26ae25..a6ac032 100644
--- compiler-rt.orig/CMakeLists.txt
+++ b/compiler-rt/CMakeLists.txt
@@ -271,7 +271,6 @@ if(NOT COMPILER_RT_DEBUG AND NOT APPLE)
append_list_if(COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG -fomit-frame-pointer SANITIZER_COMMON_CFLAGS)
endif()
append_list_if(COMPILER_RT_HAS_FUNWIND_TABLES_FLAG -funwind-tables SANITIZER_COMMON_CFLAGS)
-append_list_if(COMPILER_RT_HAS_FNO_STACK_PROTECTOR_FLAG -fno-stack-protector SANITIZER_COMMON_CFLAGS)
append_list_if(COMPILER_RT_HAS_FNO_SANITIZE_SAFE_STACK_FLAG -fno-sanitize=safe-stack SANITIZER_COMMON_CFLAGS)
append_list_if(COMPILER_RT_HAS_FVISIBILITY_HIDDEN_FLAG -fvisibility=hidden SANITIZER_COMMON_CFLAGS)
if(NOT COMPILER_RT_HAS_FVISIBILITY_HIDDEN_FLAG)
--
1.8.3.1

View File

@ -1,36 +0,0 @@
From ce15f52198639e9195b8833ed60dc1a49c293956 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar@redhat.com>
Date: Tue, 29 Aug 2023 15:49:55 -0700
Subject: [PATCH] compiler-rt: Fix FLOAT16 feature detection
CMAKE_TRY_COMPILE_TARGET_TYPE defaults to EXECUTABLE, which causes
any feature detection code snippet without a main function to fail,
so we need to make sure it gets explicitly set to STATIC_LIBRARY.
---
compiler-rt/lib/builtins/CMakeLists.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/compiler-rt/lib/builtins/CMakeLists.txt b/compiler-rt/lib/builtins/CMakeLists.txt
index 2fc70522895f..e83a1ecea50b 100644
--- a/compiler-rt/lib/builtins/CMakeLists.txt
+++ b/compiler-rt/lib/builtins/CMakeLists.txt
@@ -12,7 +12,6 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
"at least 3.20.0 now to avoid issues in the future!")
endif()
- set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
project(CompilerRTBuiltins C ASM)
set(COMPILER_RT_STANDALONE_BUILD TRUE)
set(COMPILER_RT_BUILTINS_STANDALONE_BUILD TRUE)
@@ -56,6 +55,8 @@ if (COMPILER_RT_STANDALONE_BUILD)
"Turns on or off -fPIC for the builtin library source"
ON)
endif()
+
+set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
include(builtin-config-ix)
include(CMakePushCheckState)
--
2.40.1

View File

@ -0,0 +1,15 @@
diff -ruN compiler-rt-14.0.0.src.orig/lib/cfi/cfi.cpp compiler-rt-14.0.0.src/lib/cfi/cfi.cpp
--- a/compiler-rt-14.0.0.src.orig/lib/cfi/cfi.cpp 2022-03-14 10:44:55.000000000 +0100
+++ b/compiler-rt-14.0.0.src/lib/cfi/cfi.cpp 2022-05-25 17:03:51.114415534 +0200
@@ -51,7 +51,11 @@
namespace __cfi {
+#if defined(__aarch64__) || defined(__powerpc64__)
+#define kCfiShadowLimitsStorageSize 65536 // 1 page
+#else
#define kCfiShadowLimitsStorageSize 4096 // 1 page
+#endif
// Lets hope that the data segment is mapped with 4K pages.
// The pointer to the cfi shadow region is stored at the start of this page.
// The rest of the page is unused and re-mapped read-only.

View File

@ -1,10 +1,8 @@
%global toolchain clang
%global maj_ver 16
%global min_ver 0
%global patch_ver 6
#global rc_ver 4
%global compiler_rt_version %{maj_ver}.%{min_ver}.%{patch_ver}
%global crt_srcdir compiler-rt-%{compiler_rt_version}%{?rc_ver:rc%{rc_ver}}.src
%global cmake_srcdir cmake-%{compiler_rt_version}%{?rc_ver:rc%{rc_ver}}.src
@ -15,11 +13,11 @@
%global optflags %(echo %{optflags} -Dasm=__asm__)
Name: compiler-rt
Version: %{compiler_rt_version}
Release: 2%{?dist}
Version: %{compiler_rt_version}%{?rc_ver:~rc%{rc_ver}}
Release: 1%{?dist}
Summary: LLVM "compiler-rt" runtime libraries
License: Apache-2.0 WITH LLVM-exception OR NCSA OR MIT
License: NCSA or MIT
URL: http://llvm.org
Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compiler_rt_version}%{?rc_ver:-rc%{rc_ver}}/%{crt_srcdir}.tar.xz
Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compiler_rt_version}%{?rc_ver:-rc%{rc_ver}}/%{crt_srcdir}.tar.xz.sig
@ -27,13 +25,16 @@ Source2: release-keys.asc
Source3: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compiler_rt_version}%{?rc_ver:-rc%{rc_ver}}/%{cmake_srcdir}.tar.xz
Source4: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compiler_rt_version}%{?rc_ver:-rc%{rc_ver}}/%{cmake_srcdir}.tar.xz.sig
Patch0: 0001-compiler-rt-Fix-FLOAT16-feature-detection.patch
# RHEL-specific patches
Patch100: 0001-Drop-fno-stack-protector-from-the-compiler-flags.patch
Patch101: fix-page-size-constant.patch
BuildRequires: clang
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: ninja-build
BuildRequires: python3
# We need python3-devel for %%py3_shebang_fix
# We need python3-devel for pathfix.py.
BuildRequires: python3-devel
BuildRequires: llvm-devel = %{version}
@ -56,6 +57,7 @@ instrumentation, and Blocks C language extension.
# but this is not a CACHED variable, so we can't actually set it externally :(
cd ..
mv %{cmake_srcdir} cmake
%autosetup -n %{crt_srcdir} -p2
%py3_shebang_fix lib/hwasan/scripts/hwasan_symbolize
@ -63,8 +65,10 @@ mv %{cmake_srcdir} cmake
%build
# Copy CFLAGS into ASMFLAGS, so -fcf-protection is used when compiling assembly files.
export ASMFLAGS=$CFLAGS
mkdir -p %{_vpath_builddir}
cd %{_vpath_builddir}
%cmake -GNinja \
%cmake .. -GNinja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_MODULE_PATH=%{_libdir}/cmake/llvm \
-DCMAKE_SKIP_RPATH:BOOL=ON \
@ -80,6 +84,7 @@ export ASMFLAGS=$CFLAGS
%install
cd %{_vpath_builddir}
%cmake_install
# move blacklist/abilist files to where clang expect them
@ -126,258 +131,117 @@ popd
%endif
%changelog
* Tue Aug 29 2023 Tom Stellard <tstellar@redhat.com> - 16.0.6-2
- Fix FLOAT16 detection
* Fri Jun 23 2023 Tom Stellard <tstellar@redhat.com> - 16.0.6-1
- 16.0.6 Release
* Wed Jul 05 2023 Nikita Popov <npopov@redhat.com> - 16.0.6-1
- Update to LLVM 16.0.6
* Thu Apr 13 2023 Tom Stellard <tstellar@redhat.com> - 16.0.0-1
- Update to LLVM 16.0.0
* Wed Apr 19 2023 Nikita Popov <npopov@redhat.com> - 16.0.1-1
- Update to LLVM 16.0.1
* Tue Jan 17 2023 Konrad Kleine <kkleine@redhat.com> - 15.0.7-1
* Thu Jan 19 2023 Tom Stellard <tstellar@redhat.com> - 15.0.7-1
- Update to LLVM 15.0.7
* Fri Dec 09 2022 Konrad Kleine <kkleine@redhat.com> - 15.0.6-1
- Update to LLVM 15.0.6
* Tue Sep 06 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-1
- Update to LLVM 15.0.0
* Thu Sep 29 2022 Konrad Kleine <kkleine@redhat.com> - 15.0.1-1
- Update to LLVM 15.0.1
* Wed Jul 20 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.6-1
* Tue Jun 28 2022 Tom Stellard <tstellar@redhat.com> - 14.0.6-1
- 14.0.6 Release
* Wed Jun 22 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.5-1
- 14.0.5 Release
* Wed May 25 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-3
- Fix page size constant size on aarch64 and ppc64le
* Thu May 12 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-2
- Disable execstack on s390x
* Fri Apr 29 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-2
- Remove llvm-cmake-devel BR
* Mon Apr 25 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-1
- 14.0.0 Release
* Thu Apr 07 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-1
- Update to 14.0.0
* Thu Feb 03 2022 Tom Stellard <tstellar@redhat.com> - 13.0.1-1
- 13.0.1 Release
* Tue Oct 12 2021 Timm Bäder <tbaeder@redhat.com> - 13.0.0-1
* Fri Oct 15 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-1
- 13.0.0 Release
- skip rpath
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 12.0.1-3
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Fri Jul 16 2021 sguelton@redhat.com - 12.0.1-1
- 12.0.1 release
* Fri Aug 6 2021 Florian Weimer <fweimer@redhat.com> - 12.0.1-2
- Rebuild to pick up new build flags from redhat-rpm-config (#1984652)
* Tue May 25 2021 sguelton@redhat.com - 12.0.0-2
- Backport several compatibility patches
* Tue Jul 13 2021 Tom Stellard <tstellar@redhat.com> - 12.0.1-1
- 12.0.1 Release
* Thu May 6 2021 sguelton@redhat.com - 12.0.0-1
- 12.0.0 release
* Fri Apr 16 2021 Tom Stellard <tstellar@redhat.com> - 12.0.0-1
- 12.0.0 Release
* Thu Oct 29 2020 sguelton@redhat.com - 11.0.0-1
- 11.0.0 final release
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 11.1.0-0.3.rc2
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Fri Jan 22 2021 Serge Guelton - 11.1.0-0.2.rc2
- 11.1.0-rc2 release
* Thu Jan 14 2021 Serge Guelton - 11.1.0-0.1.rc1
- 11.1.0-rc1 release
* Wed Jan 06 2021 Serge Guelton - 11.0.1-3
- LLVM 11.0.1 final
* Tue Dec 22 2020 sguelton@redhat.com - 11.0.1-2.rc2
- llvm 11.0.1-rc2
* Tue Dec 01 2020 sguelton@redhat.com - 11.0.1-1.rc1
- llvm 11.0.1-rc1
* Thu Oct 29 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-2
- Add dependency on clang-resource-filesystem
* Thu Oct 15 2020 sguelton@redhat.com - 11.0.0-1
- Fix NVR
* Mon Oct 12 2020 sguelton@redhat.com - 11.0.0-0.5
- llvm 11.0.0 - final release
* Thu Oct 08 2020 sguelton@redhat.com - 11.0.0-0.4.rc6
- 11.0.0-rc6
* Fri Oct 02 2020 sguelton@redhat.com - 11.0.0-0.3.rc5
- 11.0.0-rc5 Release
* Sun Sep 27 2020 sguelton@redhat.com - 11.0.0-0.2.rc3
- Fix NVR
* Thu Sep 24 2020 sguelton@redhat.com - 11.0.0-0.1.rc3
- 11.0.0-rc3 Release
* Tue Sep 01 2020 sguelton@redhat.com - 11.0.0-0.1.rc2
* Mon Sep 21 2020 sguelton@redhat.com - 11.0.0-0.1.rc2
- 11.0.0-rc2 Release
* Mon Aug 10 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-0.1.rc1
- 11.0.0-rc1 Release
* Fri Jul 24 2020 sguelton@redhat.com - 10.0.1-1
- 10.0.1 release
* Wed Jul 29 2020 sguelton@redhat.com - 10.0.0-9
- use %%license macro
* Mon Jun 15 2020 sguelton@redhat.com - 10.0.0-2
- Fix msan compilation warnings, see rhbz#1841165
* Mon Jul 27 2020 sguelton@redhat.com - 10.0.0-8
- Remove now obsolete debuginfo package limitation
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 20 2020 sguelton@redhat.com - 10.0.0-6
- Use modern cmake macros
* Wed Jul 15 2020 sguelton@redhat.com - 10.0.0-5
- Fix multilib runtime links, see rhbz#1855379
* Wed Jul 15 2020 sguelton@redhat.com - 10.0.0-4
- Correctly use gpg verification
* Thu Jul 09 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-3
- Drop dependency on llvm-static
* Thu Jun 11 2020 sguelton@redhat.com - 10.0.0-2
- Fix msan compilation warnings, see af38074874c605f9 upstream
* Mon Mar 30 2020 sguelton@redhat.com - 10.0.0-1
* Wed Apr 8 2020 sguelton@redhat.com - 10.0.0-1
- 10.0.0 final
* Wed Mar 25 2020 sguelton@redhat.com - 10.0.0-0.6.rc6
- 10.0.0 rc6
* Mon Jan 06 2020 Tom Stellard <tstellar@redhat.com> - 9.0.1-2
- Update fno-stack-protector patch to apply with -p2
* Fri Mar 20 2020 sguelton@redhat.com - 10.0.0-0.5.rc5
- 10.0.0 rc5
* Fri Dec 20 2019 Tom Stellard <tstellar@redhat.com> - 9.0.1-1
- 9.0.1 Release
* Sun Mar 15 2020 sguelton@redhat.com - 10.0.0-0.4.rc4
- 10.0.0 rc4
* Thu Mar 5 2020 sguelton@redhat.com - 10.0.0-0.3.rc3
- 10.0.0 rc3
* Fri Feb 14 2020 sguelton@redhat.com - 10.0.0-0.1.rc2
- 10.0.0 rc2
* Wed Feb 12 2020 sguelton@redhat.com - 10.0.0-0.2.rc1
- Ship blacklist files in the proper directory, see rhbz#1794936
* Fri Jan 31 2020 sguelton@redhat.com - 10.0.0-0.1.rc1
- 10.0.0 rc1
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.0.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Sep 19 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-1
* Fri Sep 27 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-1
- 9.0.0 Release
* Thu Aug 22 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-0.1.rc3
- 9.0.0-rc3 Release
* Thu Aug 1 2019 sguelton@redhat.com - 8.0.1-1
- 8.0.1 release
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8.0.0-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Tue Jun 18 2019 sguelton@redhat.com - 8.0.0-2
* Thu Jul 4 2019 sguelton@redhat.com - 8.0.1-0.2.rc2
- Fix rhbz#1678240
* Wed Mar 20 2019 sguelton@redhat.com - 8.0.0-1
- 8.0.0 final
* Thu Jun 13 2019 sguelton@redhat.com - 8.0.1-0.1.rc2
- 8.0.1rc2 Release
* Tue Mar 12 2019 sguelton@redhat.com - 8.0.0-0.4.rc4
- 8.0.0 Release candidate 4
* Wed Apr 17 2019 sguelton@redhat.com - 8.0.0-1
- 8.0.0 Release
* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.3.rc3
- 8.0.0 Release candidate 3
* Fri Dec 14 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-1
- 7.0.1 Release
* Fri Feb 22 2019 sguelton@redhat.com - 8.0.0-0.2.rc2
- 8.0.0 Release candidate 2
* Mon Dec 10 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-0.1.rc3
- 7.0.1-rc3 Release
* Mon Feb 11 2019 sguelton@redhat.com - 8.0.0-0.1.rc1
- 8.0.0 Release candidate 1
* Tue Nov 27 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-1
- 7.0.0 Release
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.0.1-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jan 18 2019 sguelton@redhat.com - 7.0.1-2
- GCC-9 compatibility
* Mon Dec 17 2018 sguelton@redhat.com - 7.0.1-1
- 7.0.1 Release
* Tue Dec 04 2018 sguelton@redhat.com - 7.0.0-2
- Ensure rpmlint passes on specfile
* Mon Sep 24 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-1
- 7.0.0-1 Release
* Wed Sep 12 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.4.rc3
- 7.0.0-rc3 Release
* Fri Sep 07 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.3.rc1
* Tue Oct 02 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-5
- Use python3 for build scripts
* Thu Sep 06 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.2.rc1
- Drop BuildRequires: python2
* Mon Oct 01 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-4
- Drop scl macros
* Tue Aug 14 2018 Tom Stellard <tstellar@redhat.com> - 7.0.0-0.1.rc1
- 7.0.0-rc1 Release
* Thu Sep 06 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-3
- Drop -fno-stack-protector flag
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Sep 06 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-2
- Explicitly BuildRequire: /usr/bin/python3
* Thu Jun 28 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-1
* Wed Jul 11 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-1
- 6.0.1 Release
* Mon Mar 19 2018 Iryna Shcherbina <ishcherb@redhat.com> - 6.0.0-2
- Update Python 2 dependency declarations to new packaging standards
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Thu Mar 08 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-1
- 6.0.0 Release
* Tue Feb 13 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.4.rc2
- 6.0.0-rc2 Release
* Tue Feb 13 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.3.rc1
- Fix build on AArch64
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-0.2.rc1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Jan 25 2018 Tom Stellard <tstellar@redhat.com> - 6.0.0-0.1.rc1
- 6.0.0-rc1 Release
* Wed Jan 17 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-2
- Build libFuzzer with gcc
* Wed Dec 20 2017 Tom Stellard <tstellar@redhat.com> - 5.0.1-1
* Tue Jan 09 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-1
- 5.0.1 Release
* Fri Oct 13 2017 Tom Stellard <tstellar@redhat.com> - 5.0.0-1
- 5.0.0 Release
* Mon Sep 25 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-6
- Fix AArch64 build with glibc 2.26
* Tue Sep 12 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-5
- Package libFuzzer
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Jun 23 2017 Tom Stellard <tstelar@redhat.com> - 4.0.1-2
- Fix build with newer glibc
* Fri Jun 23 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
* Wed Jun 07 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
- 4.0.1 Release
* Wed Jun 07 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-3
- Build for llvm-toolset-7 rename
* Thu May 18 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-2
- Fix disabling debug on s390(x)
* Tue Mar 14 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-1
- compiler-rt 4.0.0 Final Release