uboot - 主Makefile分析【2】

该段makefile实现了静默编译功能

$(findstring s,$(MAKEFLAGS))解析
1 将s加入到MAKEFLAGS下
2 在命令行敲入make -s的时候 $(findstring s,$(MAKEFLAGS)) 这个值就不为空 条件就不成立会执行else分支 XECHO = :不打印内容
3 如果条件成立的话,会执行if分支XECHO = echo打印出makefile的内容

现在你在命令行下输入make -s进行编译uboot的话 就不会打印出makefile的消息如图

下面的makefile实现的功能是单独输出文件夹编译 就是说将所有的.o文件输出到用户指定的一个文件夹下,而不是在源码目录下生产对应的.o
这样做的好处:1避免污染源码目录 2管理方便(比如你有多个层次的产品时,高中低等,管理起来就很方便。)
默认的编译方式是原地编译 就是在对应的源码文件夹下生产对应的.o文件 直接make即可
要使用这种单独输出文件夹编译的方法有两种 (在README文件下有说明)
1. Add O= to the make command line invocations:
        make O=/tmp/build distclean
       
make O=/tmp/build NAME_config
        make O=/tmp/build all

2. Set environment variable BUILD_DIR to point to the desired location:
        export BUILD_DIR=/tmp/build
       
make distclean
        make NAME_config
        make all
一下到###之前的代码都是在实现这个功能 具体怎么实现的对于我们来说并不需要管 我们知道有这个功能和在那个地方实现即可



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值