現在、私は複数のターゲットルールを持つMakefileを持っています。ターゲットを記録し、そのターゲットセットで新しいMakeを呼び出します。現在のターゲットをMakefileに記録する
など。
$(LIST_OF_PRODUCTS) :
@echo Making [email protected]
@make build_product [email protected]
出力ディレクトリとバイナリは、この製品名を使用します。..
どのように私は新しいくださいインスタンスを起動せずに、現在、マルチターゲットルールで構築されたターゲットを記録していますか?
私が試してみました:
$(LIST_OF_PRODUCTS) : PRODUCT := [email protected]
$(LIST_OF_PRODUCTS) : build_product
@echo Making $(PRODUCT) Done.
をしかし、これは動作しません。そのだけで他の場所で私の問題をプッシュしかし
#
# Template for creating a target
define target-template
.PHONY : ${1}
${1} : TARGET_NAME:=${1}
${1} : check_target $$(OBJECTS)
endef
#
#Generate targets from template
$(foreach target,$(TARGET_LIST),$(eval $(call target-template,$(target))))
:
あなたはbuild_product' 'で達成したい内容に応じて、あなたはあなたがして呼び出すことができ、ルールのテンプレートのようなものを作成するために' define'を使用することができる可能性が'$(eval ...)'と '$(call ...) 'を組み合わせて使用します。 – eriktous