我有一個makefile文件,裏面列出了許多要構建的靜態庫,每個文件夾都有自己的子文件夾。我在頂層Makefile中定義它們是這樣的:makefile可以使用一行構建多個目標嗎?
LIBS= \
lib1 \
lib2 \
etc...
我試圖讓makefile文件到CD到使用這些名稱每個子文件夾(如LIB/LIB1,LIB/LIB2)和建每庫makefiles找到。我可以用一個目標來做到這一點,而不是爲每個圖書館單獨制定目標嗎?
事情是這樣的:
libs : $(LIBS)
$(LIBS) :
if [ -f /lib/${@}/makefile ]; then cd /lib/${@}; make; fi
我不知道$ @是正確的變量在這裏,因爲只有第一個庫建立。
非常感謝!
你是否被迫使用手工makefiles?如果不是,則查看自動構建系統,例如autotools –