next up previous
Next: Spezielle Abhängigkeiten Up: Schreiben von Makefiles Previous: Vordefinierte Regeln

Kurzschreibweisen

Obwohl es bei der Definition der Regeln nicht angegeben wurde, kann auch als target mehr als eine Datei angegeben werden. Das ist sinnvoll, wenn mehrere Files von den gleichen dependents abhängig sind und sie auf die gleiche Weise erzeugt werden.

z.B:

OBJECTS = data.o main.o io.o

project1: $(OBJECTS)
        cc $(OBJECTS) -o project1
	
data.o main.o: data.h

io.o main.o: io.h

Auch wenn zwei Dateien von verschioedenen Dependents abhängig sind, sie aber auf die gleiche Art und Weise erzeugt werden müssen, kann dies in einer Kurzschreibweise formuliert werden.

Beispiel: foo ist abhaengig von foo.c und bar ist abhängig von bar.c. Beide Dateien werden auf die gleiche Weise erzeugt (mit einem einfachen Aufruf des C-Compilers):

foo bar: $$@.c
	cc $? -o $@

Das spezielle Macro $$@ enthält den vollständigen Namen des aktuellen Targets ($@) und ist nur in der Liste der Dependents gültig.



Mail to: Oliver Schönbrunner
Programmieren unter UNIX