Compare commits

2 Commits
main ... 1.1

40 changed files with 6043 additions and 998 deletions

View File

@@ -14,8 +14,13 @@
<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,16 +87,10 @@ add_newlib_cross() {
} }
add_glibc_cross() { add_glibc_cross() {
add_cross $1-bootstrap $2 $3 "%define gcc_target_glibc 1 add_cross $1-bootstrap $2 $3 "%define gcc_libc_bootstrap 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
# #
@@ -108,17 +102,18 @@ 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_glibc_bootstrap_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi add_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi %define gcc_icecream 1
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_glibc_bootstrap_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux add_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux %define gcc_icecream 1
#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_glibc_bootstrap_cross cross-ppc64-gcc$base_ver ppc64 powerpc64-suse-linux add_cross cross-ppc64-gcc$base_ver ppc64 powerpc64-suse-linux %define gcc_icecream 1
#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,7 +19,6 @@
%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
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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,8 +19,7 @@
%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_target_glibc 1 %define gcc_icecream 1
%define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
%define build_cp 0%{!?gcc_accel:1} %define build_cp 0%{!?gcc_accel:1}
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +135,7 @@ 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,24 +294,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +366,7 @@ 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
@@ -586,11 +591,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
@@ -598,9 +603,6 @@ 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 \
@@ -688,7 +690,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +759,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +837,6 @@ 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}
@@ -863,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.
@@ -888,7 +887,6 @@ 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
@@ -896,8 +894,6 @@ 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
@@ -962,7 +958,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1014,15 @@ 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
@@ -1041,7 +1033,6 @@ 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
@@ -1053,16 +1044,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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++

1086
cross-hppa-gcc13.spec Normal file

File diff suppressed because it is too large Load Diff

1086
cross-m68k-gcc13.spec Normal file

File diff suppressed because it is too large Load Diff

1086
cross-mips-gcc13.spec Normal file

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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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,8 +19,7 @@
%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_target_glibc 1 %define gcc_icecream 1
%define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
%define build_cp 0%{!?gcc_accel:1} %define build_cp 0%{!?gcc_accel:1}
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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,6 @@
%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
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +135,7 @@ 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,24 +294,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +366,7 @@ 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
@@ -586,11 +591,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
@@ -598,9 +603,6 @@ 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 \
@@ -688,7 +690,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +759,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +837,6 @@ 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}
@@ -863,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.
@@ -888,7 +887,6 @@ 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
@@ -896,8 +894,6 @@ 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
@@ -962,7 +958,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1014,15 @@ 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
@@ -1041,7 +1033,6 @@ 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
@@ -1053,16 +1044,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +135,7 @@ 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,24 +294,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +366,7 @@ 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
@@ -586,11 +591,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
@@ -598,9 +603,6 @@ 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 \
@@ -688,7 +690,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +759,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +837,6 @@ 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}
@@ -863,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.
@@ -888,7 +887,6 @@ 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
@@ -896,8 +894,6 @@ 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
@@ -962,7 +958,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1014,15 @@ 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
@@ -1041,7 +1033,6 @@ 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
@@ -1053,16 +1044,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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,6 @@
%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
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +135,7 @@ 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,24 +294,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +366,7 @@ 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
@@ -586,11 +591,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
@@ -598,9 +603,6 @@ 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 \
@@ -688,7 +690,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +759,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +837,6 @@ 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}
@@ -863,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.
@@ -888,7 +887,6 @@ 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
@@ -896,8 +894,6 @@ 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
@@ -962,7 +958,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1014,15 @@ 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
@@ -1041,7 +1033,6 @@ 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
@@ -1053,16 +1044,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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,6 @@
%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
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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
@@ -292,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -361,6 +365,7 @@ 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
@@ -585,11 +590,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
@@ -597,9 +602,6 @@ 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 \
@@ -687,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -756,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -834,9 +836,6 @@ 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 +861,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,7 +886,6 @@ 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
@@ -895,8 +893,6 @@ 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
@@ -961,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1017,19 +1013,15 @@ 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
@@ -1040,7 +1032,6 @@ 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
@@ -1052,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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++

1086
cross-sparc-gcc13.spec Normal file

File diff suppressed because it is too large Load Diff

