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

Message ID 20180131174249.257933-2-bruce.richardson@intel.com
State Superseded, archived
Delegated to: Bruce Richardson
Headers show

Checks

Context Check Description
ci/Intel-compilation success Compilation OK
ci/checkpatch success coding style OK

Commit Message

Bruce Richardson Jan. 31, 2018, 5:42 p.m.
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@intel.com>
---
 lib/librte_eal/bsdapp/BSDmakefile.meson | 1 +
 lib/librte_eal/meson.build              | 1 -
 2 files changed, 1 insertion(+), 1 deletion(-)

Patch

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