Previous: Filesystem, Up: Host Config


18.3 关于主机的其它杂项

FATAL_EXIT_CODE
一个C表达式,作为当编译器发生严重错误退出时,所返回的状态码。缺省值为系统提供的宏‘EXIT_FAILURE’,或者如果系统没有定义此宏时为‘1’。只在这些缺省值不正确的时候,才定义该宏。
SUCCESS_EXIT_CODE
一个C表达式,作为当编译器没有发生严重错误而退出时,所返回的状态码。(警告不属于严重错误。)缺省值为系统提供的宏‘EXIT_SUCCESS’,或者如果系统没有定义此宏时为‘0’。只在这些缺省值不正确的时候,才定义该宏。
USE_C_ALLOCA
定义该宏,如果GCC应该使用libiberty.a提供的C实现的alloca。这只影响编译器本身的一些部分的内存分配。并不改变代码生成。

当GCC通过其它编译器而不是它本身来构建时,C alloca总是被使用。这是因为大多其它实现都具有严重的bug。应该只在基于栈的alloca可能无法工作的系统上定义该宏。例如,如果系统在栈的大小上有一个小额限制,则GCC内建的alloca将无法可靠的工作。

COLLECT2_HOST_INITIALIZATION
如果定义,则为一个C语句(没有分号),当collect2被初始化时,执行主机相关的初始化。
GCC_DRIVER_HOST_INITIALIZATION
如果定义,则为一个C语句(没有分号),当编译驱动器被初始化时,执行主机相关的初始化。
HOST_LONG_LONG_FORMAT
如果定义,则为一个字符串,用于表示像printf这样的函数的long long类型参数。缺省值为ll
HOST_LONG_FORMAT
If defined, the string used to indicate an argument of type long to functions like printf. The default value is "l".
HOST_PTR_PRINTF
If defined, the string used to indicate an argument of type void * to functions like printf. The default value is "%p".

另外,如果configureauto-host.h中生成了任何不正确的宏定义,你可以在一个主机配置头文件中覆盖那个定义。如果你需要这么做,请首先看看是否可以去修补configure