[collectd] [PATCH 1/5] sigrok: build system setup

Bert Vermeulen bert at biot.com
Mon Jul 22 18:21:17 CEST 2013


---
 configure.in    | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/Makefile.am | 10 ++++++++
 2 files changed, 81 insertions(+)

diff --git a/configure.in b/configure.in
index 27c6cd3..0838de8 100644
--- a/configure.in
+++ b/configure.in
@@ -3767,6 +3767,74 @@ fi
 AM_CONDITIONAL(BUILD_WITH_LM_SENSORS, test "x$with_libsensors" = "xyes")
 # }}}
 
+# --with-libsigrok {{{
+with_libsigrok_cflags=""
+with_libsigrok_ldflags=""
+AC_ARG_WITH(libsigrok, [AS_HELP_STRING([--with-libsigrok@<:@=PREFIX@:>@], [Path to libsigrok.])],
+[
+	if test "x$withval" = "xno"
+	then
+		with_libsigrok="no"
+	else
+		with_libsigrok="yes"
+		if test "x$withval" != "xyes"
+		then
+			with_libsigrok_cflags="-I$withval/include"
+			with_libsigrok_ldflags="-L$withval/lib"
+		fi
+	fi
+],[])
+
+# libsigrok has a glib dependency
+if test "x$with_libsigrok" = "xyes"
+then
+	if test -z "m4_ifdef([AM_PATH_GLIB_2_0], [yes], [])"
+	then
+		with_libsigrok="no (glib not available)"
+	else
+		AM_PATH_GLIB_2_0([2.28.0],
+			[with_libsigrok_cflags="$with_libsigrok_cflags $GLIB_CFLAGS"; with_libsigrok_ldflags="$with_libsigrok_ldflags $GLIB_LIBS"])
+	fi
+fi
+
+# libsigrok headers
+if test "x$with_libsigrok" = "xyes"
+then
+	SAVE_CPPFLAGS="$CPPFLAGS"
+	CPPFLAGS="$CPPFLAGS $with_libsigrok_cflags"
+
+	AC_CHECK_HEADERS(libsigrok/libsigrok.h, [], [with_libsigrok="no (libsigrok/libsigrok.h not found)"])
+
+	CPPFLAGS="$SAVE_CPPFLAGS"
+fi
+
+# libsigrok library
+if test "x$with_libsigrok" = "xyes"
+then
+	SAVE_CPPFLAGS="$CPPFLAGS"
+	SAVE_LDFLAGS="$LDFLAGS"
+	CPPFLAGS="$CPPFLAGS $with_libsigrok_cflags"
+	LDFLAGS="$LDFLAGS $with_libsigrok_ldflags"
+
+	AC_CHECK_LIB(sigrok, sr_init,
+	[
+		AC_DEFINE(HAVE_LIBSIGROK, 1, [Define to 1 if you have the sigrok library (-lsigrok).])
+	],
+	[with_libsigrok="no (libsigrok not found)"])
+
+	CPPFLAGS="$SAVE_CPPFLAGS"
+	LDFLAGS="$SAVE_LDFLAGS"
+fi
+if test "x$with_libsigrok" = "xyes"
+then
+	BUILD_WITH_LIBSIGROK_CFLAGS="$with_libsigrok_cflags"
+	BUILD_WITH_LIBSIGROK_LDFLAGS="$with_libsigrok_ldflags"
+	AC_SUBST(BUILD_WITH_LIBSIGROK_CFLAGS)
+	AC_SUBST(BUILD_WITH_LIBSIGROK_LDFLAGS)
+fi
+AM_CONDITIONAL(BUILD_WITH_LIBSIGROK, test "x$with_libsigrok" = "xyes")
+# }}}
+
 # --with-libstatgrab {{{
 with_libstatgrab_cflags=""
 with_libstatgrab_ldflags=""
@@ -5098,6 +5166,7 @@ AC_PLUGIN([rrdcached],   [$librrd_rrdc_update], [RRDTool output plugin])
 AC_PLUGIN([rrdtool],     [$with_librrd],       [RRDTool output plugin])
 AC_PLUGIN([sensors],     [$with_libsensors],   [lm_sensors statistics])
 AC_PLUGIN([serial],      [$plugin_serial],     [serial port traffic])
+AC_PLUGIN([sigrok],      [$with_libsigrok],    [sigrok acquisition sources])
 AC_PLUGIN([snmp],        [$with_libnetsnmp],   [SNMP querying plugin])
 AC_PLUGIN([swap],        [$plugin_swap],       [Swap usage statistics])
 AC_PLUGIN([syslog],      [$have_syslog],       [Syslog logging plugin])
@@ -5331,6 +5400,7 @@ Configuration:
     librouteros . . . . . $with_librouteros
     librrd  . . . . . . . $with_librrd
     libsensors  . . . . . $with_libsensors
+    libsigrok   . . . . . $with_libsigrok
     libstatgrab . . . . . $with_libstatgrab
     libtokyotyrant  . . . $with_libtokyotyrant
     libupsclient  . . . . $with_libupsclient
@@ -5435,6 +5505,7 @@ Configuration:
     rrdtool . . . . . . . $enable_rrdtool
     sensors . . . . . . . $enable_sensors
     serial  . . . . . . . $enable_serial
+    sigrok  . . . . . . . $enable_sigrok
     snmp  . . . . . . . . $enable_snmp
     swap  . . . . . . . . $enable_swap
     syslog  . . . . . . . $enable_syslog
diff --git a/src/Makefile.am b/src/Makefile.am
index c3e596d..bdde5a3 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1052,6 +1052,16 @@ collectd_LDADD += "-dlopen" serial.la
 collectd_DEPENDENCIES += serial.la
 endif
 
+if BUILD_PLUGIN_SIGROK
+pkglib_LTLIBRARIES += sigrok.la
+sigrok_la_SOURCES = sigrok.c
+sigrok_la_CFLAGS = $(AM_CFLAGS) $(BUILD_WITH_LIBSIGROK_CFLAGS)
+sigrok_la_LDFLAGS = -module -avoid-version $(BUILD_WITH_LIBSIGROK_LDFLAGS)
+sigrok_la_LIBADD = -lsigrok
+collectd_LDADD += "-dlopen" sigrok.la
+collectd_DEPENDENCIES += sigrok.la
+endif
+
 if BUILD_PLUGIN_SNMP
 pkglib_LTLIBRARIES += snmp.la
 snmp_la_SOURCES = snmp.c
-- 
1.8.1.2




More information about the collectd mailing list