Compare commits

6 Commits
1.1 ... main

40 changed files with 998 additions and 6043 deletions

View File

@@ -14,13 +14,8 @@
<flavor>cross-pru-gcc13-bootstrap</flavor> <flavor>cross-pru-gcc13-bootstrap</flavor>
<flavor>cross-pru-gcc13</flavor> <flavor>cross-pru-gcc13</flavor>
<flavor>cross-x86_64-gcc13</flavor> <flavor>cross-x86_64-gcc13</flavor>
<flavor>cross-sparc-gcc13</flavor>
<flavor>cross-sparc64-gcc13</flavor>
<flavor>cross-ppc64-gcc13</flavor> <flavor>cross-ppc64-gcc13</flavor>
<flavor>cross-m68k-gcc13</flavor>
<flavor>cross-mips-gcc13</flavor>
<flavor>cross-hppa-gcc13-bootstrap</flavor> <flavor>cross-hppa-gcc13-bootstrap</flavor>
<flavor>cross-hppa-gcc13</flavor>
<flavor>cross-arm-none-gcc13-bootstrap</flavor> <flavor>cross-arm-none-gcc13-bootstrap</flavor>
<flavor>cross-arm-none-gcc13</flavor> <flavor>cross-arm-none-gcc13</flavor>
<flavor>cross-riscv64-elf-gcc13-bootstrap</flavor> <flavor>cross-riscv64-elf-gcc13-bootstrap</flavor>

View File

@@ -87,10 +87,16 @@ add_newlib_cross() {
} }
add_glibc_cross() { add_glibc_cross() {
add_cross $1-bootstrap $2 $3 "%define gcc_libc_bootstrap 1" add_cross $1-bootstrap $2 $3 "%define gcc_target_glibc 1
%define gcc_libc_bootstrap 1"
add_cross $1 $2 $3 "%define gcc_target_glibc 1" add_cross $1 $2 $3 "%define gcc_target_glibc 1"
} }
add_glibc_bootstrap_cross() {
add_cross $1 $2 $3 "%define gcc_target_glibc 1
%define gcc_libc_bootstrap 1"
}
# We now support "proper" cross-compilers to suse targets via a # We now support "proper" cross-compilers to suse targets via a
# cross-glibc package, enable that via for example # cross-glibc package, enable that via for example
# #
@@ -102,18 +108,17 @@ add_glibc_cross cross-aarch64-gcc$base_ver aarch64 aarch64-suse-linux
add_glibc_cross cross-riscv64-gcc$base_ver riscv64 riscv64-suse-linux add_glibc_cross cross-riscv64-gcc$base_ver riscv64 riscv64-suse-linux
add_glibc_cross cross-s390x-gcc$base_ver s390x s390x-suse-linux add_glibc_cross cross-s390x-gcc$base_ver s390x s390x-suse-linux
add_glibc_cross cross-ppc64le-gcc$base_ver ppc64le powerpc64le-suse-linux add_glibc_cross cross-ppc64le-gcc$base_ver ppc64le powerpc64le-suse-linux
add_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi %define gcc_icecream 1 add_glibc_bootstrap_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi
add_cross cross-avr-gcc$base_ver-bootstrap avr avr "%define gcc_libc_bootstrap 1" add_cross cross-avr-gcc$base_ver-bootstrap avr avr "%define gcc_libc_bootstrap 1"
add_cross cross-avr-gcc$base_ver avr avr add_cross cross-avr-gcc$base_ver avr avr
add_newlib_cross cross-pru-gcc$base_ver pru pru add_newlib_cross cross-pru-gcc$base_ver pru pru
add_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux %define gcc_icecream 1 add_glibc_bootstrap_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux
add_cross cross-sparc-gcc$base_ver sparcv9 sparc-suse-linux %define gcc_icecream 1 #add_cross cross-sparc-gcc$base_ver sparcv9 sparc-suse-linux %define gcc_icecream 1
add_cross cross-sparc64-gcc$base_ver sparc64 sparc64-suse-linux %define gcc_icecream 1 #add_cross cross-sparc64-gcc$base_ver sparc64 sparc64-suse-linux %define gcc_icecream 1
add_cross cross-ppc64-gcc$base_ver ppc64 powerpc64-suse-linux %define gcc_icecream 1 add_glibc_bootstrap_cross cross-ppc64-gcc$base_ver ppc64 powerpc64-suse-linux
add_cross cross-m68k-gcc$base_ver m68k m68k-suse-linux %define gcc_icecream 1 #add_cross cross-m68k-gcc$base_ver m68k m68k-suse-linux %define gcc_icecream 1
add_cross cross-mips-gcc$base_ver mips mips-suse-linux %define gcc_icecream 1 #add_cross cross-mips-gcc$base_ver mips mips-suse-linux %define gcc_icecream 1
add_cross cross-hppa-gcc$base_ver-bootstrap hppa hppa-suse-linux %define gcc_libc_bootstrap 1 add_cross cross-hppa-gcc$base_ver-bootstrap hppa hppa-suse-linux %define gcc_libc_bootstrap 1
add_cross cross-hppa-gcc$base_ver hppa hppa-suse-linux %define gcc_icecream 1
add_newlib_cross cross-arm-none-gcc$base_ver arm-none arm-none-eabi add_newlib_cross cross-arm-none-gcc$base_ver arm-none arm-none-eabi
#add_newlib_cross cross-epiphany-gcc$base_ver epiphany epiphany-elf #add_newlib_cross cross-epiphany-gcc$base_ver epiphany epiphany-elf
#add_newlib_cross cross-nds32le-gcc$base_ver nds32le nds32le-elf #add_newlib_cross cross-nds32le-gcc$base_ver nds32le nds32le-elf

