package/collectd: add DPDK_TELEMETRY option

DPDK support is available since version 5.11.0 and
00cbd4d2c0

It depends on jansson and is currently enabled by default raising the
following build failure on musl:

src/dpdk_telemetry.c:43:10: fatal error: sys/unistd.h: No such file or directory
 #include <sys/unistd.h>
          ^~~~~~~~~~~~~~

Fixes:
 - http://autobuild.buildroot.org/results/aafb8c72f147fefc7a988c45e4dc17de48b07a95

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Fabrice Fontaine 2020-04-15 08:30:05 +02:00 committed by Thomas Petazzoni
parent 868207d792
commit 44e0b6014f
3 changed files with 49 additions and 0 deletions

View File

@ -0,0 +1,37 @@
From 70318d6bcf7ef89e1a73fc775d33f4c854aed484 Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Tue, 14 Apr 2020 14:49:19 +0200
Subject: [PATCH] src/dpdk_telemetry.c: fix build on musl
Include unistd.h instead of sys/unistd.h to fix the following build
failure on musl:
src/dpdk_telemetry.c:43:10: fatal error: sys/unistd.h: No such file or directory
#include <sys/unistd.h>
^~~~~~~~~~~~~~
Fixes:
- http://autobuild.buildroot.org/results/aafb8c72f147fefc7a988c45e4dc17de48b07a95
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://github.com/collectd/collectd/pull/3439]
---
src/dpdk_telemetry.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/dpdk_telemetry.c b/src/dpdk_telemetry.c
index b46e8574..cfee5f12 100755
--- a/src/dpdk_telemetry.c
+++ b/src/dpdk_telemetry.c
@@ -40,7 +40,7 @@
#include <sys/queue.h>
#include <sys/socket.h>
#include <sys/un.h>
-#include <sys/unistd.h>
+#include <unistd.h>
#define BUF_SIZE 100000
#define PLUGIN_NAME "dpdk_telemetry"
--
2.25.1

View File

@ -213,6 +213,13 @@ config BR2_PACKAGE_COLLECTD_DNS
help
Collects statistics of DNS traffic using libpcap.
config BR2_PACKAGE_COLLECTD_DPDK_TELEMETRY
bool "dpdk_telemetry"
select BR2_PACKAGE_JANSSON
help
Collects DPDK ethernet device metrics via dpdk_telemetry
library.
config BR2_PACKAGE_COLLECTD_DRBD
bool "drbd"
help

View File

@ -66,6 +66,7 @@ COLLECTD_CONF_OPTS += \
$(if $(BR2_PACKAGE_COLLECTD_DF),--enable-df,--disable-df) \
$(if $(BR2_PACKAGE_COLLECTD_DISK),--enable-disk,--disable-disk) \
$(if $(BR2_PACKAGE_COLLECTD_DNS),--enable-dns,--disable-dns) \
$(if $(BR2_PACKAGE_COLLECTD_DPDK_TELEMETRY),--enable-dpdk_telemetry,--disable-dpdk_telemetry) \
$(if $(BR2_PACKAGE_COLLECTD_DRBD),--enable-drbd,--disable-drbd) \
$(if $(BR2_PACKAGE_COLLECTD_EMPTY_COUNTER),--enable-match_empty_counter,--disable-match_empty_counter) \
$(if $(BR2_PACKAGE_COLLECTD_ENTROPY),--enable-entropy,--disable-entropy) \
@ -156,6 +157,7 @@ COLLECTD_DEPENDENCIES = \
$(if $(BR2_PACKAGE_COLLECTD_CURL_JSON),libcurl yajl) \
$(if $(BR2_PACKAGE_COLLECTD_CURL_XML),libcurl libxml2) \
$(if $(BR2_PACKAGE_COLLECTD_DNS),libpcap) \
$(if $(BR2_PACKAGE_COLLECTD_DPKD_TELEMETRY),jansson) \
$(if $(BR2_PACKAGE_COLLECTD_GPS),gpsd) \
$(if $(BR2_PACKAGE_COLLECTD_GRPC),grpc) \
$(if $(BR2_PACKAGE_COLLECTD_IPTABLES),iptables) \
@ -186,6 +188,9 @@ COLLECTD_DEPENDENCIES = \
ifeq ($(BR2_PACKAGE_GRPC),y)
COLLECTD_CONF_OPTS += --with-libgrpc++=$(STAGING_DIR)/usr
endif
ifeq ($(BR2_PACKAGE_JANSSON),y)
COLLECTD_CONF_OPTS += --with-libjansson=$(STAGING_DIR)/usr
endif
ifeq ($(BR2_PACKAGE_LIBCURL),y)
COLLECTD_CONF_OPTS += --with-libcurl=$(STAGING_DIR)/usr
endif