strongswan -- STRONGSWAN_CONF是如何传到代码里的

  配置文件strongswan.conf是经过STRONGSWAN_CONF读取并加载的。html

  

  经过source insight加载了strongswan整个工程文件(只包括.c和.h文件),发现没有地方给STRONGSWAN_CONF赋值。3d

  

  而在charon进程加载时,STRONGSWAN_CONF是有值的,这个值是从哪里来的呢?htm

  搜索了strongswan全部代码,发现与STRONGSWAN_CONF有关的有以下几处:blog

  

  图中显示Makefile.am和Makefile.in中有STRONGSWAN_CONF相关的语句。进程

  Makefile.in中的语句以下图:字符串

  

  

        gcc的参数“-D”含义以下:get

                   -Dmacrogcc

                       以字符串“1”定义 MACRO 宏配置

                     至关于C语言中的#define macro file

 

                   -Dmacro=defn

                       以字符串“defn”定义 MACRO 宏 

                     至关于C语言中的#define macro defn

  其余参数介绍可参见:

                   https://www.cnblogs.com/zhangsir6/articles/2956798.html

    

  实际make的时候执行的是Makefile。打开Makefile能够看到,其中引用了Makefile.in和Makefile.am。

   

  如此一来便追踪到STRONGSWAN_CONF的源头。

注:

         打开strongswan的Makefile发现以下两句注释,能够看出Makefile.am、Makefile.in和Makefile相生相依的关系。

  

相关文章
相关标签/搜索