- New package, inherits from gcc6
* libjava-no-multilib.diff, gcc41-java-slow_pthread_self.patch and all Java related hunks in included patches because Java is no longer included in GCC 7. * gcc6-hsa-enablement.patch as it's part of trunk * gcc6-libsanitizer-aarch64-vma48.patch as it's part of trunk * gcc6-SOURCE_DATE_EPOCH.patch as it's part of trunk - New package, inherits from gcc6 * libjava-no-multilib.diff, gcc41-java-slow_pthread_self.patch and all Java related hunks in included patches because Java is no longer included in GCC 7. * gcc6-hsa-enablement.patch as it's part of trunk * gcc6-libsanitizer-aarch64-vma48.patch as it's part of trunk * gcc6-SOURCE_DATE_EPOCH.patch as it's part of trunk OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gcc7?expand=0&rev=2
This commit is contained in:
parent
9e432acb0d
commit
68ed6fc949
@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
do_crosses=1
|
||||
do_crosses=0
|
||||
do_optional_compiler_languages=0
|
||||
do_libffi=0
|
||||
rm -f libffi*.spec libffi*.changes gcc*-testresults.spec gcc*-testresults.changes gcc*.spec cross*.spec cross*.changes
|
||||
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-aarch64-gcc7
|
||||
%define cross_arch aarch64
|
||||
%define gcc_target_arch aarch64-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-arm-gcc7
|
||||
%define cross_arch arm
|
||||
%define gcc_target_arch arm-suse-linux-gnueabi
|
||||
%define gcc_icecream 0
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-armv6hl-gcc7
|
||||
%define cross_arch armv6hl
|
||||
%define gcc_target_arch armv6hl-suse-linux-gnueabi
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-armv7hl-gcc7
|
||||
%define cross_arch armv7hl
|
||||
%define gcc_target_arch armv7hl-suse-linux-gnueabi
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-avr-gcc7
|
||||
%define cross_arch avr
|
||||
%define gcc_target_arch avr-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,434 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-epiphany-gcc7-bootstrap
|
||||
%define cross_arch epiphany
|
||||
%define gcc_target_arch epiphany-elf
|
||||
%define gcc_target_newlib 1
|
||||
%define gcc_libc_bootstrap 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-epiphany-gcc7
|
||||
%define cross_arch epiphany
|
||||
%define gcc_target_arch epiphany-elf
|
||||
%define gcc_target_newlib 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-hppa-gcc7
|
||||
%define cross_arch hppa
|
||||
%define gcc_target_arch hppa-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-i386-gcc7
|
||||
%define cross_arch i386
|
||||
%define gcc_target_arch i586-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-m68k-gcc7
|
||||
%define cross_arch m68k
|
||||
%define gcc_target_arch m68k-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-mips-gcc7
|
||||
%define cross_arch mips
|
||||
%define gcc_target_arch mips-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-ppc64-gcc7
|
||||
%define cross_arch ppc64
|
||||
%define gcc_target_arch powerpc64-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-ppc64le-gcc7
|
||||
%define cross_arch ppc64le
|
||||
%define gcc_target_arch powerpc64le-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,434 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-rx-gcc7-bootstrap
|
||||
%define cross_arch rx
|
||||
%define gcc_target_arch rx-elf
|
||||
%define gcc_target_newlib 1
|
||||
%define gcc_libc_bootstrap 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-rx-gcc7
|
||||
%define cross_arch rx
|
||||
%define gcc_target_arch rx-elf
|
||||
%define gcc_target_newlib 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-s390x-gcc7
|
||||
%define cross_arch s390x
|
||||
%define gcc_target_arch s390x-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-sparc-gcc7
|
||||
%define cross_arch sparcv9
|
||||
%define gcc_target_arch sparc-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-sparc64-gcc7
|
||||
%define cross_arch sparc64
|
||||
%define gcc_target_arch sparc64-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -1,221 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242874).
|
||||
- Add avx5124fmapsintrin.h and avx5124vnniwintrin.h header files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
* gcc44-rename-info-files.patch, fix cross-references in info files when
|
||||
renaming them to be version specific
|
||||
* gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
@ -1,433 +0,0 @@
|
||||
#
|
||||
# spec file for package
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define pkgname cross-x86_64-gcc7
|
||||
%define cross_arch x86_64
|
||||
%define gcc_target_arch x86_64-suse-linux
|
||||
%define gcc_icecream 1
|
||||
%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
|
||||
|
||||
Url: http://gcc.gnu.org/
|
||||
Version: 7.0.0+r242874
|
||||
Release: 0
|
||||
%define gcc_version %(echo %version | sed 's/+.*//')
|
||||
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
|
||||
%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
|
||||
%define binsuffix -7
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Source: gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
|
||||
Source1: change_spec
|
||||
Source2: libffi-gcc7-rpmlintrc
|
||||
Source3: gcc7-rpmlintrc
|
||||
Source4: README.First-for.SuSE.packagers
|
||||
|
||||
#testpatch begin
|
||||
|
||||
Patch1: gcc-dir-version.patch
|
||||
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
|
||||
Patch10: gcc5-no-return-gcc43-workaround.patch
|
||||
# A set of patches from the RH srpm
|
||||
Patch51: gcc41-ppc32-retaddr.patch
|
||||
# Some patches taken from Debian
|
||||
Patch60: gcc44-textdomain.patch
|
||||
Patch61: gcc44-rename-info-files.patch
|
||||
|
||||
#testpatch end
|
||||
|
||||
Summary: The GNU C Compiler and Support Files
|
||||
License: GPL-3.0+
|
||||
Group: Development/Languages/C and C++
|
||||
|
||||
%description
|
||||
Core package for the GNU Compiler Collection, including the C language
|
||||
frontend.
|
||||
|
||||
Language frontends other than C are split to different sub-packages,
|
||||
namely gcc-ada, gcc-c++, gcc-fortran, gcc-objc and
|
||||
gcc-obj-c++.
|
||||
|
||||
|
||||
|
||||
|
||||
# Define the canonical target and host architecture
|
||||
# %gcc_target_arch is supposed to be the full target triple
|
||||
# %cross_arch is supposed to be the rpm target variant arch
|
||||
# %TARGET_ARCH will be the canonicalized target CPU part
|
||||
# %HOST_ARCH will be the canonicalized host CPU part
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
%define TARGET_ARCH %(echo %{cross_arch} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%else
|
||||
%define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%endif
|
||||
%if 0%{?disable_32bit:1}
|
||||
%define biarch 0
|
||||
%else
|
||||
%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
|
||||
%endif
|
||||
|
||||
%define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
|
||||
%ifarch ppc
|
||||
%define GCCDIST powerpc64-suse-linux
|
||||
%else
|
||||
%ifarch %sparc
|
||||
%define GCCDIST sparc64-suse-linux
|
||||
%else
|
||||
%ifarch %arm
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux-gnueabi
|
||||
%else
|
||||
%define GCCDIST %{HOST_ARCH}-suse-linux
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
|
||||
%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{gcc_version}%{gcc_snapshot_revision}
|
||||
|
||||
#test patching start
|
||||
|
||||
%patch1
|
||||
%patch2
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%if %{suse_version} < 1310
|
||||
%patch9
|
||||
%endif
|
||||
%patch10
|
||||
%patch51
|
||||
%patch60
|
||||
%patch61
|
||||
|
||||
#test patching end
|
||||
|
||||
# We are configuring ppc as ppc64 but with switched multilibs. Adjust
|
||||
# the libstdc++ abi testsuite baseline files accordingly
|
||||
%ifarch ppc
|
||||
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
|
||||
mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64/
|
||||
mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt \
|
||||
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/
|
||||
fi
|
||||
%endif
|
||||
|
||||
%build
|
||||
# Avoid rebuilding of generated files
|
||||
contrib/gcc_update --touch
|
||||
# Avoid fucking up testsuite results with Java and indirect dispatch
|
||||
export SUSE_ASNEEDED=0
|
||||
# Split version file into version used for directories (X) and
|
||||
# version to report with --version (X.Y.Z).
|
||||
# See also gcc-dir-version.patch.
|
||||
mv gcc/BASE-VER gcc/FULL-VER
|
||||
cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
|
||||
|
||||
# SLE11 does not allow empty rpms
|
||||
%if %{suse_version} < 1310
|
||||
echo "This is a dummy package to provide a dependency." > README
|
||||
%endif
|
||||
|
||||
rm -rf obj-%{GCCDIST}
|
||||
mkdir obj-%{GCCDIST}
|
||||
cd obj-%{GCCDIST}
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
|
||||
%ifarch %ix86
|
||||
# -mcpu is superceded by -mtune but -mtune is not supported by
|
||||
# our bootstrap compiler. -mcpu gives a warning that stops
|
||||
# the build process, so remove it for now. Also remove all other
|
||||
# -march and -mtune flags. They are superseeded by proper
|
||||
# default compiler settings now.
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
# Kill all -march/tune/cpu because that screws building the target libs
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
|
||||
%endif
|
||||
# Replace 2 spaces by one finally
|
||||
RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ / /g'`
|
||||
|
||||
languages=c
|
||||
%if %{build_cp}
|
||||
languages=$languages,c++
|
||||
%endif
|
||||
%if %{build_objc}
|
||||
languages=$languages,objc
|
||||
%endif
|
||||
%if %{build_fortran}
|
||||
languages=$languages,fortran
|
||||
%endif
|
||||
%if %{build_objcp}
|
||||
languages=$languages,obj-c++
|
||||
%endif
|
||||
%if %{build_ada}
|
||||
languages=$languages,ada
|
||||
%endif
|
||||
%if %{build_go}
|
||||
languages=$languages,go
|
||||
%endif
|
||||
|
||||
J=%{?jobs:%jobs}
|
||||
if test -z "$J"; then
|
||||
J=$(getconf _NPROCESSORS_CONF)
|
||||
JL=$(($J * 2))
|
||||
else
|
||||
test 1 -gt "$J" && J=1
|
||||
JL=$(($(getconf _NPROCESSORS_CONF)*2))
|
||||
fi
|
||||
if test "$J" == "0"; then
|
||||
J=1
|
||||
fi
|
||||
if test "$JL" == "0"; then
|
||||
JL=1
|
||||
fi
|
||||
PARALLEL="-j$J -l$JL"
|
||||
|
||||
# we don't want some miscompiles in the testsuite, or some fault in
|
||||
# the compiler to kill the machine. Hence we limit the amount of memory
|
||||
# by the physical RAM plus half of swap
|
||||
#MEM=$(free -m | awk '/^Mem:/ {print $2}')
|
||||
#SWAP=$(free -m | awk '/^Swap:/ {print $2}')
|
||||
#ulimit -v $(((MEM + SWAP/2)*1024))
|
||||
|
||||
# In general we want to ship release checking enabled compilers
|
||||
# which is the default for released compilers
|
||||
#ENABLE_CHECKING="--enable-checking=yes"
|
||||
ENABLE_CHECKING="--enable-checking=release"
|
||||
#ENABLE_CHECKING=""
|
||||
|
||||
# Work around tail/head -1 changes
|
||||
export _POSIX2_VERSION=199209
|
||||
|
||||
%if %{build_ada}
|
||||
# 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
|
||||
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
|
||||
cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
|
||||
ln -sf /usr/%{_lib} host-tools/%{_lib}
|
||||
export PATH="`pwd`/host-tools/bin:$PATH"
|
||||
%endif
|
||||
#%if 0%{?gcc_target_arch:1}
|
||||
#%else
|
||||
# --enable-threads=posix \
|
||||
#%endif
|
||||
# --enable-shared \
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
|
||||
TCFLAGS="$RPM_OPT_FLAGS" \
|
||||
../configure \
|
||||
--prefix=%{_prefix} \
|
||||
--infodir=%{_infodir} \
|
||||
--mandir=%{_mandir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libdir} \
|
||||
--enable-languages=$languages \
|
||||
%if %{build_hsa}
|
||||
--enable-offload-targets=hsa \
|
||||
%endif
|
||||
$ENABLE_CHECKING \
|
||||
--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
|
||||
--enable-ssp \
|
||||
--disable-libssp \
|
||||
%if 0%{!?build_libvtv:1}
|
||||
--disable-libvtv \
|
||||
%endif
|
||||
%ifnarch %mpx_arch
|
||||
--disable-libmpx \
|
||||
%endif
|
||||
--disable-libcc1 \
|
||||
%if %{enable_plugins}
|
||||
--enable-plugin \
|
||||
%else
|
||||
--disable-plugin \
|
||||
%endif
|
||||
--with-bugurl="http://bugs.opensuse.org/" \
|
||||
--with-pkgversion="SUSE Linux" \
|
||||
--with-slibdir=/%{_lib} \
|
||||
--with-system-zlib \
|
||||
--enable-__cxa_atexit \
|
||||
--enable-libstdcxx-allocator=new \
|
||||
--disable-libstdcxx-pch \
|
||||
%if 0%{suse_version} <= 1320
|
||||
--with-default-libstdcxx-abi=gcc4-compatible \
|
||||
%endif
|
||||
--enable-version-specific-runtime-libs \
|
||||
%if 0%{suse_version} > 1100
|
||||
--enable-linker-build-id \
|
||||
%endif
|
||||
--enable-linux-futex \
|
||||
%if %{suse_version} >= 1315
|
||||
%ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
|
||||
--enable-gnu-indirect-function \
|
||||
%endif
|
||||
%endif
|
||||
--program-suffix=%{binsuffix} \
|
||||
%if 0%{?disable_32bit:1}
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%if 0%{!?gcc_target_arch:1}
|
||||
%ifarch ia64
|
||||
--with-system-libunwind \
|
||||
%else
|
||||
--without-system-libunwind \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?gcc_target_arch:1}
|
||||
--program-prefix=%{gcc_target_arch}- \
|
||||
--target=%{gcc_target_arch} \
|
||||
--disable-nls \
|
||||
%if 0%{?sysroot:1}
|
||||
--with-sysroot=%sysroot \
|
||||
%else
|
||||
--with-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%if 0%{?build_sysroot:1}
|
||||
--with-build-sysroot=%{build_sysroot} \
|
||||
%else
|
||||
%if 0%{?sysroot:1}
|
||||
--with-build-sysroot=%{sysroot} \
|
||||
%else
|
||||
--with-build-sysroot=%{_prefix}/%{gcc_target_arch} \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?binutils_os:1}
|
||||
--with-build-time-tools=/usr/%{binutils_os}/bin \
|
||||
%endif
|
||||
%if 0%{?gcc_target_newlib}
|
||||
--with-newlib \
|
||||
%if 0%{?gcc_libc_bootstrap:1}
|
||||
--without-headers \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "spu"
|
||||
--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "arm"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv5tel"
|
||||
--with-arch=armv5te \
|
||||
--with-float=soft \
|
||||
--with-mode=arm \
|
||||
--with-abi=aapcs-linux \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv6hl"
|
||||
--with-arch=armv6zk \
|
||||
--with-tune=arm1176jzf-s \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfp \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "armv7hl"
|
||||
--with-arch=armv7-a \
|
||||
--with-tune=cortex-a15 \
|
||||
--with-float=hard \
|
||||
--with-abi=aapcs-linux \
|
||||
--with-fpu=vfpv3-d16 \
|
||||
--disable-sjlj-exceptions \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc" || "%{TARGET_ARCH}" == "powerpc64" || "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if "%{TARGET_ARCH}" == "powerpc"
|
||||
--with-cpu=default32 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
%if %{suse_version} >= 1315 && %{suse_version} != 1320
|
||||
--with-cpu=power8 \
|
||||
--with-tune=power8 \
|
||||
%else
|
||||
--with-cpu=power7 \
|
||||
--with-tune=power7 \
|
||||
%endif
|
||||
%else
|
||||
--with-cpu-64=power4 \
|
||||
%endif
|
||||
--enable-secureplt \
|
||||
--with-long-double-128 \
|
||||
%if "%{TARGET_ARCH}" == "powerpc64le"
|
||||
--enable-targets=powerpcle-linux \
|
||||
--disable-multilib \
|
||||
%endif
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc64"
|
||||
--with-cpu=ultrasparc \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "sparc"
|
||||
--with-cpu=v8 \
|
||||
--with-long-double-128 \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "i586"
|
||||
--with-arch-32=i586 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "x86_64"
|
||||
--enable-multilib \
|
||||
--with-arch-32=x86-64 \
|
||||
--with-tune=generic \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "s390x"
|
||||
%if %{suse_version} >= 1310
|
||||
--with-tune=zEC12 --with-arch=z196 \
|
||||
%else
|
||||
--with-tune=z9-109 --with-arch=z900 \
|
||||
%endif
|
||||
--with-long-double-128 \
|
||||
--enable-decimal-float \
|
||||
%endif
|
||||
%if "%{TARGET_ARCH}" == "m68k"
|
||||
--disable-multilib \
|
||||
%endif
|
||||
--build=%{GCCDIST} \
|
||||
--host=%{GCCDIST}
|
||||
|
||||
%changelog
|
@ -7,202 +7,13 @@ Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
- New package, inherits from gcc6
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
@ -212,10 +23,11 @@ Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
||||
* libjava-no-multilib.diff, gcc41-java-slow_pthread_self.patch
|
||||
and all Java related hunks in included patches
|
||||
because Java is no longer included in GCC 7.
|
||||
* gcc6-hsa-enablement.patch as it's part of trunk
|
||||
* gcc6-libsanitizer-aarch64-vma48.patch as it's part of trunk
|
||||
* gcc6-SOURCE_DATE_EPOCH.patch as it's part of trunk
|
||||
|
202
gcc7.changes
202
gcc7.changes
@ -7,202 +7,13 @@ Fri Nov 25 08:30:28 UTC 2016 - mliska@suse.cz
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 23 15:36:06 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update to gcc trunk (r242828).
|
||||
* Remove all Java related files and hunks in included patches.
|
||||
* Remove gcc6-hsa-enablement.patch as it's part of trunk.
|
||||
* Likewise for gcc41-java-slow_pthread_self.patch.
|
||||
* Likewise for gcc6-SOURCE_DATE_EPOCH.patch.
|
||||
* Likewise for gcc6-libsanitizer-aarch64-vma48.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 21 08:53:38 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r242645).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 3 13:28:18 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r241818).
|
||||
- Do not install removed pcommitintrin.h file on x86.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 7 13:06:40 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- add cross-hppa and cross-mips
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 4 12:55:20 UTC 2016 - schwab@suse.de
|
||||
|
||||
- gcc6-libsanitizer-aarch64-vma48.patch: add support for 48-bit VMA
|
||||
- gcc5-libsanitize-aarch64-va42.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 30 07:43:28 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239849).
|
||||
* Includes GCC 6.2 release.
|
||||
* Includes fix for OVMF compilation.
|
||||
- Refresh gcc-dir-version.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 18:43:55 UTC 2016 - jslaby@suse.com
|
||||
|
||||
- gcc6-devel: require gmp-devel and mpc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 17 08:51:42 UTC 2016 - mliska@suse.cz
|
||||
|
||||
- Update HSA_RUNTINE_LIB in gcc6-hsa-enablement.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 15 12:30:00 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239476).
|
||||
* includes GCC 6.2 RC1
|
||||
- Make sure newlib crosses for the same target conflict
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 14:37:14 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up newlib handling in spec files
|
||||
* change_spec: Set new gcc_target_newlib in add_newlib_cross()
|
||||
* gcc.spec.in: Converge per-target configure sections
|
||||
* cross.spec.in: Prepare for more library options: gcc_target_glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 12 09:37:52 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r239408).
|
||||
- Remove gcc6-disable-aarch64-tsan.patch and re-enable TSAN for aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 8 10:20:08 UTC 2016 - schwab@suse.de
|
||||
|
||||
- Enable ifunc attribute on archs with support for GNU_IFUNC in glibc
|
||||
for SLE12 and up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 31 10:53:38 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare newlib targets epiphany, nds32le, rl78, rx
|
||||
* Mostly forward-ported from gcc5 package
|
||||
- change_spec: Add add_newlib_cross() convenience function
|
||||
- Enable epiphany and rx packages
|
||||
* Fix debugsources.list path for non-bootstrap packages w/debuginfo
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 11:58:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r238085)
|
||||
* Fixes compile-time issues in the C++ frontend. [bnc#988017]
|
||||
- Enable plugin support for Tumbleweed and add gcc6-devel package
|
||||
for the hearder files required to develop plugins. [bnc#988009]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 15 10:08:25 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237469)
|
||||
- Refresh gcc6-SOURCE_DATE_EPOCH.patch with patch for PR71183.
|
||||
- Use %preun instead of %postun for info file deletion. Register
|
||||
libitm.info. [bnc#984767]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 08:35:10 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add cross-arm-gcc6 that should work with cross-arm-binutils and
|
||||
defaults to armv6hl settings, but without builing an icecream
|
||||
environment for it.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 11:12:34 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r237296).
|
||||
- Add gcc6-SOURCE_DATE_EPOCH.patch to backport SOURCE_DATE_EPOCH.
|
||||
[bnc#982182]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 6 11:29:15 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update disk-space _constraints, add libgcj-gcc6 _constraints similar
|
||||
to gcc6-testresults as that one is also building libjava.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 1 13:17:59 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r236988).
|
||||
- Enable profiledbootstrap for AARCH64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 10 09:59:24 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Add gcc6-disable-aarch64-tsan.patch to disable TSAN on aarch64 because
|
||||
libtsan0 is not installable.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed May 4 08:27:42 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Fix HSA build conditional for crosses.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 2 07:22:08 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to gcc-6-branch head (r235696).
|
||||
* Fixes libgcj_bc1 version check issue.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 27 10:37:26 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to GCC 6.1.0 release (r235473).
|
||||
* Includes fix for python3 miscompile [bnc#976024]
|
||||
- Enable profiledbootstrap, but not if building libjava where also
|
||||
disable bootstrap
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 14:01:38 UTC 2016 - martin.liska@suse.com
|
||||
|
||||
- Add gcc6-hsa-enablement.patch and enable HSA offloading target.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:38:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234970).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 14 12:05:43 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Enable Ada on ppc64le and aarch64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 24 09:16:23 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234449).
|
||||
- Do not build libffi packages for now.
|
||||
- Adds support for %disable_32bit.
|
||||
- Build with release checking.
|
||||
- Enable cross compiler builds.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 10 12:45:44 UTC 2016 - rguenther@suse.com
|
||||
|
||||
- Update to SVN trunk head (r234106).
|
||||
* Bumps libgo SO version to 9
|
||||
* Bumps libffi SO version to 7
|
||||
- Refresh gcc44-rename-info-files.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
|
||||
- New package, inherits from gcc5
|
||||
- New package, inherits from gcc6
|
||||
* gcc-dir-version.patch, drop patchlevel from install directory names
|
||||
* gcc-add-defaultsspec.diff, add the ability to provide a specs file
|
||||
that is read by default
|
||||
* libjava-no-multilib.diff, do not build multilibs for libjava even on
|
||||
multilib systems (we use baselibs for it)
|
||||
* tls-no-direct.diff, avoid direct %fs references on x86 to not slow down
|
||||
Xen
|
||||
* gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files
|
||||
* gcc41-java-slow_pthread_self.patch, force us to assume pthread_self
|
||||
is fast
|
||||
* gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc
|
||||
* gcc44-textdomain.patch, make translation files version specific and
|
||||
adjust textdomain to find them
|
||||
@ -212,10 +23,11 @@ Thu Dec 17 14:02:56 UTC 2015 - rguenther@suse.com
|
||||
html documentation
|
||||
* gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier
|
||||
mpfr versions on old products
|
||||
* gcc5-libsanitize-aarch64-va42.patch, make address sanitizer work with 42bit
|
||||
address space on aarch64
|
||||
* gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3
|
||||
- Drops
|
||||
* Wunprototyped-calls.diff because -std=gnu11 is default now.
|
||||
* gcc5-libgo-fix-certificates-lookup.patch, no longer applies and is only
|
||||
required for SLE11
|
||||
* libjava-no-multilib.diff, gcc41-java-slow_pthread_self.patch
|
||||
and all Java related hunks in included patches
|
||||
because Java is no longer included in GCC 7.
|
||||
* gcc6-hsa-enablement.patch as it's part of trunk
|
||||
* gcc6-libsanitizer-aarch64-vma48.patch as it's part of trunk
|
||||
* gcc6-SOURCE_DATE_EPOCH.patch as it's part of trunk
|
||||
|
Loading…
x
Reference in New Issue
Block a user