nginx源码浅析--编译前准备configure简介

来源:互联网 发布:智能电视直播软件2017 编辑:程序博客网 时间:2024/06/10 00:52

configure文件的作用及其产出

  • 生成obj、src等文件夹,用于存放编译中间文件
  • 生成Makefile文件
  • 记录特性检测日志autoconf.err
  • 生成宏定义头文件ngx_auto_config.h和ngx_auto_headers.h
  • 生成ngx_modules.c文件(含各模块extern声明、名字字符串、ngx_module_t数组ngx_modules

configure流程


configure入参处理(option、case、sed)
. auto/options

定义宏(ngx_modules.c等),生成简单Makefile
 . auto/init

定义宏(源文件、模块)
. auto/sources

检查操作系统(uname)

设置编译器相关参数,编译期特性检测(检测方法:生成相应的代码并执行)
. auto/cc/conf

设置操作系统宏、unix相关宏及特性检测、线程相关宏
. auto/os/conf
. auto/unix
. auto/threads

设置模块相关宏及文件ngx_modules.c(其中含有ngx_module_t数组)
. auto/modules

依赖库宏设置及特性检测(如openssl)
. auto/lib/conf

生成Makefile文件
. auto/make
. auto/lib/make
. auto/install