config CC_GCC_ENABLE_TARGET_OPTSPACE bool 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. comment "Misc. obscure options." config CC_CXA_ATEXIT bool prompt "Use __cxa_atexit" default y depends on ! BARE_METAL help If you get the missing symbol "__cxa_atexit" when building C++ programs, you might want to try disabling this option. config CC_GCC_DISABLE_PCH bool prompt "Do not build PCH" default n 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" 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_LIBMUDFLAP bool prompt "Compile libmudflap" default n 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.