From b137f953665845fcd1c2e719c26d02eb23057174 Mon Sep 17 00:00:00 2001 From: Tal Shnaiderman Date: Mon, 29 Jun 2020 15:37:35 +0300 Subject: [PATCH] pci: build on Windows Added in rte_pci header file to include off_t type since it is missing for Windows. Define the implementation of the Linux function rte_pci_get_sysfs_path in pci_common.c for Linux OS only as it is unneeded for other OSs and to avoid the warning on deprecated call to getenv() on Windows: "warning: 'getenv' is deprecated: This function or variable may be unsafe. Consider using _dupenv_s instead." Signed-off-by: Tal Shnaiderman --- drivers/bus/pci/pci_common.c | 2 ++ lib/librte_eal/rte_eal_exports.def | 1 + lib/librte_pci/rte_pci.h | 1 + lib/meson.build | 5 ++++- 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/bus/pci/pci_common.c b/drivers/bus/pci/pci_common.c index 245d94f59c..ed69ec2fe6 100644 --- a/drivers/bus/pci/pci_common.c +++ b/drivers/bus/pci/pci_common.c @@ -35,9 +35,11 @@ const char *rte_pci_get_sysfs_path(void) { const char *path = NULL; +#ifdef RTE_EXEC_ENV_LINUX path = getenv("SYSFS_PCI_DEVICES"); if (path == NULL) return SYSFS_PCI_DEVICES; +#endif return path; } diff --git a/lib/librte_eal/rte_eal_exports.def b/lib/librte_eal/rte_eal_exports.def index 7f0c8f5376..61bcb8aca7 100644 --- a/lib/librte_eal/rte_eal_exports.def +++ b/lib/librte_eal/rte_eal_exports.def @@ -1,5 +1,6 @@ EXPORTS __rte_panic + per_lcore__rte_errno rte_calloc rte_calloc_socket rte_eal_get_configuration diff --git a/lib/librte_pci/rte_pci.h b/lib/librte_pci/rte_pci.h index b721bbf580..9337079178 100644 --- a/lib/librte_pci/rte_pci.h +++ b/lib/librte_pci/rte_pci.h @@ -20,6 +20,7 @@ extern "C" { #include #include #include +#include /** Formatting string for PCI device identifier: Ex: 0000:00:01.0 */ #define PCI_PRI_FMT "%.4" PRIx16 ":%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8 diff --git a/lib/meson.build b/lib/meson.build index cbcb985beb..af66610fcb 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -36,7 +36,10 @@ libraries = [ 'flow_classify', 'bpf', 'graph', 'node'] if is_windows - libraries = ['kvargs','eal'] # only supported libraries for windows + libraries = [ + 'kvargs','eal', + 'pci', + ] # only supported libraries for windows endif default_cflags = machine_args -- 2.20.1