summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/osmocom/core/stats.h10
-rw-r--r--src/stats.c14
-rw-r--r--src/stats_statsd.c4
3 files changed, 28 insertions, 0 deletions
diff --git a/include/osmocom/core/stats.h b/include/osmocom/core/stats.h
index f754e41d..09b836ab 100644
--- a/include/osmocom/core/stats.h
+++ b/include/osmocom/core/stats.h
@@ -19,7 +19,15 @@
*/
#pragma once
+/* a bit of a crude way to disable building/using this on (bare iron)
+ * embedded systems. We cannot use the autoconf-defined HAVE_... macros
+ * here, as that only works at library compile time, not at application
+ * compile time */
+#ifdef unix
+
#include <sys/socket.h>
+#include <arpa/inet.h>
+
#include <osmocom/core/linuxlist.h>
#include <stdint.h>
@@ -119,3 +127,5 @@ int osmo_stats_reporter_send(struct osmo_stats_reporter *srep, const char *data,
int osmo_stats_reporter_send_buffer(struct osmo_stats_reporter *srep);
int osmo_stats_reporter_udp_open(struct osmo_stats_reporter *srep);
int osmo_stats_reporter_udp_close(struct osmo_stats_reporter *srep);
+
+#endif /* unix */
diff --git a/src/stats.c b/src/stats.c
index 9c826ccf..a5232595 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -21,6 +21,9 @@
*
*/
+#include "config.h"
+#if !defined(EMBEDDED)
+
#include <osmocom/core/byteswap.h>
#include <osmocom/core/stats.h>
@@ -30,9 +33,12 @@
#include <errno.h>
#include <stdio.h>
#include <sys/types.h>
+
+#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
+#endif
#include <osmocom/core/utils.h>
#include <osmocom/core/logging.h>
@@ -163,6 +169,8 @@ struct osmo_stats_reporter *osmo_stats_reporter_find(enum osmo_stats_reporter_ty
return NULL;
}
+#ifdef HAVE_SYS_SOCKET_H
+
int osmo_stats_reporter_set_remote_addr(struct osmo_stats_reporter *srep, const char *addr)
{
int rc;
@@ -240,6 +248,7 @@ int osmo_stats_reporter_set_mtu(struct osmo_stats_reporter *srep, int mtu)
return update_srep_config(srep);
}
+#endif /* HAVE_SYS_SOCKETS_H */
int osmo_stats_reporter_set_max_class(struct osmo_stats_reporter *srep,
enum osmo_stats_class class_id)
@@ -289,6 +298,8 @@ int osmo_stats_reporter_disable(struct osmo_stats_reporter *srep)
/*** i/o helper functions ***/
+#ifdef HAVE_SYS_SOCKET_H
+
int osmo_stats_reporter_udp_open(struct osmo_stats_reporter *srep)
{
int sock;
@@ -381,6 +392,7 @@ int osmo_stats_reporter_send_buffer(struct osmo_stats_reporter *srep)
return rc;
}
+#endif /* HAVE_SYS_SOCKET_H */
/*** log reporter ***/
@@ -611,3 +623,5 @@ int osmo_stats_report()
return 0;
}
+
+#endif /* !EMBEDDED */
diff --git a/src/stats_statsd.c b/src/stats_statsd.c
index 8b53881e..342bb88e 100644
--- a/src/stats_statsd.c
+++ b/src/stats_statsd.c
@@ -21,6 +21,9 @@
*
*/
+#include "config.h"
+#if !defined(EMBEDDED)
+
#include <osmocom/core/stats.h>
#include <string.h>
@@ -167,3 +170,4 @@ static int osmo_stats_reporter_statsd_send_item(struct osmo_stats_reporter *srep
statg->idx,
desc->name, value, unit);
}
+#endif /* !EMBEDDED */