Accepting request 892216 from devel:gcc

- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.

- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
  * Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.

- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
  * Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
  gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
  yet work.  Package expanded symlinks so concurrent installs do
  not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
  in SLES15 and older.

- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
  * Includes GCC 11.1 RC1

- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.

- Disable nvptx offloading on aarch64 since it doesn't work.

- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.

- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
  longer apply.

OBS-URL: https://build.opensuse.org/request/show/892216
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gcc11?expand=0&rev=3
This commit is contained in:
Dominique Leuenberger 2021-05-25 19:07:38 +00:00 committed by Git OBS Bridge
commit 55afe6e9d5
63 changed files with 3164 additions and 914 deletions

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch aarch64-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch amdgcn-amdhsa
%define gcc_accel 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch arm-suse-linux-gnueabi
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -22,12 +22,12 @@
%define gcc_target_newlib 1
%define gcc_libc_bootstrap 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -44,7 +44,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -115,7 +115,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -128,17 +128,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -186,7 +187,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -202,8 +209,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -221,16 +230,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -284,7 +294,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -295,9 +305,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -305,6 +312,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -391,16 +403,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -463,7 +477,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -752,13 +772,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch arm-none-eabi
%define gcc_target_newlib 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch avr
%define gcc_libc_bootstrap 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch avr
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -22,12 +22,12 @@
%define gcc_target_newlib 1
%define gcc_libc_bootstrap 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -44,7 +44,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -115,7 +115,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -128,17 +128,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -186,7 +187,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -202,8 +209,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -221,16 +230,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -284,7 +294,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -295,9 +305,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -305,6 +312,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -391,16 +403,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -463,7 +477,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -752,13 +772,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch epiphany-elf
%define gcc_target_newlib 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch hppa-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch i586-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch m68k-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch mips-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch nvptx-none
%define gcc_accel 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch powerpc64-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch powerpc64le-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -22,12 +22,12 @@
%define gcc_target_newlib 1
%define gcc_libc_bootstrap 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -44,7 +44,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -115,7 +115,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -128,17 +128,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -186,7 +187,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -202,8 +209,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -221,16 +230,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -284,7 +294,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -295,9 +305,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -305,6 +312,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -391,16 +403,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -463,7 +477,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -752,13 +772,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch riscv64-elf
%define gcc_target_newlib 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch riscv64-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -22,12 +22,12 @@
%define gcc_target_newlib 1
%define gcc_libc_bootstrap 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -44,7 +44,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -115,7 +115,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -128,17 +128,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -186,7 +187,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -202,8 +209,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -221,16 +230,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -284,7 +294,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -295,9 +305,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -305,6 +312,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -391,16 +403,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -463,7 +477,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -752,13 +772,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch rx-elf
%define gcc_target_newlib 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch s390x-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch sparc-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch sparc64-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -21,12 +21,12 @@
%define gcc_target_arch x86_64-suse-linux
%define gcc_icecream 1
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -43,7 +43,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -114,7 +114,7 @@ Name: %{pkgname}
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Version: 11.1.1+git121
Release: 0
%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/+/-/')
@ -127,17 +127,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -185,7 +186,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -201,8 +208,10 @@ BuildRequires: makeinfo
%else
BuildRequires: texinfo
%endif
BuildRequires: isl-devel
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -220,16 +229,17 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
Requires: nvptx-tools
ExclusiveArch: aarch64
ExclusiveArch:
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: lld
BuildRequires: llvm
BuildRequires: llvm11
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
Requires: lld
Requires: llvm
Requires: llvm11
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
# technically also SLE12 SP5 but do not bother there
%if %{suse_version} >= 1550 || 0%{?sle_version:%sle_version} >= 150100
@ -283,7 +293,7 @@ only, it is not intended for any other use.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -294,9 +304,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -304,6 +311,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -390,16 +402,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -462,7 +476,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -751,13 +771,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,11 +1,11 @@
#
# spec file for package gcc (Version 4.0.1)
# spec file template for cross packages of gcc${version}
#
# Copyright (c) 2005 SUSE Linux AG, Nuernberg, Germany.
# Copyright (c) 2021 SUSE LLC
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://www.suse.de/feedback/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# nospeccleaner
@ -22,7 +22,7 @@ ExclusiveArch: do-not-build
%define build_libjava 0
%define build_java 0
%define build_fortran 0
%define build_fortran 0%{?gcc_accel:1}
%define build_objc 0
%define build_objcp 0
%define build_go 0
@ -98,7 +98,13 @@ BuildRequires: cross-%{binutils_target}-binutils
Requires: cross-%{binutils_target}-binutils
%endif
%endif
%define hostsuffix %{nil}
%if 0%{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%else
BuildRequires: gcc-c++
%endif
%if %{suse_version} > 1500
BuildRequires: libzstd-devel
%endif
@ -115,7 +121,9 @@ BuildRequires: makeinfo
BuildRequires: texinfo
%endif
BuildRequires: zlib-devel
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%ifarch ia64
BuildRequires: libunwind-devel
%endif
@ -133,14 +141,15 @@ BuildRequires: cross-%cross_arch-glibc-devel
BuildRequires: nvptx-tools
Requires: nvptx-tools
Requires: cross-nvptx-newlib-devel >= %{version}-%{release}
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64
%define nvptx_newlib 1
%endif
%if "%{cross_arch}" == "amdgcn"
# amdgcn uses the llvm assembler and linker
BuildRequires: llvm
# amdgcn uses the llvm assembler and linker, llvm-mc-12 doesn't
# work at the moment so require llvm11
BuildRequires: llvm11
BuildRequires: lld
Requires: llvm
Requires: llvm11
Requires: lld
Requires: cross-amdgcn-newlib-devel >= %{version}-%{release}
# SLE12 does not fulfil build requirements for GCN, SLE15 SP1 does
@ -179,7 +188,6 @@ BuildRequires: update-alternatives
Requires(post): update-alternatives
Requires(preun): update-alternatives
Summary: The GNU Compiler Collection targeting %{cross_arch}
License: GPL-3.0-or-later
%description
The GNU Compiler Collection as a cross-compiler targeting %{cross_arch}.
@ -299,13 +307,14 @@ rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}/install-tools
rm -rf $RPM_BUILD_ROOT%{targetlibsubdir}
%endif
# for amdgcn install the symlinks to the llvm tools
# follow alternatives symlinks to the hardcoded version requirement
%if "%{TARGET_ARCH}" == "amdgcn"
mkdir -p $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin
ln -s /usr/bin/llvm-ar $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s /usr/bin/llvm-mc $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s `readlink -f /usr/bin/llvm-ar` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ar
ln -s `readlink -f /usr/bin/llvm-mc` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/as
ln -s /usr/bin/lld $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ld
ln -s /usr/bin/llvm-nm $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s /usr/bin/llvm-ranlib $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s `readlink -f /usr/bin/llvm-nm` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/nm
ln -s `readlink -f /usr/bin/llvm-ranlib` $RPM_BUILD_ROOT%{_prefix}/amdgcn-amdhsa/bin/ranlib
ln -s %{_prefix}/amdgcn-amdhsa/bin/ar $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ar
ln -s %{_prefix}/amdgcn-amdhsa/bin/as $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-as
ln -s %{_prefix}/amdgcn-amdhsa/bin/ld $RPM_BUILD_ROOT%{_prefix}/bin/amdgcn-amdhsa-ld

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:70524da809ad39ceed6a940f39ccd5e3fe8d436eedba95ff17ee898c0c0fca4e
size 79144740

