标签:style color io os ar sp 文件 on 代码
在configure
中运行完auto/options
脚本后,接着运行auto/init
脚本,其中所做的工作如下。
默认情况下是:
objs/Makefile
代码如下:
NGX_MAKEFILE=$NGX_OBJS/Makefile
默认情况下是:
objs/ngx_modules.c
代码如下:
NGX_MODULES_C=$NGX_OBJS/ngx_modules.c
默认情况下是:
objs/ngx_auto_headers.h
objs/ngx_auto_config.h
代码如下:
NGX_AUTO_HEADERS_H=$NGX_OBJS/ngx_auto_headers.h
NGX_AUTO_CONFIG_H=$NGX_OBJS/ngx_auto_config.h
默认情况下是:
objs/autotest
objs/autoconf.err
代码如下:
NGX_AUTOTEST=$NGX_OBJS/autotest
NGX_AUTOCONF_ERR=$NGX_OBJS/autoconf.err
默认情况下是:
objs/autoconf.err
objs/Makefile
代码如下:
# STUBs
NGX_ERR=$NGX_OBJS/autoconf.err
MAKEFILE=$NGX_OBJS/Makefile
代码如下:
NGX_PCH=
NGX_USE_PCH=
由于 Nginx 支持多种操作系统,比如 Mac OS、Linux、Solaris 等。不同的系统下的 Shell 也小有差别。所以在auto/init
脚本中有如下两个变量:
ngx_n
ngx_c
代码如下:
# check the echo‘s "-n" option and "\c" capability
if echo "test\c" | grep c >/dev/null; then
if echo -n test | grep n >/dev/null; then
ngx_n=
ngx_c=
else
ngx_n=-n
ngx_c=
fi
else
ngx_n=
ngx_c=‘\c‘
fi
还有两个 targets,default 执行 build,clean 执行rm -rf Makefile $NGX_OBJS
。
# create Makefile
cat << END > Makefile
default: build
clean:
rm -rf Makefile $NGX_OBJS
解剖Nginx·自动脚本篇(2)设置初始变量脚本 auto/init
标签:style color io os ar sp 文件 on 代码
原文地址:http://www.cnblogs.com/breg/p/4043681.html