The printf/fprintf function impls provided on Windows do
not follow the normal syntax for format specifiers as
the UNIX hosts. Currently we use GNULIB to provide a
portability fix for this. GLib has also imported the
GNULIB impl for this same reason, and thus we can rely
on the g_printf / g_fprintf functions.
This identified a couple of places not explicitly
linking to glib.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
src/internal.h | 14 ++++++++++++++
src/locking/Makefile.inc.am | 5 ++++-
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/src/internal.h b/src/internal.h
index 96a43113cb..e181218067 100644
--- a/src/internal.h
+++ b/src/internal.h
@@ -488,3 +488,17 @@ enum {
# define ENOMSG 122
# endif
#endif
+
+/* Ideally callers would use the g_*printf
+ * functions directly but there are alot to
+ * convert, so until then...
+ */
+#ifndef VIR_NO_GLIB_STDIO
+
+# undef printf
+# define printf(...) g_printf(__VA_ARGS__)
+
+# undef fprintf
+# define fprintf(fh, ...) g_fprintf(fh, __VA_ARGS__)
+
+#endif /* VIR_NO_GLIB_STDIO */
diff --git a/src/locking/Makefile.inc.am b/src/locking/Makefile.inc.am
index d49383d9d7..9fd2b7f282 100644
--- a/src/locking/Makefile.inc.am
+++ b/src/locking/Makefile.inc.am
@@ -208,7 +208,10 @@ libvirt_sanlock_helper_LDFLAGS = \
$(AM_LDFLAGS) \
$(PIE_LDFLAGS) \
$(NULL)
-libvirt_sanlock_helper_LDADD = libvirt.la
+libvirt_sanlock_helper_LDADD = \
+ libvirt.la \
+ $(GLIB_LIBS) \
+ $(NULL)
endif WITH_SANLOCK
conf_DATA += locking/virtlockd.conf
--
2.24.1