10
私はこれがあります。GNU Make:リストに参加し、区切り記号で区切るには?
FOO = foo1 foo2 ... fooN
と、これらすべての文字列を結合して、例えば、colongでそれを分離取得したい:
外部UNIXを使用せずに、作りGNUでこれを行うにはどのようにfoo1:foo2:foo3:...:fooN
をツール?
私はこれがあります。GNU Make:リストに参加し、区切り記号で区切るには?
FOO = foo1 foo2 ... fooN
と、これらすべての文字列を結合して、例えば、colongでそれを分離取得したい:
外部UNIXを使用せずに、作りGNUでこれを行うにはどのようにfoo1:foo2:foo3:...:fooN
をツール?
以下のコードを参照してください。
# A literal space.
space :=
space +=
# Joins elements of the list in arg 2 with the given separator.
# 1. Element separator.
# 2. The list.
join-with = $(subst $(space),$1,$(strip $2))
使用法:
FOO = foo1 foo2 ... fooN
COLON_SEPARATED_FOO := $(call join-with,:,$(FOO))
あなたは、単にコロンとスペースを置き換えることができます。
EMPTY :=
SPACE := $(EMPTY) $(EMPTY)
FOO = foo1 foo2 ... fooN
FOO_LIST = $(subst $(SPACE),:,$(FOO))
FOO_LIST
はfoo1:foo2:...:fooN
です。
なぜ 'FOO_LIST = $(subst $(SPACE)、:, $(FOO))'だけではないのですか? – Beta
@Beta良い点。修正されました。 –