MKCONFIG := $(SRCTREE)/mkconfigsmdk2410_config  :   unconfig@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0

@$(MKCONFIG)   @表示在执行命令时不输出命令本身(不回显),只输出命令执行的结果
                                $(MKCONFIG)表示(MKCONFIG) 这个变量的值mkconfig
$(@:_config=)   这里用到了makefile的变量替换规则,$(VAR:A=B)表示替换变量$(VAR)中的A为B
                                即把$@中的_config替换为空变成smdk2410,$@ 目标文件名称(这里就是smdk241_config),$^ 所有的依赖文件,$< 第一个依赖文件。

:= ,=,?=的区别
:=不递归赋值
= 递归赋值
?=默认值   
“:=” 的意思是,它右边赋得值如果是变量,只能使用在这条语句之前定义好的,而不能使用本条语句之后定义的变量;
于此对应的是“=”,当它的右边赋值是变量时,这个变量的定义在本条语句之前或之后都可以;
而“?=”是指,该符号左边的变量,如果在本条语句之前没有定义过,则执行本语句,如果已经定义,那么本语句什么都不做

$0 $1 $2 ……$n 表示命令行的参数,$0是命令本身,$1是第一个参数,$n是第n个参数

makefile中的@ $ :相关推荐

  1. makefile 中 =, :=, ?=, +=的区别

    在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?我们来做个简单的实验 新建一个Makefile,内容为: ifdef DEFINE_VRE     VRE ...

  2. .PHONY makefile中的伪目标

    拿clean举例,如果make完成后,自己另外定义一个名叫clean的文件,再执行make clean时,将不会执行rm命令. 为了避免出现这个问题,需要.PHONY: clean ========= ...

  3. Makefile中指示符“include”、“-include”和“sinclude”的区别

    指示符"include"."-include"和"sinclude" 如果指示符"include"指定的文件不是以斜线开 ...

  4. Makefile中关于shell 语句使用的注意事项

    在Makefile中每一个shell语句相当于开启了一个bash进程,去执行这个语句,所以要使用判断和循环的时候,得保证他们执行的空间在一个bash进程当中,所以就应该添加 ";\ &quo ...

  5. linux Makefile 中使用 shell命令

    在makefile中要使用shell 命令必须加shell 例如 $(shell pwd) ,不加的话是空值,例如下例中的M就是空值 这个你写法如下:直接通过make 命令就可以运行下面的makefi ...

  6. Makefile中常用的函数

     常用函数调用 语法: $(<function> <arguments>)或 ${<function><arguments>} <functi ...

  7. Makefile 中:= ?= += =的区别

    from :http://www.cnblogs.com/wanqieddy/archive/2011/09/21/2184257.html Makefile 中:= ?= += =的区别 在Make ...

  8. Makefile中的变量和shell变量

    我们在写makefile时 多多少少会用到shell脚本, 对于变量的在shell中的使用有一些要注意的细节.让我们从一个简单的makefile来看看. 注意makefile中一定要有一个目标,且一定 ...

  9. makefile中的include *******

    对于makefile中的include ***,***指的是包含的文件,当执行makefile时,先执行include ***这句,加载包含的文件(夹),如果不存在则会报错! 如果在include前面 ...

  10. makefile中变量有哪些?

    make一些参数选项: -p 选项,可以打印出make过程中的数据库, 下面研究一下内置的变量和规则. -n 选项, 只运行,不执行, -d 选项,相当于–debug=a,b(basic),v(ver ...

最新文章

  1. 阿里云服务器怎么去掉tomcat的8080端口
  2. Qt Creator使用Clang工具
  3. LeetCode - 121. 买卖股票的最佳时机
  4. 腾讯云10亿扶持小程序:3元套餐可能免费
  5. ubuntu 14 安装XML::Simple 模块
  6. java 的对象类用_java基础(第零篇)对象与类
  7. linux下安装libsvm_在ubuntu下的Matlab中使用libsvm
  8. Kotlin的继承(二)
  9. C++之=deleted
  10. Rust: Lifetime小心要你命!
  11. RHEL6 下搭建 nginx + uwsgi + cgi 平台
  12. 深入浅出理解 Java回调机制(异步)
  13. javaCRC8计算的坑
  14. 使用人工智能加快海底数据处理-从粗略过滤到精细智能数据筛选
  15. Java的内心世界和外部世界协调的统一
  16. Neon Love(霓虹爱)
  17. SUCTF_2019部分题解复现
  18. ie input兼容 vue_IE浏览器兼容问题(基于vue)
  19. 芯片对蓝牙耳机影响有多大?南卡N2s发布,搭载高通3040芯片
  20. 从方法到实践,银行如何搭建用户体验管理体系?

热门文章

  1. Windows 蠕虫首次现身 Mac 电脑:伪装成 Adobe Flash 软件
  2. 12C -- ORA-28040
  3. [ROBOT] python library 如何能获取到ROBOT框架里面的全局变量,例如${OUTPUT DIR}等
  4. Android——SQLite实现面向对象CRUD
  5. Jquery 单击_双击_鼠标经过_鼠标离开_背景样式变化
  6. 人人都是 DBA(X)资源信息收集脚本汇编
  7. ASP.NET开发:在用户控件中添加属性
  8. manjaro21 linux安装vscode
  9. nginx ngx_http_core_module 模块中文文档
  10. spark宽依赖和窄依赖