美文网首页
makefile-预定义变量

makefile-预定义变量

作者: qiuzy_666 | 来源:发表于2018-03-29 22:45 被阅读0次

预定义变量的使用

  • 自动变量
    • $@
      当前规则中出发命令被执行的目标
    • $^
      当前规则中的所有依赖
    • $<
      当前规则中的第一个依赖

自动变量使用示例:

all:first second third
    @echo "\$$@ => $@"
    @echo "$$^ => $^"
    @echo "$$< => $<"
image

注意:

1、"$"对于makefile有特殊含义
* 输出时需要加上一个"$"进行转义
2、"$@"对于Bash Shell有特殊含义
* 输出时需要加上"\"进行转义

  • 特殊变量
    • $(MAKE)
      当前make解释器的文件名
    • $(MAKECMDGOALS)
      命令行中指定的目标名(make的命令行参数)
    • $(MAKEFILE_LIST)
      • make所需要处理的makefile文件列表
      • 当前makefile的文件名总是位于列表的租后
      • 文件名之间以空格进行分隔

预定义变量示例1:

image

* $(MAKE_VERSION)
当前make解释器的版本
* $(CURDIR)
当前make解释器的工作目录
* $(>VARIABLES)
所有已经定义的变量名列表(预定义变量和自定义变量)

小结

* makefile提供了预定义变量供开发者使用
* 预定义变量的使用能够使得makefile的开发更高效
* 自动变量是makefile中最常见的元素
* 使用($.VARIABLES)能够获取所有的特殊变量

相关文章

  • makefile-预定义变量

    预定义变量的使用 自动变量$@当前规则中出发命令被执行的目标$^当前规则中的所有依赖$<当前规则中的第一个依赖 自...

  • ES6常变量关键字

    ES6之前如何定义变量 可以重复定义变量,会覆盖 会对变量进行预解析 ES6之后如何定义变量 不允许重定义变量 没...

  • ES6

    ES6 学习目录 1. let >1 定义变量的时候没有变量的预解释 >2 不能重复定义变量 > 3 ...

  • ES6

    定义变量 let const 和 var 的区别 var 会进行预解析let / const 不会进行预解析预解析...

  • 【接口工具ApiPost】环境、全局、mock、内置变量设置(4

    打开有默认环境和mock环境新建环境 环境变量定义(由预/后执行脚本定义生成)示例:预执行脚本中定义一个环境变量n...

  • js小知识点(预解析 引用 异常 严格模式)

    预解析:会预先解析一些(变量定义、函数会预解析);var a=12;只把var a提到作用域的顶部js会把变量的声...

  • JavaScript(1)预解析

    预解析只会发生在通过var定义的变量和function上。 一、原理 1. 定义:预解析:在当前作用域下,js运行...

  • 预解析

    预解析: 在代码中,首先会预先解析一些(变量定义、函数会预解析); var a=12; js只把var a提到作用...

  • 1-let和const

    块级作用域 1.let注意 没有预解析,不存在变量提升在代码块内,只要let定义变量,在使用之前,都是报错,先定义...

  • js变量和函数

    变量预解析 alert(a);只把变量a的声明提前,赋值不提前,所以弹出undefined,表示它的值未定义ale...

网友评论

      本文标题:makefile-预定义变量

      本文链接:https://www.haomeiwen.com/subject/ziovcftx.html