X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=config%2Fmeson.build;h=4f6511773dc18f4f6ee97b73ec216dd091cf9ecc;hb=6c9457c27954f16d99f3798711eb253fbaf05fa3;hp=b0f8511c054ce0806dbeaad78499134e5d08bb41;hpb=a25a650be5f0c60ea69531741bd13521b183d502;p=dpdk.git diff --git a/config/meson.build b/config/meson.build index b0f8511c05..4f6511773d 100644 --- a/config/meson.build +++ b/config/meson.build @@ -1,40 +1,37 @@ -# BSD LICENSE -# -# Copyright(c) 2017 Intel Corporation. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# * Neither the name of Intel Corporation nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2017 Intel Corporation # set the machine type and cflags for it machine = get_option('machine') dpdk_conf.set('RTE_MACHINE', machine) add_project_arguments('-march=@0@'.format(machine), language: 'c') + +# use pthreads +add_project_link_arguments('-pthread', language: 'c') +dpdk_extra_ldflags += '-pthread' + # some libs depend on maths lib add_project_link_arguments('-lm', language: 'c') +dpdk_extra_ldflags += '-lm' + +# for linux link against dl, for bsd execinfo +if host_machine.system() == 'linux' + link_lib = 'dl' +else + link_lib = 'execinfo' +endif +add_project_link_arguments('-l' + link_lib, language: 'c') +dpdk_extra_ldflags += '-l' + link_lib + +# check for libraries used in multiple places in DPDK +has_libnuma = 0 +numa_dep = cc.find_library('numa', required: false) +if numa_dep.found() and cc.has_header('numaif.h') + dpdk_conf.set10('RTE_HAS_LIBNUMA', true) + has_libnuma = 1 + add_project_link_arguments('-lnuma', language: 'c') + dpdk_extra_ldflags += '-lnuma' +endif # add -include rte_config to cflags add_project_arguments('-include', 'rte_config.h', language: 'c') @@ -70,4 +67,4 @@ dpdk_conf.set('RTE_EAL_ALLOW_INV_SOCKET_ID', get_option('allow_invalid_socket_id # values which have defaults which may be overridden dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64) -install_headers('rte_config.h') +install_headers('rte_config.h', subdir: get_option('include_subdir_arch'))