asterisk1.8 Makefile分析 (2)

menuselect.makeopts分析

查找makefile,这个目录的依赖关系如下:

menuselect.makeopts: menuselect/menuselect    menuselect-tree    makeopts    build_tools/menuselect-deps $(GLOBAL_MAKEOPTS)    $(USER_MAKEOPTS)

下面我们逐个分析:

1) menuselect/menuselect

   查找makefile,这个目标的规则如下:

   menuselect/menuselect: menuselect/makeopts
                    +$(MAKE_MENUSELECT) menuselect

   menuselect/makeopts这个依赖不用管,在configure的时候就会生成。

  $(MAKE_MENUSELECT) 展开如下:

CC="$(BUILD_CC)" CXX="" LD="" AR="" RANLIB="" CFLAGS="" $(MAKE) -C menuselect CONFIGURE_SILENT="--silent"

   可以看到这条命令就是要进入menuselect目录下去执行makefile并生成menuselect。

2) menuselect-tree

    这个目标的生成,比较复杂,先不看了

3) makeopts不用管,这个在_all的依赖里已经分析过了。

4) build_tools/menuselect-deps,这个文件在configure的时候生成。在Makefile里就查不到。

5) $(GLOBAL_MAKEOPTS)和$(USER_MAKEOPTS)

   这两个目录展开后为:

    GLOBAL_MAKEOPTS=$(wildcard /etc/asterisk.makeopts)
    USER_MAKEOPTS=$(wildcard ~/.asterisk.makeopts)

     wildcard为makefile的关键字,是将后面的通配符展开的,但是后面没有通配符,不知道是什么意思。

    不过makefile里面有一个段话来解释这两个变量,大概意思是说,asterisk.makeopts文件是asterisk用menuselect生成的配置文件,如果我们的系统里有这个文件,以后用新版本的asterisk的时候就不需要再用menuselect重新设置了。第一个asterisk.makeopts是全局的,第二个.asterisk.makeopts是用户的。如果有第一个,就会覆盖第二个。

  


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值