2005-01-16 11:43:02 +00:00
|
|
|
# Choose gcc version.
|
2006-03-19 03:50:18 +00:00
|
|
|
|
2005-01-16 11:43:02 +00:00
|
|
|
choice
|
2006-04-20 23:03:42 +00:00
|
|
|
prompt "GCC compiler Version" if TOOLCHAINOPTS
|
2018-01-24 17:26:03 +00:00
|
|
|
default GCC_USE_VERSION_7_1_ARC if arc
|
2018-03-12 09:31:19 +00:00
|
|
|
default GCC_USE_VERSION_7
|
2005-01-16 11:43:02 +00:00
|
|
|
help
|
|
|
|
Select the version of gcc you wish to use.
|
|
|
|
|
2018-01-24 17:26:03 +00:00
|
|
|
config GCC_USE_VERSION_7_1_ARC
|
|
|
|
select GCC_VERSION_7_1_ARC
|
|
|
|
bool "gcc 7.1.x with support of ARC cores"
|
2015-11-10 12:03:59 +00:00
|
|
|
depends on arc
|
2013-04-02 16:00:35 +00:00
|
|
|
|
2015-08-16 20:20:36 +00:00
|
|
|
config GCC_USE_VERSION_5
|
|
|
|
bool "gcc 5.x"
|
2015-11-10 12:03:59 +00:00
|
|
|
depends on !arc
|
2015-08-16 20:20:36 +00:00
|
|
|
|
2017-05-04 13:18:13 +00:00
|
|
|
config GCC_USE_VERSION_7
|
|
|
|
bool "gcc 7.x"
|
|
|
|
depends on !arc
|
|
|
|
|
toolchain/gcc: add GCC 8.1.0
Changes compared to GCC 7.x
001-revert_register_mode_search.patch dropped
The underlying issue is described at the end of
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58139
It is fixed by the upstream commit:
https://github.com/gcc-mirror/gcc/commit/3fa2798aa887d141d86985240f03e2f3809e7e62
020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch dropped due to already upstream
100-PR-rtl-optimization-83496.patch dropped due to already upstream
910-mbsd_multi.patch
modified to fix ambiguous overloaded inform() call error
gcc/input.h
header: define UNKNOWN_LOCATION ((source_location) 0)
- inform (0, "someone does not honour COPTS correctly, passed %d times",
- honour_copts);
+ inform (UNKNOWN_LOCATION, "someone does not honour COPTS correctly, passed %d times",
+ honour_copts);
940-no-clobber-stamp-bits.patch dropped due to fixed upstream by another way
upstream commit: https://github.com/gcc-mirror/gcc/commit/87b2d547f8ac9778d66909b8726fe967d1efbc74
950-cpp_file_path_translation.patch dropped, Both -fmacro-prefix-map and -ffile-prefix-map are added
to gcc 8.1.0, if I understand it correctly, we should use -fmacro-prefix-map
usage: -fmacro-prefix-map=@var{old}=@var{new}
upstream commit: https://github.com/gcc-mirror/gcc/commit/859b51f83662d01e4f158ea9327db9ca37fe70b3
-iremap exists as a flag for a long time, for backward compatibility, I think we should keep the
variable name unchanged but change its value in rules.mk for gcc 8.x and higher.
Compile and run tested on x86_64
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-06-21 15:08:10 +00:00
|
|
|
config GCC_USE_VERSION_8
|
|
|
|
bool "gcc 8.x"
|
2005-01-16 11:43:02 +00:00
|
|
|
endchoice
|
|
|
|
|
2009-11-12 13:42:07 +00:00
|
|
|
config GCC_USE_GRAPHITE
|
|
|
|
bool
|
|
|
|
prompt "Compile in support for the new Graphite framework in GCC 4.4+" if TOOLCHAINOPTS
|
2010-04-20 16:18:08 +00:00
|
|
|
|
2006-04-20 23:03:42 +00:00
|
|
|
config EXTRA_GCC_CONFIG_OPTIONS
|
2005-04-05 18:21:58 +00:00
|
|
|
string
|
2009-09-10 14:32:36 +00:00
|
|
|
prompt "Additional gcc configure options" if TOOLCHAINOPTS
|
2005-01-16 11:43:02 +00:00
|
|
|
default ""
|
|
|
|
help
|
|
|
|
Any additional gcc options you may want to include....
|
|
|
|
|
2018-01-07 16:41:35 +00:00
|
|
|
config GCC_DEFAULT_PIE
|
|
|
|
bool
|
|
|
|
prompt "Build executable with PIE enabled by default" if TOOLCHAINOPTS
|
|
|
|
depends on !GCC_USE_VERSION_5
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Use gcc configure option --enable-default-pie to turn on -fPIE and -pie by default.
|
|
|
|
|
|
|
|
config GCC_DEFAULT_SSP
|
|
|
|
bool
|
|
|
|
prompt "Build executable with Stack-Smashing Protection enabled by default" if TOOLCHAINOPTS
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Use gcc configure option --enable-default-ssp to turn on -fstack-protector-strong by default.
|
|
|
|
|
2018-01-07 17:47:21 +00:00
|
|
|
config GCC_LIBSSP
|
2008-07-30 12:54:28 +00:00
|
|
|
bool
|
2018-01-07 17:47:21 +00:00
|
|
|
prompt "Build gcc libssp" if TOOLCHAINOPTS
|
2015-06-22 10:31:07 +00:00
|
|
|
depends on !USE_MUSL
|
|
|
|
default y if !USE_MUSL
|
2008-07-30 12:54:28 +00:00
|
|
|
help
|
2009-09-09 23:42:06 +00:00
|
|
|
Enable Stack-Smashing Protection support
|
2008-07-30 12:54:28 +00:00
|
|
|
|
2011-06-23 11:37:39 +00:00
|
|
|
config SJLJ_EXCEPTIONS
|
|
|
|
bool
|
|
|
|
prompt "Use setjump()/longjump() exceptions" if TOOLCHAINOPTS
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Use old setjump()/longjump() exceptions instead of the newer
|
|
|
|
frame unwinding exceptions handling routines. Warning: increases
|
|
|
|
code size and runtime memory usage.
|
|
|
|
|
2011-06-23 11:46:24 +00:00
|
|
|
config INSTALL_GFORTRAN
|
|
|
|
bool
|
|
|
|
prompt "Build/install fortran compiler?" if TOOLCHAINOPTS
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Build/install GNU fortran compiler ?
|
2016-07-15 10:17:20 +00:00
|
|
|
|
|
|
|
config INSTALL_GCCGO
|
|
|
|
bool
|
|
|
|
prompt "Build/install Go compiler?" if TOOLCHAINOPTS
|
2017-02-27 18:27:50 +00:00
|
|
|
depends on USE_GLIBC || BROKEN
|
2016-07-15 10:17:20 +00:00
|
|
|
default n
|
|
|
|
help
|
|
|
|
Build/install GNU gccgo compiler ?
|