View File

@@ -19,6 +19,7 @@
%define pkgname cross-aarch64-gcc13-bootstrap %define pkgname cross-aarch64-gcc13-bootstrap
%define cross_arch aarch64 %define cross_arch aarch64
%define gcc_target_arch aarch64-suse-linux %define gcc_target_arch aarch64-suse-linux
%define gcc_target_glibc 1
%define gcc_libc_bootstrap 1 %define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -19,7 +19,8 @@
%define pkgname cross-arm-gcc13 %define pkgname cross-arm-gcc13
%define cross_arch arm %define cross_arch arm
%define gcc_target_arch arm-suse-linux-gnueabi %define gcc_target_arch arm-suse-linux-gnueabi
%define gcc_icecream 1 %define gcc_target_glibc 1
%define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
%define build_cp 0%{!?gcc_accel:1} %define build_cp 0%{!?gcc_accel:1}
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -108,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -135,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -294,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -366,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -591,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -603,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -690,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -759,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -837,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -862,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -887,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -894,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -958,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1014,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1033,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1044,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -19,7 +19,8 @@
%define pkgname cross-ppc64-gcc13 %define pkgname cross-ppc64-gcc13
%define cross_arch ppc64 %define cross_arch ppc64
%define gcc_target_arch powerpc64-suse-linux %define gcc_target_arch powerpc64-suse-linux
%define gcc_icecream 1 %define gcc_target_glibc 1
%define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
%define build_cp 0%{!?gcc_accel:1} %define build_cp 0%{!?gcc_accel:1}
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64le x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -19,6 +19,7 @@
%define pkgname cross-ppc64le-gcc13-bootstrap %define pkgname cross-ppc64le-gcc13-bootstrap
%define cross_arch ppc64le %define cross_arch ppc64le
%define gcc_target_arch powerpc64le-suse-linux %define gcc_target_arch powerpc64le-suse-linux
%define gcc_target_glibc 1
%define gcc_libc_bootstrap 1 %define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -108,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -135,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -294,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -366,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -591,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -603,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -690,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -759,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -837,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -862,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -887,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -894,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -958,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1014,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1033,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1044,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -108,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -135,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -294,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -366,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -591,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -603,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -690,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -759,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -837,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -862,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -887,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -894,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -958,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1014,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1033,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1044,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -19,6 +19,7 @@
%define pkgname cross-riscv64-gcc13-bootstrap %define pkgname cross-riscv64-gcc13-bootstrap
%define cross_arch riscv64 %define cross_arch riscv64
%define gcc_target_arch riscv64-suse-linux %define gcc_target_arch riscv64-suse-linux
%define gcc_target_glibc 1
%define gcc_libc_bootstrap 1 %define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -108,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -135,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -294,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -366,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -591,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -603,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -690,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -759,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -837,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -862,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -887,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -894,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -958,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1014,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1033,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1044,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -19,6 +19,7 @@
%define pkgname cross-s390x-gcc13-bootstrap %define pkgname cross-s390x-gcc13-bootstrap
%define cross_arch s390x %define cross_arch s390x
%define gcc_target_arch s390x-suse-linux %define gcc_target_arch s390x-suse-linux
%define gcc_target_glibc 1
%define gcc_libc_bootstrap 1 %define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -107,7 +107,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +134,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +292,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +361,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +585,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +597,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +687,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +756,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +834,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +862,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +887,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +895,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +961,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1017,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1040,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1052,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -19,7 +19,8 @@
%define pkgname cross-x86_64-gcc13 %define pkgname cross-x86_64-gcc13
%define cross_arch x86_64 %define cross_arch x86_64
%define gcc_target_arch x86_64-suse-linux %define gcc_target_arch x86_64-suse-linux
%define gcc_icecream 1 %define gcc_target_glibc 1
%define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
%define build_cp 0%{!?gcc_accel:1} %define build_cp 0%{!?gcc_accel:1}
@@ -107,7 +108,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -134,7 +135,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -293,27 +293,24 @@ ExclusiveArch: i586 ppc64le ppc64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc13 Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc13 Requires: libstdc++6-devel-gcc13
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -365,7 +362,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -590,11 +586,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -602,6 +598,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -689,7 +688,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -758,7 +757,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -836,6 +835,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -861,7 +863,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -886,6 +888,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -893,6 +896,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -957,7 +962,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -1013,15 +1018,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -1032,6 +1041,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -1043,13 +1053,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++

