実行される最初のターゲットでのみ make プロセスが条件付きでエコーするようにしたい 次の makefile では、'a'、'b'、または 'goal' のみを出力する必要があります
現在、L は変更されていないため、次のように出力されます実行される任意のターゲット。
外部の一時ファイルとスクリプトを使用して実行しましたが、外部ファイル/スクリプトなしでそれが可能かどうかを知りたいですか?
L=1
goal: a b
ifeq ($(L),1)
@echo goal
@L=0
endif
@echo done > goal
a:
ifeq ($(L),1)
@echo a
@L=0
endif
@echo done > a
b:
ifeq ($(L),1)
@echo b
@L=0
endif
@echo done > b