diff --git a/lib/librte_metrics/meson.build b/lib/librte_metrics/meson.build index 28a8cc1155..d5be6a2145 100644 --- a/lib/librte_metrics/meson.build +++ b/lib/librte_metrics/meson.build @@ -1,14 +1,13 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -sources = files('rte_metrics.c') -headers = files('rte_metrics.h') +sources = files('rte_metrics.c', 'rte_metrics_telemetry.c') +headers = files('rte_metrics.h', 'rte_metrics_telemetry.h') jansson = dependency('jansson', required: false, method: 'pkg-config') if jansson.found() + dpdk_conf.set('RTE_HAS_JANSSON', 1) ext_deps += jansson - sources += files('rte_metrics_telemetry.c') - headers += files('rte_metrics_telemetry.h') - deps += ['ethdev', 'telemetry'] - includes += include_directories('../librte_telemetry') endif + +deps += ['ethdev', 'telemetry'] diff --git a/lib/librte_metrics/rte_metrics_telemetry.c b/lib/librte_metrics/rte_metrics_telemetry.c index b8ee56ef01..795bd29fe3 100644 --- a/lib/librte_metrics/rte_metrics_telemetry.c +++ b/lib/librte_metrics/rte_metrics_telemetry.c @@ -2,8 +2,6 @@ * Copyright(c) 2020 Intel Corporation */ -#include - #include #include #ifdef RTE_LIB_TELEMETRY @@ -13,6 +11,8 @@ #include "rte_metrics.h" #include "rte_metrics_telemetry.h" +#ifdef RTE_HAS_JANSSON + struct telemetry_metrics_data tel_met_data; int metrics_log_level; @@ -541,3 +541,62 @@ RTE_INIT(metrics_ctor) handle_ports_stats_values_by_name); #endif } + +#else /* !RTE_HAS_JANSSON */ + +int32_t +rte_metrics_tel_reg_all_ethdev(int *metrics_register_done, int *reg_index_list) +{ + RTE_SET_USED(metrics_register_done); + RTE_SET_USED(reg_index_list); + + return -ENOTSUP; +} + +int32_t +rte_metrics_tel_encode_json_format(struct telemetry_encode_param *ep, + char **json_buffer) +{ + RTE_SET_USED(ep); + RTE_SET_USED(json_buffer); + + return -ENOTSUP; +} + +int32_t +rte_metrics_tel_get_ports_stats_json(struct telemetry_encode_param *ep, + int *reg_index, char **json_buffer) +{ + RTE_SET_USED(ep); + RTE_SET_USED(reg_index); + RTE_SET_USED(json_buffer); + + return -ENOTSUP; +} + +int32_t +rte_metrics_tel_get_port_stats_ids(struct telemetry_encode_param *ep) +{ + RTE_SET_USED(ep); + + return -ENOTSUP; +} + +int32_t +rte_metrics_tel_extract_data(struct telemetry_encode_param *ep, json_t *data) +{ + RTE_SET_USED(ep); + RTE_SET_USED(data); + + return -ENOTSUP; +} + +int32_t +rte_metrics_tel_get_global_stats(struct telemetry_encode_param *ep) +{ + RTE_SET_USED(ep); + + return -ENOTSUP; +} + +#endif /* !RTE_HAS_JANSSON */ diff --git a/lib/librte_metrics/rte_metrics_telemetry.h b/lib/librte_metrics/rte_metrics_telemetry.h index 5dbb32ca0c..2b6eb1ccc8 100644 --- a/lib/librte_metrics/rte_metrics_telemetry.h +++ b/lib/librte_metrics/rte_metrics_telemetry.h @@ -2,7 +2,7 @@ * Copyright(c) 2020 Intel Corporation */ -#ifdef RTE_LIB_TELEMETRY +#ifdef RTE_HAS_JANSSON #include #else #define json_t void *