make マクロの初期値は、make のコマンド行オプションで置換できます。たとえば、次のようにします。
FFLAGS=–u OBJ = pattern.o computepts.o startupcore.o pattern: $(OBJ) f95 $(FFLAGS) $(OBJ) -lcore95 -lcore -lsunwindow \ -lpixrect -o pattern pattern.o: pattern.f commonblock f95 $(FFLAGS) -c pattern.f computepts.o: f95 $(FFLAGS) -c computepts.f |
この状態で、引数なしの make コマンドを実行すると、前述の FFLAGS の値が使用されます。しかし、次のようなコマンド行を使用すると、この値を置換できます。
demo% make "FFLAGS=–u -O" |
make コマンド行上の FFLAGS マクロの定義は、メイクファイルの初期値を無効にし、-O フラグと -u フラグを f95 に渡します。また、"FFLAGS=" をコマンド行上で使用すると、マクロに NULL 文字列を指定したことになり、マクロの影響を無効にできます。