FIXME:TBD
Tabulka 65.1. Rychlý přehled proměnných v Makefile
proměnné | popis obsahu |
---|---|
$@ | cíl pravidla který se právě uskutečňuje |
$% | |
$< | první ze seznamu závislých souborů |
$? | závislé soubory které jsou novější než cíl |
$^ | všechny závislé soubory |
$+ | všechny závislé soubry v četně duplikací |
$* | obsahuje cíl bez přípony |
$@
Obsahuje cíl pravidla. Tedy ten ze souboru cílů který je právě uskutečňován, je-li v pravidle cílů více.V následující ukázce tedy obsahuje bar.c
.
foo.o: bar.c $(CC) -c $< -o $@
$%
PŘELOŽIT: The filename element of an archive member specification.
$<
Obsahuje první ze seznamu závislých (prerequisite) souborů. V následující ukázce tedy obsahuje rub.c
.
a.o: rub.c sat.c bond.h echo $<
$?
Seznam závislých (prerequisite) souborů, které jsou novější než cíl. Jednotlivá jména souborů jsou oddělena mezerou.
a.o: rub.c sat.c bond.h @echo $? @echo "\$$? = $?"
$
touch a.c sat.c$
make a.osat.c bond.h $? = sat.c bond.h
$^
Seznam všech závislých souborů. Jednotlivá jména jsou oddělena mezerou.
a.o: rub.c sat.c bond.h @echo "\$$^ = $^"
$
touch a.c sat.c$
make a.o$^ = rub.c sat.c bond.h
$+
$^
. Seznam všech závislých souborů, v četně duplikátů. V normálních situacích proměnné obsahují každý soubor jen jednou, i když jej přiřadíme vícekrát. V případě proměnné $^
jsou zdvojená jména souborů ponechána.$*
a
.pattern
…)