Hi, Bruce. That's interesting approach. I tried this on my system and it works. I also tried to do some modifications to add conditional support for libnuma in rte_eal to build with my patches applied. It looks promising. That is what I've got:
------------------------------------------------------------------------- --- a/lib/librte_eal/linuxapp/eal/meson.build +++ b/lib/librte_eal/linuxapp/eal/meson.build @@ -46,8 +46,12 @@ if dpdk_conf.has('LIB_LIBRTE_EAL_XEN_DOM') sources += ['eal_xen_memory.c'] endif +cc = meson.get_compiler('c') +libnuma = cc.find_library('numa', required: false) +dpdk_conf.set10('RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES', libnuma.found()) + eal_lib = library('rte_eal', sources, - dependencies: dependency('threads'), + dependencies: [dependency('threads'), libnuma], include_directories : [global_inc, eal_inc, local_inc], c_args: '-D_GNU_SOURCE', link_args: '-ldl', ------------------------------------------------------------------------- Result: Library numa found: YES and #define RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES 1 (NO and 0 respectively with wrong library) Build works. I didn't try to install the binaries. One found issue is that where is no 'meson' package in RHEL 7. I checked build using meson from git. Best regards, Ilya Maximets.