View File

@@ -195,27 +195,24 @@ ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64
%if "%pkgname" == "cross-ppc64-gcc49" %if "%pkgname" == "cross-ppc64-gcc49"
Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354 Obsoletes: cross-ppc-gcc49 <= 4.9.0+r209354
%endif %endif
%if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc:1} %if 0%{!?gcc_accel:1}
# Generally only one cross for the same target triplet can be installed # Generally only one cross for the same target triplet can be installed
# at the same time as we are populating a non-version-specific sysroot # at the same time as we are populating a non-version-specific sysroot
Provides: %{gcc_target_arch}-gcc
Conflicts: %selfconflict %{gcc_target_arch}-gcc
%endif
%if 0%{?gcc_libc_bootstrap:1}
# The -bootstrap packages file-conflict with the non-bootstrap variants. # The -bootstrap packages file-conflict with the non-bootstrap variants.
# Even if we don't actually (want to) distribute the bootstrap variants # Even if we don't actually (want to) distribute the bootstrap variants
# the following avoids repo-checker spamming us endlessly. # the following avoids repo-checker spamming us endlessly.
Conflicts: cross-%{cross_arch}-gcc@base_ver@ Provides: %{gcc_target_arch}-gcc
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if 0%{build_cp:1} %if %{build_cp}
# The cross compiler only packages the arch specific c++ headers, so # The cross compiler only packages the arch specific c++ headers, so
# we need to depend on the host libstdc++ devel headers (we wouldn't need # we need to depend on the host libstdc++ devel headers (we wouldn't need
# the libs, though) # the libs, though)
Requires: libstdc++6-devel-gcc@base_ver@ Requires: libstdc++6-devel-gcc@base_ver@
%endif %endif
AutoReqProv: off %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
%if 0%{!?gcc_accel:1}
BuildRequires: update-alternatives BuildRequires: update-alternatives
Requires(post): update-alternatives Requires(post): update-alternatives
Requires(preun): update-alternatives Requires(preun): update-alternatives
@@ -279,6 +276,9 @@ Newlib development files for the amdgcn offload target compiler.
%define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version} %define targetlibsubdir %{_libdir}/gcc/%{gcc_target_arch}/%{gcc_dir_version}
%define __provides_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%define __requires_exclude_from ^(%{targetlibsubdir}|%{libsubdir}|%{_prefix}/%{gcc_target_arch})/.*$
%install %install
cd obj-%{GCCDIST} cd obj-%{GCCDIST}
@@ -305,7 +305,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot} mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
make DESTDIR=$RPM_BUILD_ROOT install-target make DESTDIR=$RPM_BUILD_ROOT install-target
%if %{build_cp} %if %{build_cp}
# So we installed libstdc++ headers into %prefix where they conflict # So we installed libstdc++ headers into %%prefix where they conflict
# with other host compilers. Rip out the non-target specific parts # with other host compilers. Rip out the non-target specific parts
# again. Note not all cross targets support libstdc++, so create the # again. Note not all cross targets support libstdc++, so create the
# directory to make things easier. # directory to make things easier.
@@ -330,6 +330,7 @@ rm -rf $RPM_BUILD_ROOT%{_infodir}
# for accelerators remove all frontends but lto1 and also install-tools # for accelerators remove all frontends but lto1 and also install-tools
%if 0%{?gcc_accel:1} %if 0%{?gcc_accel:1}
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1 rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/f951
rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus rm -f $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/cc1plus
rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools rm -rf $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
@@ -337,6 +338,8 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
# that is the place where we later search for (only) # that is the place where we later search for (only)
( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - ) ( cd $RPM_BUILD_ROOT%{targetlibsubdir} && tar cf - . ) | ( cd $RPM_BUILD_ROOT%{libsubdir}/accel/%{gcc_target_arch} && tar xf - )
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir} rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
# also remove installed libstdc++ headers
rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++
%endif %endif
# for amdgcn install the symlinks to the llvm tools # for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement # follow alternatives symlinks to the hardcoded version requirement
@@ -401,7 +404,7 @@ rm -r env
# we provide update-alternatives for selecting a compiler version for # we provide update-alternatives for selecting a compiler version for
# crosses # crosses
%if 0%{!?gcc_accel:1} %if 0%{!?gcc_accel:1} && %{suse_version} < 1600
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
for ex in gcc cpp \ for ex in gcc cpp \
%if %{build_cp} %if %{build_cp}
@@ -457,15 +460,19 @@ fi
%endif %endif
%else %else
%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-lto-dump%{binsuffix}
%endif
%if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf" %if 0%{!?gcc_libc_bootstrap:1} && "%{cross_arch}" != "bpf"
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
%endif
%{_prefix}/bin/%{gcc_target_arch}-gcov %{_prefix}/bin/%{gcc_target_arch}-gcov
%{_prefix}/bin/%{gcc_target_arch}-gcov-dump %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
%{_prefix}/bin/%{gcc_target_arch}-gcov-tool %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
@@ -476,6 +483,7 @@ fi
%{_prefix}/bin/%{gcc_target_arch}-gcc-nm %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
%{_prefix}/bin/%{gcc_target_arch}-lto-dump %{_prefix}/bin/%{gcc_target_arch}-lto-dump
%if %{suse_version} < 1600
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
@@ -487,13 +495,16 @@ fi
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
%endif %endif
%endif
%if %{build_cp} %if %{build_cp}
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++ %{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++ %{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++ %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
%endif
%if 0%{!?gcc_libc_bootstrap:1} %if 0%{!?gcc_libc_bootstrap:1}
%if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1} %if "%{cross_arch}" == "avr" || 0%{?gcc_target_newlib:1} || 0%{?gcc_target_glibc:1}
%{_prefix}/include/c++ %{_prefix}/include/c++
@@ -527,4 +538,4 @@ fi
%exclude %{_prefix}/%{gcc_target_arch}/bin %exclude %{_prefix}/%{gcc_target_arch}/bin
%endif %endif
%changelog -n cross-%{pkgname}-gcc@base_ver@ %changelog -n %{pkgname}

BIN
gcc-13.3.1+git9426.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
gcc-13.4.0+git9739.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -209,7 +209,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 1 Release: 1
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -391,7 +391,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -1368,7 +1367,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -1593,11 +1591,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -1605,6 +1603,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -1692,7 +1693,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -1761,7 +1762,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -1825,6 +1826,8 @@ mkdir ../testresults
../contrib/test_summary | tee ../testresults/test_summary.txt ../contrib/test_summary | tee ../testresults/test_summary.txt
%endif %endif
%define __provides_exclude_from ^%{libsubdir}/.*\.so.*$
%install %install
# Make sure libtool re-linking libasan at install time doesn't drop the # Make sure libtool re-linking libasan at install time doesn't drop the
# libstdc++ reference to make asan of C++ modules in python work # libstdc++ reference to make asan of C++ modules in python work
@@ -1914,7 +1917,8 @@ if ! test -z "$dir_ml"; then
fi fi
%endif %endif
# move shared libs from versionspecific dir to main libdir # move shared libs from versionspecific dir to main libdir, keep a copy
# for link-editing in the .so
for libname in \ for libname in \
%if %{build_fortran} %if %{build_fortran}
libgfortran \ libgfortran \
@@ -1978,8 +1982,16 @@ for libname in \
mv $lib %{buildroot}/%{mainlibdir}/ mv $lib %{buildroot}/%{mainlibdir}/
done done
if test -L %{buildroot}/%{versmainlibdir}/$libname.so; then if test -L %{buildroot}/%{versmainlibdir}/$libname.so; then
ln -sf %{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ cp %{buildroot}/%{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so` \
%{buildroot}/%{versmainlibdir}/$libname.so %{buildroot}/%{versmainlibdir}/$libname.so.tem
rm %{buildroot}/%{versmainlibdir}/$libname.so
mv %{buildroot}/%{versmainlibdir}/$libname.so.tem %{buildroot}/%{versmainlibdir}/$libname.so
strip -g %{buildroot}/%{versmainlibdir}/$libname.so
else
if test -e %{buildroot}/%{versmainlibdir}/$libname.so; then
echo ERROR: unexpected linker script for $libname.so
exit 1
fi
fi fi
%if %{biarch} %if %{biarch}
if test -d %{buildroot}/%{versmainlibdirbi}; then if test -d %{buildroot}/%{versmainlibdirbi}; then
@@ -1987,8 +1999,16 @@ for libname in \
mv $lib %{buildroot}/%{mainlibdirbi}/ mv $lib %{buildroot}/%{mainlibdirbi}/
done done
if test -L %{buildroot}/%{versmainlibdirbi}/$libname.so; then if test -L %{buildroot}/%{versmainlibdirbi}/$libname.so; then
ln -sf %{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ cp %{buildroot}/%{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so` \
%{buildroot}/%{versmainlibdirbi}/$libname.so %{buildroot}/%{versmainlibdirbi}/$libname.so.tem
rm %{buildroot}/%{versmainlibdirbi}/$libname.so
mv %{buildroot}/%{versmainlibdirbi}/$libname.so.tem %{buildroot}/%{versmainlibdirbi}/$libname.so
strip -g %{buildroot}/%{versmainlibdirbi}/$libname.so
else
if test -e %{buildroot}/%{versmainlibdirbi}/$libname.so; then
echo ERROR: unexpected linker script for $libname.so
exit 1
fi
fi fi
fi fi
%endif %endif
@@ -2008,40 +2028,50 @@ sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' %{buildroot}/%{_
%endif %endif
%endif %endif
# Move libgcc_s around # Move libgcc_s around, make sure a version specific copy is available
# for link editing
chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s}
if test -L %{buildroot}/%{_lib}/libgcc_s.so; then if test -L %{buildroot}/%{_lib}/libgcc_s.so; then
rm -f %{buildroot}/%{_lib}/libgcc_s.so rm -f %{buildroot}/%{_lib}/libgcc_s.so
ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so
strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so
else else
mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}/%{versmainlibdir}/ mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}/%{versmainlibdir}/
cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s}
strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s}
fi fi
chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s}
%if 0%{?usrmerged} %if 0%{?usrmerged}
mv %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{_slibdir}/libgcc_s.so.%{libgcc_s} mv %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{_slibdir}/libgcc_s.so.%{libgcc_s}
%endif %endif
%if %{biarch} %if %{biarch}
chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s}
%if %{build_primary_64bit} %if %{build_primary_64bit}
if test -L %{buildroot}/lib/libgcc_s.so; then if test -L %{buildroot}/lib/libgcc_s.so; then
rm -f %{buildroot}/lib/libgcc_s.so rm -f %{buildroot}/lib/libgcc_s.so
ln -sf /lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so
strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so
else else
mv %{buildroot}/lib/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/ mv %{buildroot}/lib/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/
cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s}
strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s}
fi fi
ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/libgcc_s_32.so ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/libgcc_s_32.so
chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s}
%if 0%{?usrmerged} %if 0%{?usrmerged}
mv %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir}/libgcc_s.so.%{libgcc_s} mv %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir}/libgcc_s.so.%{libgcc_s}
%endif %endif
%else %else
# 32-bit biarch systems # 32-bit biarch systems
chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s}
if test -L %{buildroot}/lib64/libgcc_s.so; then if test -L %{buildroot}/lib64/libgcc_s.so; then
rm -f %{buildroot}/lib64/libgcc_s.so rm -f %{buildroot}/lib64/libgcc_s.so
ln -sf /lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so
strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so
else else
mv %{buildroot}/lib64/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/ mv %{buildroot}/lib64/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/
cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s}
strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s}
fi fi
ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/libgcc_s_64.so ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/libgcc_s_64.so
chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s}
%if 0%{?usrmerged} %if 0%{?usrmerged}
mv %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir64}/libgcc_s.so.%{libgcc_s} mv %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir64}/libgcc_s.so.%{libgcc_s}
%endif %endif
@@ -2447,7 +2477,7 @@ cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc@base_ver@-locale.lang
%versmainlib *crt*.o %versmainlib *crt*.o
%versmainlib libgcc*.a %versmainlib libgcc*.a
%versmainlib libgcov.a %versmainlib libgcov.a
%versmainlib libgcc_s*.so %versmainlib libgcc_s*.so*
%versmainlib libgomp.so %versmainlib libgomp.so
%versmainlib libgomp.a %versmainlib libgomp.a
%versmainlib libgomp.spec %versmainlib libgomp.spec
@@ -2513,7 +2543,7 @@ cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc@base_ver@-locale.lang
%versbiarchlib *crt*.o %versbiarchlib *crt*.o
%versbiarchlib libgcc*.a %versbiarchlib libgcc*.a
%versbiarchlib libgcov.a %versbiarchlib libgcov.a
%versbiarchlib libgcc_s*.so %versbiarchlib libgcc_s*.so*
%versbiarchlib libgomp.so %versbiarchlib libgomp.so
%versbiarchlib libgomp.a %versbiarchlib libgomp.a
%versbiarchlib libgomp.spec %versbiarchlib libgomp.spec

