【发布时间】:2014-01-13 07:49:15
【问题描述】:
我开始分析 TI X-Loader,包括它的 makefile。我在顶部的 makefile 中找到了以下几行:
TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
和
ifeq (include/config.mk,$(wildcard include/config.mk))
...
关于第一行:我知道“$PWD”表示 PWD(工作目录)的值
我的问题:
为什么在这种特殊情况下使用双美元符号?
关于第二行:我试图了解比较的内容和原因。 我已经红了 GNU MAKE 手册通配符解释。我仍然缺少一些东西。
我的问题:
“$(通配符”)是干什么用的?
哪些 config.mk 文件是相互比较的?
为什么要比较它们? (这个问题更多是关于makefile结构)
提前感谢您的帮助。
马丁
【问题讨论】:
-
1.避免在同一个问题中发布多个查询。 2、
$$用于引用shell变量,$引用make变量。 3.wildcard这一行似乎是多余的。
标签: linux makefile embedded gnu