automake 生成的Makefile之 install过程

本文详细解析automake生成的Makefile在执行`make install`时如何进行安装操作,特别是`install-recursive`规则的执行流程。内容包括`install-exec-am`和`install-data-am`如何处理`DATA`, `HEADERS`等文件的安装。" 73411782,6874777,Java实现GPRS数据接收,"['Java', '网络编程', 'GPRS通信', '系统管理', '服务器']
摘要由CSDN通过智能技术生成


automake生成的Makefile当你执行make install 的时候我们知道会找install规则,那么具体是怎么安装的呢? 看下面

install: install-recursive
很显然 install-recursive是依赖install-recursive的,那么install-recursive规则是什么呢?

RECURSIVE_TARGETS= ...  install-recursive ...
找了下install-recursive是放在变量RECURSIVE_TARGETS中,当然这变量里面还放了许多其他目标,但我们现在只关心install-recursive,那么变量RECURSIVE_TARGETS是怎么使用的呢?

am__recursive_targets= $(RECURSIVE_TARGETS)
我们看到将变量RECURSIVE_TARGETS中的值放入到了am__recursive_targets中,好吧我们在找下am__recursive_targets变量.我们在Makefile中发现了如下规则,很显然我们要找的install-recursive也在这里面了,看着是shell语法,我们的install-recursive呢,分析下这个shell

$(am__recursive_targets):
        @fail=; \                            #定义了一个变量
        if $(am__make_keepgoing); then \
          failcom='fail=yes'; \
        else \
          failcom='exit 1'; \
        fi; \
        dot_seen=no; \
        target=`echo $@
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值