View File

@@ -1,58 +0,0 @@
From 7562f089a190953b8ef615b90b7b0520e812a930 Mon Sep 17 00:00:00 2001
From: Richard Biener <rguenther@suse.de>
Date: Mon, 6 Nov 2023 11:31:40 +0100
Subject: [PATCH] libstdc++/112351 - deal with __gthread_once failure during
locale init
To: gcc-patches@gcc.gnu.org
The following makes the C++98 locale init path follow the way the
C++11 performs initialization. This way we deal with pthread_once
failing, falling back to non-threadsafe initialization which, given we
initialize from the library, should be serialized by the dynamic
loader already.
PR libstdc++/112351
libstdc++-v3/
* src/c++98/locale.cc (locale::facet::_S_initialize_once):
Check whether _S_c_locale is already initialized.
(locale::facet::_S_get_c_locale): Always perform non-threadsafe
init when threadsafe init failed.
---
libstdc++-v3/src/c++98/locale.cc | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/libstdc++-v3/src/c++98/locale.cc b/libstdc++-v3/src/c++98/locale.cc
index d308140bab7..1ef0c394cd7 100644
--- a/libstdc++-v3/src/c++98/locale.cc
+++ b/libstdc++-v3/src/c++98/locale.cc
@@ -206,6 +206,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void
locale::facet::_S_initialize_once()
{
+ // Need to check this because we could get called once from
+ // _S_get_c_locale() when the program is single-threaded, and then again
+ // (via __gthread_once) when it's multi-threaded.
+ if (_S_c_locale)
+ return;
+
// Initialize the underlying locale model.
_S_create_c_locale(_S_c_locale, _S_c_name);
}
@@ -216,12 +222,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#ifdef __GTHREADS
if (__gthread_active_p())
__gthread_once(&_S_once, _S_initialize_once);
- else
#endif
- {
- if (!_S_c_locale)
- _S_initialize_once();
- }
+ if (__builtin_expect (!_S_c_locale, 0))
+ _S_initialize_once();
return _S_c_locale;
}
--
2.35.3

