在分析编译器配置总控代码之前,我们先来分析auto/cc/name脚本,此脚本主要是完成编译器名称的设置,从而在后续脚本中可以根据编译器名称选择对应的编译器。
参看:http://blog.csdn.net/poechant/article/details/7355325
1. auto/cc/name脚本
在进行具体的脚本分析之前,我们这里贴出其源代码:
此脚本主要是根据$CC
的名称设置NGX_CC_NAME
的值。如下我们队该脚本进行简单分析。
2. C编译器特征判断
脚本代码如下:
Windows 平台的编译器叫做MSVC,其他平台的都统称为C Compiler。上述脚本首先判断是否为win32平台,如果不是的话,则判断其是否具有c编译器特征。根据前面我们队auto/feature脚本的介绍,其会生成如下内容的autotest.c文件:
编译并运行此脚本,ngx_found值会被设置为yes。
假如ngx_found值为no的话,则会打印出:
./auto/cc/name: error: C compiler $CC is not found
然后退出整个脚本的运行。
3. 设置NGX_CC_NAME
脚本内容如下:
上述脚本设置NGX_CC_NAME
,并且打印出对应的信息。