On Sun, Aug 31, 2025 at 03:46:45PM +0300, Niko Tyni wrote:
>
> This package fails to build from source on current sid.
>
>
> https://tests.reproducible-builds.org/debian/rbuild/unstable/arm64/collectd_5.12.0-26.rbuild.log.gz
>
> I think these are the relevant parts:
>
> configure:126594: result: libmongoc . . . . . . no (pkg-config could
> not find libmongoc)
> [...]
> configure:127022: result: write_mongodb . . . . no (pkg-config could
> not find libmongoc) (dependency error)
> [...]
> configure:127052: error: "Some plugins are missing dependencies - see the
> summary above for details"
>
The attached patch fixes this.
Regards,
-Roberto
--
Roberto C. Sánchez
---
configure.ac | 26 +++++++++++++++++++-------
src/write_mongodb.c | 4 ++++
2 files changed, 23 insertions(+), 7 deletions(-)
--- a/configure.ac
+++ b/configure.ac
@@ -3430,9 +3430,12 @@
)
if test "x$with_libmongoc" = "xyes"; then
- PKG_CHECK_MODULES([LIBMONGOC], [libmongoc-1.0],
+ PKG_CHECK_MODULES([LIBMONGOC], mongoc2,
[with_libmongoc="yes"],
- [with_libmongoc="no (pkg-config could not find libmongoc)"]
+ [PKG_CHECK_MODULES([LIBMONGOC], [libmongoc-1.0],
+ [with_libmongoc="yes"],
+ [with_libmongoc="no (pkg-config could not find libmongoc)"]
+ )]
)
fi
@@ -3441,9 +3444,15 @@
CPPFLAGS="$CPPFLAGS $LIBMONGOC_CFLAGS"
- AC_CHECK_HEADERS([mongoc.h],
- [with_libmongoc="yes"],
- [with_libmongoc="no ('mongoc.h' not found)"]
+ AC_CHECK_HEADERS([mongoc/mongoc.h],
+ [
+ with_libmongoc="yes"
+ AC_DEFINE([HAVE_MONGOC2], [1], [Have mongoc2.])
+ ],
+ [AC_CHECK_HEADERS([mongoc.h],
+ [with_libmongoc="yes"],
+ [with_libmongoc="no ('mongoc.h' not found)"]
+ )]
)
CPPFLAGS="$SAVE_CPPFLAGS"
@@ -3456,9 +3465,12 @@
CPPFLAGS="$CPPFLAGS $LIBMONGOC_CFLAGS"
LDFLAGS="$LDFLAGS $LIBMONGOC_LDFLAGS"
- AC_CHECK_LIB([mongoc-1.0], [mongoc_init],
+ AC_CHECK_LIB([mongoc2], [mongoc_init],
[with_libmongoc="yes"],
- [with_libmongoc="no (symbol 'mongoc_init' not found)"]
+ [AC_CHECK_LIB([mongoc-1.0], [mongoc_init],
+ [with_libmongoc="yes"],
+ [with_libmongoc="no (symbol 'mongoc_init' not found)"]
+ )]
)
CPPFLAGS="$SAVE_CPPFLAGS"
--- a/src/write_mongodb.c
+++ b/src/write_mongodb.c
@@ -36,7 +36,11 @@
#include "utils/common/common.h"
#include "utils_cache.h"
+#ifdef HAVE_MONGOC2
+#include <mongoc/mongoc.h>
+#else
#include <mongoc.h>
+#endif
struct wm_node_s {
char name[DATA_MAX_NAME_LEN];