diff options
Diffstat (limited to 'config/meson.build')
-rw-r--r-- | config/meson.build | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/config/meson.build b/config/meson.build index 4d755323..0b710b79 100644 --- a/config/meson.build +++ b/config/meson.build @@ -9,12 +9,21 @@ else endif dpdk_conf.set('RTE_MACHINE', machine) machine_args = [] -machine_args += '-march=' + machine +# ppc64 does not support -march=native +if host_machine.cpu_family().startswith('ppc') and machine == 'native' + machine_args += '-mcpu=' + machine + machine_args += '-mtune=' + machine +else + machine_args += '-march=' + machine +endif toolchain = cc.get_id() dpdk_conf.set_quoted('RTE_TOOLCHAIN', toolchain) dpdk_conf.set('RTE_TOOLCHAIN_' + toolchain.to_upper(), 1) +add_project_link_arguments('-Wl,--no-as-needed', language: 'c') +dpdk_extra_ldflags += '-Wl,--no-as-needed' + # use pthreads add_project_link_arguments('-pthread', language: 'c') dpdk_extra_ldflags += '-pthread' @@ -84,6 +93,8 @@ if host_machine.cpu_family().startswith('x86') arch_subdir = 'x86' elif host_machine.cpu_family().startswith('arm') or host_machine.cpu_family().startswith('aarch') arch_subdir = 'arm' +elif host_machine.cpu_family().startswith('ppc') + arch_subdir = 'ppc_64' endif subdir(arch_subdir) dpdk_conf.set('RTE_COMPILE_TIME_CPUFLAGS', ','.join(compile_time_cpuflags)) @@ -92,3 +103,6 @@ dpdk_conf.set('RTE_COMPILE_TIME_CPUFLAGS', ','.join(compile_time_cpuflags)) dpdk_conf.set_quoted('RTE_EAL_PMD_PATH', eal_pmd_path) install_headers('rte_config.h', subdir: get_option('include_subdir_arch')) + +# enable VFIO only if it is linux OS +dpdk_conf.set('RTE_EAL_VFIO', host_machine.system() == 'linux') |