3
gcc-11.1.1+git121.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e1a3e3ae5e2cdb56b0104d0596c5820eabc77d79bc9333684d16a6c1b5bcd06
size 80379220

View File

@ -1,7 +1,7 @@
#
# spec file for package gcc9
# spec file for package gcc${version}
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -80,7 +80,7 @@
%define build_d 0
%endif
%ifarch x86_64 aarch64
%ifarch x86_64
%define build_nvptx 1
%else
%define build_nvptx 0
@ -186,6 +186,16 @@
%define selfconflict() otherproviders(%1)
%endif
# SRC-COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.1.1+git121
Release: 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 binsuffix -@base_ver@
# SRC-COMMON-END
Name: gcc@base_ver@
BuildRequires: xz
@ -215,6 +225,7 @@ BuildRequires: systemtap-headers
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%define hostsuffix %{nil}
%if %{build_ada}
%if 0%{?gcc_version:%{gcc_version}} > @base_ver@
%define hostsuffix %{binsuffix}
@ -231,6 +242,11 @@ BuildRequires: gcc-ada
%endif
%endif
%endif
# We now require a C++ 11 capable compiler for bootstrapping
%if %{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%endif
%if 0%{?building_testsuite:1}
# For building the libstdc++ API reference
BuildRequires: doxygen
@ -243,6 +259,9 @@ BuildRequires: libunwind-devel
BuildRequires: dejagnu
BuildRequires: expect
BuildRequires: gdb
%if %{build_go}
BuildRequires: procps
%endif
%if %{build_nvptx}
BuildRequires: cross-nvptx-gcc@base_ver@
BuildRequires: cross-nvptx-newlib@base_ver@-devel
@ -283,17 +302,6 @@ BuildRequires: cross-amdgcn-newlib@base_ver@-devel
%define build_primary_64bit 0
%endif
# SRC-COMMON-BEGIN
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Release: 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 binsuffix -@base_ver@
# SRC-COMMON-END
%if !0%{?building_testsuite:1}
Requires: binutils glibc-devel
Requires: cpp@base_ver@ = %{version}-%{release}
@ -340,17 +348,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -679,9 +688,11 @@ Summary: GNU Ada Runtime Libraries
License: GPL-3.0 WITH GCC-exception-3.1
Group: System/Libraries
Provides: libgnarl-@base_ver@@variant@ = %{version}-%{release}
Conflicts: %selfconflict libgnarl-@base_ver@@variant@
# FIXME: remove %{after} service-format_spec_file is fixed
# https://github.com/openSUSE/obs-service-format_spec_file/issues/46
Conflicts: %selfconflict libgnarl-@base_ver@@variant@%{nil}
Provides: libgnat-@base_ver@@variant@ = %{version}-%{release}
Conflicts: %selfconflict libgnat-@base_ver@@variant@
Conflicts: %selfconflict libgnat-@base_ver@@variant@%{nil}
%description -n libada@base_ver@@variant@
This package contains the shared libraries required to run programs
@ -1005,6 +1016,7 @@ Runtime library for the GNU D language.
Summary: The GNU Compiler Collection JIT library
License: GPL-3.0-or-later
Provides: libgccjit%{libgccjit_sover} = %{version}-%{release}
Requires: gcc@base_ver@
%description -n libgccjit%{libgccjit_sover}%{libgccjit_suffix}
Support for embedding GCC inside programs and libraries
@ -1132,7 +1144,7 @@ Results from running the gcc and target library testsuites.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -1143,9 +1155,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -1153,6 +1162,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -1239,16 +1253,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -1311,7 +1327,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -1779,7 +1801,12 @@ chmod 644 ../testresults/*
%endif
# GCC-TESTSUITE-DELETE-BEGIN
# Remove files that we do not need to clean up filelist
# Preserve %{GCCDIST}-gcc%{binsuffix} binary for libgccjit as it is used as a driver
mv %{buildroot}/%{_prefix}/bin/%{GCCDIST}-gcc%{binsuffix} %{buildroot}
rm -f %{buildroot}/%{_prefix}/bin/%{GCCDIST}-*
mv %{buildroot}/%{GCCDIST}-gcc%{binsuffix} %{buildroot}/%{_prefix}/bin/
rm -rf %{buildroot}/%{libsubdir}/install-tools
rm -f %{buildroot}/%{libsubdir}/include-fixed/zutil.h
rm -f %{buildroot}/%{libsubdir}/include-fixed/linux/a.out.h
@ -1899,6 +1926,7 @@ cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc@base_ver@-locale.lang
%endif
%endif
%{_prefix}/bin/gcc%{binsuffix}
%{_prefix}/bin/%{GCCDIST}-gcc%{binsuffix}
%{_prefix}/bin/gcov%{binsuffix}
%{_prefix}/bin/gcov-dump%{binsuffix}
%{_prefix}/bin/gcov-tool%{binsuffix}

View File

@ -0,0 +1,22 @@
diff --git a/gcc/config/gcn/gcn.c b/gcc/config/gcn/gcn.c
index 9660ca6eaa4..7635644a7b7 100644
--- a/gcc/config/gcn/gcn.c
+++ b/gcc/config/gcn/gcn.c
@@ -6251,9 +6251,17 @@ gcn_dwarf_register_span (rtx rtl)
return p;
}
+static void
+gcn_override_options_after_change (void)
+{
+ flag_reorder_blocks_and_partition = 0;
+}
+
/* }}} */
/* {{{ TARGET hook overrides. */
+#undef TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE
+#define TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE gcn_override_options_after_change
#undef TARGET_ADDR_SPACE_ADDRESS_MODE
#define TARGET_ADDR_SPACE_ADDRESS_MODE gcn_addr_space_address_mode
#undef TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P

View File

@ -0,0 +1,29 @@
diff --git a/gcc/common.opt b/gcc/common.opt
index a75b44ee47e..2d33861ad1f 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -3175,7 +3175,7 @@ Common Driver JoinedOrMissing Negative(gdwarf-)
Generate debug information in default version of DWARF format.
gdwarf-
-Common Driver Joined UInteger Var(dwarf_version) Init(5) Negative(gstabs)
+Common Driver Joined UInteger Var(dwarf_version) Init(4) Negative(gstabs)
Generate debug information in DWARF v2 (or later) format.
gdwarf32
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 4a87b9ef8e8..4f1adcfe621 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -9638,9 +9638,8 @@ possible.
@opindex gdwarf
Produce debugging information in DWARF format (if that is supported).
The value of @var{version} may be either 2, 3, 4 or 5; the default
-version for most targets is 5 (with the exception of VxWorks, TPF and
-Darwin/Mac OS X, which default to version 2, and AIX, which defaults
-to version 4).
+version for most targets is 4 (with the exception of VxWorks, TPF and
+Darwin/Mac OS X, which default to version 2).
Note that with DWARF Version 2, some ports require and always
use some non-conflicting DWARF 3 extensions in the unwind tables.

View File

@ -1,7 +1,75 @@
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -19,7 +19,7 @@
%define building_testsuite 1
%define run_tests 1
#
# spec file for package gcc9
# spec file for package gcc${version}
#
#
# All modifications and additions to the file contributed by third parties
@ -99,7 +99,7 @@
%define build_d 0
%endif
%ifarch x86_64 aarch64
%ifarch x86_64
%define build_nvptx 1
%else
%define build_nvptx 0
@ -203,6 +203,15 @@
%define selfconflict() otherproviders(%1)
%endif
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.1.1+git121
Release: 0
%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 binsuffix -11
Name: gcc11-testresults
BuildRequires: xz
%if %{suse_version} > 1500
@ -231,6 +240,7 @@ BuildRequires: systemtap-headers
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%define hostsuffix %{nil}
%if %{build_ada}
%if 0%{?gcc_version:%{gcc_version}} > 11
%define hostsuffix %{binsuffix}
@ -247,6 +257,11 @@ BuildRequires: gcc-ada
%endif
%endif
%endif
# We now require a C++ 11 capable compiler for bootstrapping
%if %{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%endif
%if 0%{?building_testsuite:1}
# For building the libstdc++ API reference
BuildRequires: doxygen
@ -259,6 +274,9 @@ BuildRequires: libunwind-devel
BuildRequires: dejagnu
BuildRequires: expect
BuildRequires: gdb
%if %{build_go}
BuildRequires: procps
%endif
%if %{build_nvptx}
BuildRequires: cross-nvptx-gcc11
BuildRequires: cross-nvptx-newlib11-devel
@ -299,15 +317,6 @@ BuildRequires: cross-amdgcn-newlib11-devel
%define build_primary_64bit 0
%endif
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Release: 0
%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 binsuffix -11
%if !0%{?building_testsuite:1}
Requires: binutils
Requires: cpp11 = %{version}-%{release}
@ -353,17 +362,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -474,7 +484,7 @@ Results from running the gcc and target library testsuites.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -485,9 +495,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -495,6 +502,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -581,16 +593,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -653,7 +667,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc

View File

@ -1,12 +1,75 @@
-------------------------------------------------------------------
Mon Feb 8 17:41:34 UTC 2021 - Martin Liška <mliska@suse.cz>
Mon May 10 12:08:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to efcd941e86b507d77e90a1b13f621e036eacdb45.
- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121
- Disable build-id generation on non-glibc targeting cross compilers.
-------------------------------------------------------------------
Fri Feb 5 18:04:49 UTC 2021 - Martin Liška <mliska@suse.cz>
Thu Apr 29 08:39:32 UTC 2021 - Richard Biener <rguenther@suse.com>
- Bump to 7a18bc4ae62081021f4fd90d591a588cac931f77.
- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67
* Includes GCC 11.1 release
- Drop upstreamed gcc11-no-offload.patch.
-------------------------------------------------------------------
Wed Apr 21 12:31:23 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31
* Includes GCC 11.1 RC2
- Add gcc11-no-offload.patch and
gcc11-amdgcn-disable-hot-cold-partitioning.patch.
- Enable gfortran for offload compilers.
- BuildRequire procps from gcc11-testresults if we test go.
- Force using llvm11 for amdgcn offloading since llvm12 doesn't
yet work. Package expanded symlinks so concurrent installs do
not pull in another llvm-mc.
- Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation
in SLES15 and older.
-------------------------------------------------------------------
Tue Apr 20 14:57:07 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10
* Includes GCC 11.1 RC1
-------------------------------------------------------------------
Fri Apr 16 19:54:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.
-------------------------------------------------------------------
Thu Apr 15 11:22:19 UTC 2021 - Richard Biener <rguenther@suse.com>
- Disable nvptx offloading on aarch64 since it doesn't work.
-------------------------------------------------------------------
Wed Apr 14 19:51:08 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.
-------------------------------------------------------------------
Fri Apr 9 12:25:39 UTC 2021 - Richard Biener <rguenther@suse.com>
- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no
longer apply.
- Arrange for a C++ 11 capable host compiler to be available.
- Do not require ISL for cross compiler builds on old distros.
-------------------------------------------------------------------
Thu Apr 8 19:52:03 UTC 2021 - Martin Liška <mliska@suse.cz>
- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.
-------------------------------------------------------------------
Mon Mar 8 14:10:15 UTC 2021 - Richard Biener <rguenther@suse.com>
- Update embedded newlib version from 3.3.0 to 4.1.0.
-------------------------------------------------------------------
Mon Feb 22 10:44:40 UTC 2021 - Martin Liška <mliska@suse.cz>
- Pack %{GCCDIST}-gcc%{binsuffix}.
- Add a new dependency for libgccjit.
-------------------------------------------------------------------
Fri Feb 5 08:40:22 UTC 2021 - Martin Liška <mliska@suse.cz>

View File

@ -81,7 +81,7 @@
%define build_d 0
%endif
%ifarch x86_64 aarch64
%ifarch x86_64
%define build_nvptx 1
%else
%define build_nvptx 0
@ -185,6 +185,15 @@
%define selfconflict() otherproviders(%1)
%endif
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.1.1+git121
Release: 0
%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 binsuffix -11
Name: gcc11
BuildRequires: xz
%if %{suse_version} > 1500
@ -213,6 +222,7 @@ BuildRequires: systemtap-headers
%if %{suse_version} >= 1230
BuildRequires: isl-devel
%endif
%define hostsuffix %{nil}
%if %{build_ada}
%if 0%{?gcc_version:%{gcc_version}} > 11
%define hostsuffix %{binsuffix}
@ -229,6 +239,11 @@ BuildRequires: gcc-ada
%endif
%endif
%endif
# We now require a C++ 11 capable compiler for bootstrapping
%if %{suse_version} < 1220
%define hostsuffix -4.8
BuildRequires: gcc48-c++
%endif
%if 0%{?building_testsuite:1}
# For building the libstdc++ API reference
BuildRequires: doxygen
@ -241,6 +256,9 @@ BuildRequires: libunwind-devel
BuildRequires: dejagnu
BuildRequires: expect
BuildRequires: gdb
%if %{build_go}
BuildRequires: procps
%endif
%if %{build_nvptx}
BuildRequires: cross-nvptx-gcc11
BuildRequires: cross-nvptx-newlib11-devel
@ -281,15 +299,6 @@ BuildRequires: cross-amdgcn-newlib11-devel
%define build_primary_64bit 0
%endif
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
URL: https://gcc.gnu.org/
Version: 11.0.0+git183291
Release: 0
%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 binsuffix -11
%if !0%{?building_testsuite:1}
Requires: binutils
Requires: cpp11 = %{version}-%{release}
@ -335,17 +344,18 @@ Source1: change_spec
Source2: gcc11-rpmlintrc
Source3: gcc11-testresults-rpmlintrc
Source4: README.First-for.SuSE.packagers
Source5: newlib-3.3.0.tar.xz
Source5: newlib-4.1.0.tar.xz
Patch2: gcc-add-defaultsspec.diff
Patch5: tls-no-direct.diff
Patch6: gcc43-no-unwind-tables.diff
Patch7: gcc48-libstdc++-api-reference.patch
Patch9: gcc48-remove-mpfr-2.4.0-requirement.patch
Patch11: gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
Patch15: gcc7-avoid-fixinc-error.diff
Patch16: gcc9-reproducible-builds.patch
Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch
Patch18: gcc10-amdgcn-llvm-as.patch
Patch19: gcc11-gdwarf-4-default.patch
Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch
# A set of patches from the RH srpm
Patch51: gcc41-ppc32-retaddr.patch
Patch52: gcc10-foffload-default.patch
@ -946,9 +956,11 @@ Summary: GNU Ada Runtime Libraries
License: GPL-3.0 WITH GCC-exception-3.1
Group: System/Libraries
Provides: libgnarl-11 = %{version}-%{release}
Conflicts: %selfconflict libgnarl-11
# FIXME: remove %{after} service-format_spec_file is fixed
# https://github.com/openSUSE/obs-service-format_spec_file/issues/46
Conflicts: %selfconflict libgnarl-11%{nil}
Provides: libgnat-11 = %{version}-%{release}
Conflicts: %selfconflict libgnat-11
Conflicts: %selfconflict libgnat-11%{nil}
%description -n libada11
This package contains the shared libraries required to run programs
@ -966,9 +978,11 @@ Summary: GNU Ada Runtime Libraries
License: GPL-3.0 WITH GCC-exception-3.1
Group: System/Libraries
Provides: libgnarl-11-32bit = %{version}-%{release}
Conflicts: %selfconflict libgnarl-11-32bit
# FIXME: remove %{after} service-format_spec_file is fixed
# https://github.com/openSUSE/obs-service-format_spec_file/issues/46
Conflicts: %selfconflict libgnarl-11-32bit%{nil}
Provides: libgnat-11-32bit = %{version}-%{release}
Conflicts: %selfconflict libgnat-11-32bit
Conflicts: %selfconflict libgnat-11-32bit%{nil}
%description -n libada11-32bit
This package contains the shared libraries required to run programs
@ -986,9 +1000,11 @@ Summary: GNU Ada Runtime Libraries
License: GPL-3.0 WITH GCC-exception-3.1
Group: System/Libraries
Provides: libgnarl-11-64bit = %{version}-%{release}
Conflicts: %selfconflict libgnarl-11-64bit
# FIXME: remove %{after} service-format_spec_file is fixed
# https://github.com/openSUSE/obs-service-format_spec_file/issues/46
Conflicts: %selfconflict libgnarl-11-64bit%{nil}
Provides: libgnat-11-64bit = %{version}-%{release}
Conflicts: %selfconflict libgnat-11-64bit
Conflicts: %selfconflict libgnat-11-64bit%{nil}
%description -n libada11-64bit
This package contains the shared libraries required to run programs
@ -1766,6 +1782,7 @@ Summary: The GNU Compiler Collection JIT library
License: GPL-3.0-or-later
Group: Development/Languages/C and C++
Provides: libgccjit%{libgccjit_sover} = %{version}-%{release}
Requires: gcc11
%description -n libgccjit%{libgccjit_sover}%{libgccjit_suffix}
Support for embedding GCC inside programs and libraries
@ -1886,7 +1903,7 @@ Results from running the gcc and target library testsuites.
%prep
%if 0%{?nvptx_newlib:1}%{?amdgcn_newlib:1}
%setup -q -n gcc-%{version} -a 5
ln -s newlib-3.3.0/newlib .
ln -s newlib-4.1.0/newlib .
%else
%setup -q -n gcc-%{version}
%endif
@ -1897,9 +1914,6 @@ ln -s newlib-3.3.0/newlib .
%patch5
%patch6
%patch7
%if %{suse_version} < 1310
%patch9
%endif
%patch11
%patch15
%patch16
@ -1907,6 +1921,11 @@ ln -s newlib-3.3.0/newlib .
%if "%{TARGET_ARCH}" == "amdgcn"
%patch18 -p1
%endif
# In SLE15 and earlier default to dwarf4, not dwarf5
%if %{suse_version} < 1550
%patch19 -p1
%endif
%patch20 -p1
%patch51
%patch52 -p1
%patch60 -p1
@ -1993,16 +2012,18 @@ ln -s /usr/bin/llvm-ranlib target-tools/bin/amdgcn-amdhsa-ranlib
export PATH="`pwd`/target-tools/bin:$PATH"
%endif
%if %{build_ada}
%if "%{hostsuffix}" != ""
mkdir -p host-tools/bin
# Using the host gnatmake like
# CC="gcc%%{hostsuffix}" GNATBIND="gnatbind%%{hostsuffix}"
# GNATMAKE="gnatmake%%{hostsuffix}"
# doesn't work due to PR33857, so an un-suffixed gnatmake has to be
# available
mkdir -p host-tools/bin
%if %{build_ada}
cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
%endif
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
cp -a /usr/bin/g++%{hostsuffix} host-tools/bin/g++
ln -sf /usr/%{_lib} host-tools/%{_lib}
@ -2065,7 +2086,13 @@ amdgcn-amdhsa,\
%endif
--enable-version-specific-runtime-libs \
--with-gcc-major-version-only \
%if 0%{!?gcc_target_arch:1}
--enable-linker-build-id \
%else
%if 0%{?gcc_target_glibc:1}
--enable-linker-build-id \
%endif
%endif
--enable-linux-futex \
%if %{suse_version} >= 1315
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@ -2528,7 +2555,12 @@ cp `find . -name "*.log" \! -name "config.log" | grep -v 'acats.\?/tests' | gre
chmod 644 ../testresults/*
%endif
# Remove files that we do not need to clean up filelist
# Preserve %{GCCDIST}-gcc%{binsuffix} binary for libgccjit as it is used as a driver
mv %{buildroot}/%{_prefix}/bin/%{GCCDIST}-gcc%{binsuffix} %{buildroot}
rm -f %{buildroot}/%{_prefix}/bin/%{GCCDIST}-*
mv %{buildroot}/%{GCCDIST}-gcc%{binsuffix} %{buildroot}/%{_prefix}/bin/
rm -rf %{buildroot}/%{libsubdir}/install-tools
rm -f %{buildroot}/%{libsubdir}/include-fixed/zutil.h
rm -f %{buildroot}/%{libsubdir}/include-fixed/linux/a.out.h
@ -2646,6 +2678,7 @@ cat cpplib%{binsuffix}.lang gcc%{binsuffix}.lang > gcc11-locale.lang
%endif
%endif
%{_prefix}/bin/gcc%{binsuffix}
%{_prefix}/bin/%{GCCDIST}-gcc%{binsuffix}
%{_prefix}/bin/gcov%{binsuffix}
%{_prefix}/bin/gcov-dump%{binsuffix}
%{_prefix}/bin/gcov-tool%{binsuffix}

View File

@ -1,247 +0,0 @@
Index: configure.ac
===================================================================
--- configure.ac (revision 216911)
+++ configure.ac (working copy)
@@ -1454,7 +1454,7 @@ if test -d ${srcdir}/gcc && test "x$have
AC_MSG_CHECKING([for the correct version of mpfr.h])
AC_TRY_COMPILE([#include <gmp.h>
#include <mpfr.h>],[
- #if MPFR_VERSION < MPFR_VERSION_NUM(2,4,0)
+ #if MPFR_VERSION < MPFR_VERSION_NUM(2,3,1)
choke me
#endif
], [AC_TRY_COMPILE([#include <gmp.h>
Index: configure
===================================================================
--- configure (revision 216911)
+++ configure (working copy)
@@ -5524,7 +5524,7 @@ int
main ()
{
- #if MPFR_VERSION < MPFR_VERSION_NUM(2,4,0)
+ #if MPFR_VERSION < MPFR_VERSION_NUM(2,3,1)
choke me
#endif
Index: gcc/fortran/simplify.c
===================================================================
--- gcc/fortran/simplify.c (revision 216911)
+++ gcc/fortran/simplify.c (working copy)
@@ -4278,10 +4278,7 @@ gfc_simplify_mod (gfc_expr *a, gfc_expr
return &gfc_bad_expr;
}
- gfc_set_model_kind (kind);
- mpfr_fmod (result->value.real, a->value.real, p->value.real,
- GFC_RND_MODE);
- break;
+ return NULL;
default:
gfc_internal_error ("gfc_simplify_mod(): Bad arguments");
@@ -4327,19 +4324,7 @@ gfc_simplify_modulo (gfc_expr *a, gfc_ex
return &gfc_bad_expr;
}
- gfc_set_model_kind (kind);
- mpfr_fmod (result->value.real, a->value.real, p->value.real,
- GFC_RND_MODE);
- if (mpfr_cmp_ui (result->value.real, 0) != 0)
- {
- if (mpfr_signbit (a->value.real) != mpfr_signbit (p->value.real))
- mpfr_add (result->value.real, result->value.real, p->value.real,
- GFC_RND_MODE);
- }
- else
- mpfr_copysign (result->value.real, result->value.real,
- p->value.real, GFC_RND_MODE);
- break;
+ return NULL;
default:
gfc_internal_error ("gfc_simplify_modulo(): Bad arguments");
Index: gcc/ubsan.c
===================================================================
--- gcc/ubsan.c.orig 2015-06-01 14:52:11.717105684 +0200
+++ gcc/ubsan.c 2015-06-01 14:52:26.945253071 +0200
@@ -1564,40 +1564,6 @@
min = build_real (expr_type, minval2);
}
}
- else if (REAL_MODE_FORMAT (mode)->b == 10)
- {
- /* For _Decimal128 up to 34 decimal digits, - sign,
- dot, e, exponent. */
- char buf[64];
- mpfr_t m;
- int p = REAL_MODE_FORMAT (mode)->p;
- REAL_VALUE_TYPE maxval, minval;
-
- /* Use mpfr_snprintf rounding to compute the smallest
- representable decimal number greater or equal than
- 1 << (prec - !uns_p). */
- mpfr_init2 (m, prec + 2);
- mpfr_set_ui_2exp (m, 1, prec - !uns_p, GMP_RNDN);
- mpfr_snprintf (buf, sizeof buf, "%.*RUe", p - 1, m);
- decimal_real_from_string (&maxval, buf);
- max = build_real (expr_type, maxval);
-
- /* For unsigned, assume -1.0 is always representable. */
- if (uns_p)
- min = build_minus_one_cst (expr_type);
- else
- {
- /* Use mpfr_snprintf rounding to compute the largest
- representable decimal number less or equal than
- (-1 << (prec - 1)) - 1. */
- mpfr_set_si_2exp (m, -1, prec - 1, GMP_RNDN);
- mpfr_sub_ui (m, m, 1, GMP_RNDN);
- mpfr_snprintf (buf, sizeof buf, "%.*RDe", p - 1, m);
- decimal_real_from_string (&minval, buf);
- min = build_real (expr_type, minval);
- }
- mpfr_clear (m);
- }
else
return NULL_TREE;
Index: gcc/gimple-ssa-sprintf.c
===================================================================
--- gcc/gimple-ssa-sprintf.c (revision 257728)
+++ gcc/gimple-ssa-sprintf.c (working copy)
@@ -1637,18 +1637,7 @@ get_mpfr_format_length (mpfr_ptr x, cons
p = 1024;
}
- len = mpfr_snprintf (NULL, 0, fmtstr, (int)p, x);
-
- /* Handle the unlikely (impossible?) error by returning more than
- the maximum dictated by the function's return type. */
- if (len < 0)
- return target_dir_max () + 1;
-
- /* Adjust the return value by the difference. */
- if (p < prec)
- len += prec - p;
-
- return len;
+ return target_dir_max () + 1;
}
/* Return the number of bytes to format using the format specifier
Index: gcc/fortran/simplify.c
===================================================================
--- gcc/fortran/simplify.c (revision 257983)
+++ gcc/fortran/simplify.c (working copy)
@@ -1745,51 +1745,6 @@ simplify_trig_call (gfc_expr *icall)
}
}
-/* Convert a floating-point number from radians to degrees. */
-
-static void
-degrees_f (mpfr_t x, mp_rnd_t rnd_mode)
-{
- mpfr_t tmp;
- mpfr_init (tmp);
-
- /* Set x = x % 2pi to avoid offsets with large angles. */
- mpfr_const_pi (tmp, rnd_mode);
- mpfr_mul_ui (tmp, tmp, 2, rnd_mode);
- mpfr_fmod (tmp, x, tmp, rnd_mode);
-
- /* Set x = x * 180. */
- mpfr_mul_ui (x, x, 180, rnd_mode);
-
- /* Set x = x / pi. */
- mpfr_const_pi (tmp, rnd_mode);
- mpfr_div (x, x, tmp, rnd_mode);
-
- mpfr_clear (tmp);
-}
-
-/* Convert a floating-point number from degrees to radians. */
-
-static void
-radians_f (mpfr_t x, mp_rnd_t rnd_mode)
-{
- mpfr_t tmp;
- mpfr_init (tmp);
-
- /* Set x = x % 360 to avoid offsets with large angles. */
- mpfr_set_ui (tmp, 360, rnd_mode);
- mpfr_fmod (tmp, x, tmp, rnd_mode);
-
- /* Set x = x * pi. */
- mpfr_const_pi (tmp, rnd_mode);
- mpfr_mul (x, x, tmp, rnd_mode);
-
- /* Set x = x / 180. */
- mpfr_div_ui (x, x, 180, rnd_mode);
-
- mpfr_clear (tmp);
-}
-
/* Convert argument to radians before calling a trig function. */
@@ -1803,12 +1758,7 @@ gfc_simplify_trigd (gfc_expr *icall)
if (arg->ts.type != BT_REAL)
gfc_internal_error ("in gfc_simplify_trigd(): Bad type");
- if (arg->expr_type == EXPR_CONSTANT)
- /* Convert constant to radians before passing off to simplifier. */
- radians_f (arg->value.real, GFC_RND_MODE);
-
- /* Let the usual simplifier take over - we just simplified the arg. */
- return simplify_trig_call (icall);
+ return NULL;
}
/* Convert result of an inverse trig function to degrees. */
@@ -1816,21 +1766,9 @@ gfc_simplify_trigd (gfc_expr *icall)
gfc_expr *
gfc_simplify_atrigd (gfc_expr *icall)
{
- gfc_expr *result;
-
if (icall->value.function.actual->expr->ts.type != BT_REAL)
gfc_internal_error ("in gfc_simplify_atrigd(): Bad type");
- /* See if another simplifier has work to do first. */
- result = simplify_trig_call (icall);
-
- if (result && result->expr_type == EXPR_CONSTANT)
- {
- /* Convert constant to degrees after passing off to actual simplifier. */
- degrees_f (result->value.real, GFC_RND_MODE);
- return result;
- }
-
/* Let gfc_resolve_atrigd take care of the non-constant case. */
return NULL;
}
@@ -1840,21 +1778,9 @@ gfc_simplify_atrigd (gfc_expr *icall)
gfc_expr *
gfc_simplify_atan2d (gfc_expr *y, gfc_expr *x)
{
- gfc_expr *result;
-
if (x->ts.type != BT_REAL || y->ts.type != BT_REAL)
gfc_internal_error ("in gfc_simplify_atan2d(): Bad type");
- if (x->expr_type == EXPR_CONSTANT && y->expr_type == EXPR_CONSTANT)
- {
- result = gfc_simplify_atan2 (y, x);
- if (result != NULL)
- {
- degrees_f (result->value.real, GFC_RND_MODE);
- return result;
- }
- }
-
/* Let gfc_resolve_atan2d take care of the non-constant case. */
return NULL;
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8ec25c9336d1e78698b46fc200c3889058e5b29396008243b05fc0b73a67b52d
size 5684864

3
newlib-4.1.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:181a90099c547a4816537e8b7da25e477370cb99438f8fe7163d077e83e90186
size 5710104