View File

@@ -226,7 +226,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -407,7 +407,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -554,7 +553,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -779,11 +777,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -791,6 +789,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -878,7 +879,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -947,7 +948,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -1008,6 +1009,8 @@ mkdir ../testresults
../contrib/test_summary | tee ../testresults/test_summary.txt ../contrib/test_summary | tee ../testresults/test_summary.txt
%endif %endif
%define __provides_exclude_from ^%{libsubdir}/.*\.so.*$
%install %install
# Make sure libtool re-linking libasan at install time doesn't drop the # Make sure libtool re-linking libasan at install time doesn't drop the
# libstdc++ reference to make asan of C++ modules in python work # libstdc++ reference to make asan of C++ modules in python work

View File

@@ -1,3 +1,65 @@
-------------------------------------------------------------------
Thu Jul 17 07:20:37 UTC 2025 - Richard Biener <rguenther@suse.com>
- Remove all %gcc_icecream mode cross-compilers and the corresponding
icecream backend subpackages. Instead use glibc-bootstrap only
configs for cross-x86_64-gcc (ipxe,ovmf,qemu), cross-ppc64-gcc (qemu)
and cross-arm-gcc (ovmf).
- Prune the use of update-alternatives from openSUSE Factory and
SLFO.
- Adjust crosses to conflict consistently where they did not
already and make them use unsuffixed binaries.
-------------------------------------------------------------------
Wed Jul 2 10:31:10 UTC 2025 - Richard Biener <rguenther@suse.com>
- Tune for power10 for SLES 16. [jsc#PED-12029]
- Tune for z15 for SLES 16. [jsc#PED-253]
-------------------------------------------------------------------
Thu Jun 5 17:02:16 UTC 2025 - Richard Biener <rguenther@suse.com>
- Update to GCC 13.4 release
* collects regression fixes from the last year
- Remove hppa icecream backend to avoid conflicts with the
hppa bootstrap compiler
-------------------------------------------------------------------
Wed Jun 4 11:38:59 UTC 2025 - Richard Biener <rguenther@suse.com>
- Re-enable AutoReqProv for cross packages but filter files processed
via __requires_exclude_from and __provides_exclude_from.
[boo#1219031]
- Exclude shared objects present for link editing in the GCC specific
subdirectory from provides processing via __provides_exclude_from.
[bsc#1244050][bsc#1243991]
-------------------------------------------------------------------
Tue Jun 3 12:36:35 UTC 2025 - Richard Biener <rguenther@suse.com>
- Make cross-*-gcc13-bootstrap package conflict with the non-bootstrap
variant conflict with the unversioned cross-*-gcc package.
-------------------------------------------------------------------
Fri May 30 13:49:58 UTC 2025 - Richard Biener <rguenther@suse.com>
- Update to gcc-13 branch head, ec78a0d9962f144b13c6da3ebe, git9730
* GCC 13.4 RC2
* Includes gcc13-bsc1216664.patch
-------------------------------------------------------------------
Tue Apr 22 14:31:57 UTC 2025 - Richard Biener <rguenther@suse.com>
- Fix s390x build by using a glob for installed libgcc_s.so and
libgcc_s.so.1 which only appears when the former is a linker
script. [bsc#1241549]
-------------------------------------------------------------------
Tue Apr 8 11:09:05 UTC 2025 - Richard Biener <rguenther@suse.com>
- Make sure link editing is done against our own shared library
copy rather than the installed system runtime. [bsc#1240788]
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Mar 27 10:05:46 UTC 2025 - Richard Biener <rguenther@suse.com> Thu Mar 27 10:05:46 UTC 2025 - Richard Biener <rguenther@suse.com>

View File

@@ -205,7 +205,7 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/ URL: https://gcc.gnu.org/
Version: 13.3.1+git9426 Version: 13.4.0+git9739
Release: 0 Release: 0
%define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1)
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
@@ -386,7 +386,6 @@ Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
Patch21: gdcflags.patch Patch21: gdcflags.patch
Patch23: gcc13-bsc1216664.patch
Patch24: gcc13-sanitizer-remove-crypt-interception.patch Patch24: gcc13-sanitizer-remove-crypt-interception.patch
Patch26: gcc13-pr101523.patch Patch26: gcc13-pr101523.patch
Patch27: gcc13-amdgcn-remove-fiji.patch Patch27: gcc13-amdgcn-remove-fiji.patch
@@ -2378,7 +2377,6 @@ ln -s newlib-4.3.0.20230120/newlib .
%patch -P 19 -p1 %patch -P 19 -p1
%endif %endif
%patch -P 21 -p1 %patch -P 21 -p1
%patch -P 23 -p1
%patch -P 24 -p1 %patch -P 24 -p1
%patch -P 26 -p1 %patch -P 26 -p1
%patch -P 27 -p1 %patch -P 27 -p1
@@ -2603,11 +2601,11 @@ amdgcn-amdhsa,\
--enable-gnu-indirect-function \ --enable-gnu-indirect-function \
%endif %endif
%endif %endif
--program-suffix=%{binsuffix} \
%ifarch %{disable_multilib_arch} %ifarch %{disable_multilib_arch}
--disable-multilib \ --disable-multilib \
%endif %endif
%if 0%{!?gcc_target_arch:1} %if 0%{!?gcc_target_arch:1}
--program-suffix=%{binsuffix} \
%ifarch ia64 %ifarch ia64
--with-system-libunwind \ --with-system-libunwind \
%else %else
@@ -2615,6 +2613,9 @@ amdgcn-amdhsa,\
%endif %endif
%endif %endif
%if 0%{?gcc_target_arch:1} %if 0%{?gcc_target_arch:1}
%if 0%{?gcc_accel:1} || %{suse_version} < 1600
--program-suffix=%{binsuffix} \
%endif
--program-prefix=%{gcc_target_arch}- \ --program-prefix=%{gcc_target_arch}- \
--target=%{gcc_target_arch} \ --target=%{gcc_target_arch} \
--disable-nls \ --disable-nls \
@@ -2702,7 +2703,7 @@ amdgcn-amdhsa,\
%endif %endif
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-cpu=power9 \ --with-cpu=power9 \
--with-tune=power9 \ --with-tune=power10 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -2771,7 +2772,7 @@ amdgcn-amdhsa,\
%endif %endif
%if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x" %if "%{TARGET_ARCH}" == "s390" || "%{TARGET_ARCH}" == "s390x"
%if %{suse_version} >= 1600 && !0%{?is_opensuse} %if %{suse_version} >= 1600 && !0%{?is_opensuse}
--with-tune=z14 --with-arch=z14 \ --with-tune=z15 --with-arch=z14 \
%else %else
%if %{suse_version} >= 1310 %if %{suse_version} >= 1310
--with-tune=zEC12 --with-arch=z196 \ --with-tune=zEC12 --with-arch=z196 \
@@ -2832,6 +2833,8 @@ mkdir ../testresults
../contrib/test_summary | tee ../testresults/test_summary.txt ../contrib/test_summary | tee ../testresults/test_summary.txt
%endif %endif
%define __provides_exclude_from ^%{libsubdir}/.*\.so.*$
%install %install
# Make sure libtool re-linking libasan at install time doesn't drop the # Make sure libtool re-linking libasan at install time doesn't drop the
# libstdc++ reference to make asan of C++ modules in python work # libstdc++ reference to make asan of C++ modules in python work
@@ -2920,7 +2923,8 @@ if ! test -z "$dir_ml"; then
fi fi
%endif %endif
# move shared libs from versionspecific dir to main libdir # move shared libs from versionspecific dir to main libdir, keep a copy
# for link-editing in the .so
for libname in \ for libname in \
%if %{build_fortran} %if %{build_fortran}
libgfortran \ libgfortran \
@@ -2984,8 +2988,16 @@ for libname in \
mv $lib %{buildroot}/%{mainlibdir}/ mv $lib %{buildroot}/%{mainlibdir}/
done done
if test -L %{buildroot}/%{versmainlibdir}/$libname.so; then if test -L %{buildroot}/%{versmainlibdir}/$libname.so; then
ln -sf %{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ cp %{buildroot}/%{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so` \
%{buildroot}/%{versmainlibdir}/$libname.so %{buildroot}/%{versmainlibdir}/$libname.so.tem
rm %{buildroot}/%{versmainlibdir}/$libname.so
mv %{buildroot}/%{versmainlibdir}/$libname.so.tem %{buildroot}/%{versmainlibdir}/$libname.so
strip -g %{buildroot}/%{versmainlibdir}/$libname.so
else
if test -e %{buildroot}/%{versmainlibdir}/$libname.so; then
echo ERROR: unexpected linker script for $libname.so
exit 1
fi
fi fi
%if %{biarch} %if %{biarch}
if test -d %{buildroot}/%{versmainlibdirbi}; then if test -d %{buildroot}/%{versmainlibdirbi}; then
@@ -2993,8 +3005,16 @@ for libname in \
mv $lib %{buildroot}/%{mainlibdirbi}/ mv $lib %{buildroot}/%{mainlibdirbi}/
done done
if test -L %{buildroot}/%{versmainlibdirbi}/$libname.so; then if test -L %{buildroot}/%{versmainlibdirbi}/$libname.so; then
ln -sf %{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \ cp %{buildroot}/%{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so` \
%{buildroot}/%{versmainlibdirbi}/$libname.so %{buildroot}/%{versmainlibdirbi}/$libname.so.tem
rm %{buildroot}/%{versmainlibdirbi}/$libname.so
mv %{buildroot}/%{versmainlibdirbi}/$libname.so.tem %{buildroot}/%{versmainlibdirbi}/$libname.so
strip -g %{buildroot}/%{versmainlibdirbi}/$libname.so
else
if test -e %{buildroot}/%{versmainlibdirbi}/$libname.so; then
echo ERROR: unexpected linker script for $libname.so
exit 1
fi
fi fi
fi fi
%endif %endif
@@ -3014,40 +3034,50 @@ sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' %{buildroot}/%{_
%endif %endif
%endif %endif
# Move libgcc_s around # Move libgcc_s around, make sure a version specific copy is available
# for link editing
chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s}
if test -L %{buildroot}/%{_lib}/libgcc_s.so; then if test -L %{buildroot}/%{_lib}/libgcc_s.so; then
rm -f %{buildroot}/%{_lib}/libgcc_s.so rm -f %{buildroot}/%{_lib}/libgcc_s.so
ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so
strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so
else else
mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}/%{versmainlibdir}/ mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}/%{versmainlibdir}/
cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s}
strip -g %{buildroot}/%{versmainlibdir}/libgcc_s.so.%{libgcc_s}
fi fi
chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s}
%if 0%{?usrmerged} %if 0%{?usrmerged}
mv %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{_slibdir}/libgcc_s.so.%{libgcc_s} mv %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{_slibdir}/libgcc_s.so.%{libgcc_s}
%endif %endif
%if %{biarch} %if %{biarch}
chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s}
%if %{build_primary_64bit} %if %{build_primary_64bit}
if test -L %{buildroot}/lib/libgcc_s.so; then if test -L %{buildroot}/lib/libgcc_s.so; then
rm -f %{buildroot}/lib/libgcc_s.so rm -f %{buildroot}/lib/libgcc_s.so
ln -sf /lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so
strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so
else else
mv %{buildroot}/lib/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/ mv %{buildroot}/lib/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/
cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s}
strip -g %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so.%{libgcc_s}
fi fi
ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/libgcc_s_32.so ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}/%{versmainlibdirbi32}/libgcc_s_32.so
chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s}
%if 0%{?usrmerged} %if 0%{?usrmerged}
mv %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir}/libgcc_s.so.%{libgcc_s} mv %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir}/libgcc_s.so.%{libgcc_s}
%endif %endif
%else %else
# 32-bit biarch systems # 32-bit biarch systems
chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s}
if test -L %{buildroot}/lib64/libgcc_s.so; then if test -L %{buildroot}/lib64/libgcc_s.so; then
rm -f %{buildroot}/lib64/libgcc_s.so rm -f %{buildroot}/lib64/libgcc_s.so
ln -sf /lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so
strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so
else else
mv %{buildroot}/lib64/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/ mv %{buildroot}/lib64/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/
cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s}
strip -g %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so.%{libgcc_s}
fi fi
ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/libgcc_s_64.so ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}/%{versmainlibdirbi64}/libgcc_s_64.so
chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s}
%if 0%{?usrmerged} %if 0%{?usrmerged}
mv %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir64}/libgcc_s.so.%{libgcc_s} mv %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{slibdir64}/libgcc_s.so.%{libgcc_s}
%endif %endif
@@ -3449,7 +3479,7 @@ cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc13-locale.lang
%versmainlib *crt*.o %versmainlib *crt*.o
%versmainlib libgcc*.a %versmainlib libgcc*.a
%versmainlib libgcov.a %versmainlib libgcov.a
%versmainlib libgcc_s*.so %versmainlib libgcc_s*.so*
%versmainlib libgomp.so %versmainlib libgomp.so
%versmainlib libgomp.a %versmainlib libgomp.a
%versmainlib libgomp.spec %versmainlib libgomp.spec
@@ -3515,7 +3545,7 @@ cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc13-locale.lang
%versbiarchlib *crt*.o %versbiarchlib *crt*.o
%versbiarchlib libgcc*.a %versbiarchlib libgcc*.a
%versbiarchlib libgcov.a %versbiarchlib libgcov.a
%versbiarchlib libgcc_s*.so %versbiarchlib libgcc_s*.so*
%versbiarchlib libgomp.so %versbiarchlib libgomp.so
%versbiarchlib libgomp.a %versbiarchlib libgomp.a
%versbiarchlib libgomp.spec %versbiarchlib libgomp.spec