2013-01-13 91 views
1

在下面一行,

selected = $(firstword $(foreach R,$(REPS),$(wildcard $(R)/$(1)))) 

是什麼$(1)是什麼意思?

我試圖通過

$(info "dollar one is " $(1)) 

看到的$(1)的價值和它不顯示任何信息。這是否意味着它是一些參數。從某處傳遞,它被設置爲NULL或者它是通配符中使用的特殊變量?

回答

4

這個selected是一個表達的意思是由the call function使用。像這樣:

$(call selected,foo) 

Make將評估展開表達式,將「foo」分配給$(1)

在這種情況下,它看起來好像它可能意味着與使用通配符,像這樣:

SRCS := $(call selected,*.cc) 
0

我不是很確定如何$(1)在make文件正在被使用,但$(1)是第一參數在終端中傳遞,比如說如果輸入make target那麼target將被分配給$(1)