]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - package/gcc/Config.in.host
Merge branch 'next'
[coffee/buildroot.git] / package / gcc / Config.in.host
1 comment "GCC Options"
2
3 config BR2_GCC_NEEDS_MPC
4         bool
5
6 config BR2_GCC_SUPPORTS_GRAPHITE
7         bool
8
9 choice
10         prompt "GCC compiler Version"
11         default BR2_GCC_VERSION_4_8_ARC if BR2_arc
12         default BR2_GCC_VERSION_4_9_X
13         help
14           Select the version of gcc you wish to use.
15
16         config BR2_GCC_VERSION_4_7_X
17                 bool "gcc 4.7.x"
18                 depends on BR2_DEPRECATED_SINCE_2016_05
19                 # Broken or unsupported architectures
20                 depends on !BR2_microblaze && !BR2_aarch64 && !BR2_arc \
21                         && !BR2_powerpc64le && !BR2_nios2
22                 # Broken or unsupported ARM cores
23                 depends on !BR2_cortex_a12 && !BR2_pj4 && !BR2_cortex_a17
24                 # Broken or unsupported PPC cores
25                 depends on !BR2_powerpc_e5500 && !BR2_powerpc_e6500 && \
26                         !BR2_powerpc_power8
27                 # SPARC -mcpu=leon3 appeared in gcc 4.8.x
28                 depends on !BR2_sparc_leon3
29                 # Broken or unsupported x86 cores
30                 depends on !BR2_x86_jaguar && !BR2_x86_steamroller
31                 # Unsupported for MIPS R6
32                 depends on !BR2_mips_32r6 && !BR2_mips_64r6
33                 select BR2_GCC_NEEDS_MPC
34                 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
35
36         config BR2_GCC_VERSION_4_8_X
37                 bool "gcc 4.8.x"
38                 # Broken or unsupported architectures
39                 depends on !BR2_microblaze && !BR2_arc \
40                         && !BR2_powerpc64le && !BR2_nios2
41                 # Broken or unsupported ARM cores
42                 depends on !BR2_cortex_a12 && !BR2_cortex_a17
43                 # Broken or unsupported PPC cores
44                 depends on !BR2_powerpc_power8
45                 # gcc-4.8.x + binutils-2.25 is broken for MIPS
46                 depends on !((BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) && BR2_BINUTILS_VERSION_2_25_X)
47                 # Unsupported for MIPS R6
48                 depends on !BR2_mips_32r6 && !BR2_mips_64r6
49                 select BR2_GCC_NEEDS_MPC
50                 select BR2_GCC_SUPPORTS_GRAPHITE
51                 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
52
53         config BR2_GCC_VERSION_4_8_ARC
54                 bool "gcc 4.8-arc"
55                 # Only supported architecture
56                 depends on BR2_arc
57                 select BR2_GCC_NEEDS_MPC
58                 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
59
60
61         config BR2_GCC_VERSION_4_9_X
62                 bool "gcc 4.9.x"
63                 # Broken or unsupported architectures
64                 depends on !BR2_arc
65                 # Broken or unsupported ARM cores
66                 depends on !BR2_cortex_a17
67                 # Unsupported for MIPS R6
68                 depends on !BR2_mips_32r6 && !BR2_mips_64r6
69                 # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102
70                 select BR2_GCC_NEEDS_MPC
71                 select BR2_GCC_SUPPORTS_GRAPHITE
72                 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
73
74         config BR2_GCC_VERSION_5_X
75                 bool "gcc 5.x"
76                 # Broken or unsupported architectures
77                 depends on !BR2_arc
78                 select BR2_GCC_NEEDS_MPC
79                 select BR2_GCC_SUPPORTS_GRAPHITE
80                 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
81
82         config BR2_GCC_VERSION_6_X
83                 bool "gcc 6.x"
84                 # Broken or unsupported architectures
85                 depends on !BR2_arc
86                 select BR2_GCC_NEEDS_MPC
87                 select BR2_GCC_SUPPORTS_GRAPHITE
88                 select BR2_TOOLCHAIN_GCC_AT_LEAST_6
89
90 endchoice
91
92 config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
93         bool
94         default y
95
96 config BR2_GCC_VERSION
97         string
98         default "4.7.4"     if BR2_GCC_VERSION_4_7_X
99         default "4.8.5"     if BR2_GCC_VERSION_4_8_X
100         default "4.9.3"     if BR2_GCC_VERSION_4_9_X
101         default "5.3.0"     if BR2_GCC_VERSION_5_X
102         default "6.1.0" if BR2_GCC_VERSION_6_X
103         default "arc-2016.03" if BR2_GCC_VERSION_4_8_ARC
104
105 config BR2_EXTRA_GCC_CONFIG_OPTIONS
106         string "Additional gcc options"
107         default ""
108         help
109           Any additional gcc configure options you may want to
110           include. Those options are applied for all of the gcc
111           initial, gcc intermediate and gcc final passes.
112
113 config BR2_TOOLCHAIN_BUILDROOT_CXX
114         bool "Enable C++ support"
115         select BR2_INSTALL_LIBSTDCPP
116         help
117           Enable this option if you want your toolchain to support the
118           C++ language and you want C++ libraries to be installed on
119           your target system.
120
121 config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
122         bool "Enable Fortran support"
123         help
124           Enable this option if you want your toolchain to support the
125           Fortran language and you want Fortran libraries to be
126           installed on your target system.
127
128 config BR2_GCC_ENABLE_TLS
129         bool "Enable compiler tls support" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
130         default y
131         depends on BR2_PTHREADS_NATIVE || BR2_TOOLCHAIN_BUILDROOT_GLIBC
132         help
133           Enable the compiler to generate code for accessing
134           thread local storage variables
135
136 config BR2_GCC_ENABLE_LTO
137         bool "Enable compiler link-time-optimization support"
138         select BR2_BINUTILS_ENABLE_LTO
139         help
140           This option enables link-time optimization (LTO) support in
141           gcc.
142
143 config BR2_GCC_ENABLE_OPENMP
144         bool "Enable compiler OpenMP support"
145         depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze
146         help
147           Enable OpenMP support for the compiler
148
149 config BR2_GCC_ENABLE_LIBMUDFLAP
150         bool "Enable libmudflap support"
151         # There are architectures, or specific configurations for
152         # which mudflap is not supported.
153         depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE
154         depends on !BR2_GCC_VERSION_4_9_X
155         depends on !BR2_GCC_VERSION_5_X
156         depends on !BR2_GCC_VERSION_6_X
157         help
158           libmudflap is a gcc library used for the mudflap pointer
159           debugging functionality. It is only needed if you intend to
160           use the -fmudflap gcc flag.
161
162           See http://gcc.gnu.org/wiki/Mudflap_Pointer_Debugging and
163           the help of the gcc -fmudflap option for more details.
164
165           If you're unsure, leave this option disabled.
166
167 config BR2_GCC_ENABLE_GRAPHITE
168         bool "Enable graphite support"
169         depends on BR2_GCC_SUPPORTS_GRAPHITE
170         help
171           This option enables the graphite optimizations in the
172           compiler.