我在看u-boot-2012.04.01的Makefile,其中有这样一段: SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ else if [ -x /bin/bash ]; then echo /bin/bash; \ else echo sh; fi; fi) 其是确定,你所使用的shell。但其第一个判断 "$$BASH" 是否存在,我有点不明白。 根据shell manual, $$代表expands to the process ID of the shell. 我在shell中,echo $$BASH 显示13125BASH,那么在此处使用$$BASH的含义是什么?有什么特殊的用途吗? 还是我的理解有问题,望赐教 Makefile 中符号“$ ”有特殊的含义(表示变量或者函数的引用),在规则中需 要使用符号“$”的地方,需要书写两个连续的(“$$”)。 |
|