yann@2041: config CC_GCC_ENABLE_TARGET_OPTSPACE yann@2041: bool yann@2041: prompt "Optimize gcc libs for size" yann@2041: default y yann@2041: help yann@2041: Pass --enable-target-optspace to crossgcc's configure. yann@2041: yann@2041: This will compile crossgcc's libs with -Os. yann@2041: yann@2122: config CC_GCC_USE_GRAPHITE yann@2122: bool yann@2122: prompt "Enable GRAPHITE loop optimisations" yann@2122: default y yann@2122: depends on CC_GCC_HAS_GRAPHITE yann@2122: select CC_GCC_USE_PPL_CLOOG yann@2122: help yann@2122: Enable the GRAPHITE loop optimsations. yann@2122: yann@2122: This requires the PPL and CLooG companion libraries, and yann@2122: those will be automatically build for you. yann@2122: yann@2122: On some systems (eg. Cygwin), PPL and/or CLooG may not yann@2122: build properly (yet), so you'll have to say 'N' here. yann@2122: yann@2122: config CC_GCC_USE_LTO yann@2122: bool yann@2122: prompt "Enable LTO" yann@2122: default y yann@2122: depends on CC_GCC_HAS_LTO yann@2122: select CC_GCC_USE_LIBELF yann@2122: help yann@2122: Enable the Link Time Optimisations. yann@2122: yann@2122: This will require the libelf companion library, and it yann@2122: wil be build automatically for you. yann@2122: js@2045: config CC_STATIC_LIBSTDCXX js@2045: bool js@2045: prompt "Link libstdc++ statically into the gcc binary" js@2045: default y js@2045: depends on CC_GCC_4_4_or_later js@2045: help js@2045: Newer gcc versions use the PPL library which is C++ code. Statically js@2045: linking libstdc++ increases the likeliness that the gcc binary will js@2045: run on machines other than the one which it was built on, without js@2045: having to worry about distributing the matching version of libstdc++ js@2045: along with it. js@2045: yann@2041: comment "Misc. obscure options." yann@2041: yann@2041: config CC_CXA_ATEXIT yann@2041: bool yann@2041: prompt "Use __cxa_atexit" yann@2041: default y yann@2041: depends on ! BARE_METAL yann@2041: help yann@2041: If you get the missing symbol "__cxa_atexit" when building C++ programs, yann@2041: you might want to try disabling this option. yann@2041: yann@2041: config CC_GCC_DISABLE_PCH yann@2041: bool yann@2041: prompt "Do not build PCH" yann@2041: default n yann@2041: help yann@2041: Say 'y' here to not use Pre-Compiled Headers in the resulting toolchain. yann@2041: at the expense of speed when compiling C++ code. yann@2041: yann@2041: For some configurations (most notably canadian?), PCH are broken, and yann@2041: need to be disabled. Please see: yann@2041: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40974 yann@2041: yann@2042: config CC_GCC_SJLJ_EXCEPTIONS yann@2042: tristate yann@2041: prompt "Use sjlj for exceptions" yann@2054: depends on ! BARE_METAL yann@2042: default m yann@2041: help yann@2042: 'sjlj' is short for setjmp/longjmp. yann@2041: yann@2042: On some architectures, stack unwinding during exception handling yann@2042: works perfectly well without using sjlj, while on some others, yann@2042: use of sjlj is required for proper stack unwinding. yann@2041: yann@2042: Option | sjlj use | Associated ./configure switch yann@2042: ---------+--------------------+-------------------------------- yann@2042: Y | forcibly used | --enable-sjlj-exceptions yann@2042: M | auto | (none, ./configure decides) yann@2042: N | forcibly not used | --disable-sjlj-exceptions yann@2041: yann@2042: It should be safe to say 'M' or 'N'. yann@2042: yann@2042: It can happen that ./configure is wrong in some cases. Known yann@2042: case is for ARM big endian, where you should say 'N'. yann@2043: yann@2043: config CC_GCC_LIBMUDFLAP yann@2043: bool yann@2043: prompt "Compile libmudflap" yann@2043: default n yann@2043: help yann@2043: libmudflap is a pointer-use checking tool, which can detect yann@2043: various mis-usages of pointers in C and (to some extents) C++. yann@2043: yann@2043: You should say 'N' here, as libmduflap generates instrumented yann@2043: code (thus it is a bit bigger and a bit slower) and requires yann@2043: re-compilation and re-link, while it exists better run-time yann@2043: alternatives (eg. DUMA, dmalloc...) that need neither re- yann@2043: compilation nor re-link.