build: replace phony target with .ok file

When VPP builds its external packages from source, it will download the
package, patch it, configure it, build and install it. For DPDK, it will
depend on rdma-core if mlx4/mlx5 PMD is enabled. So phony target
dpdk-config needs to have the prerequisites of rdma-core-install and
ipsec-mb-install(x86 only), which are both phony targets. This leads to
redundant behavior of recipes executing twice in dpdk-config.
Replace the phony target with hidden file *.install.ok to avoid that.

Type: improvement
Signed-off-by: Lijian Zhang <lijian.zhang@arm.com>
Signed-off-by: Jieqiang Wang <jieqiang.wang@arm.com>
Change-Id: Ibf3b766ab7a4ccfcbffe08f6cdb90da72ca1ce29
This commit is contained in:
Jieqiang Wang
2023-02-24 16:40:58 +08:00
committed by Damjan Marion
parent 79687d92fe
commit d69233f44e

View File

@ -102,7 +102,7 @@ endef
endif endif
ifneq ($(filter $1,$(VPP_SKIP_EXTERNAL)), $1) ifneq ($(filter $1,$(VPP_SKIP_EXTERNAL)), $1)
$(B)/.$1.config.ok: $(B)/.$1.patch.ok $(addsuffix -install,$($1_depends)) $(B)/.$1.config.ok: $(B)/.$1.patch.ok $(addprefix $(B)/.,$(addsuffix .install.ok,$($1_depends)))
$$(call h1,"configuring $1 $($1_version) - log: $$($1_config_log)") $$(call h1,"configuring $1 $($1_version) - log: $$($1_config_log)")
@mkdir -p $$($1_build_dir) @mkdir -p $$($1_build_dir)
$$(call $1_config_cmds) $$(call $1_config_cmds)