控制函數(Functions That Control Make)
error 錯誤控制
$(error <text ...>)
產生一個致命的錯誤,<text ...>是錯誤信息(錯誤信息中包含 makefile 的名字和 error 函數所在的行號)。
i2c_support =
ifndef i2c_support
$(error i2c is not define)
endif
print :
@echo i2c_support=$(i2c_support)
----------------------------------------
malihou@ubuntu:~$ make
1.mk:4: *** i2c is not define. Stop.
malihou@ubuntu:~$
warning 警告控制
$(warning <text ...>)
很像error函數,只是它並不會讓make退出,只是輸出一段警告信息,而make繼續執行。
info 顯示信息
$(info <text ...>)
SOME_VARIABLE := $(SOME_OTHER_VARIABLE)/$(ANOTHER_VARIABLE)
$(info SOME_VARIABLE = $(SOME_VARIABLE))
函數輸出的信息沒有 makefile 的名字和 info 函數所在的行號,也不產生致命錯誤