package/vlc: backport upstream patches to fix compat function for static_assert
[buildroot-gz.git] / package / gcc / Config.in.host
blobd204bf7deb8a335a29935e7ce2529420f569ddb7
1 comment "GCC Options"
3 choice
4         prompt "GCC compiler Version"
5         default BR2_GCC_VERSION_ARC if BR2_arc
6         default BR2_GCC_VERSION_5_X
7         help
8           Select the version of gcc you wish to use.
10         config BR2_GCC_VERSION_4_8_X
11                 bool "gcc 4.8.x"
12                 # Broken or unsupported architectures
13                 depends on !BR2_microblaze && !BR2_arc \
14                         && !BR2_powerpc64le && !BR2_nios2 && !BR2_bfin
15                 # Broken or unsupported ARM cores
16                 depends on !BR2_cortex_a12 && !BR2_cortex_a17
17                 # Broken or unsupported PPC cores
18                 depends on !BR2_powerpc_power8
19                 # Unsupported MIPS cores
20                 depends on !BR2_mips_interaptiv
21                 # gcc-4.8.x + binutils-2.25 is broken for MIPS
22                 depends on !((BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) && BR2_BINUTILS_VERSION_2_25_X)
23                 # Unsupported for MIPS R5
24                 depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
25                 # Unsupported for MIPS R6
26                 depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
27                 # musl ppc64 unsupported
28                 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
29                 # musl mips64 unsupported
30                 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
31                 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
33         config BR2_GCC_VERSION_ARC
34                 bool "gcc arc (6.x)"
35                 # Only supported architecture
36                 depends on BR2_arc
37                 select BR2_TOOLCHAIN_GCC_AT_LEAST_6
39         config BR2_GCC_VERSION_4_9_X
40                 bool "gcc 4.9.x"
41                 # Broken or unsupported architectures
42                 depends on !BR2_arc && !BR2_bfin
43                 # Broken or unsupported ARM cores
44                 depends on !BR2_cortex_a17
45                 # Unsupported MIPS cores
46                 depends on !BR2_mips_interaptiv
47                 # Unsupported for MIPS R5
48                 depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
49                 # Unsupported for MIPS R6
50                 depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
51                 # musl ppc64 unsupported
52                 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
53                 # musl mips64 unsupported
54                 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
55                 # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102
56                 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
58         config BR2_GCC_VERSION_5_X
59                 bool "gcc 5.x"
60                 # Broken or unsupported architectures
61                 depends on !BR2_arc && !BR2_bfin
62                 # musl ppc64 unsupported
63                 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
64                 # Unsupported MIPS cores
65                 depends on !BR2_mips_interaptiv && !BR2_mips_m5100 && \
66                         !BR2_mips_m5101 && !BR2_mips_m6201 && !BR2_mips_i6400 && \
67                         !BR2_mips_p6600
68                 # musl mips64 unsupported
69                 depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
70                 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
72         config BR2_GCC_VERSION_6_X
73                 bool "gcc 6.x"
74                 # Broken or unsupported architectures
75                 depends on !BR2_arc
76                 # Unsupported MIPS cores
77                 depends on !BR2_mips_m6201 && !BR2_mips_p6600
78                 select BR2_TOOLCHAIN_GCC_AT_LEAST_6
80 endchoice
82 # Indicates if GCC for architecture supports --with-{arch,cpu,..}  to
83 # set default CFLAGS, otherwise values will be used by toolchain
84 # wrapper.
85 config BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS
86         bool
87         default y if !BR2_bfin
89 config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
90         bool
91         default y
93 config BR2_GCC_VERSION
94         string
95         default "4.8.5"     if BR2_GCC_VERSION_4_8_X
96         default "4.9.4"     if BR2_GCC_VERSION_4_9_X
97         default "5.4.0"     if BR2_GCC_VERSION_5_X
98         default "6.2.0"     if BR2_GCC_VERSION_6_X
99         default "arc-2016.09-eng015" if BR2_GCC_VERSION_ARC
101 config BR2_EXTRA_GCC_CONFIG_OPTIONS
102         string "Additional gcc options"
103         default ""
104         help
105           Any additional gcc configure options you may want to
106           include. Those options are applied for all of the gcc
107           initial, gcc intermediate and gcc final passes.
109 config BR2_TOOLCHAIN_BUILDROOT_CXX
110         bool "Enable C++ support"
111         select BR2_INSTALL_LIBSTDCPP
112         help
113           Enable this option if you want your toolchain to support the
114           C++ language and you want C++ libraries to be installed on
115           your target system.
117 comment "Fortran support needs a toolchain w/ wchar"
118         depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH
119         depends on !BR2_USE_WCHAR # libquadmath
121 config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
122         bool "Enable Fortran support"
123         # on architecture building libquadmath, wchar is required
124         depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \
125                 (BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR)
126         select BR2_TOOLCHAIN_HAS_FORTRAN
127         help
128           Enable this option if you want your toolchain to support the
129           Fortran language and you want Fortran libraries to be
130           installed on your target system.
132 config BR2_GCC_ENABLE_LTO
133         bool "Enable compiler link-time-optimization support"
134         select BR2_BINUTILS_ENABLE_LTO
135         help
136           This option enables link-time optimization (LTO) support in
137           gcc.
139 config BR2_GCC_ENABLE_OPENMP
140         bool "Enable compiler OpenMP support"
141         depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze
142         help
143           Enable OpenMP support for the compiler
145 config BR2_GCC_ENABLE_LIBMUDFLAP
146         bool "Enable libmudflap support"
147         # There are architectures, or specific configurations for
148         # which mudflap is not supported.
149         depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE
150         depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
151         help
152           libmudflap is a gcc library used for the mudflap pointer
153           debugging functionality. It is only needed if you intend to
154           use the -fmudflap gcc flag.
156           See http://gcc.gnu.org/wiki/Mudflap_Pointer_Debugging and
157           the help of the gcc -fmudflap option for more details.
159           If you're unsure, leave this option disabled.
161 config BR2_GCC_ENABLE_GRAPHITE
162         bool "Enable graphite support"
163         help
164           This option enables the graphite optimizations in the
165           compiler.