From 0b16d07303feb686417e75224442ce095eae9470 Mon Sep 17 00:00:00 2001
From: Marek Polacek
Date: Fri, 10 May 2024 17:29:23 -0400
Subject: [PATCH] 14.1.1-1
Resolves: RHEL-32672
---
.gitignore | 1 +
gcc.spec | 75 ++++++++++++++++++++++++++++++++------
gcc14-libstdc++-docs.patch | 4 +-
sources | 2 +-
update-gcc.sh | 2 +-
5 files changed, 69 insertions(+), 15 deletions(-)
diff --git a/.gitignore b/.gitignore
index 7835051..dd9b228 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@
/gcc-14.0.1-20240207.tar.xz
/gcc-14.0.1-20240208.tar.xz
/gcc-14.0.1-20240411.tar.xz
+/gcc-14.1.1-20240508.tar.xz
diff --git a/gcc.spec b/gcc.spec
index c0b423c..d326248 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,16 +1,18 @@
-%global DATE 20240411
-%global gitrev da6ad93fb1885bcdefecdf09fee4b9e901607710
-%global gcc_version 14.0.1
+%global DATE 20240508
+%global gitrev 9ae733ecd3cd76d7e2f99385520783b01ab7e5dd
+%global gcc_version 14.1.1
%global gcc_major 14
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
-%global gcc_release 0
-%global nvptx_tools_gitrev c5ad8ada3e86d96b10a9d352b7a764f801478ba6
+%global gcc_release 1
+%global nvptx_tools_gitrev 9962793f41e016318dc5eca07ae602041cf526ff
%global newlib_cygwin_gitrev d45261f62a15f8abd94a1031020b9a9f455e4eed
%global _unpackaged_files_terminate_build 0
+%if 0%{?fedora:1}
%global _performance_build 1
# Hardening slows the compiler way too much.
%undefine _hardened_build
+%endif
%undefine _auto_set_build_flags
%if 0%{?fedora} > 27 || 0%{?rhel} > 7
# Until annobin is fixed (#1519165).
@@ -141,7 +143,7 @@
Summary: Various compilers (C, C++, Objective-C, ...)
Name: gcc
Version: %{gcc_version}
-Release: %{gcc_release}.15%{?dist}
+Release: %{gcc_release}%{?dist}
# License notes for some of the less obvious ones:
# gcc/doc/cppinternals.texi: Linux-man-pages-copyleft-2-para
# isl: MIT, BSD-2-Clause
@@ -575,7 +577,9 @@ installed separately.
%package -n libgomp-offload-amdgcn
Summary: GCC OpenMP v4.5 plugin for offloading to AMD GCN
Requires: libgomp = %{version}-%{release}
+%if 0%{?fedora:1}
Requires: rocm-runtime >= 6.0.0
+%endif
%description -n libgomp-offload-amdgcn
This package contains libgomp plugin for offloading to AMD ROCm capable
@@ -1206,7 +1210,11 @@ CONFIGURE_OPTS="\
%endif
%ifarch x86_64
%if 0%{?rhel} > 8
+%if 0%{?rhel} > 9
+ --with-arch_64=x86-64-v3 \
+%else
--with-arch_64=x86-64-v2 \
+%endif
%endif
--with-arch_32=x86-64 \
%endif
@@ -1266,6 +1274,9 @@ CONFIGURE_OPTS="\
%ifnarch %{arm}
--with-build-config=bootstrap-lto --enable-link-serialization=1 \
%endif
+%endif
+%if 0%{?rhel:1}
+ --enable-host-pie --enable-host-bind-now \
%endif
"
@@ -1564,12 +1575,10 @@ for f in `find %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_plat
done
# Nuke bits/*.h.gch dirs
-# 1) there is no bits/*.h header installed, so when gch file can't be
-# used, compilation fails
-# 2) sometimes it is hard to match the exact options used for building
+# 1) sometimes it is hard to match the exact options used for building
# libstdc++-v3 or they aren't desirable
-# 3) there are multilib issues, conflicts etc. with this
-# 4) it is huge
+# 2) there are multilib issues, conflicts etc. with this
+# 3) it is huge
# People can always precompile on their own whatever they want, but
# shipping this for everybody is unnecessary.
rm -rf %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/*.h.gch
@@ -3621,6 +3630,50 @@ end
%endif
%changelog
+* Wed May 8 2024 Jakub Jelinek 14.1.1-1
+- update from releases/gcc-14 branch
+ - GCC 14.1.0 release
+ - PRs analyzer/111475, c++/89224, c++/114856, c++/114889, c++/114935,
+ ipa/92606, middle-end/114734, middle-end/114907, modula2/113768,
+ modula2/114133, modula2/114929, rtl-optimization/114924,
+ sanitizer/114956, tree-optimization/114876,
+ tree-optimization/114921, tree-optimization/114965
+
+* Fri May 3 2024 Marek Polacek
+- enable hardening and configure with --enable-host-pie --enable-host-bind-now
+ on RHEL
+- don't require rocm-runtime on RHEL
+
+* Tue Apr 30 2024 Jakub Jelinek 14.0.1-0.16
+- update from trunk and releases/gcc-14 branch
+ - GCC 14.1.0-rc1
+ - PRs c++/93595, c++/99426, c++/106820, c++/107457, c++/109966, c++/111284,
+ c++/113141, c++/114078, c++/114393, c++/114426, c++/114600,
+ c++/114634, c++/114691, c++/114706, c++/114709, c++/114784,
+ c++/114795, c++/114888, c/92880, c/114780, d/111650, fortran/89462,
+ fortran/93678, fortran/102597, fortran/103471, fortran/103496,
+ fortran/113793, fortran/114739, fortran/114825, fortran/114959,
+ gcov-profile/114715, gcov-profile/114720, libgcc/114689,
+ libgcc/114755, libgcc/114762, libstdc++/93672, libstdc++/113386,
+ libstdc++/114750, libstdc++/114770, libstdc++/114803,
+ libstdc++/114863, lto/113208, lto/114574, middle-end/112938,
+ middle-end/114753, modula2/112893, modula2/114745, modula2/114807,
+ modula2/114811, modula2/114836, other/114738, preprocessor/114748,
+ rtl-optimization/114768, sanitizer/114687, sanitizer/114743,
+ target/110621, target/112431, target/112432, target/114416,
+ target/114668, target/114676, target/114696, target/114714,
+ target/114741, target/114752, target/114783, target/114794,
+ target/114810, target/114837, target/114861, target/114885,
+ testsuite/113706, testsuite/114744, testsuite/114768,
+ tree-optimization/114403, tree-optimization/114666,
+ tree-optimization/114733, tree-optimization/114736,
+ tree-optimization/114749, tree-optimization/114769,
+ tree-optimization/114787, tree-optimization/114792,
+ tree-optimization/114799, tree-optimization/114832,
+ tree-optimization/114883
+- switch to --with-arch_64=x86-64-v3 for latest RHEL
+- remove obsolete reason for not shipping *.gch* files
+
* Thu Apr 11 2024 Jakub Jelinek 14.0.1-0.15
- update from trunk
- PRs analyzer/114472, c++/114303, c++/114409, debug/112878,
diff --git a/gcc14-libstdc++-docs.patch b/gcc14-libstdc++-docs.patch
index 662cc64..b774935 100644
--- a/gcc14-libstdc++-docs.patch
+++ b/gcc14-libstdc++-docs.patch
@@ -4,7 +4,7 @@
FSF
-+ Release 14.0.1
++ Release 14.1.1
+
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation
@@ -17,7 +17,7 @@
- The API documentation, rendered into HTML, can be viewed online
+ The API documentation, rendered into HTML, can be viewed locally
-+ for the 14.0.1 release,
++ for the 14.1.1 release,
+ online
for each GCC release
and
diff --git a/sources b/sources
index 603296d..027599d 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
-SHA512 (gcc-14.0.1-20240411.tar.xz) = aa7a43ed6ee1149530edc10cb14cbc7402f61d6165aa1ee89366cc6235dc9327a7a1201b3f0024a7d77e946ba095504f4d69c4abbf59de9d3abf3459298f05c9
+SHA512 (gcc-14.1.1-20240508.tar.xz) = 2c0106d8a92ea76dacd78bcb2ac988d3662f15aa846772f5c3b1c93aa77f3a5e4cc601a4ece208ab414e8075d1fef49ebe66dea658b24ab9594618717356a8d7
SHA512 (isl-0.24.tar.bz2) = aab3bddbda96b801d0f56d2869f943157aad52a6f6e6a61745edd740234c635c38231af20bc3f1a08d416a5e973a90e18249078ed8e4ae2f1d5de57658738e95
SHA512 (newlib-cygwin-d45261f62a15f8abd94a1031020b9a9f455e4eed.tar.xz) = 31bfc19429797236e268e22b752c5abeabb9c0f39b1058634af8dab329b4f028fc72a35888193c9575f6cee5cf2c069669d79fcb4d4e3a4318f57413452f707d
SHA512 (nvptx-tools-c5ad8ada3e86d96b10a9d352b7a764f801478ba6.tar.xz) = 8a5c282852c995fabf75a8d6331db807a1acd935fd82022e00801b798fb850392d03e29cfa4aa7e3d5cfd8f48510e5e25b79a647fbec79c8566792584a0c1c49
diff --git a/update-gcc.sh b/update-gcc.sh
index 9804331..f1aa644 100755
--- a/update-gcc.sh
+++ b/update-gcc.sh
@@ -3,5 +3,5 @@
git clone --depth 1 git://gcc.gnu.org/git/gcc.git gcc-dir.tmp
git --git-dir=gcc-dir.tmp/.git fetch --depth 1 origin $1
d=`date --iso | sed 's/-//g'`
-git --git-dir=gcc-dir.tmp/.git archive --prefix=gcc-14.0.1-$d/ $1 | xz -9e > gcc-14.0.1-$d.tar.xz
+git --git-dir=gcc-dir.tmp/.git archive --prefix=gcc-14.1.1-$d/ $1 | xz -9e > gcc-14.1.1-$d.tar.xz
rm -rf gcc-dir.tmp