2007-02-24 11:00:05 +00:00
|
|
|
# Compiler options
|
2011-05-08 17:02:44 +00:00
|
|
|
#
|
2015-05-29 20:40:49 +00:00
|
|
|
## default y
|
2016-12-16 23:51:04 +00:00
|
|
|
## select CC_SUPPORT_CXX if !LIBC_none
|
2011-05-08 17:02:44 +00:00
|
|
|
## select CC_SUPPORT_FORTRAN
|
2017-05-12 06:16:40 +00:00
|
|
|
## select CC_SUPPORT_JAVA if !CC_GCC_6_or_later
|
2011-05-08 17:02:44 +00:00
|
|
|
## select CC_SUPPORT_ADA
|
|
|
|
## select CC_SUPPORT_OBJC
|
|
|
|
## select CC_SUPPORT_OBJCXX
|
2017-02-19 07:14:52 +00:00
|
|
|
## select CC_SUPPORT_GOLANG
|
2011-05-08 17:02:44 +00:00
|
|
|
##
|
|
|
|
## help gcc is the full-blown GNU compiler. This is what most people will choose.
|
|
|
|
## help
|
|
|
|
## help gcc supports many languages, a powerful code parser, optimised binary
|
|
|
|
## help output, and lots of other features.
|
2008-10-13 16:58:52 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
source "config/versions/gcc.in"
|
|
|
|
|
|
|
|
# Only enable gcc's support for plugins if binutils has it as well
|
|
|
|
# They are useful only when doing LTO, but it does no harm enabling
|
|
|
|
# them even without LTO.
|
|
|
|
config CC_GCC_ENABLE_PLUGINS
|
|
|
|
bool
|
|
|
|
depends on BINUTILS_PLUGINS
|
|
|
|
depends on ! STATIC_TOOLCHAIN
|
|
|
|
default y
|
|
|
|
|
|
|
|
# If binutils installs gold, enable support for gold in gcc
|
|
|
|
config CC_GCC_GOLD
|
|
|
|
bool
|
|
|
|
depends on BINUTILS_GOLD_INSTALLED
|
|
|
|
default y
|
|
|
|
|
|
|
|
config CC_GCC_HAS_LIBMPX
|
2017-05-17 06:30:20 +00:00
|
|
|
depends on GCC_MS_5
|
2015-11-26 13:07:37 +00:00
|
|
|
bool
|
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_LANG_JAVA_USE_ECJ
|
|
|
|
bool
|
|
|
|
default y
|
|
|
|
depends on CC_LANG_JAVA
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_ENABLE_CXX_FLAGS
|
2015-11-26 13:07:37 +00:00
|
|
|
string
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Flags to pass to --enable-cxx-flags"
|
|
|
|
default ""
|
2015-11-26 13:07:37 +00:00
|
|
|
help
|
2017-05-12 05:00:32 +00:00
|
|
|
Enter here the value of the gcc's ./configure option --enable-cxx-flags.
|
|
|
|
Leave empty if you don't know better.
|
|
|
|
|
|
|
|
Note: just pass in the option _value_, that is only the part that goes
|
|
|
|
after the '=' sign.
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_CORE_EXTRA_CONFIG_ARRAY
|
2015-11-26 13:07:37 +00:00
|
|
|
string
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Core gcc extra config"
|
|
|
|
default ""
|
|
|
|
depends on CC_CORE_PASS_1_NEEDED || CC_CORE_PASS_2_NEEDED
|
2015-11-26 13:07:37 +00:00
|
|
|
help
|
2017-05-12 05:00:32 +00:00
|
|
|
Extra flags to pass onto ./configure when configuring the core gcc.
|
|
|
|
|
|
|
|
The core gcc is a stripped down, C-only compiler needed to build
|
|
|
|
the C library. Kinda bootstrap gcc, if you wish.
|
|
|
|
|
|
|
|
You can enter multiple arguments here, and arguments can contain spaces
|
|
|
|
if they are properly quoted (or escaped, but prefer quotes). Eg.:
|
|
|
|
--with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
|
|
|
|
|
|
|
|
config CC_GCC_EXTRA_CONFIG_ARRAY
|
2015-11-26 13:07:37 +00:00
|
|
|
string
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "gcc extra config"
|
|
|
|
default ""
|
|
|
|
help
|
|
|
|
Extra flags to pass onto ./configure when configuring gcc.
|
|
|
|
|
|
|
|
You can enter multiple arguments here, and arguments can contain spaces
|
|
|
|
if they are properly quoted (or escaped, but prefer quotes). Eg.:
|
|
|
|
--with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_MULTILIB_LIST
|
|
|
|
string
|
|
|
|
prompt "List of multilib variants"
|
|
|
|
depends on MULTILIB
|
|
|
|
help
|
|
|
|
Architecture-specific option of expanding or restricting the list of
|
|
|
|
the multilib variants to be built. Refer to GCC installation manual
|
|
|
|
for the format of this option for a particular architecture.
|
|
|
|
Leave empty to use the default list for this architecture.
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config STATIC_TOOLCHAIN
|
|
|
|
bool
|
|
|
|
select CC_GCC_STATIC_LIBSTDCXX
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_STATIC_LIBSTDCXX
|
2011-03-26 21:04:22 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Link libstdc++ statically into the gcc binary"
|
|
|
|
default y
|
|
|
|
depends on CONFIGURE_has_static_link || CANADIAN || CROSS_NATIVE
|
|
|
|
select WANTS_STATIC_LINK if CROSS || NATIVE
|
|
|
|
select WANTS_STATIC_LINK_CXX if CROSS || NATIVE
|
2011-03-26 21:04:22 +00:00
|
|
|
help
|
2017-05-12 05:00:32 +00:00
|
|
|
Newer gcc versions require some c++ libraries. So statically
|
|
|
|
linking libstdc++ increases the likeliness that the gcc binary will
|
|
|
|
run on machines other than the one which it was built on, without
|
|
|
|
having to worry about distributing the matching version of libstdc++
|
|
|
|
along with it.
|
2016-08-25 15:17:22 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_SYSTEM_ZLIB
|
2007-02-24 11:00:05 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Use system zlib"
|
|
|
|
help
|
|
|
|
Do not use bundled zlib, and use the zlib already available for
|
|
|
|
the host (eg. the system library).
|
|
|
|
|
|
|
|
If zlib is built as a companion library, selecting this option
|
|
|
|
will use it.
|
|
|
|
|
|
|
|
If you want to build a static toolchain, you will need to also
|
|
|
|
install the static version of zlib for your host.
|
|
|
|
|
|
|
|
If unsure, say 'n'.
|
|
|
|
|
|
|
|
config CC_GCC_CONFIG_TLS
|
|
|
|
tristate
|
|
|
|
prompt "Configure TLS (Thread Local Storage)"
|
|
|
|
default m
|
|
|
|
help
|
|
|
|
Specify that the target supports TLS (Thread Local Storage). Usually
|
|
|
|
configure can correctly determine if TLS is supported. In cases where
|
|
|
|
it guesses incorrectly, TLS can be explicitly enabled or disabled.
|
|
|
|
This can happen if the assembler supports TLS but the C library does
|
|
|
|
not, or if the assumptions made by the configure test are incorrect.
|
|
|
|
|
|
|
|
Option | TLS use | Associated ./configure switch
|
|
|
|
---------+--------------------+--------------------------------
|
|
|
|
Y | forcibly used | --enable-tls
|
|
|
|
M | auto | (none, ./configure decides)
|
|
|
|
N | forcibly not used | --disable-tls
|
|
|
|
|
|
|
|
If unsure, say 'M'.
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
# Optimisation features
|
|
|
|
|
|
|
|
comment "Optimisation features"
|
|
|
|
|
|
|
|
# Defined in config/cc/gcc.in
|
|
|
|
# For graphite: gcc needs cloog and isl
|
|
|
|
# In >= gcc-5.x, cloog is no longer needed, but isl is.
|
|
|
|
# Prompt in config/cc/gcc.in.2
|
|
|
|
config CC_GCC_USE_GRAPHITE
|
|
|
|
bool "Enable GRAPHITE loop optimisations"
|
|
|
|
default y
|
|
|
|
select CLOOG_NEEDED if !CC_GCC_5_or_later
|
|
|
|
select ISL_NEEDED
|
|
|
|
help
|
|
|
|
Enable the GRAPHITE loop optimsations.
|
|
|
|
|
|
|
|
On some systems (eg. Cygwin), CLooG and ISL (required to enable
|
|
|
|
GRAPHITE) may not build properly (yet), so you'll have to say 'N'
|
|
|
|
here (or help debug the issues)
|
|
|
|
|
|
|
|
TODO: Is this still true on Cygwin?
|
|
|
|
|
|
|
|
# The way LTO works is a bit twisted.
|
|
|
|
# See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
|
|
|
|
# Basically:
|
|
|
|
# - if binutils has plugins: LTO is handled by ld/gold by loading
|
|
|
|
# the plugin when linking
|
|
|
|
# - if binutils does not have plugins: LTO is handled by collect2
|
|
|
|
# In any case, LTO support does not depend on plugins, but takes
|
|
|
|
# advantage of it
|
|
|
|
config CC_GCC_USE_LTO
|
|
|
|
bool "Enable LTO"
|
|
|
|
default y
|
|
|
|
depends on ! STATIC_TOOLCHAIN
|
|
|
|
help
|
|
|
|
Enable the Link Time Optimisations.
|
2012-08-22 19:26:10 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
comment "Settings for libraries running on target"
|
2017-01-12 02:47:15 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_ENABLE_TARGET_OPTSPACE
|
2017-05-12 06:16:40 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Optimize gcc libs for size"
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Pass --enable-target-optspace to crossgcc's configure.
|
|
|
|
|
|
|
|
This will compile crossgcc's libs with -Os.
|
2017-05-12 06:16:40 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LIBMUDFLAP
|
2016-12-26 01:54:30 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Compile libmudflap"
|
|
|
|
help
|
|
|
|
libmudflap is a pointer-use checking tool, which can detect
|
|
|
|
various mis-usages of pointers in C and (to some extents) C++.
|
|
|
|
|
|
|
|
You should say 'N' here, as libmduflap generates instrumented
|
|
|
|
code (thus it is a bit bigger and a bit slower) and requires
|
|
|
|
re-compilation and re-link, while it exists better run-time
|
|
|
|
alternatives (eg. DUMA, dmalloc...) that need neither re-
|
|
|
|
compilation nor re-link.
|
|
|
|
|
|
|
|
config CC_GCC_LIBGOMP
|
2017-01-12 02:47:15 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Compile libgomp"
|
|
|
|
depends on !THREADS_NONE
|
|
|
|
help
|
|
|
|
libgomp is "the GNU implementation of the OpenMP Application Programming
|
|
|
|
Interface (API) for multi-platform shared-memory parallel programming in
|
|
|
|
C/C++ and Fortran". See:
|
|
|
|
http://gcc.gnu.org/onlinedocs/libgomp/
|
2017-01-12 02:47:15 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
GNU OpenMP support requires threading.
|
2015-05-02 22:52:04 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
The default is 'N'. Say 'Y' if you need it, and report success/failure.
|
2016-01-03 06:31:40 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LIBSSP
|
2015-01-06 22:21:28 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Compile libssp"
|
|
|
|
help
|
|
|
|
libssp is the run-time Stack-Smashing Protection library.
|
|
|
|
|
|
|
|
The default is 'N'. Say 'Y' if you need it, and report success/failure.
|
2015-01-06 22:21:28 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LIBQUADMATH
|
2015-07-10 14:49:37 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Compile libquadmath"
|
|
|
|
help
|
|
|
|
libquadmath is a library which provides quad-precision mathematical
|
|
|
|
functions on targets supporting the __float128 datatype. See:
|
|
|
|
http://gcc.gnu.org/onlinedocs/libquadmath/
|
|
|
|
|
|
|
|
The default is 'N'. Say 'Y' if you need it, and report success/failure.
|
2015-07-10 14:49:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LIBSANITIZER
|
2013-05-05 16:01:47 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Compile libsanitizer"
|
|
|
|
depends on THREADS_NATIVE
|
|
|
|
depends on ! LIBC_uClibc && ! LIBC_musl # Currently lacks required headers (like netrom.h)
|
|
|
|
help
|
|
|
|
libsanitizer is a library which provides run-time sanitising of either
|
|
|
|
or both of:
|
|
|
|
- memory access patterns (out-of-bonds, use-after-free)
|
|
|
|
- racy data accesses (in multi-threaded programs)
|
2013-05-05 16:01:47 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
The default is 'N'. Say 'Y' if you need it, and report success/failure.
|
2015-07-10 14:49:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LIBMPX
|
|
|
|
bool
|
|
|
|
default y
|
|
|
|
prompt "Compile libmpx"
|
|
|
|
depends on CC_GCC_HAS_LIBMPX
|
|
|
|
depends on ARCH_x86
|
|
|
|
# MUSL does not define libc types that GCC requires. Mingw lacks certain headers.
|
|
|
|
depends on !LIBC_musl && ! LIBC_mingw
|
|
|
|
help
|
|
|
|
Enable GCC support for Intel Memory Protection Extensions (MPX).
|
2015-08-29 10:43:43 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
#-----------------------------------------------------------------------------
|
2012-10-11 04:39:41 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
comment "Misc. obscure options."
|
2013-05-05 15:59:00 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_CXA_ATEXIT
|
2012-08-22 19:26:10 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Use __cxa_atexit"
|
|
|
|
default y
|
|
|
|
depends on ! BARE_METAL || LIBC_PROVIDES_CXA_ATEXIT
|
|
|
|
help
|
|
|
|
If you get the missing symbol "__cxa_atexit" when building C++ programs,
|
|
|
|
you might want to try disabling this option.
|
2013-05-05 15:59:00 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_DISABLE_PCH
|
2014-05-11 21:31:54 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Do not build PCH"
|
|
|
|
help
|
|
|
|
Say 'y' here to not use Pre-Compiled Headers in the resulting toolchain.
|
|
|
|
at the expense of speed when compiling C++ code.
|
|
|
|
|
|
|
|
For some configurations (most notably canadian?), PCH are broken, and
|
|
|
|
need to be disabled. Please see:
|
|
|
|
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40974
|
|
|
|
|
|
|
|
config CC_GCC_SJLJ_EXCEPTIONS
|
|
|
|
tristate
|
|
|
|
prompt "Use sjlj for exceptions"
|
|
|
|
depends on ! BARE_METAL
|
|
|
|
default m
|
|
|
|
help
|
|
|
|
'sjlj' is short for setjmp/longjmp.
|
|
|
|
|
|
|
|
On some architectures, stack unwinding during exception handling
|
|
|
|
works perfectly well without using sjlj, while on some others,
|
|
|
|
use of sjlj is required for proper stack unwinding.
|
|
|
|
|
|
|
|
Option | sjlj use | Associated ./configure switch
|
|
|
|
---------+--------------------+--------------------------------
|
|
|
|
Y | forcibly used | --enable-sjlj-exceptions
|
|
|
|
M | auto | (none, ./configure decides)
|
|
|
|
N | forcibly not used | --disable-sjlj-exceptions
|
|
|
|
|
|
|
|
It should be safe to say 'M' or 'N'.
|
|
|
|
|
|
|
|
It can happen that ./configure is wrong in some cases. Known
|
|
|
|
case is for ARM big endian, where you should say 'N'.
|
|
|
|
|
|
|
|
config CC_GCC_LDBL_128
|
|
|
|
tristate
|
|
|
|
prompt "Enable 128-bit long doubles"
|
|
|
|
default m
|
|
|
|
help
|
|
|
|
Saying 'Y' will force gcc to use 128-bit wide long doubles
|
|
|
|
Saying 'N' will force gcc to use 64-bit wide long doubles
|
|
|
|
Saying 'M' will let gcc choose (default is 128-bit for
|
|
|
|
glibc >= 2.4, 64-bit otherwise)
|
|
|
|
|
|
|
|
If in doubt, keep the default, ie. 'M'.
|
|
|
|
|
|
|
|
config CC_GCC_BUILD_ID
|
2013-05-05 15:59:00 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Enable build-id"
|
|
|
|
help
|
|
|
|
Tells GCC to pass --build-id option to the linker for all final
|
|
|
|
links (links performed without the -r or --relocatable option),
|
|
|
|
if the linker supports it. If you say 'y' here, but your linker
|
|
|
|
does not support --build-id option, a warning is issued and this
|
|
|
|
option is ignored.
|
|
|
|
|
|
|
|
The default is off.
|
|
|
|
|
|
|
|
choice CC_GCC_LNK_HASH_STYLE_CHOICE
|
2015-07-19 20:38:00 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "linker hash style"
|
|
|
|
depends on BINUTILS_HAS_HASH_STYLE
|
2015-07-19 20:38:00 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LNK_HASH_STYLE_DEFAULT
|
2014-05-11 21:31:54 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "Default"
|
|
|
|
help
|
|
|
|
Do not specify any value, and use the default value (sysv).
|
2015-05-02 22:52:04 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LNK_HASH_STYLE_SYSV
|
2016-05-10 20:27:22 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "sysv"
|
|
|
|
help
|
|
|
|
Force use of the SYSV hash style.
|
2016-05-10 20:27:22 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LNK_HASH_STYLE_GNU
|
2016-05-10 20:27:22 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "gnu"
|
|
|
|
help
|
|
|
|
Force use of the GNU hash style.
|
gcc: Support only the latest branch releases of gcc
This change, as per #222, reduces the number of supported releases of
gcc to the latest branch releases.
I noticed while doing this work that gcc-4.5.4 was never added, so I
moved patches for gcc-4.5.3 to 4.5.4 and updated the
bfin-unknown-linux-uclibc example. Also, 120-siginfo.patch was fixed
upstream in the 4.5.4 release, so this patch is omitted.
I also bumped the avr sample to 4.9.3 from 4.9.2.
With the addition of gcc-5.x, the gcc release team now releases the
major.minor.0 versions, while updates to the branch are available in
svn/git. We'll address that when we get to issue #219. This change just
removes CC_GCC_5_1 and moves CC_GCC_5_2 to CC_GCC_5, and removes
CC_GCC_5_1_or_later and moves CC_GCC_5_2_or_later to CC_GCC_5_or_later.
This is the first of two part changes, as mentioned in #222.
This change is slated for release in 1.22.0. The next change will be
slated for 1.23.0, and will limit gcc versions to what is on
https://gcc.gnu.org under "Release Series and Status", which is
currently 4.9.3 and 5.2.0, although I will also support the previous
supported version. In this example that would be 4.8.5.
Last, but not least, this change also retires AVR32 support.
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-10-29 23:16:51 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LNK_HASH_STYLE_BOTH
|
2017-05-12 06:16:40 +00:00
|
|
|
bool
|
2017-05-12 05:00:32 +00:00
|
|
|
prompt "both"
|
|
|
|
help
|
|
|
|
Force use of both hash styles.
|
2017-05-12 06:16:40 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
endchoice # CC_GCC_LNK_HASH_STYLE_CHOICE
|
2017-05-12 06:16:40 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_LNK_HASH_STYLE
|
|
|
|
string
|
|
|
|
default "" if CC_GCC_LNK_HASH_STYLE_DEFAULT
|
|
|
|
default "sysv" if CC_GCC_LNK_HASH_STYLE_SYSV
|
|
|
|
default "gnu" if CC_GCC_LNK_HASH_STYLE_GNU
|
|
|
|
default "both" if CC_GCC_LNK_HASH_STYLE_BOTH
|
|
|
|
|
|
|
|
choice CC_GCC_DEC_FLOATS_CHOICE
|
|
|
|
bool "Decimal floats"
|
|
|
|
default CC_GCC_DEC_FLOATS_AUTO
|
|
|
|
help
|
|
|
|
Choose what type of decimal floats to support.
|
|
|
|
|
|
|
|
Note that using decimal floats requires a C library that provides
|
|
|
|
support for fenv (namely, the fenv.h header). This is the case
|
|
|
|
for (e)glibc, and uClibc on x86/32. For other C libraries, or
|
|
|
|
uClibc on other archs, this might not be the case, so you should
|
|
|
|
disable support for decimal floats.
|
|
|
|
|
|
|
|
The default is to let ./configure decide.
|
|
|
|
|
|
|
|
config CC_GCC_DEC_FLOAT_AUTO
|
|
|
|
bool "auto"
|
|
|
|
help
|
|
|
|
Let ./configure decide. If you say 'y' here, gcc will default to:
|
|
|
|
- 'bid' for x86 (32- and 64-bit)
|
|
|
|
- 'dpd' for powerpc
|
|
|
|
- 'no' for the other architectures
|
2012-08-22 19:26:10 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_DEC_FLOAT_BID
|
|
|
|
bool "bid"
|
|
|
|
help
|
|
|
|
Use the 'binary integer decimal' format for decimal floats.
|
2011-01-28 17:53:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_DEC_FLOAT_DPD
|
|
|
|
bool "dpd"
|
|
|
|
help
|
|
|
|
Use the 'densely packed decimal' for decimal floats.
|
2011-01-28 17:53:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_DEC_FLOATS_NO
|
|
|
|
bool "no"
|
|
|
|
help
|
|
|
|
Do not support decimal floats. The default.
|
2016-09-23 00:01:43 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
endchoice # CC_GCC_DEC_FLOATS_CHOICE
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
config CC_GCC_DEC_FLOATS
|
2007-02-24 11:00:05 +00:00
|
|
|
string
|
2017-05-12 05:00:32 +00:00
|
|
|
default "" if CC_GCC_DEC_FLOATS_AUTO
|
|
|
|
default "bid" if CC_GCC_DEC_FLOATS_BID
|
|
|
|
default "dpd" if CC_GCC_DEC_FLOATS_DPD
|
|
|
|
default "no" if CC_GCC_DEC_FLOATS_NO
|
2015-11-26 13:07:37 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
config CC_GCC_HAS_ARCH_OPTIONS
|
2007-03-21 21:03:22 +00:00
|
|
|
bool
|
2011-07-31 20:19:21 +00:00
|
|
|
|
2017-05-12 05:00:32 +00:00
|
|
|
comment "archictecture-specific options"
|
|
|
|
depends on CC_GCC_HAS_ARCH_OPTIONS
|
|
|
|
|
|
|
|
if ARCH_mips
|
|
|
|
source "config/cc/gcc.in.mips"
|
|
|
|
endif # ARCH_mips
|