makefile中的函数定义


 
Java代码   收藏代码
  1. build-userimage-ext2-target的定义  
Java代码   收藏代码
  1. # $(1): src directory  
  2. # $(2): output file  
  3. # $(3): label (if any)  
  4. # $(4): if true, add journal  
  5. define build-userimage-ext2-target  
  6.         @mkdir -p $(dir $(2))     //不显示命令本身,只显示执行结果  
  7.         $(hide) num_blocks=`du -sk $(1) | tail -n1 | awk '{print $$1;}'`;\       // tail -n1 的意思是读取最后一行的输出  
  8.         if [ $$num_blocks -lt 20480 ]; then extra_blocks=3072; \  
  9.         else extra_blocks=20480; fi ; \  
  10.         num_blocks=`expr $$num_blocks + $$extra_blocks` ; \          // expr 是四则运算的命令  
  11.         num_inodes=`find $(1) | wc -l` ; num_inodes=`expr $$num_inodes + 500`; \  
  12.         if [ -n "$(filter system.img userdata.img,$(notdir $(2)))" ]; then android_image="-a"else android_image="-U"; fi; \  
  13.         $(MKEXT2IMG) $$android_image -d $(1) -b $$num_blocks -N $$num_inodes -m 0 $(2)  
  14.         $(if $(strip $(3)),\  
  15.                 $(hide) $(TUNE2FS) -L $(strip $(3)) $(2))  
  16.         $(if $(strip $(4)),\  
  17.                 $(hide) $(TUNE2FS) -j $(2))  
  18.         $(TUNE2FS) -C 1 $(2)  
  19.         $(E2FSCK) -fy $(2) ; [ $$? -lt 4 ]  
  20. endef  
 
Java代码   收藏代码
  1. build-userimage-ext2-target的调用:  
include external/genext2fs/Config.mk


ifeq ($(TARGET_SYSTEMIMAGES_USE_EXT3),true
)
## generate an ext3 image
# $(1): output file
define build-radioimage-target
    @echo "Target radio fs image: $(1)"
    $(call build-userimage-ext2-target,$(1),$(2),radio,journal)

endef

else
 # TARGET_SYSTEMIMAGES_USE_EXT3 != true

$(error Radio does not support yaffs!)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值