xref: /OK3568_Linux_fs/buildroot/package/gcc/Config.in.host (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyuncomment "GCC Options"
2*4882a593Smuzhiyun
3*4882a593Smuzhiyunchoice
4*4882a593Smuzhiyun	prompt "GCC compiler Version"
5*4882a593Smuzhiyun	default BR2_GCC_VERSION_ARC if BR2_GCC_VERSION_4_8_ARC # legacy
6*4882a593Smuzhiyun	default BR2_GCC_VERSION_ARC if BR2_arc
7*4882a593Smuzhiyun	default BR2_GCC_VERSION_8_X if BR2_powerpc_SPE
8*4882a593Smuzhiyun	default BR2_GCC_VERSION_11_X
9*4882a593Smuzhiyun	help
10*4882a593Smuzhiyun	  Select the version of gcc you wish to use.
11*4882a593Smuzhiyun
12*4882a593Smuzhiyunconfig BR2_GCC_VERSION_ARC
13*4882a593Smuzhiyun	bool "gcc arc (10.x)"
14*4882a593Smuzhiyun	# Only supported architecture
15*4882a593Smuzhiyun	depends on BR2_arc
16*4882a593Smuzhiyun	select BR2_TOOLCHAIN_GCC_AT_LEAST_10
17*4882a593Smuzhiyun
18*4882a593Smuzhiyunconfig BR2_GCC_VERSION_8_X
19*4882a593Smuzhiyun	bool "gcc 8.x"
20*4882a593Smuzhiyun	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_9
21*4882a593Smuzhiyun	# ARC HS48 rel 31 only supported by gcc arc fork.
22*4882a593Smuzhiyun	depends on !BR2_archs4x_rel31
23*4882a593Smuzhiyun	# Broken or unsupported architectures
24*4882a593Smuzhiyun	depends on !BR2_or1k
25*4882a593Smuzhiyun	select BR2_TOOLCHAIN_GCC_AT_LEAST_8
26*4882a593Smuzhiyun
27*4882a593Smuzhiyunconfig BR2_GCC_VERSION_10_X
28*4882a593Smuzhiyun	bool "gcc 10.x"
29*4882a593Smuzhiyun	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_11
30*4882a593Smuzhiyun	# powerpc spe support has been deprecated since gcc 8.x.
31*4882a593Smuzhiyun	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
32*4882a593Smuzhiyun	depends on !BR2_powerpc_SPE
33*4882a593Smuzhiyun	# ARC HS48 rel 31 only supported by gcc arc fork.
34*4882a593Smuzhiyun	depends on !BR2_archs4x_rel31
35*4882a593Smuzhiyun	select BR2_TOOLCHAIN_GCC_AT_LEAST_10
36*4882a593Smuzhiyun
37*4882a593Smuzhiyunconfig BR2_GCC_VERSION_11_X
38*4882a593Smuzhiyun	bool "gcc 11.x"
39*4882a593Smuzhiyun	depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_12
40*4882a593Smuzhiyun	# powerpc spe support has been deprecated since gcc 8.x.
41*4882a593Smuzhiyun	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
42*4882a593Smuzhiyun	depends on !BR2_powerpc_SPE
43*4882a593Smuzhiyun	# uClibc-ng broken on sparc due to recent gcc changes
44*4882a593Smuzhiyun	# that need to be reverted since gcc 8.4, 9.3 and 10.1.
45*4882a593Smuzhiyun	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98784
46*4882a593Smuzhiyun	depends on !BR2_sparc
47*4882a593Smuzhiyun	# ARC HS48 rel 31 only supported by gcc arc fork.
48*4882a593Smuzhiyun	depends on !BR2_archs4x_rel31
49*4882a593Smuzhiyun	select BR2_TOOLCHAIN_GCC_AT_LEAST_11
50*4882a593Smuzhiyun
51*4882a593Smuzhiyunconfig BR2_GCC_VERSION_12_X
52*4882a593Smuzhiyun	bool "gcc 12.x"
53*4882a593Smuzhiyun	# powerpc spe support has been deprecated since gcc 8.x.
54*4882a593Smuzhiyun	# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
55*4882a593Smuzhiyun	depends on !BR2_powerpc_SPE
56*4882a593Smuzhiyun	# uClibc-ng broken on sparc due to recent gcc changes
57*4882a593Smuzhiyun	# that need to be reverted since gcc 8.4, 9.3 and 10.1.
58*4882a593Smuzhiyun	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98784
59*4882a593Smuzhiyun	depends on !BR2_sparc
60*4882a593Smuzhiyun	# ARC HS48 rel 31 only supported by gcc arc fork.
61*4882a593Smuzhiyun	depends on !BR2_archs4x_rel31
62*4882a593Smuzhiyun	select BR2_TOOLCHAIN_GCC_AT_LEAST_12
63*4882a593Smuzhiyun
64*4882a593Smuzhiyunendchoice
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun# libcilkrts was introduced in gcc 4.9 and removed in gcc 8.x
67*4882a593Smuzhiyunconfig BR2_GCC_SUPPORTS_LIBCILKRTS
68*4882a593Smuzhiyun	bool
69*4882a593Smuzhiyun	default y if !BR2_TOOLCHAIN_GCC_AT_LEAST_8
70*4882a593Smuzhiyun
71*4882a593Smuzhiyunconfig BR2_GCC_SUPPORTS_DLANG
72*4882a593Smuzhiyun	bool
73*4882a593Smuzhiyun	default y if BR2_aarch64
74*4882a593Smuzhiyun	default y if BR2_arm
75*4882a593Smuzhiyun	default y if BR2_i386
76*4882a593Smuzhiyun	default y if BR2_mips || BR2_mipsel
77*4882a593Smuzhiyun	default y if BR2_mips64 || BR2_mips64el
78*4882a593Smuzhiyun	default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
79*4882a593Smuzhiyun	default y if BR2_x86_64
80*4882a593Smuzhiyun	default y if BR2_riscv && !BR2_RISCV_64
81*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9
82*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_USES_GLIBC
83*4882a593Smuzhiyun	# "The D front-end is now itself written in D, in order to build GDC, you
84*4882a593Smuzhiyun	# will need a working GDC compiler (GCC version 9.1 or later)."
85*4882a593Smuzhiyun	# https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=5fee5ec362f7a243f459e6378fd49dfc89dc9fb5
86*4882a593Smuzhiyun	depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_12
87*4882a593Smuzhiyun
88*4882a593Smuzhiyunconfig BR2_GCC_VERSION
89*4882a593Smuzhiyun	string
90*4882a593Smuzhiyun	default "8.4.0"     if BR2_GCC_VERSION_8_X
91*4882a593Smuzhiyun	default "10.4.0"    if BR2_GCC_VERSION_10_X
92*4882a593Smuzhiyun	default "11.3.0"    if BR2_GCC_VERSION_11_X
93*4882a593Smuzhiyun	default "12.2.0"    if BR2_GCC_VERSION_12_X
94*4882a593Smuzhiyun	default "arc-2020.09-release" if BR2_GCC_VERSION_ARC
95*4882a593Smuzhiyun
96*4882a593Smuzhiyunconfig BR2_EXTRA_GCC_CONFIG_OPTIONS
97*4882a593Smuzhiyun	string "Additional gcc options"
98*4882a593Smuzhiyun	default ""
99*4882a593Smuzhiyun	help
100*4882a593Smuzhiyun	  Any additional gcc configure options you may want to
101*4882a593Smuzhiyun	  include. Those options are applied for all of the gcc
102*4882a593Smuzhiyun	  initial, gcc intermediate and gcc final passes.
103*4882a593Smuzhiyun
104*4882a593Smuzhiyunconfig BR2_TOOLCHAIN_BUILDROOT_CXX
105*4882a593Smuzhiyun	bool "Enable C++ support"
106*4882a593Smuzhiyun	select BR2_INSTALL_LIBSTDCPP
107*4882a593Smuzhiyun	help
108*4882a593Smuzhiyun	  Enable this option if you want your toolchain to support the
109*4882a593Smuzhiyun	  C++ language and you want C++ libraries to be installed on
110*4882a593Smuzhiyun	  your target system.
111*4882a593Smuzhiyun
112*4882a593Smuzhiyuncomment "Fortran support needs a toolchain w/ wchar"
113*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH
114*4882a593Smuzhiyun	depends on !BR2_USE_WCHAR # libquadmath
115*4882a593Smuzhiyun
116*4882a593Smuzhiyunconfig BR2_TOOLCHAIN_BUILDROOT_FORTRAN
117*4882a593Smuzhiyun	bool "Enable Fortran support"
118*4882a593Smuzhiyun	# on architecture building libquadmath, wchar is required
119*4882a593Smuzhiyun	depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \
120*4882a593Smuzhiyun		(BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR)
121*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HAS_FORTRAN
122*4882a593Smuzhiyun	help
123*4882a593Smuzhiyun	  Enable this option if you want your toolchain to support the
124*4882a593Smuzhiyun	  Fortran language and you want Fortran libraries to be
125*4882a593Smuzhiyun	  installed on your target system.
126*4882a593Smuzhiyun
127*4882a593Smuzhiyunconfig BR2_TOOLCHAIN_BUILDROOT_DLANG
128*4882a593Smuzhiyun	bool "Enable D language support"
129*4882a593Smuzhiyun	depends on BR2_GCC_SUPPORTS_DLANG
130*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HAS_DLANG
131*4882a593Smuzhiyun	help
132*4882a593Smuzhiyun	  Enable this option if you want your toolchain to support the
133*4882a593Smuzhiyun	  D language and you want D libraries to be installed on your
134*4882a593Smuzhiyun	  target system.
135*4882a593Smuzhiyun
136*4882a593Smuzhiyunconfig BR2_GCC_ENABLE_OPENMP
137*4882a593Smuzhiyun	bool "Enable compiler OpenMP support"
138*4882a593Smuzhiyun	depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze
139*4882a593Smuzhiyun	select BR2_TOOLCHAIN_HAS_OPENMP
140*4882a593Smuzhiyun	help
141*4882a593Smuzhiyun	  Enable OpenMP support for the compiler
142*4882a593Smuzhiyun
143*4882a593Smuzhiyunconfig BR2_GCC_ENABLE_GRAPHITE
144*4882a593Smuzhiyun	bool "Enable graphite support"
145*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5
146*4882a593Smuzhiyun	help
147*4882a593Smuzhiyun	  This option enables the graphite optimizations in the
148*4882a593Smuzhiyun	  compiler.
149*4882a593Smuzhiyun
150*4882a593Smuzhiyuncomment "graphite support needs gcc >= 5.x"
151*4882a593Smuzhiyun	depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5
152