4 prompt "GCC compiler Version"
5 default BR2_GCC_VERSION_ARC if BR2_arc
6 default BR2_GCC_VERSION_OR1K if BR2_or1k
7 default BR2_GCC_VERSION_5_X
9 Select the version of gcc you wish to use.
11 config BR2_GCC_VERSION_4_8_X
13 # Broken or unsupported architectures
14 depends on !BR2_microblaze && !BR2_arc && !BR2_or1k \
15 && !BR2_powerpc64le && !BR2_nios2 && !BR2_bfin
16 # Broken or unsupported ARM cores
17 depends on !BR2_cortex_a12 && !BR2_cortex_a17 && !BR2_ARM_CPU_ARMV8
18 # Broken or unsupported PPC cores
19 depends on !BR2_powerpc_power8
20 # Unsupported MIPS cores
21 depends on !BR2_mips_interaptiv
22 # gcc-4.8.x + binutils-2.25 is broken for MIPS
23 depends on !((BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) && BR2_BINUTILS_VERSION_2_25_X)
24 # Unsupported for MIPS R5
25 depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
26 # Unsupported for MIPS R6
27 depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
28 # musl ppc64 unsupported
29 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
30 # musl mips64 unsupported
31 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
32 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
34 config BR2_GCC_VERSION_ARC
36 # Only supported architecture
38 select BR2_TOOLCHAIN_GCC_AT_LEAST_6
40 config BR2_GCC_VERSION_OR1K
42 # Only supported architecture
44 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
46 config BR2_GCC_VERSION_4_9_X
48 # Broken or unsupported architectures
49 depends on !BR2_arc && !BR2_bfin && !BR2_or1k
50 # Broken or unsupported ARM cores
51 depends on !BR2_cortex_a17 && !BR2_cortex_a72
52 # Unsupported MIPS cores
53 depends on !BR2_mips_interaptiv
54 # Unsupported for MIPS R5
55 depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
56 # Unsupported for MIPS R6
57 depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
58 # musl microblaze unsupported
59 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_microblazeel || BR2_microblazebe))
60 # musl ppc64 unsupported
61 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
62 # musl mips64 unsupported
63 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
64 # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102
65 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
67 config BR2_GCC_VERSION_5_X
69 # Broken or unsupported architectures
70 depends on !BR2_arc && !BR2_bfin && !BR2_or1k
71 # musl ppc64 unsupported
72 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
73 # Unsupported MIPS cores
74 depends on !BR2_mips_interaptiv && !BR2_mips_m5150 && \
75 !BR2_mips_m6250 && !BR2_mips_i6400 && !BR2_mips_p6600
76 # musl mips64 unsupported
77 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
78 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
80 config BR2_GCC_VERSION_6_X
82 # Broken or unsupported architectures
84 depends on !BR2_microblaze
86 # Unsupported MIPS cores
87 depends on !BR2_mips_m6250 && !BR2_mips_p6600
88 select BR2_TOOLCHAIN_GCC_AT_LEAST_6
92 # Indicates if GCC for architecture supports --with-{arch,cpu,..} to
93 # set default CFLAGS, otherwise values will be used by toolchain
95 config BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS
97 default y if !BR2_bfin
99 config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
103 config BR2_GCC_VERSION
105 default "4.8.5" if BR2_GCC_VERSION_4_8_X
106 default "4.9.4" if BR2_GCC_VERSION_4_9_X
107 default "5.4.0" if BR2_GCC_VERSION_5_X
108 default "6.3.0" if BR2_GCC_VERSION_6_X
109 default "arc-2016.09-release" if BR2_GCC_VERSION_ARC
110 default "musl-5.4.0" if BR2_GCC_VERSION_OR1K
112 config BR2_EXTRA_GCC_CONFIG_OPTIONS
113 string "Additional gcc options"
116 Any additional gcc configure options you may want to
117 include. Those options are applied for all of the gcc
118 initial, gcc intermediate and gcc final passes.
120 config BR2_TOOLCHAIN_BUILDROOT_CXX
121 bool "Enable C++ support"
122 select BR2_INSTALL_LIBSTDCPP
124 Enable this option if you want your toolchain to support the
125 C++ language and you want C++ libraries to be installed on
128 comment "Fortran support needs a toolchain w/ wchar"
129 depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH
130 depends on !BR2_USE_WCHAR # libquadmath
132 config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
133 bool "Enable Fortran support"
134 # on architecture building libquadmath, wchar is required
135 depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \
136 (BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR)
137 select BR2_TOOLCHAIN_HAS_FORTRAN
139 Enable this option if you want your toolchain to support the
140 Fortran language and you want Fortran libraries to be
141 installed on your target system.
143 config BR2_GCC_ENABLE_LTO
144 bool "Enable compiler link-time-optimization support"
145 select BR2_BINUTILS_ENABLE_LTO
147 This option enables link-time optimization (LTO) support in
150 config BR2_GCC_ENABLE_OPENMP
151 bool "Enable compiler OpenMP support"
152 depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze
154 Enable OpenMP support for the compiler
156 config BR2_GCC_ENABLE_LIBMUDFLAP
157 bool "Enable libmudflap support"
158 # There are architectures, or specific configurations for
159 # which mudflap is not supported.
160 depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE
161 depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
163 libmudflap is a gcc library used for the mudflap pointer
164 debugging functionality. It is only needed if you intend to
165 use the -fmudflap gcc flag.
167 See http://gcc.gnu.org/wiki/Mudflap_Pointer_Debugging and
168 the help of the gcc -fmudflap option for more details.
170 If you're unsure, leave this option disabled.
172 config BR2_GCC_ENABLE_GRAPHITE
173 bool "Enable graphite support"
175 This option enables the graphite optimizations in the