[dpdk-dev] [PATCH 1/6] eal/bsdapp: fix building kernel modules

Bruce Richardson bruce.richardson at intel.com
Wed Jan 31 18:42:44 CET 2018


The kernel module source file directory passed via VPATH was wrong,
which caused the source files to be not found via make. Rather than
explicitly passing VPATH, make use of the fact that the full path
to the source files is passed by meson, so split that into directory
part - to be used as VPATH - and file part - to be used as the source
filename.

Fixes: 610beca42ea4 ("build: remove library special cases")

Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
---
 lib/librte_eal/bsdapp/BSDmakefile.meson | 1 +
 lib/librte_eal/meson.build              | 1 -
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_eal/bsdapp/BSDmakefile.meson b/lib/librte_eal/bsdapp/BSDmakefile.meson
index 2f16ac05b..42f5b2b9d 100644
--- a/lib/librte_eal/bsdapp/BSDmakefile.meson
+++ b/lib/librte_eal/bsdapp/BSDmakefile.meson
@@ -36,6 +36,7 @@
 # source file is passed via KMOD_SRC as full path, we only use final
 # component of it, as VPATH is used to find actual file, so as to
 # have the .o files placed in the build, not source directory
+VPATH = ${KMOD_SRC:H}
 SRCS = ${KMOD_SRC:T} device_if.h bus_if.h pci_if.h
 CFLAGS += $(KMOD_CFLAGS)
 
diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build
index 6fb2ef17f..d9ba38533 100644
--- a/lib/librte_eal/meson.build
+++ b/lib/librte_eal/meson.build
@@ -36,7 +36,6 @@ elif host_machine.system() == 'freebsd'
 			command: ['make', '-f', '@INPUT0@',
 				'KMOD_SRC=@INPUT1@',
 				'KMOD=' + k,
-				'VPATH=' + join_paths(meson.current_source_dir(), k),
 				'KMOD_CFLAGS=' + ' '.join(kmod_cflags)],
 			build_by_default: get_option('enable_kmods'))
 	endforeach
-- 
2.14.1



More information about the dev mailing list