origin
函数的作用是告诉你变量是哪里来的,其出生状况如何,他并不改变变量。

函数语法:
$(origin )
为变量的名字,而不是引用,所以一般没有"$"字符在前。

origin 函数通过返回值来告诉你 的出生情况。下面用实例说明:

1. 当从来未定义过该变量时,origin 函数返回 "undefined" 。
如下面的 Makefile 代码:
all:
@echo $(origin V)

运行输出:
$ make
undefined

2. 如果该变量为环境变量,那么返回 "enviroment" 。
如下面的 Makefile 代码:
all:
@echo $(origin USER)

运行输出:
$ make
environment
其中 USER 这个变量为系统定义的当前用户,使用 env 命令可以看到。

3.如果变量是个默认定义,那么返回 "default"。
如下面的 Makefile 代码:
all:
@echo $(origin CC)

运行输出:
$ make
default

4. 如果一个变量被定义在 Makefile 文件中,那么返回 "file" 。
如下面的 Makefile 代码:
V := 1
all:
@echo $(origin V)

运行输出:
$ make
file

5. 如果变量来自命令行,那么返回 "command line" 。
如下面的 Makefile 代码:
all:
@echo $(origin MyVar)

运行方法:
$ make MyVar="Are you ok?"
command line

6. 如果变量被 override 被重新定义过,那么返回 "override"。
如下面的 Makefile 代码:
override SHELL = /bin/sh
all:
@echo $(origin SHELL)

运行输出:
$ make
override

上面,SHELL 原本是个环境变量,但在 Makefile 里被 override 指示符重定义过。

7. 如果变量是自动化变量(如 @,@,< 等),那么返回 "automatic" 。
如下面的 Makefile 代码:
all:
@echo $(origin @)

运行输出:
$ make
automatic

Makefile之origin函数相关推荐

  1. makefile的origin函数

    origin 函数的作用是告诉你变量是哪里来的,其出生状况如何,他并不改变变量.其语法是: $(origin <variable>) 上面,<variable> 为变量的名字, ...

  2. Makefile的origin 函数

    转自:http://blog.chinaunix.net/uid-22028680-id-3054167.html origin 函数的作用是告诉你变量是哪里来的,其出生状况如何,他并不改变变量.其语 ...

  3. Makefile origin 函数

    origin 函数的作用是告诉你变量是哪里来的,其出生状况如何,他并不改变变量.其语法是: $(origin ) 上面, 为变量的名字,而不是引用,所以一般没有 $ 字符在前.origin 函数通过返 ...

  4. Makefile十之origin函数

    origin 函数不像其它的函数,他并不操作变量的值,他只是告诉你你的这个变量是哪里来的?其语法是: $(origin <variable>) 注意,<variable>是变量 ...

  5. uboot主Makefile中的origin函数

    ifdef O ifeq ("$(origin O)", "command line")    BUILD_DIR := $(O)    endif    en ...

  6. makefile 初探之《shell 函数和origin 函数》

    shell 函数 shell 函数也不像其它的函数.顾名思义,它的参数应该就是操作系统 Shell 的命令.它和反引号"`"是相同的功能.这就是说,shell 函数把执行操作系统命 ...

  7. #跟我一起写 Makefile# origin函数shell函数

    目录 origin函数 shell函数 origin函数 origin函数不像其它的函数,他并不操作变量的值,他只是告诉你你的这个变量是哪里来的?其语法是: $(origin <variable ...

  8. makefile详解 函数 foreach if call origin shell

       makefile详解 函数 foreach if call origin shell 控制make函数 四.foreach 函数 foreach函数和别的函数非常的不一样.因为这个函数是用来做循 ...

  9. Linux makefile教程之函数七[转]

    使用函数 ---- 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能.make所支持的函数也不算很多,不过已经足够我们的操作了.函数调用后,函数的返回值可以当做 ...

  10. Uboot Makefile 中 $(origin variable)详解

    在阅读Uboot中的Makefile时,发现下面的代码: ifdef O                 ifeq ("$(origin O)", "command li ...

最新文章

  1. mac svn的替代品CornerStone
  2. solr 英文模拟mysql like查询xml_Solr之精确、匹配、排序、模糊查询-yellowcong
  3. Train Wreck 模拟-建树-优先队列
  4. C# 委托:把方法组合到一个数组中使用
  5. rest spring_Spring REST:异常处理卷。 2
  6. [GitHub]一个简单的网络驱动
  7. 无线WIFI短信认证解决方案
  8. 怎样用ipad使用python_如何用iPad运行Python代码?
  9. opencv 之 颜色通道提取
  10. 服务器有什么类型?应用功能是什么
  11. 计算机30首音乐怎么开,qq每日精选_qq音乐每日精选30首在哪找
  12. 离散数学(8)——函数
  13. 猫哥教你写爬虫 000--开篇
  14. vue3实现吸顶效果
  15. 程序员之路:Linux目录处理命令_彭世瑜_新浪博客
  16. Android中如何使用GridView
  17. 电脑C盘无缘无故就占满了
  18. 【CCF】NOIP2008初赛试题下载
  19. 数据库学生,课程实体联系(E-R)图
  20. java课程设计指导记录表_JAVA课程设计指导书ofr2012级.doc

热门文章

  1. 攻克银联QPBOC L2认证的最后两个不过的案例(POS与卡片的数据交互分析)
  2. java如何设置直线的宽度_设置线条的宽度lineWidth
  3. 如何成长为硬件工程师
  4. 关于在word中安装Mathtype
  5. 从苹果封杀Epic与特斯拉硬刚拼多多看新时代的渠道产品战
  6. 充电头PD协议和QC协议的理解
  7. can总线短距离不用双绞线_CAN总线抗干扰的6条“军规”
  8. 本地运行Flink-DIMAPP出现问题
  9. python爬取百度图片的思路与代码(最后附上了代码)
  10. 虚拟机搭建Harbor安装和简单使用