我的項目中有兩個目標,我們稱它們爲client.c和server.c。在包含的Makefiles中獲取目標特定變量
如果我建立了客戶端,我想設置一個變量,應用是:
APPS + = client_app
如果我建的服務器,我像組d這個變量是:
APPS + = server_app
這APPS變量是在一個包括米,用來akefile(Makefile.include),它檢查APPS是否已定義,然後在已設置的情況下解析它。
ifdef APPS
blah blah blah
endif
目前我試圖做到這一點是這樣的...
all: client server
client: APPS += client_app
client: client.$(TARGET)
@echo $(APPS)
server: APPS += server_app
server: server.$(TARGET)
@echo $(APPS)
include ../Makefile.include
...這既建立在客戶端或服務器時建立的目標和回聲出的應用程序。然而,Makefile.include從來沒有看到APPS被設置。我假設這是一個具有目標特定變量的怪癖。
我該如何去確保我包含的Makefile也能看到這個變量?
起初,我雖然第二次有事情做吧。你真的瞭解你的makefile。 +1我簡單地使用MAKECMDGOALS是最簡單的。 – 2501
謝謝!我會試試這個! – mbadd
抱歉,花了我很長時間才得以解決這個問題。奇蹟般有效。謝謝! – mbadd