From e222b17f6824d065bb3c14e639ba20e8de98352a Mon Sep 17 00:00:00 2001 From: Bruce Richardson Date: Tue, 27 Oct 2020 17:38:36 +0000 Subject: [PATCH] devtools: allow custom set of examples in build test To test the installation process of DPDK using "ninja install" test-meson-builds.sh builds a subset of the examples using "make". To allow more flexibility for people testing, allow the set of examples chosen for this make test to be overridden using variable "DPDK_BUILD_TEST_EXAMPLES" in the environment. Since a number of example apps link against drivers directly even for shared builds, we need to ensure that LD_LIBRARY_PATH points to the main DPDK lib folder so any dependencies of those drivers can be found e.g. that the PCI/vdev bus driver .so is found. [All drivers are symlinked from drivers dir back to lib dir on install, so only one dir rather than two is needed in the path.] Signed-off-by: Bruce Richardson Acked-by: David Marchand Acked-by: Thomas Monjalon --- devtools/test-meson-builds.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh index af750b3f3a..3ce49368cf 100755 --- a/devtools/test-meson-builds.sh +++ b/devtools/test-meson-builds.sh @@ -264,10 +264,13 @@ if [ -z "$DPDK_ABI_REF_VERSION" ]; then fi pc_file=$(find $DESTDIR -name libdpdk.pc) export PKG_CONFIG_PATH=$(dirname $pc_file):$PKG_CONFIG_PATH +libdir=$(dirname $(find $DESTDIR -name librte_eal.so)) +export LD_LIBRARY_PATH=$libdir:$LD_LIBRARY_PATH +examples=${DPDK_BUILD_TEST_EXAMPLES:-"cmdline helloworld l2fwd l3fwd skeleton timer"} # if pkg-config defines the necessary flags, test building some examples if pkg-config --define-prefix libdpdk >/dev/null 2>&1; then export PKGCONF="pkg-config --define-prefix" - for example in cmdline helloworld l2fwd l3fwd skeleton timer; do + for example in $examples; do echo "## Building $example" $MAKE -C $DESTDIR/usr/local/share/dpdk/examples/$example \ clean shared static >&$veryverbose -- 2.20.1