Bedingt Anhängen an eine variable innerhalb einer Makefile-target
Habe ich ein GNU Makefile, das sieht ein bisschen aus wie diese:
LIST = item1
.PHONY: targetMain targetA targetB preA preB
targetMain:
# DO all the work in here
echo $(LIST)
targetA: preA targetMain
targetB: preB targetMain
preA:
LIST += itemA
preB:
LIST += itemB
Die Idee ist, dass ich entweder machen targetA oder machen targetB. Beide eine sehr ähnliche Sache, aber eine andere Liste von Elementen. Das problem ist, dass die variable nicht bedingt angehängt, es ist immer angehängt, d.h. mein output ist immer "item1 itemA itemB".
Wie kann ich bedingt anfügen an eine variable?
Du musst angemeldet sein, um einen Kommentar abzugeben.
LIST
Variablen jetzt: eine für targetA und eine für targetB.target: VARIABLE = value
syntax ist wie target-spezifische Variablen zugeordnet sind. Welche der beidenLIST
Variablen erweitert wird, hängt davon ab, welche Ziel-Befehl ein Skript, das Sie in. Beachten Sie, dass, weil dieser, target-spezifische Variablen können mit nur aus verwiesen werden innerhalb der Kommando-Skript (Sie kann nicht verwiesen werden auf die prerequesites Linie, auch).