1086
cross-sparc64-gcc13.spec Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -19,8 +19,7 @@
%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_target_glibc 1 %define gcc_icecream 1
%define gcc_libc_bootstrap 1
# nospeccleaner # nospeccleaner
%define build_cp 0%{!?gcc_accel:1} %define build_cp 0%{!?gcc_accel:1}
@@ -108,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.4.0+git9739 Version: 13.3.1+git9426
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,6 +134,7 @@ 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,24 +293,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc13
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -362,6 +365,7 @@ 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
@@ -586,11 +590,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
@@ -598,9 +602,6 @@ 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 \
@@ -688,7 +689,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -757,7 +758,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -835,9 +836,6 @@ 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}
@@ -863,7 +861,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.
@@ -888,7 +886,6 @@ 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
@@ -896,8 +893,6 @@ 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
@@ -962,7 +957,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -1018,19 +1013,15 @@ 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
@@ -1041,7 +1032,6 @@ 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
@@ -1053,16 +1043,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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,24 +195,27 @@ 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_accel:1} %if 0%{?gcc_target_newlib:1}%{?gcc_target_glibc: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.
Provides: %{gcc_target_arch}-gcc Conflicts: cross-%{cross_arch}-gcc@base_ver@
Conflicts: %{gcc_target_arch}-gcc
Conflicts: %{pkgname}-bootstrap
%endif %endif
#!BuildIgnore: gcc-PIE #!BuildIgnore: gcc-PIE
%if %{build_cp} %if 0%{build_cp:1}
# 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
%if 0%{!?gcc_accel:1} && %{suse_version} < 1600 AutoReqProv: off
%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
@@ -276,9 +279,6 @@ 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,7 +330,6 @@ 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
@@ -338,8 +337,6 @@ 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
@@ -404,7 +401,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} && %{suse_version} < 1600 %if 0%{!?gcc_accel:1}
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}
@@ -460,19 +457,15 @@ 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
@@ -483,7 +476,6 @@ 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
@@ -495,16 +487,13 @@ 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++
%{_prefix}/bin/%{gcc_target_arch}-g++
%if %{suse_version} < 1600
%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix} %{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
%{_prefix}/bin/%{gcc_target_arch}-c++
%{_prefix}/bin/%{gcc_target_arch}-g++
%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++
@@ -538,4 +527,4 @@ fi
%exclude %{_prefix}/%{gcc_target_arch}/bin %exclude %{_prefix}/%{gcc_target_arch}/bin
%endif %endif
%changelog -n %{pkgname} %changelog -n cross-%{pkgname}-gcc@base_ver@

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

Binary file not shown.

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

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.4.0+git9739 Version: 13.3.1+git9426
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,6 +391,7 @@ 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
@@ -1367,6 +1368,7 @@ 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
@@ -1591,11 +1593,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
@@ -1603,9 +1605,6 @@ 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 \
@@ -1693,7 +1692,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -1762,7 +1761,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -1826,8 +1825,6 @@ 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
@@ -1917,8 +1914,7 @@ if ! test -z "$dir_ml"; then
fi fi
%endif %endif
# move shared libs from versionspecific dir to main libdir, keep a copy # move shared libs from versionspecific dir to main libdir
# for link-editing in the .so
for libname in \ for libname in \
%if %{build_fortran} %if %{build_fortran}
libgfortran \ libgfortran \
@@ -1982,16 +1978,8 @@ 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
cp %{buildroot}/%{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so` \ ln -sf %{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \
%{buildroot}/%{versmainlibdir}/$libname.so.tem %{buildroot}/%{versmainlibdir}/$libname.so
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
@@ -1999,16 +1987,8 @@ 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
cp %{buildroot}/%{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so` \ ln -sf %{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \
%{buildroot}/%{versmainlibdirbi}/$libname.so.tem %{buildroot}/%{versmainlibdirbi}/$libname.so
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
@@ -2028,50 +2008,40 @@ sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' %{buildroot}/%{_
%endif %endif
%endif %endif
# Move libgcc_s around, make sure a version specific copy is available # Move libgcc_s around
# 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
cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so ln -sf /%{_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
cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so ln -sf /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
cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so ln -sf /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
@@ -2477,7 +2447,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
@@ -2543,7 +2513,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

58
gcc13-bsc1216664.patch Normal file
View File

@@ -0,0 +1,58 @@
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.4.0+git9739 Version: 13.3.1+git9426
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,6 +407,7 @@ 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
@@ -553,6 +554,7 @@ 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
@@ -777,11 +779,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
@@ -789,9 +791,6 @@ 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 \
@@ -879,7 +878,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -948,7 +947,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -1009,8 +1008,6 @@ 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,65 +1,3 @@
-------------------------------------------------------------------
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.4.0+git9739 Version: 13.3.1+git9426
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,6 +386,7 @@ 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
@@ -2377,6 +2378,7 @@ 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
@@ -2601,11 +2603,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
@@ -2613,9 +2615,6 @@ 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 \
@@ -2703,7 +2702,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=power10 \ --with-tune=power9 \
%else %else
%if %{suse_version} >= 1350 %if %{suse_version} >= 1350
--with-cpu=power8 \ --with-cpu=power8 \
@@ -2772,7 +2771,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=z15 --with-arch=z14 \ --with-tune=z14 --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 \
@@ -2833,8 +2832,6 @@ 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
@@ -2923,8 +2920,7 @@ if ! test -z "$dir_ml"; then
fi fi
%endif %endif
# move shared libs from versionspecific dir to main libdir, keep a copy # move shared libs from versionspecific dir to main libdir
# for link-editing in the .so
for libname in \ for libname in \
%if %{build_fortran} %if %{build_fortran}
libgfortran \ libgfortran \
@@ -2988,16 +2984,8 @@ 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
cp %{buildroot}/%{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so` \ ln -sf %{mainlibdir}/`readlink %{buildroot}/%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \
%{buildroot}/%{versmainlibdir}/$libname.so.tem %{buildroot}/%{versmainlibdir}/$libname.so
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
@@ -3005,16 +2993,8 @@ 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
cp %{buildroot}/%{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so` \ ln -sf %{mainlibdirbi}/`readlink %{buildroot}/%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'` \
%{buildroot}/%{versmainlibdirbi}/$libname.so.tem %{buildroot}/%{versmainlibdirbi}/$libname.so
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
@@ -3034,50 +3014,40 @@ sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' %{buildroot}/%{_
%endif %endif
%endif %endif
# Move libgcc_s around, make sure a version specific copy is available # Move libgcc_s around
# 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
cp %{buildroot}//%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdir}/libgcc_s.so ln -sf /%{_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
cp %{buildroot}/lib/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi32}/libgcc_s.so ln -sf /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
cp %{buildroot}/lib64/libgcc_s.so.%{libgcc_s} %{buildroot}/%{versmainlibdirbi64}/libgcc_s.so ln -sf /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
@@ -3479,7 +3449,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
@@ -3545,7 +3515,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