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.

Reply via email to