ifeq
ステートメントが与えられた場合、これはどのように圧縮されて、文字列チェックが1つのifeq
ブロックで処理されるのでしょうか?メークファイルの文字列を複数のリテラルと照合する方法は?
OS:=$(shell uname -s)
ifeq ($(OS), Linux)
foo
endif
ifeq ($(OS), Darwin)
bar
endif
ifeq ($(OS), FreeBSD)
bar
endif
ifeq ($(OS), NetBSD)
bar
endif
私はsimilar Q&Aを調べましたが、この質問にどのように正確に当てはまるかはわかりません。
このような何か:それドキュメントはまだ非常にベータ版ですが、あなたはまた、the GNUmake table toolkitを使用することができ
ifeq ($(OS), Linux)
foo
endif
ifneq (,$(filter $(OS),Darwin FreeBSD NetBSD))
bar
endif
'ifneq'はひどく読みますが、これはそのやり方です。 – ideasman42