0

実行される最初のターゲットでのみ 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
4

1 に答える 1