Makefile 学习记录一

Posted suozhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Makefile 学习记录一相关的知识,希望对你有一定的参考价值。

2019年2月5日10:18:13  大年初一 

  整理 uboot-2018-11 源代码 根目录下的 Makefile 。

ifeq ("$(origin O)", "command line")
  KBUILD_OUTPUT := $(O)
endif
 
# ifeq , 关键字,判断来年各个参数是否相等
# origin 是一个函数,告诉你这个变量是从哪里来的,返回值有7个
    # 返回值为"undefine"时,这个变量没有被定义过
    # 返回值为“command line”时,这个变量是被命令行定义的。
    # 返回值为“environment”时,这个变量是定义为环境变量。
    # 返回值为“file”时,这个变量是定义在Makefile中。
    # 返回值为“default”时,变量是默认定义的。
    # 返回值为“override”时,被override指示符重新定义
    # 返回值为“automatic”时,是一个命令运行中自动化变量
# 命令行中带有变量O 则函数返回command line,再次进行ifeq判断
# 变量O的值,在命令行中已经给出了即:"make O=dir/to/store/output/files/"
# 相等,则直接给变量 KBUILD_OUTPUT 赋值 变量 O的值
# 则赋值 KBUILD_OUTPUT 为命令行给出的值,即例子中dir/to/store/output/files/

以上是关于Makefile 学习记录一的主要内容,如果未能解决你的问题,请参考以下文章

makefile 学习记录简单的两个C文件编译

makefile 学习记录简单的两个C文件编译

makefile 学习记录简单的两个C文件编译

Makefile的理论学习记录

Makefile的理论和实践的学习记录

Makefile的理论和实践的学习记录