====== Abhängigkeiten formulieren ====== Möchte man Abhängigkeiten definieren, so werden die Abhängigkeiten hinter den Namen des Ziels beschrieben. ## ## Spaghetti kochen für Make-Anfänger ############################################ all: eat buyspaghetti: @echo "Spaghetti kaufen"; spaghetti: buyspaghetti pot @echo "Spaghetti in Topf füllen"; pot: @echo "Topf nehmen"; water: pot @echo "Wasser in Topf füllen"; salt: pot @echo "Salz in Topf füllen"; cook: water salt spaghetti @echo "Nudeln kochen."; plate: @echo "Teller nehmen"; dish: cook plate @echo "Essen ist fertig!" eat: dish @echo "esse..."; Die Ziele 'water', 'salt' und 'spaghetti' benötigen das Ziel 'pot'. Trotzdem wird nur ein Topf genommen, da das Ziel einmalig erzeugt wurde und dann bis zum nächsten Aufruf aktuell bleibt. Das Makefile wird komplett geladen und dann erst ausgeführt. Das bedeutet, dass man auch Ziele als Abhängigkeit nennen kann, die man erst später definiert. Das Ziel 'all' ist oftmals das Default-Target, also das erste definierte Ziel, und sorgt so dafür, dass leicht erkennbar ist, wo das Skript startet. Hier die Ausgabe des Skripts: Ambassador:make xin$ make eat Topf nehmen Wasser in Topf füllen Salz in Topf füllen Spaghetti kaufen Spaghetti in Topf füllen Nudeln kochen. Teller nehmen Essen ist fertig! esse... Ambassador:make xin$