Accepting request 442025 from home:marxin:gcc-devel
OBS-URL: https://build.opensuse.org/request/show/442025 OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gcc7?expand=0&rev=1
This commit is contained in:
commit
9e432acb0d
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
31
README.First-for.SuSE.packagers
Normal file
31
README.First-for.SuSE.packagers
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
IMPORTANT: Please change gcc.spec.in and then run ./pre_checkin.sh!
|
||||||
|
Do not change gcc.spec directly!
|
||||||
|
|
||||||
|
Since GCC comes with a testsuite that runs for quite a long time and
|
||||||
|
that test suite also contains some known failures, we should run the
|
||||||
|
testsuite of GCC whenever the compiler is changed to ensure a high
|
||||||
|
quality compiler.
|
||||||
|
|
||||||
|
The package is now split into multiple parts, gcc$VER,
|
||||||
|
gcc$VER-testresults and libffi$VER (plus various spec files for
|
||||||
|
cross and icecream cross compilers). The testsuite is run from
|
||||||
|
gcc$VER-testresults, a dummy package with the testresults, gcc$VER-testresults,
|
||||||
|
is generated from it which contains testing logfiles and summary.
|
||||||
|
|
||||||
|
Before checking in a new compiler, please do the following steps as QA
|
||||||
|
measure to check that the new compiler does not introduce any new
|
||||||
|
failures:
|
||||||
|
|
||||||
|
- Run mbuild for all archs for at least the gcc$VER and the gcc$VER-testresults
|
||||||
|
subpackages
|
||||||
|
|
||||||
|
- When mbuild is finished, call
|
||||||
|
/suse/rguenther/bin/compare-testresults.sh mbuild-directory
|
||||||
|
(for the gcc$VER-testresults build).
|
||||||
|
The output of that script should not show any failures. If it does,
|
||||||
|
please fix them or discuss this with the gcc package maintainers.
|
||||||
|
|
||||||
|
- Do not remove this file.
|
||||||
|
|
||||||
|
Thanks,
|
||||||
|
Your GCC packagers.
|
28
_constraints
Normal file
28
_constraints
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<constraints>
|
||||||
|
<hardware>
|
||||||
|
<disk>
|
||||||
|
<size unit="G">16</size>
|
||||||
|
</disk>
|
||||||
|
</hardware>
|
||||||
|
<overwrite>
|
||||||
|
<conditions>
|
||||||
|
<package>gcc7-testresults</package>
|
||||||
|
</conditions>
|
||||||
|
<hardware>
|
||||||
|
<physicalmemory>
|
||||||
|
<size unit="G">3</size>
|
||||||
|
</physicalmemory>
|
||||||
|
</hardware>
|
||||||
|
</overwrite>
|
||||||
|
<overwrite>
|
||||||
|
<conditions>
|
||||||
|
<package>gcc7</package>
|
||||||
|
</conditions>
|
||||||
|
<hardware>
|
||||||
|
<processors>4</processors>
|
||||||
|
<physicalmemory>
|
||||||
|
<size unit="G">2</size>
|
||||||
|
</physicalmemory>
|
||||||
|
</hardware>
|
||||||
|
</overwrite>
|
||||||
|
</constraints>
|
149
change_spec
Normal file
149
change_spec
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
do_crosses=1
|
||||||
|
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
|
||||||
|
|
||||||
|
# Default is to generate the normal gcc package
|
||||||
|
# unless a parameter is given. In case that it is '-*',
|
||||||
|
# that parameter will be used as suffix for the package name
|
||||||
|
# and as suffix for the install path (/opt/gccSUFFIX)
|
||||||
|
# In case that it is '[0-9]*', that parameter will be used
|
||||||
|
# as a suffix for a versioned package name.
|
||||||
|
|
||||||
|
if [ $# -lt 1 ]; then
|
||||||
|
echo No package suffix given
|
||||||
|
outfile=gcc.spec
|
||||||
|
else
|
||||||
|
case $1 in
|
||||||
|
[0-9]*)
|
||||||
|
base_ver=$1
|
||||||
|
outfile=gcc$1.spec
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo Invalid package suffix
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
: > $outfile
|
||||||
|
if test "$do_optional_compiler_languages" = "1"; then
|
||||||
|
echo '%define build_optional_compiler_languages 1' >> $outfile
|
||||||
|
fi
|
||||||
|
sed -e 's%@base_ver@%'$base_ver'%g' \
|
||||||
|
gcc.spec.in \
|
||||||
|
| sed -n -e '{
|
||||||
|
/^# PACKAGE-BEGIN/h
|
||||||
|
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/H
|
||||||
|
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/!p
|
||||||
|
/^# PACKAGE-END/{g
|
||||||
|
s/@variant@//g
|
||||||
|
p
|
||||||
|
g
|
||||||
|
s/@variant@/-32bit/g
|
||||||
|
p
|
||||||
|
g
|
||||||
|
s/@variant@/-64bit/g
|
||||||
|
p
|
||||||
|
}
|
||||||
|
}' >> $outfile
|
||||||
|
|
||||||
|
if test "$do_libffi" = "1"; then
|
||||||
|
|
||||||
|
echo '%define building_libffi 1' > libffi-gcc$base_ver.spec
|
||||||
|
sed -e '/^# LIBFFI-DELETE-BEGIN/,/^# LIBFFI-DELETE-END/d;s/^Name:[[:space:]]*gcc/Name: libffi-gcc/g' \
|
||||||
|
gcc.spec.in \
|
||||||
|
| sed -e 's%@base_ver@%'$base_ver'%g' \
|
||||||
|
| sed -n -e '{
|
||||||
|
/^# PACKAGE-BEGIN/h
|
||||||
|
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/H
|
||||||
|
/^# PACKAGE-BEGIN/,/^# PACKAGE-END/!p
|
||||||
|
/^# PACKAGE-END/{g
|
||||||
|
s/@variant@//g
|
||||||
|
p
|
||||||
|
g
|
||||||
|
s/@variant@/-32bit/g
|
||||||
|
p
|
||||||
|
g
|
||||||
|
s/@variant@/-64bit/g
|
||||||
|
p
|
||||||
|
}
|
||||||
|
}' \
|
||||||
|
>> libffi-gcc$base_ver.spec
|
||||||
|
test -f gcc$base_ver.changes \
|
||||||
|
&& ( ln -f gcc$base_ver.changes libffi-gcc$base_ver.changes; )
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo '%define building_testsuite 1' > gcc$base_ver-testresults.spec
|
||||||
|
echo '%define run_tests 1' >> gcc$base_ver-testresults.spec
|
||||||
|
sed -e '/^# GCC-TESTSUITE-DELETE-BEGIN/,/^# GCC-TESTSUITE-DELETE-END/d;s/-n gcc@base_ver@-testresults$//g;s/^Name:[[:space:]]*gcc@base_ver@/Name: gcc@base_ver@-testresults/g' \
|
||||||
|
gcc.spec.in \
|
||||||
|
| sed -e 's%@base_ver@%'$base_ver'%g' \
|
||||||
|
>> gcc$base_ver-testresults.spec
|
||||||
|
test -f gcc$base_ver.changes \
|
||||||
|
&& ( ln -f gcc$base_ver.changes gcc$base_ver-testresults.changes; )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
add_cross() {
|
||||||
|
local pkgname="$1"; shift
|
||||||
|
local rpmtarget="$1"; shift
|
||||||
|
local triplet="$1"; shift
|
||||||
|
|
||||||
|
echo "%define pkgname $pkgname" > $pkgname.spec
|
||||||
|
echo "%define cross_arch $rpmtarget" >> $pkgname.spec
|
||||||
|
echo "%define gcc_target_arch $triplet" >> $pkgname.spec
|
||||||
|
echo "$@" >> $pkgname.spec
|
||||||
|
{ sed -n -e '1,/COMMON-BEGIN/p' cross.spec.in
|
||||||
|
sed -n -e '/COMMON-BEGIN/,/COMMON-END/p' $outfile
|
||||||
|
sed -n -e '/COMMON-END/,$p' cross.spec.in; } |
|
||||||
|
sed -e "s#@base_ver@#$base_ver#" \
|
||||||
|
-e "s/^\(ExclusiveArch.*\) $rpmtarget[^ \r]*/\1 /" \
|
||||||
|
>> $pkgname.spec
|
||||||
|
test -f gcc$base_ver.changes && ln -f gcc$base_ver.changes $pkgname.changes
|
||||||
|
}
|
||||||
|
|
||||||
|
add_newlib_cross() {
|
||||||
|
add_cross $1-bootstrap $2 $3 "%define gcc_target_newlib 1
|
||||||
|
%define gcc_libc_bootstrap 1"
|
||||||
|
add_cross $1 $2 $3 "%define gcc_target_newlib 1"
|
||||||
|
}
|
||||||
|
|
||||||
|
# We now support "proper" cross-compilers to suse targets via a
|
||||||
|
# cross-glibc package, enable that via for example
|
||||||
|
#
|
||||||
|
# add_cross cross-aarch64-gcc$base_ver aarch64 aarch64-suse-linux
|
||||||
|
#
|
||||||
|
# For now keep the old way of doing things
|
||||||
|
if test "$do_crosses" = 1 ; then
|
||||||
|
add_cross cross-aarch64-gcc$base_ver aarch64 aarch64-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-armv6hl-gcc$base_ver armv6hl armv6hl-suse-linux-gnueabi %define gcc_icecream 1
|
||||||
|
add_cross cross-armv7hl-gcc$base_ver armv7hl armv7hl-suse-linux-gnueabi %define gcc_icecream 1
|
||||||
|
add_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi %define gcc_icecream 0
|
||||||
|
add_cross cross-avr-gcc$base_ver avr avr-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-i386-gcc$base_ver i386 i586-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-s390x-gcc$base_ver s390x s390x-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-sparc-gcc$base_ver sparcv9 sparc-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-sparc64-gcc$base_ver sparc64 sparc64-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-ppc64-gcc$base_ver ppc64 powerpc64-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-ppc64le-gcc$base_ver ppc64le powerpc64le-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-m68k-gcc$base_ver m68k m68k-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-mips-gcc$base_ver mips mips-suse-linux %define gcc_icecream 1
|
||||||
|
add_cross cross-hppa-gcc$base_ver hppa hppa-suse-linux %define gcc_icecream 1
|
||||||
|
add_newlib_cross cross-epiphany-gcc$base_ver epiphany epiphany-elf
|
||||||
|
add_newlib_cross cross-rx-gcc$base_ver rx rx-elf
|
||||||
|
#add_newlib_cross cross-rl78-gcc$base_ver rl78 rl78-elf
|
||||||
|
#add_newlib_cross cross-nds32le-gcc$base_ver nds32le nds32le-elf
|
||||||
|
fi
|
||||||
|
|
||||||
|
for f in *.spec; do
|
||||||
|
sed -i -e '/^# .*-\(BEGIN\|END\)$/d' $f
|
||||||
|
done
|
||||||
|
|
||||||
|
osc service localrun format_spec_file
|
||||||
|
|
||||||
|
exit 0
|
38
check-build.sh
Normal file
38
check-build.sh
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Copyright (c) 2003,2005 SUSE Linux Products GmbH, Germany. All rights reserved.
|
||||||
|
#
|
||||||
|
# Authors: Thorsten Kukuk <kukuk@suse.de>
|
||||||
|
#
|
||||||
|
# this script use the following variable(s):
|
||||||
|
#
|
||||||
|
# - $BUILD_BASENAME
|
||||||
|
#
|
||||||
|
|
||||||
|
case $BUILD_BASENAME in
|
||||||
|
*ppc*)
|
||||||
|
# Our biarch 32-bit compiler needs to be build on a 64-bit machine,
|
||||||
|
# otherwise some configure checks fail.
|
||||||
|
# Note that we cannot use uname here since powerpc32 was invoked
|
||||||
|
# already.
|
||||||
|
grep 'series64\|ppc64' /proc/version > /dev/null
|
||||||
|
if [ $? -ne 0 ] ; then
|
||||||
|
echo "build does not work on `hostname` for gcc"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*x86_64*)
|
||||||
|
#if [ `ulimit -v` -le 740000 ] ; then
|
||||||
|
# echo "build does not work on ("`hostname`" for gcc)"
|
||||||
|
# exit 1
|
||||||
|
#fi
|
||||||
|
if [ `getconf _NPROCESSORS_CONF` -lt 2 ] ; then
|
||||||
|
echo "build does not work on `hostname` for gcc"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
221
cross-aarch64-gcc7.changes
Normal file
221
cross-aarch64-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-aarch64-gcc7.spec
Normal file
433
cross-aarch64-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-arm-gcc7.changes
Normal file
221
cross-arm-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-arm-gcc7.spec
Normal file
433
cross-arm-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-armv6hl-gcc7.changes
Normal file
221
cross-armv6hl-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-armv6hl-gcc7.spec
Normal file
433
cross-armv6hl-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-armv7hl-gcc7.changes
Normal file
221
cross-armv7hl-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-armv7hl-gcc7.spec
Normal file
433
cross-armv7hl-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-avr-gcc7.changes
Normal file
221
cross-avr-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-avr-gcc7.spec
Normal file
433
cross-avr-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-epiphany-gcc7-bootstrap.changes
Normal file
221
cross-epiphany-gcc7-bootstrap.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
434
cross-epiphany-gcc7-bootstrap.spec
Normal file
434
cross-epiphany-gcc7-bootstrap.spec
Normal file
@ -0,0 +1,434 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-epiphany-gcc7.changes
Normal file
221
cross-epiphany-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-epiphany-gcc7.spec
Normal file
433
cross-epiphany-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-hppa-gcc7.changes
Normal file
221
cross-hppa-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-hppa-gcc7.spec
Normal file
433
cross-hppa-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-i386-gcc7.changes
Normal file
221
cross-i386-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-i386-gcc7.spec
Normal file
433
cross-i386-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-m68k-gcc7.changes
Normal file
221
cross-m68k-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-m68k-gcc7.spec
Normal file
433
cross-m68k-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-mips-gcc7.changes
Normal file
221
cross-mips-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-mips-gcc7.spec
Normal file
433
cross-mips-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-ppc64-gcc7.changes
Normal file
221
cross-ppc64-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-ppc64-gcc7.spec
Normal file
433
cross-ppc64-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-ppc64le-gcc7.changes
Normal file
221
cross-ppc64le-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-ppc64le-gcc7.spec
Normal file
433
cross-ppc64le-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-rx-gcc7-bootstrap.changes
Normal file
221
cross-rx-gcc7-bootstrap.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
434
cross-rx-gcc7-bootstrap.spec
Normal file
434
cross-rx-gcc7-bootstrap.spec
Normal file
@ -0,0 +1,434 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-rx-gcc7.changes
Normal file
221
cross-rx-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-rx-gcc7.spec
Normal file
433
cross-rx-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-s390x-gcc7.changes
Normal file
221
cross-s390x-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-s390x-gcc7.spec
Normal file
433
cross-s390x-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-sparc-gcc7.changes
Normal file
221
cross-sparc-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-sparc-gcc7.spec
Normal file
433
cross-sparc-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-sparc64-gcc7.changes
Normal file
221
cross-sparc64-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-sparc64-gcc7.spec
Normal file
433
cross-sparc64-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
221
cross-x86_64-gcc7.changes
Normal file
221
cross-x86_64-gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
433
cross-x86_64-gcc7.spec
Normal file
433
cross-x86_64-gcc7.spec
Normal file
@ -0,0 +1,433 @@
|
|||||||
|
#
|
||||||
|
# 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
|
3
gcc-7.0.0-r242874.tar.bz2
Normal file
3
gcc-7.0.0-r242874.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:32d3f3bd931aef0b5d780a9d8a20b5e0ca9ff67d187c2ef299444687698029af
|
||||||
|
size 74674882
|
51
gcc-add-defaultsspec.diff
Normal file
51
gcc-add-defaultsspec.diff
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
Index: gcc/gcc.c
|
||||||
|
===================================================================
|
||||||
|
--- gcc/gcc.c.orig 2013-11-26 15:41:59.000000000 +0100
|
||||||
|
+++ gcc/gcc.c 2013-11-26 16:40:35.780548125 +0100
|
||||||
|
@@ -258,6 +258,7 @@ static const char *replace_outfile_spec_
|
||||||
|
static const char *remove_outfile_spec_function (int, const char **);
|
||||||
|
static const char *version_compare_spec_function (int, const char **);
|
||||||
|
static const char *include_spec_function (int, const char **);
|
||||||
|
+static const char *include_noerr_spec_function (int, const char **);
|
||||||
|
static const char *find_file_spec_function (int, const char **);
|
||||||
|
static const char *find_plugindir_spec_function (int, const char **);
|
||||||
|
static const char *print_asm_header_spec_function (int, const char **);
|
||||||
|
@@ -1357,6 +1358,7 @@ static const struct spec_function static
|
||||||
|
{ "remove-outfile", remove_outfile_spec_function },
|
||||||
|
{ "version-compare", version_compare_spec_function },
|
||||||
|
{ "include", include_spec_function },
|
||||||
|
+ { "include_noerr", include_noerr_spec_function },
|
||||||
|
{ "find-file", find_file_spec_function },
|
||||||
|
{ "find-plugindir", find_plugindir_spec_function },
|
||||||
|
{ "print-asm-header", print_asm_header_spec_function },
|
||||||
|
@@ -6480,6 +6482,8 @@ main (int argc, char **argv)
|
||||||
|
if (access (specs_file, R_OK) == 0)
|
||||||
|
read_specs (specs_file, true, false);
|
||||||
|
|
||||||
|
+ do_self_spec ("%:include_noerr(defaults.spec)%(default_spec)");
|
||||||
|
+
|
||||||
|
/* Process any configure-time defaults specified for the command line
|
||||||
|
options, via OPTION_DEFAULT_SPECS. */
|
||||||
|
for (i = 0; i < ARRAY_SIZE (option_default_specs); i++)
|
||||||
|
@@ -8401,6 +8405,21 @@ get_random_number (void)
|
||||||
|
return ret ^ getpid ();
|
||||||
|
}
|
||||||
|
|
||||||
|
+static const char *
|
||||||
|
+include_noerr_spec_function (int argc, const char **argv)
|
||||||
|
+{
|
||||||
|
+ char *file;
|
||||||
|
+
|
||||||
|
+ if (argc != 1)
|
||||||
|
+ abort ();
|
||||||
|
+
|
||||||
|
+ file = find_a_file (&startfile_prefixes, argv[0], R_OK, 0);
|
||||||
|
+ if (file)
|
||||||
|
+ read_specs (file, FALSE, TRUE);
|
||||||
|
+
|
||||||
|
+ return NULL;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* %:compare-debug-dump-opt spec function. Save the last argument,
|
||||||
|
expected to be the last -fdump-final-insns option, or generate a
|
||||||
|
temporary. */
|
102
gcc-dir-version.patch
Normal file
102
gcc-dir-version.patch
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
Index: gcc/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- gcc/Makefile.in.orig 2016-08-30 12:17:09.065533526 +0200
|
||||||
|
+++ gcc/Makefile.in 2016-08-30 12:18:38.402596792 +0200
|
||||||
|
@@ -828,12 +828,14 @@ GTM_H = tm.h $(tm_file_list) in
|
||||||
|
TM_H = $(GTM_H) insn-flags.h $(OPTIONS_H)
|
||||||
|
|
||||||
|
# Variables for version information.
|
||||||
|
-BASEVER := $(srcdir)/BASE-VER # 4.x.y
|
||||||
|
+BASEVER := $(srcdir)/BASE-VER # 5
|
||||||
|
+FULLVER := $(srcdir)/FULL-VER # 5.x.y
|
||||||
|
DEVPHASE := $(srcdir)/DEV-PHASE # experimental, prerelease, ""
|
||||||
|
DATESTAMP := $(srcdir)/DATESTAMP # YYYYMMDD or empty
|
||||||
|
REVISION := $(srcdir)/REVISION # [BRANCH revision XXXXXX]
|
||||||
|
|
||||||
|
BASEVER_c := $(shell cat $(BASEVER))
|
||||||
|
+FULLVER_c := $(shell cat $(FULLVER))
|
||||||
|
DEVPHASE_c := $(shell cat $(DEVPHASE))
|
||||||
|
DATESTAMP_c := $(shell cat $(DATESTAMP))
|
||||||
|
|
||||||
|
@@ -857,6 +859,7 @@ PATCHLEVEL_c := \
|
||||||
|
# immediately after the comma in the $(if ...) constructs is
|
||||||
|
# significant - do not remove it.
|
||||||
|
BASEVER_s := "\"$(BASEVER_c)\""
|
||||||
|
+FULLVER_s := "\"$(FULLVER_c)\""
|
||||||
|
DEVPHASE_s := "\"$(if $(DEVPHASE_c), ($(DEVPHASE_c)))\""
|
||||||
|
DATESTAMP_s := \
|
||||||
|
"\"$(if $(DEVPHASE_c)$(filter-out 0,$(PATCHLEVEL_c)), $(DATESTAMP_c))\""
|
||||||
|
@@ -2074,7 +2077,7 @@ s-options-h: optionlist $(srcdir)/opt-fu
|
||||||
|
|
||||||
|
dumpvers: dumpvers.c
|
||||||
|
|
||||||
|
-CFLAGS-version.o += -DBASEVER=$(BASEVER_s) -DDATESTAMP=$(DATESTAMP_s) \
|
||||||
|
+CFLAGS-version.o += -DBASEVER=$(FULLVER_s) -DDATESTAMP=$(DATESTAMP_s) \
|
||||||
|
-DREVISION=$(REVISION_s) \
|
||||||
|
-DDEVPHASE=$(DEVPHASE_s) -DPKGVERSION=$(PKGVERSION_s) \
|
||||||
|
-DBUGURL=$(BUGURL_s)
|
||||||
|
@@ -2084,10 +2087,10 @@ version.o: $(REVISION) $(DATESTAMP) $(BA
|
||||||
|
CFLAGS-lto-compress.o += $(ZLIBINC)
|
||||||
|
|
||||||
|
bversion.h: s-bversion; @true
|
||||||
|
-s-bversion: BASE-VER
|
||||||
|
- echo "#define BUILDING_GCC_MAJOR `echo $(BASEVER_c) | sed -e 's/^\([0-9]*\).*$$/\1/'`" > bversion.h
|
||||||
|
- echo "#define BUILDING_GCC_MINOR `echo $(BASEVER_c) | sed -e 's/^[0-9]*\.\([0-9]*\).*$$/\1/'`" >> bversion.h
|
||||||
|
- echo "#define BUILDING_GCC_PATCHLEVEL `echo $(BASEVER_c) | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$$/\1/'`" >> bversion.h
|
||||||
|
+s-bversion: FULL-VER
|
||||||
|
+ echo "#define BUILDING_GCC_MAJOR `echo $(FULLVER_c) | sed -e 's/^\([0-9]*\).*$$/\1/'`" > bversion.h
|
||||||
|
+ echo "#define BUILDING_GCC_MINOR `echo $(FULLVER_c) | sed -e 's/^[0-9]*\.\([0-9]*\).*$$/\1/'`" >> bversion.h
|
||||||
|
+ echo "#define BUILDING_GCC_PATCHLEVEL `echo $(FULLVER_c) | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$$/\1/'`" >> bversion.h
|
||||||
|
echo "#define BUILDING_GCC_VERSION (BUILDING_GCC_MAJOR * 1000 + BUILDING_GCC_MINOR)" >> bversion.h
|
||||||
|
$(STAMP) s-bversion
|
||||||
|
|
||||||
|
@@ -2476,9 +2479,9 @@ build/%.o : # dependencies provided by
|
||||||
|
## build/version.o is compiled by the $(COMPILER_FOR_BUILD) but needs
|
||||||
|
## several C macro definitions, just like version.o
|
||||||
|
build/version.o: version.c version.h \
|
||||||
|
- $(REVISION) $(DATESTAMP) $(BASEVER) $(DEVPHASE)
|
||||||
|
+ $(REVISION) $(DATESTAMP) $(FULLVER) $(DEVPHASE)
|
||||||
|
$(COMPILER_FOR_BUILD) -c $(BUILD_COMPILERFLAGS) $(BUILD_CPPFLAGS) \
|
||||||
|
- -DBASEVER=$(BASEVER_s) -DDATESTAMP=$(DATESTAMP_s) \
|
||||||
|
+ -DBASEVER=$(FULLVER_s) -DDATESTAMP=$(DATESTAMP_s) \
|
||||||
|
-DREVISION=$(REVISION_s) \
|
||||||
|
-DDEVPHASE=$(DEVPHASE_s) -DPKGVERSION=$(PKGVERSION_s) \
|
||||||
|
-DBUGURL=$(BUGURL_s) -o $@ $<
|
||||||
|
@@ -2701,8 +2704,8 @@ PREPROCESSOR_DEFINES = \
|
||||||
|
-DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
|
||||||
|
@TARGET_SYSTEM_ROOT_DEFINE@
|
||||||
|
|
||||||
|
-CFLAGS-cppbuiltin.o += $(PREPROCESSOR_DEFINES) -DBASEVER=$(BASEVER_s)
|
||||||
|
-cppbuiltin.o: $(BASEVER)
|
||||||
|
+CFLAGS-cppbuiltin.o += $(PREPROCESSOR_DEFINES) -DBASEVER=$(FULLVER_s)
|
||||||
|
+cppbuiltin.o: $(FULLVER)
|
||||||
|
|
||||||
|
CFLAGS-cppdefault.o += $(PREPROCESSOR_DEFINES)
|
||||||
|
|
||||||
|
@@ -2718,8 +2721,8 @@ build/gcov-iov$(build_exeext): build/gco
|
||||||
|
build/gcov-iov.o -o $@
|
||||||
|
|
||||||
|
gcov-iov.h: s-iov; @true
|
||||||
|
-s-iov: build/gcov-iov$(build_exeext) $(BASEVER) $(DEVPHASE)
|
||||||
|
- build/gcov-iov$(build_exeext) '$(BASEVER_c)' '$(DEVPHASE_c)' \
|
||||||
|
+s-iov: build/gcov-iov$(build_exeext) $(FULLVER) $(DEVPHASE)
|
||||||
|
+ build/gcov-iov$(build_exeext) '$(FULLVER_c)' '$(DEVPHASE_c)' \
|
||||||
|
> tmp-gcov-iov.h
|
||||||
|
$(SHELL) $(srcdir)/../move-if-change tmp-gcov-iov.h gcov-iov.h
|
||||||
|
$(STAMP) s-iov
|
||||||
|
Index: gcc/cppbuiltin.c
|
||||||
|
===================================================================
|
||||||
|
--- gcc/cppbuiltin.c.orig 2016-08-30 12:17:09.069533573 +0200
|
||||||
|
+++ gcc/cppbuiltin.c 2016-08-30 12:17:14.505598282 +0200
|
||||||
|
@@ -36,9 +36,9 @@ parse_basever (int *major, int *minor, i
|
||||||
|
static int s_major = -1, s_minor, s_patchlevel;
|
||||||
|
|
||||||
|
if (s_major == -1)
|
||||||
|
- if (sscanf (BASEVER, "%d.%d.%d", &s_major, &s_minor, &s_patchlevel) != 3)
|
||||||
|
+ if (sscanf (version_string, "%d.%d.%d", &s_major, &s_minor, &s_patchlevel) != 3)
|
||||||
|
{
|
||||||
|
- sscanf (BASEVER, "%d.%d", &s_major, &s_minor);
|
||||||
|
+ sscanf (version_string, "%d.%d", &s_major, &s_minor);
|
||||||
|
s_patchlevel = 0;
|
||||||
|
}
|
||||||
|
|
2499
gcc.spec.in
Normal file
2499
gcc.spec.in
Normal file
File diff suppressed because it is too large
Load Diff
91
gcc41-ppc32-retaddr.patch
Normal file
91
gcc41-ppc32-retaddr.patch
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
2005-11-28 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
* config/rs6000/rs6000.c (rs6000_return_addr): If COUNT == 0,
|
||||||
|
read word RETURN_ADDRESS_OFFSET bytes above arg_pointer_rtx
|
||||||
|
instead of doing an extran indirection from frame_pointer_rtx.
|
||||||
|
|
||||||
|
* gcc.dg/20051128-1.c: New test.
|
||||||
|
|
||||||
|
Index: gcc/config/rs6000/rs6000.c
|
||||||
|
===================================================================
|
||||||
|
--- gcc/config/rs6000/rs6000.c.orig 2013-11-26 15:42:33.000000000 +0100
|
||||||
|
+++ gcc/config/rs6000/rs6000.c 2013-11-26 16:44:14.566089231 +0100
|
||||||
|
@@ -20878,18 +20878,22 @@ rs6000_return_addr (int count, rtx frame
|
||||||
|
if (count != 0
|
||||||
|
|| ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN) && flag_pic))
|
||||||
|
{
|
||||||
|
+ rtx x;
|
||||||
|
cfun->machine->ra_needs_full_frame = 1;
|
||||||
|
|
||||||
|
- return
|
||||||
|
- gen_rtx_MEM
|
||||||
|
- (Pmode,
|
||||||
|
- memory_address
|
||||||
|
- (Pmode,
|
||||||
|
- plus_constant (Pmode,
|
||||||
|
- copy_to_reg
|
||||||
|
- (gen_rtx_MEM (Pmode,
|
||||||
|
- memory_address (Pmode, frame))),
|
||||||
|
- RETURN_ADDRESS_OFFSET)));
|
||||||
|
+ if (count == 0)
|
||||||
|
+ {
|
||||||
|
+ gcc_assert (frame == frame_pointer_rtx);
|
||||||
|
+ x = arg_pointer_rtx;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ x = memory_address (Pmode, frame);
|
||||||
|
+ x = copy_to_reg (gen_rtx_MEM (Pmode, x));
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ x = plus_constant (Pmode, x, RETURN_ADDRESS_OFFSET);
|
||||||
|
+ return gen_rtx_MEM (Pmode, memory_address (Pmode, x));
|
||||||
|
}
|
||||||
|
|
||||||
|
cfun->machine->ra_need_lr = 1;
|
||||||
|
Index: gcc/testsuite/gcc.dg/20051128-1.c
|
||||||
|
===================================================================
|
||||||
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||||
|
+++ gcc/testsuite/gcc.dg/20051128-1.c 2013-11-26 16:44:14.566089231 +0100
|
||||||
|
@@ -0,0 +1,41 @@
|
||||||
|
+/* { dg-do run } */
|
||||||
|
+/* { dg-options "-O2 -fpic" } */
|
||||||
|
+
|
||||||
|
+extern void exit (int);
|
||||||
|
+extern void abort (void);
|
||||||
|
+
|
||||||
|
+int b;
|
||||||
|
+
|
||||||
|
+struct A
|
||||||
|
+{
|
||||||
|
+ void *pad[147];
|
||||||
|
+ void *ra, *h;
|
||||||
|
+ long o;
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+void
|
||||||
|
+__attribute__((noinline))
|
||||||
|
+foo (struct A *a, void *x)
|
||||||
|
+{
|
||||||
|
+ __builtin_memset (a, 0, sizeof (a));
|
||||||
|
+ if (!b)
|
||||||
|
+ exit (0);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+void
|
||||||
|
+__attribute__((noinline))
|
||||||
|
+bar (void)
|
||||||
|
+{
|
||||||
|
+ struct A a;
|
||||||
|
+
|
||||||
|
+ __builtin_unwind_init ();
|
||||||
|
+ foo (&a, __builtin_return_address (0));
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int
|
||||||
|
+main (void)
|
||||||
|
+{
|
||||||
|
+ bar ();
|
||||||
|
+ abort ();
|
||||||
|
+ return 0;
|
||||||
|
+}
|
13
gcc43-no-unwind-tables.diff
Normal file
13
gcc43-no-unwind-tables.diff
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Index: libgcc/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- libgcc/Makefile.in.orig 2015-12-14 11:33:03.225790694 +0100
|
||||||
|
+++ libgcc/Makefile.in 2015-12-17 15:09:45.415136693 +0100
|
||||||
|
@@ -288,7 +288,7 @@ CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(IN
|
||||||
|
$(NO_PIE_CFLAGS) -finhibit-size-directive -fno-inline -fno-exceptions \
|
||||||
|
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize \
|
||||||
|
-fbuilding-libgcc -fno-stack-protector $(FORCE_EXPLICIT_EH_REGISTRY) \
|
||||||
|
- $(INHIBIT_LIBC_CFLAGS)
|
||||||
|
+ $(INHIBIT_LIBC_CFLAGS) -fno-unwind-tables -fno-asynchronous-unwind-tables
|
||||||
|
|
||||||
|
# Extra flags to use when compiling crt{begin,end}.o.
|
||||||
|
CRTSTUFF_T_CFLAGS =
|
676
gcc44-rename-info-files.patch
Normal file
676
gcc44-rename-info-files.patch
Normal file
@ -0,0 +1,676 @@
|
|||||||
|
#! /bin/sh -e
|
||||||
|
|
||||||
|
# DP: Allow transformations on info file names. Reference the
|
||||||
|
# DP: transformed info file names in the texinfo files.
|
||||||
|
|
||||||
|
dir=
|
||||||
|
if [ $# -eq 3 -a "$2" = '-d' ]; then
|
||||||
|
pdir="-d $3"
|
||||||
|
dir="$3/"
|
||||||
|
elif [ $# -ne 1 ]; then
|
||||||
|
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
case "$1" in
|
||||||
|
-patch)
|
||||||
|
patch $pdir -f --no-backup-if-mismatch -p0 < $0
|
||||||
|
;;
|
||||||
|
-unpatch)
|
||||||
|
patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
|
gcc/ChangeLog:
|
||||||
|
|
||||||
|
2004-02-17 Matthias Klose <doko@debian.org>
|
||||||
|
|
||||||
|
* Makefile.in: Allow transformations on info file names.
|
||||||
|
Define MAKEINFODEFS, macros to pass transformated info file
|
||||||
|
names to makeinfo.
|
||||||
|
* doc/cpp.texi: Use macros defined in MAKEINFODEFS for references.
|
||||||
|
* doc/cppinternals.texi: Likewise.
|
||||||
|
* doc/extend.texi: Likewise.
|
||||||
|
* doc/gcc.texi: Likewise.
|
||||||
|
* doc/gccint.texi: Likewise.
|
||||||
|
* doc/invoke.texi: Likewise.
|
||||||
|
* doc/libgcc.texi: Likewise.
|
||||||
|
* doc/makefile.texi: Likewise.
|
||||||
|
* doc/passes.texi: Likewise.
|
||||||
|
* doc/sourcebuild.texi: Likewise.
|
||||||
|
* doc/standards.texi: Likewise.
|
||||||
|
* doc/trouble.texi: Likewise.
|
||||||
|
|
||||||
|
gcc/fortran/ChangeLog:
|
||||||
|
* Make-lang.in: Allow transformations on info file names.
|
||||||
|
Pass macros of transformated info file defined in MAKEINFODEFS
|
||||||
|
names to makeinfo.
|
||||||
|
* gfortran.texi: Use macros defined in MAKEINFODEFS for references.
|
||||||
|
|
||||||
|
gcc/java/ChangeLog:
|
||||||
|
* Make-lang.in: Allow transformations on info file names.
|
||||||
|
Pass macros of transformated info file defined in MAKEINFODEFS
|
||||||
|
names to makeinfo.
|
||||||
|
* gcj.texi: Use macros defined in MAKEINFODEFS for references.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
gcc/Makefile.in | 74 ++++++++++++++++++++++++++++++++++++----------
|
||||||
|
gcc/ada/gnat-style.texi | 2 -
|
||||||
|
gcc/ada/gnat_rm.texi | 2 -
|
||||||
|
gcc/ada/gnat_ugn.texi | 2 -
|
||||||
|
gcc/doc/cpp.texi | 2 -
|
||||||
|
gcc/doc/cppinternals.texi | 2 -
|
||||||
|
gcc/doc/extend.texi | 2 -
|
||||||
|
gcc/doc/gcc.texi | 8 ++--
|
||||||
|
gcc/doc/gccint.texi | 4 +-
|
||||||
|
gcc/doc/install.texi | 2 -
|
||||||
|
gcc/doc/invoke.texi | 10 +++---
|
||||||
|
gcc/doc/libgcc.texi | 2 -
|
||||||
|
gcc/doc/makefile.texi | 2 -
|
||||||
|
gcc/doc/passes.texi | 2 -
|
||||||
|
gcc/doc/standards.texi | 4 +-
|
||||||
|
gcc/fortran/Make-lang.in | 11 +++---
|
||||||
|
gcc/fortran/gfortran.texi | 2 -
|
||||||
|
gcc/java/Make-lang.in | 19 +++++++++--
|
||||||
|
gcc/java/gcj.texi | 20 ++++++------
|
||||||
|
libgomp/Makefile.am | 13 ++++----
|
||||||
|
libgomp/Makefile.in | 14 ++++----
|
||||||
|
libgomp/libgomp.texi | 2 -
|
||||||
|
22 files changed, 131 insertions(+), 70 deletions(-)
|
||||||
|
|
||||||
|
Index: gcc/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- gcc/Makefile.in.orig 2016-03-07 14:14:30.541648040 +0100
|
||||||
|
+++ gcc/Makefile.in 2016-03-07 14:14:30.557648222 +0100
|
||||||
|
@@ -2962,8 +2962,27 @@ install-no-fixedincludes:
|
||||||
|
|
||||||
|
doc: $(BUILD_INFO) $(GENERATED_MANPAGES)
|
||||||
|
|
||||||
|
-INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
|
||||||
|
- doc/gccinstall.info doc/cppinternals.info
|
||||||
|
+INFO_CPP_NAME = $(shell echo cpp|sed '$(program_transform_name)')
|
||||||
|
+INFO_GCC_NAME = $(shell echo gcc|sed '$(program_transform_name)')
|
||||||
|
+INFO_GXX_NAME = $(shell echo g++|sed '$(program_transform_name)')
|
||||||
|
+INFO_GCCINT_NAME = $(shell echo gccint|sed '$(program_transform_name)')
|
||||||
|
+INFO_GCCINSTALL_NAME = $(shell echo gccinstall|sed '$(program_transform_name)')
|
||||||
|
+INFO_CPPINT_NAME = $(shell echo cppinternals|sed '$(program_transform_name)')
|
||||||
|
+
|
||||||
|
+INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
|
||||||
|
+INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)')
|
||||||
|
+
|
||||||
|
+INFOFILES = doc/$(INFO_CPP_NAME).info doc/$(INFO_GCC_NAME).info \
|
||||||
|
+ doc/$(INFO_GCCINT_NAME).info \
|
||||||
|
+ doc/$(INFO_GCCINSTALL_NAME).info doc/$(INFO_CPPINT_NAME).info
|
||||||
|
+
|
||||||
|
+MAKEINFODEFS = -D 'fncpp $(INFO_CPP_NAME)' -D 'fngcc $(INFO_GCC_NAME)' \
|
||||||
|
+ -D 'fngxx $(INFO_GXX_NAME)' \
|
||||||
|
+ -D 'fngccint $(INFO_GCCINT_NAME)' \
|
||||||
|
+ -D 'fngccinstall $(INFO_GCCINSTALL_NAME)' \
|
||||||
|
+ -D 'fncppint $(INFO_CPPINT_NAME)' \
|
||||||
|
+ -D 'fngfortran $(INFO_FORTRAN_NAME)' \
|
||||||
|
+ -D 'fngcj $(INFO_GCJ_NAME)'
|
||||||
|
|
||||||
|
info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
|
||||||
|
|
||||||
|
@@ -3018,21 +3037,41 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE)
|
||||||
|
# patterns. To use them, put each of the specific targets with its
|
||||||
|
# specific dependencies but no build commands.
|
||||||
|
|
||||||
|
-doc/cpp.info: $(TEXI_CPP_FILES)
|
||||||
|
-doc/gcc.info: $(TEXI_GCC_FILES)
|
||||||
|
-doc/gccint.info: $(TEXI_GCCINT_FILES)
|
||||||
|
-doc/cppinternals.info: $(TEXI_CPPINT_FILES)
|
||||||
|
-
|
||||||
|
+# Generic entry to handle info files, which are not renamed (currently Ada)
|
||||||
|
doc/%.info: %.texi
|
||||||
|
if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
$(MAKEINFO) $(MAKEINFOFLAGS) -I . -I $(gcc_docdir) \
|
||||||
|
-I $(gcc_docdir)/include -o $@ $<; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
+doc/$(INFO_CPP_NAME).info: $(TEXI_CPP_FILES)
|
||||||
|
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||||
|
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+doc/$(INFO_GCC_NAME).info: $(TEXI_GCC_FILES)
|
||||||
|
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||||
|
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+doc/$(INFO_GCCINT_NAME).info: $(TEXI_GCCINT_FILES)
|
||||||
|
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||||
|
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+doc/$(INFO_CPPINT_NAME).info: $(TEXI_CPPINT_FILES)
|
||||||
|
+ if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||||
|
+ -I $(gcc_docdir)/include -o $@ $<; \
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
# Duplicate entry to handle renaming of gccinstall.info
|
||||||
|
-doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
|
||||||
|
+doc/$(INFO_GCCINSTALL_NAME).info: $(TEXI_GCCINSTALL_FILES)
|
||||||
|
if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
- $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
|
||||||
|
+ $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
|
||||||
|
-I $(gcc_docdir)/include -o $@ $<; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
@@ -3435,11 +3474,11 @@ install-driver: installdirs xgcc$(exeext
|
||||||
|
# $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir
|
||||||
|
# to do the install.
|
||||||
|
install-info:: doc installdirs \
|
||||||
|
- $(DESTDIR)$(infodir)/cpp.info \
|
||||||
|
- $(DESTDIR)$(infodir)/gcc.info \
|
||||||
|
- $(DESTDIR)$(infodir)/cppinternals.info \
|
||||||
|
- $(DESTDIR)$(infodir)/gccinstall.info \
|
||||||
|
- $(DESTDIR)$(infodir)/gccint.info \
|
||||||
|
+ $(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info \
|
||||||
|
+ $(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info \
|
||||||
|
+ $(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info \
|
||||||
|
+ $(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info \
|
||||||
|
+ $(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info \
|
||||||
|
lang.install-info
|
||||||
|
|
||||||
|
$(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
|
||||||
|
@@ -3653,8 +3692,11 @@ uninstall: lang.uninstall
|
||||||
|
-rm -rf $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext)
|
||||||
|
-rm -rf $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
|
||||||
|
-rm -rf $(DESTDIR)$(man1dir)/cpp$(man1ext)
|
||||||
|
- -rm -f $(DESTDIR)$(infodir)/cpp.info* $(DESTDIR)$(infodir)/gcc.info*
|
||||||
|
- -rm -f $(DESTDIR)$(infodir)/cppinternals.info* $(DESTDIR)$(infodir)/gccint.info*
|
||||||
|
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info*
|
||||||
|
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info*
|
||||||
|
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info*
|
||||||
|
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info*
|
||||||
|
+ -rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info*
|
||||||
|
for i in ar nm ranlib ; do \
|
||||||
|
install_name=`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ;\
|
||||||
|
target_install_name=$(target_noncanonical)-`echo gcc-$$i|sed '$(program_transform_name)'`$(exeext) ; \
|
||||||
|
Index: gcc/ada/gnat-style.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/ada/gnat-style.texi.orig 2015-12-14 11:33:31.158112093 +0100
|
||||||
|
+++ gcc/ada/gnat-style.texi 2016-03-07 14:14:30.561648268 +0100
|
||||||
|
@@ -31,7 +31,7 @@ Texts. A copy of the license is include
|
||||||
|
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* gnat-style: (gnat-style). GNAT Coding Style
|
||||||
|
+* gnat-style: (gnat-style-6). GNAT Coding Style
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
@macro syntax{element}
|
||||||
|
Index: gcc/ada/gnat_rm.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/ada/gnat_rm.texi.orig 2016-01-08 09:30:08.457102667 +0100
|
||||||
|
+++ gcc/ada/gnat_rm.texi 2016-03-07 14:14:30.569648359 +0100
|
||||||
|
@@ -12,7 +12,7 @@
|
||||||
|
@finalout
|
||||||
|
@dircategory GNU Ada Tools
|
||||||
|
@direntry
|
||||||
|
-* gnat_rm: (gnat_rm.info). gnat_rm
|
||||||
|
+* GNAT Reference Manual: (gnat_rm-6). Reference Manual for GNU Ada tools.
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
@definfoenclose strong,`,'
|
||||||
|
Index: gcc/ada/gnat_ugn.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/ada/gnat_ugn.texi.orig 2016-01-08 09:30:08.461102712 +0100
|
||||||
|
+++ gcc/ada/gnat_ugn.texi 2016-03-07 14:14:30.573648405 +0100
|
||||||
|
@@ -12,7 +12,7 @@
|
||||||
|
@finalout
|
||||||
|
@dircategory GNU Ada Tools
|
||||||
|
@direntry
|
||||||
|
-* gnat_ugn: (gnat_ugn.info). gnat_ugn
|
||||||
|
+* User's Guide: (gnat_ugn-6).
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
@definfoenclose strong,`,'
|
||||||
|
Index: gcc/doc/cpp.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/cpp.texi.orig 2016-01-21 09:51:11.415101482 +0100
|
||||||
|
+++ gcc/doc/cpp.texi 2016-03-07 14:14:30.573648405 +0100
|
||||||
|
@@ -50,7 +50,7 @@ This manual contains no Invariant Sectio
|
||||||
|
@ifinfo
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* Cpp: (cpp). The GNU C preprocessor.
|
||||||
|
+* @value{fncpp}: (@value{fncpp}). The GNU C preprocessor.
|
||||||
|
@end direntry
|
||||||
|
@end ifinfo
|
||||||
|
|
||||||
|
Index: gcc/doc/cppinternals.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/cppinternals.texi.orig 2016-01-08 09:29:42.028802453 +0100
|
||||||
|
+++ gcc/doc/cppinternals.texi 2016-03-07 14:14:30.573648405 +0100
|
||||||
|
@@ -7,7 +7,7 @@
|
||||||
|
@ifinfo
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* Cpplib: (cppinternals). Cpplib internals.
|
||||||
|
+* @value{fncppint}: (@value{fncppint}). Cpplib internals.
|
||||||
|
@end direntry
|
||||||
|
@end ifinfo
|
||||||
|
|
||||||
|
Index: gcc/doc/extend.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/extend.texi.orig 2016-03-04 09:34:42.599054435 +0100
|
||||||
|
+++ gcc/doc/extend.texi 2016-03-07 14:14:30.573648405 +0100
|
||||||
|
@@ -19810,7 +19810,7 @@ want to write code that checks whether t
|
||||||
|
test for the GNU compiler the same way as for C programs: check for a
|
||||||
|
predefined macro @code{__GNUC__}. You can also use @code{__GNUG__} to
|
||||||
|
test specifically for GNU C++ (@pxref{Common Predefined Macros,,
|
||||||
|
-Predefined Macros,cpp,The GNU C Preprocessor}).
|
||||||
|
+Predefined Macros,@value{fncpp},The GNU C Preprocessor}).
|
||||||
|
|
||||||
|
@menu
|
||||||
|
* C++ Volatiles:: What constitutes an access to a volatile object.
|
||||||
|
Index: gcc/doc/gcc.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/gcc.texi.orig 2016-01-08 09:29:42.028802453 +0100
|
||||||
|
+++ gcc/doc/gcc.texi 2016-03-07 14:14:30.573648405 +0100
|
||||||
|
@@ -63,10 +63,10 @@ Texts being (a) (see below), and with th
|
||||||
|
@ifnottex
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* gcc: (gcc). The GNU Compiler Collection.
|
||||||
|
-* g++: (gcc). The GNU C++ compiler.
|
||||||
|
-* gcov: (gcc) Gcov. @command{gcov}---a test coverage program.
|
||||||
|
-* gcov-tool: (gcc) Gcov-tool. @command{gcov-tool}---an offline gcda profile processing program.
|
||||||
|
+* @value{fngcc}: (@value{fngcc}). The GNU Compiler Collection.
|
||||||
|
+* @value{fngxx}: (@value{fngxx}). The GNU C++ compiler.
|
||||||
|
+* gcov: (@value{fngcc}) Gcov. @command{gcov}---a test coverage program.
|
||||||
|
+* gcov-tool: (@value{fngcc}) Gcov-tool. @command{gcov-tool}---an offline gcda profile processing program.
|
||||||
|
@end direntry
|
||||||
|
This file documents the use of the GNU compilers.
|
||||||
|
@sp 1
|
||||||
|
@@ -126,7 +126,7 @@ version @value{version-GCC}.
|
||||||
|
The internals of the GNU compilers, including how to port them to new
|
||||||
|
targets and some information about how to write front ends for new
|
||||||
|
languages, are documented in a separate manual. @xref{Top,,
|
||||||
|
-Introduction, gccint, GNU Compiler Collection (GCC) Internals}.
|
||||||
|
+Introduction, @value{fngccint}, GNU Compiler Collection (GCC) Internals}.
|
||||||
|
|
||||||
|
@menu
|
||||||
|
* G++ and GCC:: You can compile C or C++ programs.
|
||||||
|
Index: gcc/doc/gccint.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/gccint.texi.orig 2016-01-08 09:29:42.028802453 +0100
|
||||||
|
+++ gcc/doc/gccint.texi 2016-03-07 14:14:30.573648405 +0100
|
||||||
|
@@ -49,7 +49,7 @@ Texts being (a) (see below), and with th
|
||||||
|
@ifnottex
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* gccint: (gccint). Internals of the GNU Compiler Collection.
|
||||||
|
+* @value{fngccint}: (@value{fngccint}). Internals of the GNU Compiler Collection.
|
||||||
|
@end direntry
|
||||||
|
This file documents the internals of the GNU compilers.
|
||||||
|
@sp 1
|
||||||
|
@@ -81,7 +81,7 @@ write front ends for new languages. It
|
||||||
|
@value{VERSION_PACKAGE}
|
||||||
|
@end ifset
|
||||||
|
version @value{version-GCC}. The use of the GNU compilers is documented in a
|
||||||
|
-separate manual. @xref{Top,, Introduction, gcc, Using the GNU
|
||||||
|
+separate manual. @xref{Top,, Introduction, @value{fngcc}, Using the GNU
|
||||||
|
Compiler Collection (GCC)}.
|
||||||
|
|
||||||
|
This manual is mainly a reference manual rather than a tutorial. It
|
||||||
|
Index: gcc/doc/install.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/install.texi.orig 2016-02-29 09:45:37.403360796 +0100
|
||||||
|
+++ gcc/doc/install.texi 2016-03-07 14:14:30.577648450 +0100
|
||||||
|
@@ -94,7 +94,7 @@ Free Documentation License}''.
|
||||||
|
@end ifinfo
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* gccinstall: (gccinstall). Installing the GNU Compiler Collection.
|
||||||
|
+* @value{fngccinstall}: (@value{fngccinstall}). Installing the GNU Compiler Collection.
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
@c Part 3 Titlepage and Copyright
|
||||||
|
Index: gcc/doc/invoke.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/invoke.texi.orig 2016-02-29 09:45:37.403360796 +0100
|
||||||
|
+++ gcc/doc/invoke.texi 2016-03-07 14:14:30.577648450 +0100
|
||||||
|
@@ -6354,7 +6354,7 @@ the standard calling sequence automatica
|
||||||
|
and nothing is saved by pretending it doesn't exist. The
|
||||||
|
machine-description macro @code{FRAME_POINTER_REQUIRED} controls
|
||||||
|
whether a target machine supports this flag. @xref{Registers,,Register
|
||||||
|
-Usage, gccint, GNU Compiler Collection (GCC) Internals}.
|
||||||
|
+Usage, @value{fngccint}, GNU Compiler Collection (GCC) Internals}.
|
||||||
|
|
||||||
|
The default setting (when not optimizing for
|
||||||
|
size) for 32-bit GNU/Linux x86 and 32-bit Darwin x86 targets is
|
||||||
|
@@ -10548,7 +10548,7 @@ One of the standard libraries bypassed b
|
||||||
|
@option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
|
||||||
|
which GCC uses to overcome shortcomings of particular machines, or special
|
||||||
|
needs for some languages.
|
||||||
|
-(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler
|
||||||
|
+(@xref{Interface,,Interfacing to GCC Output,@value{fngccint},GNU Compiler
|
||||||
|
Collection (GCC) Internals},
|
||||||
|
for more discussion of @file{libgcc.a}.)
|
||||||
|
In most cases, you need @file{libgcc.a} even when you want to avoid
|
||||||
|
@@ -10557,7 +10557,7 @@ or @option{-nodefaultlibs} you should us
|
||||||
|
This ensures that you have no unresolved references to internal GCC
|
||||||
|
library subroutines.
|
||||||
|
(An example of such an internal subroutine is @code{__main}, used to ensure C++
|
||||||
|
-constructors are called; @pxref{Collect2,,@code{collect2}, gccint,
|
||||||
|
+constructors are called; @pxref{Collect2,,@code{collect2}, @value{fngccint},
|
||||||
|
GNU Compiler Collection (GCC) Internals}.)
|
||||||
|
|
||||||
|
@item -pie
|
||||||
|
@@ -25046,7 +25046,7 @@ Note that you can also specify places to
|
||||||
|
@option{-B}, @option{-I} and @option{-L} (@pxref{Directory Options}). These
|
||||||
|
take precedence over places specified using environment variables, which
|
||||||
|
in turn take precedence over those specified by the configuration of GCC@.
|
||||||
|
-@xref{Driver,, Controlling the Compilation Driver @file{gcc}, gccint,
|
||||||
|
+@xref{Driver,, Controlling the Compilation Driver @file{gcc}, @value{fngccint},
|
||||||
|
GNU Compiler Collection (GCC) Internals}.
|
||||||
|
|
||||||
|
@table @env
|
||||||
|
@@ -25206,7 +25206,7 @@ the headers it contains change.
|
||||||
|
|
||||||
|
A precompiled header file is searched for when @code{#include} is
|
||||||
|
seen in the compilation. As it searches for the included file
|
||||||
|
-(@pxref{Search Path,,Search Path,cpp,The C Preprocessor}) the
|
||||||
|
+(@pxref{Search Path,,Search Path,@value{fncpp},The C Preprocessor}) the
|
||||||
|
compiler looks for a precompiled header in each directory just before it
|
||||||
|
looks for the include file in that directory. The name searched for is
|
||||||
|
the name specified in the @code{#include} with @samp{.gch} appended. If
|
||||||
|
Index: gcc/doc/libgcc.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/libgcc.texi.orig 2016-01-08 09:29:42.684809905 +0100
|
||||||
|
+++ gcc/doc/libgcc.texi 2016-03-07 14:14:30.577648450 +0100
|
||||||
|
@@ -24,7 +24,7 @@ that needs them.
|
||||||
|
GCC will also generate calls to C library routines, such as
|
||||||
|
@code{memcpy} and @code{memset}, in some cases. The set of routines
|
||||||
|
that GCC may possibly use is documented in @ref{Other
|
||||||
|
-Builtins,,,gcc, Using the GNU Compiler Collection (GCC)}.
|
||||||
|
+Builtins,,,@value{fngcc}, Using the GNU Compiler Collection (GCC)}.
|
||||||
|
|
||||||
|
These routines take arguments and return values of a specific machine
|
||||||
|
mode, not a specific C type. @xref{Machine Modes}, for an explanation
|
||||||
|
Index: gcc/doc/makefile.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/doc/makefile.texi.orig 2016-01-08 09:29:42.680809860 +0100
|
||||||
|
+++ gcc/doc/makefile.texi 2016-03-07 14:14:30.577648450 +0100
|
||||||
|
@@ -139,7 +139,7 @@ regardless of how it itself was compiled
|
||||||
|
Builds a compiler with profiling feedback information. In this case,
|
||||||
|
the second and third stages are named @samp{profile} and @samp{feedback},
|
||||||
|
respectively. For more information, see
|
||||||
|
-@ref{Building,,Building with profile feedback,gccinstall,Installing GCC}.
|
||||||
|
+@ref{Building,,Building with profile feedback,@value{fngccinstall},Installing GCC}.
|
||||||
|
|
||||||
|
@item restrap
|
||||||
|
Restart a bootstrap, so that everything that was not built with
|
||||||
|
Index: gcc/fortran/Make-lang.in
|
||||||
|
===================================================================
|
||||||
|
--- gcc/fortran/Make-lang.in.orig 2016-01-08 09:30:10.857129930 +0100
|
||||||
|
+++ gcc/fortran/Make-lang.in 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -114,7 +114,8 @@ fortran.tags: force
|
||||||
|
cd $(srcdir)/fortran; etags -o TAGS.sub *.c *.h; \
|
||||||
|
etags --include TAGS.sub --include ../TAGS.sub
|
||||||
|
|
||||||
|
-fortran.info: doc/gfortran.info doc/gfc-internals.info
|
||||||
|
+INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
|
||||||
|
+fortran.info: doc/$(INFO_FORTRAN_NAME).info
|
||||||
|
fortran.dvi: doc/gfortran.dvi doc/gfc-internals.dvi
|
||||||
|
|
||||||
|
F95_HTMLFILES = $(build_htmldir)/gfortran
|
||||||
|
@@ -181,10 +182,10 @@ GFORTRAN_TEXI = \
|
||||||
|
$(srcdir)/doc/include/gcc-common.texi \
|
||||||
|
gcc-vers.texi
|
||||||
|
|
||||||
|
-doc/gfortran.info: $(GFORTRAN_TEXI)
|
||||||
|
+doc/$(INFO_FORTRAN_NAME).info: $(GFORTRAN_TEXI)
|
||||||
|
if [ x$(BUILD_INFO) = xinfo ]; then \
|
||||||
|
rm -f doc/gfortran.info-*; \
|
||||||
|
- $(MAKEINFO) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
|
||||||
|
+ $(MAKEINFO) $(MAKEINFODEFS) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
|
||||||
|
-o $@ $<; \
|
||||||
|
else true; fi
|
||||||
|
|
||||||
|
@@ -249,7 +250,7 @@ fortran.install-common: install-finclude
|
||||||
|
|
||||||
|
fortran.install-plugin:
|
||||||
|
|
||||||
|
-fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
|
||||||
|
+fortran.install-info: $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info
|
||||||
|
|
||||||
|
fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
|
||||||
|
|
||||||
|
@@ -267,7 +268,7 @@ fortran.uninstall:
|
||||||
|
rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_INSTALL_NAME)$(exeext); \
|
||||||
|
rm -rf $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext); \
|
||||||
|
rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_TARGET_INSTALL_NAME)$(exeext); \
|
||||||
|
- rm -rf $(DESTDIR)$(infodir)/gfortran.info*
|
||||||
|
+ rm -rf $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info*
|
||||||
|
|
||||||
|
#
|
||||||
|
# Clean hooks:
|
||||||
|
Index: gcc/fortran/gfortran.texi
|
||||||
|
===================================================================
|
||||||
|
--- gcc/fortran/gfortran.texi.orig 2016-01-08 09:30:10.853129884 +0100
|
||||||
|
+++ gcc/fortran/gfortran.texi 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -101,7 +101,7 @@ Texts being (a) (see below), and with th
|
||||||
|
@ifinfo
|
||||||
|
@dircategory Software development
|
||||||
|
@direntry
|
||||||
|
-* gfortran: (gfortran). The GNU Fortran Compiler.
|
||||||
|
+* @value{fngfortran}: (@value{fngfortran}). The GNU Fortran Compiler.
|
||||||
|
@end direntry
|
||||||
|
This file documents the use and the internals of
|
||||||
|
the GNU Fortran compiler, (@command{gfortran}).
|
||||||
|
Index: libffi/Makefile.am
|
||||||
|
===================================================================
|
||||||
|
--- libffi/Makefile.am.orig 2016-03-03 14:52:56.924504713 +0100
|
||||||
|
+++ libffi/Makefile.am 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -25,6 +25,8 @@ TEXINFO_TEX = ../gcc/doc/include/texin
|
||||||
|
# Defines info, dvi, pdf and html targets
|
||||||
|
MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
||||||
|
info_TEXINFOS = doc/libffi.texi
|
||||||
|
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
|
||||||
|
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
|
||||||
|
|
||||||
|
# AM_CONDITIONAL on configure option --generated-files-in-srcdir
|
||||||
|
if GENINSRC
|
||||||
|
@@ -42,17 +44,17 @@ endif
|
||||||
|
|
||||||
|
all-local: $(STAMP_GENINSRC)
|
||||||
|
|
||||||
|
-stamp-geninsrc: doc/libffi.info
|
||||||
|
- cp -p $(top_builddir)/doc/libffi.info $(srcdir)/doc/libffi.info
|
||||||
|
+stamp-geninsrc: doc/$(INFO_LIBFFI_NAME).info
|
||||||
|
+ cp -p $(top_builddir)/doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.info
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
-doc/libffi.info: $(STAMP_BUILD_INFO)
|
||||||
|
+doc/$(INFO_LIBFFI_NAME).info: $(STAMP_BUILD_INFO)
|
||||||
|
|
||||||
|
stamp-build-info: doc/libffi.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp)
|
||||||
|
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)/doc -o doc/libffi.info $(srcdir)/doc/libffi.texi
|
||||||
|
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibffi $(INFO_LIBFFI_NAME)' -I $(srcdir)/doc -o doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.texi
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/libffi.info
|
||||||
|
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/$(INFO_LIBFFI_NAME).info
|
||||||
|
MAINTAINERCLEANFILES = $(srcdir)/doc/libffi.info
|
||||||
|
|
||||||
|
## ################################################################
|
||||||
|
Index: libffi/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- libffi/Makefile.in.orig 2016-03-07 14:02:47.897637673 +0100
|
||||||
|
+++ libffi/Makefile.in 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -158,7 +158,6 @@ MULTIDIRS =
|
||||||
|
MULTISUBDIR =
|
||||||
|
MULTIDO = true
|
||||||
|
MULTICLEAN = true
|
||||||
|
-INFO_DEPS = doc/libffi.info
|
||||||
|
am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
|
||||||
|
DVIS = doc/libffi.dvi
|
||||||
|
PDFS = doc/libffi.pdf
|
||||||
|
@@ -351,6 +350,8 @@ TEXINFO_TEX = ../gcc/doc/include/texinfo
|
||||||
|
# Defines info, dvi, pdf and html targets
|
||||||
|
MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
||||||
|
info_TEXINFOS = doc/libffi.texi
|
||||||
|
+INFO_LIBFFI_NAME = $(shell echo libffi | sed '${program_transform_name}')
|
||||||
|
+INFO_DEPS = doc/$(INFO_LIBFFI_NAME).info
|
||||||
|
@GENINSRC_FALSE@STAMP_GENINSRC =
|
||||||
|
|
||||||
|
# AM_CONDITIONAL on configure option --generated-files-in-srcdir
|
||||||
|
@@ -359,7 +360,7 @@ info_TEXINFOS = doc/libffi.texi
|
||||||
|
|
||||||
|
# AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
|
||||||
|
@BUILD_INFO_TRUE@STAMP_BUILD_INFO = stamp-build-info
|
||||||
|
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/libffi.info
|
||||||
|
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) doc/$(INFO_LIBFFI_NAME).info
|
||||||
|
MAINTAINERCLEANFILES = $(srcdir)/doc/libffi.info
|
||||||
|
|
||||||
|
# Work around what appears to be a GNU make bug handling MAKEFLAGS
|
||||||
|
@@ -1892,14 +1893,15 @@ uninstall-am: uninstall-dvi-am uninstall
|
||||||
|
|
||||||
|
all-local: $(STAMP_GENINSRC)
|
||||||
|
|
||||||
|
-stamp-geninsrc: doc/libffi.info
|
||||||
|
- cp -p $(top_builddir)/doc/libffi.info $(srcdir)/doc/libffi.info
|
||||||
|
+$(srcdir)/doc/libffi.info: stamp-geninsrc
|
||||||
|
+stamp-geninsrc: doc/$(INFO_LIBFFI_NAME).info
|
||||||
|
+ cp -p $(top_builddir)/doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.info
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
-doc/libffi.info: $(STAMP_BUILD_INFO)
|
||||||
|
+doc/$(INFO_LIBFFI_NAME).info: $(STAMP_BUILD_INFO)
|
||||||
|
|
||||||
|
stamp-build-info: doc/libffi.texi $(srcdir)/doc/version.texi doc/$(am__dirstamp)
|
||||||
|
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)/doc -o doc/libffi.info $(srcdir)/doc/libffi.texi
|
||||||
|
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibffi $(INFO_LIBFFI_NAME)' -I $(srcdir)/doc -o doc/$(INFO_LIBFFI_NAME).info $(srcdir)/doc/libffi.texi
|
||||||
|
@touch $@
|
||||||
|
@LIBAT_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE@libffi.map-sun : libffi.map $(top_srcdir)/../contrib/make_sunver.pl \
|
||||||
|
@LIBAT_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE@ $(libffi_la_OBJECTS) $(libffi_la_LIBADD)
|
||||||
|
Index: libffi/doc/libffi.texi
|
||||||
|
===================================================================
|
||||||
|
--- libffi/doc/libffi.texi.orig 2015-01-29 13:55:28.849745068 +0100
|
||||||
|
+++ libffi/doc/libffi.texi 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -33,7 +33,7 @@ section entitled ``GNU General Public Li
|
||||||
|
|
||||||
|
@dircategory Development
|
||||||
|
@direntry
|
||||||
|
-* libffi: (libffi). Portable foreign-function interface library.
|
||||||
|
+* libffi: (@value{fnlibffi}). Portable foreign-function interface library.
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
@titlepage
|
||||||
|
Index: libgomp/Makefile.am
|
||||||
|
===================================================================
|
||||||
|
--- libgomp/Makefile.am.orig 2016-01-21 10:44:22.631247939 +0100
|
||||||
|
+++ libgomp/Makefile.am 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -125,16 +125,19 @@ endif
|
||||||
|
|
||||||
|
all-local: $(STAMP_GENINSRC)
|
||||||
|
|
||||||
|
-stamp-geninsrc: libgomp.info
|
||||||
|
- cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
|
||||||
|
+INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
|
||||||
|
+stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
|
||||||
|
+ cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
-libgomp.info: $(STAMP_BUILD_INFO)
|
||||||
|
+libgomp.info: $(INFO_LIBGOMP_NAME).info
|
||||||
|
+ cp $(INFO_LIBGOMP_NAME).info libgomp.info
|
||||||
|
+$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
|
||||||
|
|
||||||
|
stamp-build-info: libgomp.texi
|
||||||
|
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
|
||||||
|
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
|
||||||
|
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libgomp.info
|
||||||
|
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBGOMP_NAME).info
|
||||||
|
MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
|
||||||
|
Index: libgomp/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- libgomp/Makefile.in.orig 2016-02-02 16:21:09.546745759 +0100
|
||||||
|
+++ libgomp/Makefile.in 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -484,7 +484,8 @@ info_TEXINFOS = libgomp.texi
|
||||||
|
|
||||||
|
# AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
|
||||||
|
@BUILD_INFO_TRUE@STAMP_BUILD_INFO = stamp-build-info
|
||||||
|
-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libgomp.info
|
||||||
|
+INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
|
||||||
|
+CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBGOMP_NAME).info
|
||||||
|
MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
|
||||||
|
all: config.h
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||||||
|
@@ -1296,15 +1297,16 @@ env.lo: libgomp_f.h
|
||||||
|
env.o: libgomp_f.h
|
||||||
|
|
||||||
|
all-local: $(STAMP_GENINSRC)
|
||||||
|
-
|
||||||
|
-stamp-geninsrc: libgomp.info
|
||||||
|
- cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
|
||||||
|
+stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
|
||||||
|
+ cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
-libgomp.info: $(STAMP_BUILD_INFO)
|
||||||
|
+libgomp.info: $(INFO_LIBGOMP_NAME).info
|
||||||
|
+ cp $(INFO_LIBGOMP_NAME).info libgomp.info
|
||||||
|
+$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
|
||||||
|
|
||||||
|
stamp-build-info: libgomp.texi
|
||||||
|
- $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
|
||||||
|
+ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
|
||||||
|
@touch $@
|
||||||
|
|
||||||
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||||
|
Index: libgomp/libgomp.texi
|
||||||
|
===================================================================
|
||||||
|
--- libgomp/libgomp.texi.orig 2016-01-13 09:28:06.664462622 +0100
|
||||||
|
+++ libgomp/libgomp.texi 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -31,7 +31,7 @@ texts being (a) (see below), and with th
|
||||||
|
@ifinfo
|
||||||
|
@dircategory GNU Libraries
|
||||||
|
@direntry
|
||||||
|
-* libgomp: (libgomp). GNU Offloading and Multi Processing Runtime Library.
|
||||||
|
+* @value{fnlibgomp}: (@value{fnlibgomp}). GNU Offloading and Multi Processing Runtime Library.
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
This manual documents libgomp, the GNU Offloading and Multi Processing
|
||||||
|
Index: libitm/libitm.texi
|
||||||
|
===================================================================
|
||||||
|
--- libitm/libitm.texi.orig 2016-01-08 09:26:09.966393468 +0100
|
||||||
|
+++ libitm/libitm.texi 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -20,7 +20,7 @@ Free Documentation License''.
|
||||||
|
@ifinfo
|
||||||
|
@dircategory GNU Libraries
|
||||||
|
@direntry
|
||||||
|
-* libitm: (libitm). GNU Transactional Memory Library
|
||||||
|
+* libitm: (libitm-6). GNU Transactional Memory Library
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
This manual documents the GNU Transactional Memory Library.
|
||||||
|
Index: libquadmath/libquadmath.texi
|
||||||
|
===================================================================
|
||||||
|
--- libquadmath/libquadmath.texi.orig 2016-01-08 09:26:17.802482487 +0100
|
||||||
|
+++ libquadmath/libquadmath.texi 2016-03-07 14:14:30.581648496 +0100
|
||||||
|
@@ -25,7 +25,7 @@ copy and modify this GNU manual.
|
||||||
|
@ifinfo
|
||||||
|
@dircategory GNU Libraries
|
||||||
|
@direntry
|
||||||
|
-* libquadmath: (libquadmath). GCC Quad-Precision Math Library
|
||||||
|
+* libquadmath: (libquadmath-6). GCC Quad-Precision Math Library
|
||||||
|
@end direntry
|
||||||
|
|
||||||
|
This manual documents the GCC Quad-Precision Math Library API.
|
116
gcc44-textdomain.patch
Normal file
116
gcc44-textdomain.patch
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
#! /bin/sh -e
|
||||||
|
|
||||||
|
# DP: Set gettext's domain and textdomain to the versioned package name.
|
||||||
|
|
||||||
|
dir=
|
||||||
|
if [ $# -eq 3 -a "$2" = '-d' ]; then
|
||||||
|
pdir="-d $3"
|
||||||
|
dir="$3/"
|
||||||
|
elif [ $# -ne 1 ]; then
|
||||||
|
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
case "$1" in
|
||||||
|
-patch)
|
||||||
|
patch $pdir -f --no-backup-if-mismatch -p0 < $0
|
||||||
|
;;
|
||||||
|
-unpatch)
|
||||||
|
patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
|
Index: gcc/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- gcc/Makefile.in.orig 2013-11-26 16:46:03.000000000 +0100
|
||||||
|
+++ gcc/Makefile.in 2013-11-26 16:46:43.271816000 +0100
|
||||||
|
@@ -3795,8 +3795,8 @@ install-po:
|
||||||
|
dir=$(localedir)/$$lang/LC_MESSAGES; \
|
||||||
|
echo $(mkinstalldirs) $(DESTDIR)$$dir; \
|
||||||
|
$(mkinstalldirs) $(DESTDIR)$$dir || exit 1; \
|
||||||
|
- echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
|
||||||
|
- $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
|
||||||
|
+ echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc-7.mo; \
|
||||||
|
+ $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc-7.mo; \
|
||||||
|
done
|
||||||
|
|
||||||
|
# Rule for regenerating the message template (gcc.pot).
|
||||||
|
Index: gcc/intl.c
|
||||||
|
===================================================================
|
||||||
|
--- gcc/intl.c.orig 2013-11-26 15:42:31.000000000 +0100
|
||||||
|
+++ gcc/intl.c 2013-11-26 16:46:43.271816000 +0100
|
||||||
|
@@ -55,8 +55,8 @@ gcc_init_libintl (void)
|
||||||
|
setlocale (LC_ALL, "");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- (void) bindtextdomain ("gcc", LOCALEDIR);
|
||||||
|
- (void) textdomain ("gcc");
|
||||||
|
+ (void) bindtextdomain ("gcc-7", LOCALEDIR);
|
||||||
|
+ (void) textdomain ("gcc-7");
|
||||||
|
|
||||||
|
/* Opening quotation mark. */
|
||||||
|
open_quote = _("`");
|
||||||
|
Index: libcpp/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- libcpp/Makefile.in.orig 2013-11-26 16:26:56.000000000 +0100
|
||||||
|
+++ libcpp/Makefile.in 2013-11-26 16:47:15.764193260 +0100
|
||||||
|
@@ -49,6 +49,7 @@ LDFLAGS = @LDFLAGS@
|
||||||
|
LIBICONV = @LIBICONV@
|
||||||
|
LIBINTL = @LIBINTL@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
+PACKAGE_SUFFIX = -7
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
SHELL = @SHELL@
|
||||||
|
USED_CATALOGS = @USED_CATALOGS@
|
||||||
|
@@ -74,8 +75,10 @@ INCLUDES = -I$(srcdir) -I. -I$(srcdir)/.
|
||||||
|
-I$(srcdir)/include
|
||||||
|
|
||||||
|
ALL_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) $(INCLUDES) $(CPPFLAGS) $(PICFLAG)
|
||||||
|
+ALL_CFLAGS += -DPACKAGE_SUFFIX=\"$(strip $(PACKAGE_SUFFIX))\"
|
||||||
|
ALL_CXXFLAGS = $(CXXFLAGS) $(WARN_CXXFLAGS) $(NOEXCEPTION_FLAGS) $(INCLUDES) \
|
||||||
|
$(CPPFLAGS) $(PICFLAG)
|
||||||
|
+ALL_CXXFLAGS += -DPACKAGE_SUFFIX=\"$(strip $(PACKAGE_SUFFIX))\"
|
||||||
|
|
||||||
|
# The name of the compiler to use.
|
||||||
|
COMPILER = $(CXX)
|
||||||
|
@@ -164,8 +167,8 @@ install-strip install: all installdirs
|
||||||
|
else continue; \
|
||||||
|
fi; \
|
||||||
|
dir=$(localedir)/$$lang/LC_MESSAGES; \
|
||||||
|
- echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
|
||||||
|
- $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
|
||||||
|
+ echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE)$(PACKAGE_SUFFIX).mo; \
|
||||||
|
+ $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE)$(PACKAGE_SUFFIX).mo; \
|
||||||
|
done
|
||||||
|
|
||||||
|
mostlyclean:
|
||||||
|
Index: libcpp/system.h
|
||||||
|
===================================================================
|
||||||
|
--- libcpp/system.h.orig 2013-01-15 10:49:52.000000000 +0100
|
||||||
|
+++ libcpp/system.h 2013-11-26 16:46:43.271816000 +0100
|
||||||
|
@@ -280,7 +280,7 @@ extern int errno;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _
|
||||||
|
-# define _(msgid) dgettext (PACKAGE, msgid)
|
||||||
|
+# define _(msgid) dgettext (PACKAGE PACKAGE_SUFFIX, msgid)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef N_
|
||||||
|
Index: libcpp/init.c
|
||||||
|
===================================================================
|
||||||
|
--- libcpp/init.c.orig 2013-11-26 15:42:40.000000000 +0100
|
||||||
|
+++ libcpp/init.c 2013-11-26 16:46:43.271816000 +0100
|
||||||
|
@@ -152,7 +152,7 @@ init_library (void)
|
||||||
|
init_trigraph_map ();
|
||||||
|
|
||||||
|
#ifdef ENABLE_NLS
|
||||||
|
- (void) bindtextdomain (PACKAGE, LOCALEDIR);
|
||||||
|
+ (void) bindtextdomain (PACKAGE PACKAGE_SUFFIX, LOCALEDIR);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
14
gcc48-libstdc++-api-reference.patch
Normal file
14
gcc48-libstdc++-api-reference.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
Index: libstdc++-v3/doc/html/index.html
|
||||||
|
===================================================================
|
||||||
|
--- libstdc++-v3/doc/html/index.html (revision 210144)
|
||||||
|
+++ libstdc++-v3/doc/html/index.html (working copy)
|
||||||
|
@@ -18,7 +18,7 @@
|
||||||
|
</p></li><li class="listitem"><p>
|
||||||
|
<a class="link" href="faq.html" title="Frequently Asked Questions">Frequently Asked Questions</a>
|
||||||
|
</p></li><li class="listitem"><p>
|
||||||
|
- <a class="link" href="api.html" title="The GNU C++ Library API Reference">API and Source Documentation</a>
|
||||||
|
+ <a class="link" href="api/index.html" title="The GNU C++ Library API Reference">API and Source Documentation</a>
|
||||||
|
</p></li></ul></div><p>
|
||||||
|
</p></div></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="book"><a href="manual/index.html">The GNU C++ Library Manual</a></span></dt><dd><dl><dt><span class="part"><a href="manual/intro.html">I.
|
||||||
|
Introduction
|
||||||
|
|
108
gcc48-remove-mpfr-2.4.0-requirement.patch
Normal file
108
gcc48-remove-mpfr-2.4.0-requirement.patch
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
Index: configure.ac
|
||||||
|
===================================================================
|
||||||
|
--- configure.ac (revision 216911)
|
||||||
|
+++ configure.ac (working copy)
|
||||||
|
@@ -1454,7 +1454,7 @@ if test -d ${srcdir}/gcc && test "x$have
|
||||||
|
AC_MSG_CHECKING([for the correct version of mpfr.h])
|
||||||
|
AC_TRY_COMPILE([#include <gmp.h>
|
||||||
|
#include <mpfr.h>],[
|
||||||
|
- #if MPFR_VERSION < MPFR_VERSION_NUM(2,4,0)
|
||||||
|
+ #if MPFR_VERSION < MPFR_VERSION_NUM(2,3,1)
|
||||||
|
choke me
|
||||||
|
#endif
|
||||||
|
], [AC_TRY_COMPILE([#include <gmp.h>
|
||||||
|
Index: configure
|
||||||
|
===================================================================
|
||||||
|
--- configure (revision 216911)
|
||||||
|
+++ configure (working copy)
|
||||||
|
@@ -5524,7 +5524,7 @@ int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
|
||||||
|
- #if MPFR_VERSION < MPFR_VERSION_NUM(2,4,0)
|
||||||
|
+ #if MPFR_VERSION < MPFR_VERSION_NUM(2,3,1)
|
||||||
|
choke me
|
||||||
|
#endif
|
||||||
|
|
||||||
|
Index: gcc/fortran/simplify.c
|
||||||
|
===================================================================
|
||||||
|
--- gcc/fortran/simplify.c (revision 216911)
|
||||||
|
+++ gcc/fortran/simplify.c (working copy)
|
||||||
|
@@ -4278,10 +4278,7 @@ gfc_simplify_mod (gfc_expr *a, gfc_expr
|
||||||
|
return &gfc_bad_expr;
|
||||||
|
}
|
||||||
|
|
||||||
|
- gfc_set_model_kind (kind);
|
||||||
|
- mpfr_fmod (result->value.real, a->value.real, p->value.real,
|
||||||
|
- GFC_RND_MODE);
|
||||||
|
- break;
|
||||||
|
+ return NULL;
|
||||||
|
|
||||||
|
default:
|
||||||
|
gfc_internal_error ("gfc_simplify_mod(): Bad arguments");
|
||||||
|
@@ -4327,19 +4324,7 @@ gfc_simplify_modulo (gfc_expr *a, gfc_ex
|
||||||
|
return &gfc_bad_expr;
|
||||||
|
}
|
||||||
|
|
||||||
|
- gfc_set_model_kind (kind);
|
||||||
|
- mpfr_fmod (result->value.real, a->value.real, p->value.real,
|
||||||
|
- GFC_RND_MODE);
|
||||||
|
- if (mpfr_cmp_ui (result->value.real, 0) != 0)
|
||||||
|
- {
|
||||||
|
- if (mpfr_signbit (a->value.real) != mpfr_signbit (p->value.real))
|
||||||
|
- mpfr_add (result->value.real, result->value.real, p->value.real,
|
||||||
|
- GFC_RND_MODE);
|
||||||
|
- }
|
||||||
|
- else
|
||||||
|
- mpfr_copysign (result->value.real, result->value.real,
|
||||||
|
- p->value.real, GFC_RND_MODE);
|
||||||
|
- break;
|
||||||
|
+ return NULL;
|
||||||
|
|
||||||
|
default:
|
||||||
|
gfc_internal_error ("gfc_simplify_modulo(): Bad arguments");
|
||||||
|
Index: gcc/ubsan.c
|
||||||
|
===================================================================
|
||||||
|
--- gcc/ubsan.c.orig 2015-06-01 14:52:11.717105684 +0200
|
||||||
|
+++ gcc/ubsan.c 2015-06-01 14:52:26.945253071 +0200
|
||||||
|
@@ -1564,40 +1564,6 @@
|
||||||
|
min = build_real (expr_type, minval2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
- else if (REAL_MODE_FORMAT (mode)->b == 10)
|
||||||
|
- {
|
||||||
|
- /* For _Decimal128 up to 34 decimal digits, - sign,
|
||||||
|
- dot, e, exponent. */
|
||||||
|
- char buf[64];
|
||||||
|
- mpfr_t m;
|
||||||
|
- int p = REAL_MODE_FORMAT (mode)->p;
|
||||||
|
- REAL_VALUE_TYPE maxval, minval;
|
||||||
|
-
|
||||||
|
- /* Use mpfr_snprintf rounding to compute the smallest
|
||||||
|
- representable decimal number greater or equal than
|
||||||
|
- 1 << (prec - !uns_p). */
|
||||||
|
- mpfr_init2 (m, prec + 2);
|
||||||
|
- mpfr_set_ui_2exp (m, 1, prec - !uns_p, GMP_RNDN);
|
||||||
|
- mpfr_snprintf (buf, sizeof buf, "%.*RUe", p - 1, m);
|
||||||
|
- decimal_real_from_string (&maxval, buf);
|
||||||
|
- max = build_real (expr_type, maxval);
|
||||||
|
-
|
||||||
|
- /* For unsigned, assume -1.0 is always representable. */
|
||||||
|
- if (uns_p)
|
||||||
|
- min = build_minus_one_cst (expr_type);
|
||||||
|
- else
|
||||||
|
- {
|
||||||
|
- /* Use mpfr_snprintf rounding to compute the largest
|
||||||
|
- representable decimal number less or equal than
|
||||||
|
- (-1 << (prec - 1)) - 1. */
|
||||||
|
- mpfr_set_si_2exp (m, -1, prec - 1, GMP_RNDN);
|
||||||
|
- mpfr_sub_ui (m, m, 1, GMP_RNDN);
|
||||||
|
- mpfr_snprintf (buf, sizeof buf, "%.*RDe", p - 1, m);
|
||||||
|
- decimal_real_from_string (&minval, buf);
|
||||||
|
- min = build_real (expr_type, minval);
|
||||||
|
- }
|
||||||
|
- mpfr_clear (m);
|
||||||
|
- }
|
||||||
|
else
|
||||||
|
return NULL_TREE;
|
||||||
|
|
23
gcc5-no-return-gcc43-workaround.patch
Normal file
23
gcc5-no-return-gcc43-workaround.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
Workaround
|
||||||
|
|
||||||
|
[ 3445s] I: Program returns random data in a function
|
||||||
|
[ 3445s] E: gcc5 no-return-in-nonvoid-function ../../gcc/cp/constexpr.c:3676
|
||||||
|
|
||||||
|
during stage1 when compiling with a GCC 4.3 host compiler
|
||||||
|
|
||||||
|
--- gcc/cp/constexpr.c.orig 2015-06-02 09:33:15.085636193 +0200
|
||||||
|
+++ gcc/cp/constexpr.c 2015-06-02 09:34:04.637080196 +0200
|
||||||
|
@@ -3668,11 +3668,10 @@
|
||||||
|
{
|
||||||
|
r = get_target_expr (r);
|
||||||
|
TREE_CONSTANT (r) = true;
|
||||||
|
- return r;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
- else
|
||||||
|
- return r;
|
||||||
|
+
|
||||||
|
+ return r;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Returns true if T is a valid subexpression of a constant expression,
|
8
gcc7-rpmlintrc
Normal file
8
gcc7-rpmlintrc
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# This line is mandatory to access the configuration functions
|
||||||
|
from Config import *
|
||||||
|
|
||||||
|
addFilter ("gcc7.*devel-dependency glibc-devel")
|
||||||
|
addFilter ("gcc7-c.*devel-dependency libstdc")
|
||||||
|
addFilter ("shlib-policy-name-error")
|
||||||
|
addFilter ("gcc7.*devel-file-in-non-devel-package")
|
||||||
|
|
221
gcc7-testresults.changes
Normal file
221
gcc7-testresults.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
786
gcc7-testresults.spec
Normal file
786
gcc7-testresults.spec
Normal file
@ -0,0 +1,786 @@
|
|||||||
|
#
|
||||||
|
# spec file for package gcc7-testresults
|
||||||
|
#
|
||||||
|
# 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/
|
||||||
|
#
|
||||||
|
# icecream 0
|
||||||
|
|
||||||
|
|
||||||
|
%define building_testsuite 1
|
||||||
|
%define run_tests 1
|
||||||
|
#
|
||||||
|
# spec file for package gcc7
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# 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/
|
||||||
|
#
|
||||||
|
|
||||||
|
# Ada currently fails to build on a few platforms, enable it only
|
||||||
|
# on those that work
|
||||||
|
%if %{suse_version} >= 1310
|
||||||
|
%if %{suse_version} >= 1330
|
||||||
|
%define ada_arch %ix86 x86_64 ppc ppc64 ppc64le s390 ia64 aarch64
|
||||||
|
%else
|
||||||
|
%define ada_arch %ix86 x86_64 ppc ppc64 s390 ia64
|
||||||
|
%endif
|
||||||
|
%else
|
||||||
|
%define ada_arch %ix86 x86_64 ppc s390 ia64
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch %ada_arch
|
||||||
|
%define build_ada !0%{?building_libffi:1}
|
||||||
|
%else
|
||||||
|
%define build_ada 0
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define quadmath_arch %ix86 x86_64 ia64
|
||||||
|
%define tsan_arch x86_64 aarch64
|
||||||
|
%define asan_arch x86_64 %ix86 ppc ppc64 ppc64le %sparc %arm aarch64
|
||||||
|
%define itm_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc
|
||||||
|
%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k ia64
|
||||||
|
%define lsan_arch x86_64 aarch64
|
||||||
|
%define ubsan_arch x86_64 %ix86 ppc ppc64 ppc64le %arm aarch64
|
||||||
|
%if 0%{?build_libvtv:1}
|
||||||
|
%define vtv_arch x86_64 %ix86
|
||||||
|
%endif
|
||||||
|
%define cilkrts_arch x86_64 %ix86
|
||||||
|
%if %{suse_version} >= 1310
|
||||||
|
%define mpx_arch x86_64 %ix86
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define build_cp 1
|
||||||
|
%define build_fortran !0%{?building_libffi:1}
|
||||||
|
%define build_objc !0%{?building_libffi:1}
|
||||||
|
%define build_objcp !0%{?building_libffi:1}
|
||||||
|
%define build_go !0%{?building_libffi:1}
|
||||||
|
|
||||||
|
%if %{build_objcp}
|
||||||
|
%define build_cp 1
|
||||||
|
%define build_objc 1
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# For optional compilers only build C, C++, Fortran, Ada and Go
|
||||||
|
%if 0%{?build_optional_compiler_languages:1}
|
||||||
|
%define build_objc 0
|
||||||
|
%define build_objcp 0
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch x86_64
|
||||||
|
%define build_hsa 1
|
||||||
|
%else
|
||||||
|
%define build_hsa 0
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# TODO
|
||||||
|
%define build_hsa 0
|
||||||
|
# Enable plugins just for Tumbleweed, not for SLE13
|
||||||
|
%if %{suse_version} == 1330
|
||||||
|
%define enable_plugins 1
|
||||||
|
%else
|
||||||
|
%define enable_plugins 0
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Shared library SONAME versions
|
||||||
|
%ifarch hppa
|
||||||
|
%define libgcc_s 4
|
||||||
|
%else
|
||||||
|
%ifarch m68k
|
||||||
|
%define libgcc_s 2
|
||||||
|
%else
|
||||||
|
%define libgcc_s 1
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
%define libffi_sover 7
|
||||||
|
%define libgomp_sover 1
|
||||||
|
%define libgomp_plugin_hsa_sover 1
|
||||||
|
%define libstdcxx_sover 6
|
||||||
|
%define libobjc_sover 4
|
||||||
|
%define libgfortran_sover 4
|
||||||
|
%define libquadmath_sover 0
|
||||||
|
%define libasan_sover 4
|
||||||
|
%define libtsan_sover 0
|
||||||
|
%define libatomic_sover 1
|
||||||
|
%define libitm_sover 1
|
||||||
|
%define libubsan_sover 0
|
||||||
|
%define liblsan_sover 0
|
||||||
|
%define libvtv_sover 0
|
||||||
|
%define libcilkrts_sover 5
|
||||||
|
%define libgo_sover 10
|
||||||
|
%define libmpx_sover 2
|
||||||
|
%define libmpxwrappers_sover 2
|
||||||
|
|
||||||
|
# Shared library package suffix
|
||||||
|
# This is used for the "non-standard" set of libraries, the standard
|
||||||
|
# being defined by %product_libs_gcc_ver, the GCC version that should
|
||||||
|
# provide un-suffixed shared library packages following the shared-library
|
||||||
|
# policy. Even suffixed variants should provide the shared-library policy
|
||||||
|
# mandated names and ensure they conflict with each other.
|
||||||
|
# Individual shared libraries can be directed to be built from individual
|
||||||
|
# gcc versions by defining %product_libs_gcc_ver_libgcc_s1 for example,
|
||||||
|
# generally %product_libs_gcc_ver_%name%sover, similarly.
|
||||||
|
|
||||||
|
%define itsme7 1
|
||||||
|
%define plv_ %{!?product_libs_gcc_ver:7}%{?product_libs_gcc_ver}
|
||||||
|
%define plv() %{expand:%%{!?itsme%{expand:%%{!?product_libs_gcc_ver_%{1}%{2}:%%{plv_}}%%{?product_libs_gcc_ver_%{1}%{2}}}:-gcc7}}
|
||||||
|
|
||||||
|
%define libgcc_s_suffix %{plv libgcc_s %{libgcc_s}}
|
||||||
|
%define libffi_suffix %{plv libffi %{libffi_sover}}
|
||||||
|
%define libgomp_suffix %{plv libgomp %{libgomp_sover}}
|
||||||
|
%define libgomp_plugin_hsa_suffix %{plv libgomp-plugin-hsa %{libgomp_plugin_hsa_sover}}
|
||||||
|
%define libstdcxx_suffix %{plv libstdcxx %{libstdcxx_sover}}
|
||||||
|
%define libobjc_suffix %{plv libobjc %{libobjc_sover}}
|
||||||
|
%define libgfortran_suffix %{plv libgfortran %{libgfortran_sover}}
|
||||||
|
%define libquadmath_suffix %{plv libquadmath %{libquadmath_sover}}
|
||||||
|
%define libasan_suffix %{plv libasan %{libasan_sover}}
|
||||||
|
%define libtsan_suffix %{plv libtsan %{libtsan_sover}}
|
||||||
|
%define libatomic_suffix %{plv libatomic %{libatomic_sover}}
|
||||||
|
%define libitm_suffix %{plv libitm %{libitm_sover}}
|
||||||
|
%define libubsan_suffix %{plv libubsan %{libubsan_sover}}
|
||||||
|
%define liblsan_suffix %{plv liblsan %{liblsan_sover}}
|
||||||
|
%define libvtv_suffix %{plv libvtv %{libvtv_sover}}
|
||||||
|
%define libcilkrts_suffix %{plv libcilkrts %{libcilkrts_sover}}
|
||||||
|
%define libgo_suffix %{plv libgo %{libgo_sover}}
|
||||||
|
%define libmpx_suffix %{plv libmpx %{libmpx_sover}}
|
||||||
|
%define libmpxwrappers_suffix %{plv libmpxwrappers %{libmpx_sover}}
|
||||||
|
|
||||||
|
# libFOO-devel package suffix
|
||||||
|
%define libdevel_suffix -gcc7
|
||||||
|
|
||||||
|
%if %{suse_version} >= 1220
|
||||||
|
%define selfconflict() %1
|
||||||
|
%else
|
||||||
|
%define selfconflict() otherproviders(%1)
|
||||||
|
%endif
|
||||||
|
|
||||||
|
Name: gcc7-testresults
|
||||||
|
# With generated files in src we could drop the following
|
||||||
|
BuildRequires: bison
|
||||||
|
BuildRequires: flex
|
||||||
|
BuildRequires: gettext-devel
|
||||||
|
%if %{suse_version} > 1220
|
||||||
|
BuildRequires: makeinfo
|
||||||
|
%else
|
||||||
|
BuildRequires: texinfo
|
||||||
|
%endif
|
||||||
|
# until here, but at least renaming and patching info files breaks this
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: glibc-devel-32bit
|
||||||
|
BuildRequires: mpc-devel
|
||||||
|
BuildRequires: mpfr-devel
|
||||||
|
BuildRequires: perl
|
||||||
|
BuildRequires: zlib-devel
|
||||||
|
%if %{suse_version} >= 1230
|
||||||
|
BuildRequires: isl-devel
|
||||||
|
%endif
|
||||||
|
%if %{build_ada}
|
||||||
|
%if %{suse_version} > 1330
|
||||||
|
%define hostsuffix %{binsuffix}
|
||||||
|
BuildRequires: gcc7-ada
|
||||||
|
%else
|
||||||
|
%define hostsuffix %{nil}
|
||||||
|
BuildRequires: gcc-ada
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
%if 0%{?building_testsuite:1}
|
||||||
|
# For building the libstdc++ API reference
|
||||||
|
BuildRequires: doxygen
|
||||||
|
BuildRequires: graphviz
|
||||||
|
%endif
|
||||||
|
%if 0%{?building_libffi:1}
|
||||||
|
BuildRequires: pkg-config
|
||||||
|
%endif
|
||||||
|
%ifarch ia64
|
||||||
|
BuildRequires: libunwind-devel
|
||||||
|
%endif
|
||||||
|
%if 0%{?run_tests:1}
|
||||||
|
BuildRequires: dejagnu
|
||||||
|
BuildRequires: expect
|
||||||
|
BuildRequires: gdb
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define separate_bi32 0
|
||||||
|
%define separate_bi64 0
|
||||||
|
%if 0%{!?disable_32bit:1}
|
||||||
|
%ifarch ppc sparcv9
|
||||||
|
%define separate_bi64 1
|
||||||
|
%endif
|
||||||
|
%ifarch x86_64 s390x ppc64 sparc64
|
||||||
|
%define separate_bi32 1
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Define two macros to trigger -32bit or -64bit package variants
|
||||||
|
%define separate_biarch 0
|
||||||
|
%if %{separate_bi32}
|
||||||
|
%define separate_biarch 1
|
||||||
|
%define separate_biarch_suffix -32bit
|
||||||
|
%endif
|
||||||
|
%if %{separate_bi64}
|
||||||
|
%define separate_biarch 1
|
||||||
|
%define separate_biarch_suffix -64bit
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch x86_64 ia64 s390x alpha ppc64 sparc64
|
||||||
|
# 64-bit is primary build target
|
||||||
|
%define build_primary_64bit 1
|
||||||
|
%else
|
||||||
|
%define build_primary_64bit 0
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%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
|
||||||
|
|
||||||
|
%if !0%{?building_libffi:1}%{?building_testsuite:1}
|
||||||
|
Requires: binutils
|
||||||
|
Requires: cpp7 = %{version}-%{release}
|
||||||
|
Requires: glibc-devel
|
||||||
|
Requires: libgcc_s%{libgcc_s} >= %{version}-%{release}
|
||||||
|
Requires: libgomp%{libgomp_sover} >= %{version}-%{release}
|
||||||
|
%ifarch %asan_arch
|
||||||
|
Requires: libasan%{libasan_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %tsan_arch
|
||||||
|
Requires: libtsan%{libtsan_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %atomic_arch
|
||||||
|
Requires: libatomic%{libatomic_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %itm_arch
|
||||||
|
Requires: libitm%{libitm_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %cilkrts_arch
|
||||||
|
Requires: libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %lsan_arch
|
||||||
|
Requires: liblsan%{liblsan_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %ubsan_arch
|
||||||
|
Requires: libubsan%{libubsan_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %vtv_arch
|
||||||
|
Requires: libvtv%{libvtv_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
%ifarch %mpx_arch
|
||||||
|
Requires: libmpx%{libmpx_sover} >= %{version}-%{release}
|
||||||
|
Requires: libmpxwrappers%{libmpxwrappers_sover} >= %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
Suggests: gcc7-info gcc7-locale
|
||||||
|
%endif
|
||||||
|
|
||||||
|
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: Testsuite results
|
||||||
|
License: SUSE-Public-Domain
|
||||||
|
Group: Development/Languages/C and C++
|
||||||
|
|
||||||
|
%description
|
||||||
|
Results from running the gcc and target library testsuites.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 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}
|
||||||
|
|
||||||
|
# Versionspecific directories
|
||||||
|
%define versmainlibdir %{libsubdir}
|
||||||
|
%define versmainlibdirbi32 %{libsubdir}/32
|
||||||
|
%define versmainlibdirbi64 %{libsubdir}/64
|
||||||
|
%ifarch ppc
|
||||||
|
%define versmainlibdirbi32 %{libsubdir}
|
||||||
|
%define versmainlibdirbi64 %{libsubdir}/64
|
||||||
|
%endif
|
||||||
|
%if %{build_primary_64bit}
|
||||||
|
%define versmainlibdirbi %{versmainlibdirbi32}
|
||||||
|
%else
|
||||||
|
%define versmainlibdirbi %{versmainlibdirbi64}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define mainlibdir %{_libdir}
|
||||||
|
%define mainlibdirbi32 %{_prefix}/lib
|
||||||
|
%define mainlibdirbi64 %{_prefix}/lib64
|
||||||
|
%if %{build_primary_64bit}
|
||||||
|
%define mainlibdirbi %{mainlibdirbi32}
|
||||||
|
%else
|
||||||
|
%define mainlibdirbi %{mainlibdirbi64}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Now define a few macros that make it easy to package libs and
|
||||||
|
# related files just to the right package, without caring for the
|
||||||
|
# exact path the files are in.
|
||||||
|
# %mainlib package X from all dirs that belong to the main package
|
||||||
|
# %biarchlib package X from all dirs that belong to the -32/64bit package
|
||||||
|
%define mainlib() %{mainlibdir}/%1\
|
||||||
|
%{nil}
|
||||||
|
%define biarchlib() %{nil}
|
||||||
|
%if %{biarch}
|
||||||
|
%if !%{separate_biarch}
|
||||||
|
%define mainlib() %{mainlibdir}/%1\
|
||||||
|
%{mainlibdirbi}/%1\
|
||||||
|
%{nil}
|
||||||
|
%else
|
||||||
|
%define biarchlib() %{mainlibdirbi}/%1\
|
||||||
|
%{nil}
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%define versmainlib() %{versmainlibdir}/%1\
|
||||||
|
%{nil}
|
||||||
|
%define versbiarchlib() %{nil}
|
||||||
|
%if %{biarch}
|
||||||
|
%if !%{separate_biarch}
|
||||||
|
%define versmainlib() %{versmainlibdir}/%1\
|
||||||
|
%{versmainlibdirbi}/%1\
|
||||||
|
%{nil}
|
||||||
|
%else
|
||||||
|
%define versbiarchlib() %{versmainlibdirbi}/%1\
|
||||||
|
%{nil}
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%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}
|
||||||
|
|
||||||
|
STAGE1_FLAGS="-g"
|
||||||
|
# Only run profiled bootstrap on archs where it works and matters
|
||||||
|
%ifarch x86_64 ppc64le s390x aarch64
|
||||||
|
make profiledbootstrap STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
|
||||||
|
%else
|
||||||
|
make STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
|
||||||
|
%endif
|
||||||
|
make info
|
||||||
|
%if 0%{?run_tests:1}
|
||||||
|
echo "Run testsuite"
|
||||||
|
(make -C %{GCCDIST}/libstdc++-v3 check-abi || true)
|
||||||
|
mv %{GCCDIST}/libstdc++-v3/testsuite/libstdc++.log %{GCCDIST}/libstdc++-v3/testsuite/libstdc++-abi.log
|
||||||
|
mv %{GCCDIST}/libstdc++-v3/testsuite/libstdc++.sum %{GCCDIST}/libstdc++-v3/testsuite/libstdc++-abi.sum
|
||||||
|
# asan needs a whole shadow address space
|
||||||
|
ulimit -v unlimited || true
|
||||||
|
make -k check $PARALLEL || true
|
||||||
|
mkdir ../testresults
|
||||||
|
../contrib/test_summary | tee ../testresults/test_summary.txt
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%install
|
||||||
|
export NO_BRP_CHECK_BYTECODE_VERSION=true
|
||||||
|
cd obj-%{GCCDIST}
|
||||||
|
%if 0%{?run_tests:1}
|
||||||
|
cp `find . -name "*.sum"` ../testresults/
|
||||||
|
cp `find . -name "*.log" \! -name "config.log" | grep -v 'acats.\?/tests' ` ../testresults/
|
||||||
|
chmod 644 ../testresults/*
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?run_tests:1}
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc testresults/test_summary.txt
|
||||||
|
%doc testresults/*.sum
|
||||||
|
%doc testresults/*.log
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%changelog
|
221
gcc7.changes
Normal file
221
gcc7.changes
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
5
libffi-gcc7-rpmlintrc
Normal file
5
libffi-gcc7-rpmlintrc
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# This line is mandatory to access the configuration functions
|
||||||
|
from Config import *
|
||||||
|
|
||||||
|
addFilter ("shlib-policy-name-error")
|
||||||
|
|
31
pre_checkin.sh
Normal file
31
pre_checkin.sh
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# This script is called automatically during autobuild checkin.
|
||||||
|
|
||||||
|
case $0 in
|
||||||
|
\./*)
|
||||||
|
here=$PWD
|
||||||
|
;;
|
||||||
|
*/*)
|
||||||
|
here=${0%/*}
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
here=$PWD
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
case ${here##*/} in
|
||||||
|
gcc*.*)
|
||||||
|
# Handle maintainance projects with .$REPO suffix
|
||||||
|
suffix=${here##*/}
|
||||||
|
suffix=${suffix%%\.*}
|
||||||
|
set ${suffix#gcc}
|
||||||
|
;;
|
||||||
|
gcc-*)
|
||||||
|
suffix=${here##*/}
|
||||||
|
set ${suffix#*-}-
|
||||||
|
;;
|
||||||
|
gcc[0-9]*)
|
||||||
|
suffix=${here##*/}
|
||||||
|
set ${suffix#gcc}
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
. ${here}/change_spec
|
20
tls-no-direct.diff
Normal file
20
tls-no-direct.diff
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
For i?86 negative offsets to %fs segment accesses cause a hypervisor
|
||||||
|
trap for Xen. Avoid this by making accesses indirect.
|
||||||
|
|
||||||
|
??? Note that similar to the behavior on SLE11 this only affects
|
||||||
|
the compiler built on %ix86, not that on x86_64, even with -m32.
|
||||||
|
|
||||||
|
Index: gcc/config/i386/linux.h
|
||||||
|
===================================================================
|
||||||
|
--- gcc/config/i386/linux.h.orig 2015-12-17 15:07:37.785650062 +0100
|
||||||
|
+++ gcc/config/i386/linux.h 2015-12-17 15:08:06.393983290 +0100
|
||||||
|
@@ -24,3 +24,9 @@ along with GCC; see the file COPYING3.
|
||||||
|
|
||||||
|
#undef MUSL_DYNAMIC_LINKER
|
||||||
|
#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
|
||||||
|
+
|
||||||
|
+/* This slows down Xen, so take a very small general performance hit
|
||||||
|
+ for not accessing the %fs segment with negative offsets by making
|
||||||
|
+ GCC not emit direct accesses to %fs at all. */
|
||||||
|
+#undef TARGET_TLS_DIRECT_SEG_REFS_DEFAULT
|
||||||
|
+#define TARGET_TLS_DIRECT_SEG_REFS_DEFAULT 0
|
Loading…
x
Reference in New Issue
Block a user