/arch/arm/tools下面有三个文件,Makefile gen-amch-types mach-types。其中mach-types存放的就是
板级信息,通过Makefile和 gen-amch-types文件,把这些板级信息重新生成一个文件
include/generated/mach-types.h。
接下来看分析生成的。看一个目录,从Makefile入手:
include/generated/mach-types.h: $(src)/gen-mach-types $(src)/mach-types
@echo ' Generating $@'
@mkdir -p $(dir $@)
$(Q)$(AWK) -f $^ > $@ || { rm -f $@; /bin/false; }
$@ 目标为 include/generated/mach-types.h
$^ 依赖为 当前目录下的gen-mach-types mach-types
$(Q)$(AWK) -f $^ > $@ || { rm -f $@; /bin/false}
||表示左边的命令未执行成功,则执行右边的命令,即删除这个文件,执行出错程序
这里产生mach-types.h就是通过$(Q)$(AWK) -f $^ > $@ 这个命令。
$(Q) 不知道什么意思,但不影响理解。有知道的请在下面留个言。
展开$(Q)$(AWK) -f $^ > $@
awk -f /arch/