make test: support coverage for out-of-tree plugins
[vpp.git] / Makefile
index 8240e78..6a128fa 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -257,15 +257,18 @@ rebuild-release: wipe-release build-release
 
 export VPP_PYTHON_PREFIX=$(BR)/python
 
+libexpand = $(subst $(subst ,, ),:,$(foreach lib,$(1),$(BR)/install-$(2)-native/vpp/$(lib)/$(3)))
+
 define test
        $(if $(filter-out $(3),retest),make -C $(BR) PLATFORM=$(1) TAG=$(2) vpp-install,)
+       $(eval libs:=lib lib64)
        make -C test \
          TEST_DIR=$(WS_ROOT)/test \
          VPP_TEST_BUILD_DIR=$(BR)/build-$(2)-native \
          VPP_TEST_BIN=$(BR)/install-$(2)-native/vpp/bin/vpp \
-         VPP_TEST_PLUGIN_PATH=$(BR)/install-$(2)-native/vpp/lib64/vpp_plugins \
+         VPP_TEST_PLUGIN_PATH=$(call libexpand,$(libs),$(2),vpp_plugins) \
          VPP_TEST_INSTALL_PATH=$(BR)/install-$(2)-native/ \
-         LD_LIBRARY_PATH=$(BR)/install-$(2)-native/vpp/lib64/ \
+         LD_LIBRARY_PATH=$(call libexpand,$(libs),$(2),) \
          EXTENDED_TESTS=$(EXTENDED_TESTS) \
          PYTHON=$(PYTHON) \
          $(3)
@@ -325,12 +328,12 @@ define run
        @echo "WARNING: STARTUP_CONF not defined or file doesn't exist."
        @echo "         Running with minimal startup config: $(MINIMAL_STARTUP_CONF)\n"
        @cd $(STARTUP_DIR) && \
-         sudo $(2) $(1)/vpp/bin/vpp $(MINIMAL_STARTUP_CONF) plugin_path $(1)/vpp/lib64/vpp_plugins
+         sudo $(2) $(1)/vpp/bin/vpp $(MINIMAL_STARTUP_CONF) plugin_path $(wildcard $(1)/vpp/lib*/vpp_plugins)
 endef
 else
 define run
        @cd $(STARTUP_DIR) && \
-         sudo $(2) $(1)/vpp/bin/vpp $(shell cat $(STARTUP_CONF) | sed -e 's/#.*//') plugin_path $(1)/vpp/lib64/vpp_plugins
+         sudo $(2) $(1)/vpp/bin/vpp $(shell cat $(STARTUP_CONF) | sed -e 's/#.*//') plugin_path $(wildcard $(1)/vpp/lib*/vpp_plugins)
 endef
 endif