mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-09 07:51:59 -09:00
examples/vm_power_manager/meson.build in DPDK detects the presence of
libvirt:
opt_dep = cc.find_library('virt', required : false)
and then builds some examples or not depending on the availability of
libvirt. Let's make this optional dependency explicit in dpdk.mk, even
if there's no explicit enable/disable option for it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
129 lines
3.1 KiB
Makefile
129 lines
3.1 KiB
Makefile
################################################################################
|
|
#
|
|
# dpdk
|
|
#
|
|
################################################################################
|
|
|
|
DPDK_VERSION = 25.11.2
|
|
DPDK_SOURCE = dpdk-$(DPDK_VERSION).tar.xz
|
|
DPDK_SITE = https://fast.dpdk.org/rel
|
|
DPDK_LICENSE = \
|
|
BSD-3-Clause, \
|
|
MIT
|
|
|
|
# Only the Windows target has the 2 following licenses:
|
|
# - license/bsd-2-clause.txt
|
|
# - license/isc.txt
|
|
# which is related to a Windows getopt.[ch] compatibility layer.
|
|
# Since Buildroot is not used for Windows target, it is not listed
|
|
# here.
|
|
#
|
|
# All the userland files of DPDK have dual licences BSD or GPL/LGPL
|
|
# Since the Linux kernel modules had been removed from the DPDK, there
|
|
# is no GPL only code into the DPDK anymore.
|
|
# The usage of DPDK with Buildroot is for userland only, it means
|
|
# that for the dual licenced files, BSD clause is used but not the
|
|
# following ones:
|
|
# - license/gpl-2.0.txt
|
|
# - license/lgpl-2.1.txt
|
|
# See the DPDK's license/README for more details.
|
|
#
|
|
# The legacy and historical license of the DPDK is BSD-3-clause.
|
|
DPDK_LICENSE_FILES = \
|
|
license/README \
|
|
license/bsd-3-clause.txt \
|
|
license/exceptions.txt \
|
|
license/mit.txt
|
|
|
|
DPDK_INSTALL_STAGING = YES
|
|
|
|
DPDK_DEPENDENCIES = \
|
|
host-pkgconf \
|
|
host-python-pyelftools
|
|
|
|
ifeq ($(BR2_PACKAGE_DPDK_EXAMPLES),y)
|
|
DPDK_CONF_OPTS += -Dexamples=all
|
|
else
|
|
DPDK_CONF_OPTS += -Dexamples=
|
|
endif
|
|
|
|
DPDK_DRIVERS := $(call qstrip,$(BR2_PACKAGE_DPDK_DRIVERS_LIST))
|
|
ifneq ($(DPDK_DRIVERS),)
|
|
ifeq ($(DPDK_DRIVERS),none)
|
|
DPDK_CONF_OPTS += -Ddisable_drivers='*/*'
|
|
else
|
|
DPDK_CONF_OPTS += -Denable_drivers='$(DPDK_DRIVERS)'
|
|
endif
|
|
endif
|
|
|
|
DPDK_LIBS := $(call qstrip,$(BR2_PACKAGE_DPDK_LIBS_LIST))
|
|
ifneq ($(DPDK_LIBS),)
|
|
ifeq ($(DPDK_LIBS),none)
|
|
DPDK_CONF_OPTS += -Ddisable_libs='*'
|
|
else
|
|
DPDK_CONF_OPTS += -Denable_libs='$(DPDK_LIBS)'
|
|
endif
|
|
endif
|
|
|
|
DPDK_APPS := $(call qstrip,$(BR2_PACKAGE_DPDK_APPS_LIST))
|
|
ifneq ($(DPDK_APPS),)
|
|
ifeq ($(DPDK_APPS),none)
|
|
DPDK_CONF_OPTS += -Ddisable_apps='*'
|
|
else
|
|
DPDK_CONF_OPTS += -Denable_apps='$(DPDK_APPS)'
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_DPDK_TESTS),y)
|
|
DPDK_CONF_OPTS += -Dtests=true
|
|
else
|
|
DPDK_CONF_OPTS += -Dtests=false
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBBSD),y)
|
|
DPDK_DEPENDENCIES += libbsd
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_JANSSON),y)
|
|
DPDK_DEPENDENCIES += jansson
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBPCAP),y)
|
|
DPDK_DEPENDENCIES += libpcap
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_ZLIB),y)
|
|
DPDK_DEPENDENCIES += zlib
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBEXECINFO),y)
|
|
DPDK_DEPENDENCIES += libexecinfo
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_NUMACTL),y)
|
|
DPDK_DEPENDENCIES += numactl
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBARCHIVE),y)
|
|
DPDK_DEPENDENCIES += libarchive
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBBPF),y)
|
|
DPDK_DEPENDENCIES += libbpf
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBVIRT),y)
|
|
DPDK_DEPENDENCIES += libvirt
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_RDMA_CORE),y)
|
|
DPDK_DEPENDENCIES += rdma-core
|
|
endif
|
|
|
|
# DPDK's meson shall need to be clean'd, hack here along the enclosed patch
|
|
DPDK_CONF_OPTS += -Dcpu_instruction_set=$(BR2_GCC_TARGET_ARCH)
|
|
# Keep the following, even if not mandatory, until the removal of the patch
|
|
DPDK_MESON_EXTRA_PROPERTIES += platform='generic'
|
|
|
|
$(eval $(meson-package))
|