From 5cbc319e964fb037793b51920b4ed164e8ed90af Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Thu, 4 Dec 2014 23:58:48 +0100
Subject: [PATCH] configure.ac: require GLib 2.32 (if enabled)

Since version 2.32, g_thread_init() is deprecated and a no-op.  Let's
upgrade that (optional) dependency so we can remove all those
g_thread_init() calls.
---
 configure.ac            |  2 +-
 src/Main.cxx            |  5 -----
 test/DumpDatabase.cxx   | 12 ------------
 test/dump_playlist.cxx  | 12 ------------
 test/dump_text_file.cxx | 12 ------------
 test/read_mixer.cxx     | 10 ----------
 test/read_tags.cxx      | 10 ----------
 test/run_decoder.cxx    | 10 ----------
 test/run_filter.cxx     | 12 ------------
 test/run_input.cxx      | 12 ------------
 test/run_output.cxx     | 10 ----------
 test/run_storage.cxx    | 12 ------------
 test/visit_archive.cxx  | 12 ------------
 13 files changed, 1 insertion(+), 130 deletions(-)

diff --git a/configure.ac b/configure.ac
index 2291b9479..75e6526c4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -522,7 +522,7 @@ AC_ARG_ENABLE(glib,
 	enable_glib=auto)
 
 if test x$enable_glib != xno; then
-	PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.28 gthread-2.0],
+	PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.32],
 		[found_glib=yes],
 		[found_glib=no])
 
diff --git a/src/Main.cxx b/src/Main.cxx
index b31c51b4d..9972b5cdd 100644
--- a/src/Main.cxx
+++ b/src/Main.cxx
@@ -437,11 +437,6 @@ int mpd_main(int argc, char *argv[])
 
 #ifdef HAVE_GLIB
 	g_set_application_name("Music Player Daemon");
-
-#if !GLIB_CHECK_VERSION(2,32,0)
-	/* enable GLib's thread safety code */
-	g_thread_init(nullptr);
-#endif
 #endif
 #endif
 
diff --git a/test/DumpDatabase.cxx b/test/DumpDatabase.cxx
index a4d3e6407..d75ef36eb 100644
--- a/test/DumpDatabase.cxx
+++ b/test/DumpDatabase.cxx
@@ -33,10 +33,6 @@
 #include "event/Loop.hxx"
 #include "util/Error.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <iostream>
 using std::cout;
 using std::cerr;
@@ -107,14 +103,6 @@ main(int argc, char **argv)
 		return EXIT_FAILURE;
 	}
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(nullptr);
-#endif
-#endif
-
 	/* initialize MPD */
 
 	config_global_init();
diff --git a/test/dump_playlist.cxx b/test/dump_playlist.cxx
index 0047ef427..2ec3c76ce 100644
--- a/test/dump_playlist.cxx
+++ b/test/dump_playlist.cxx
@@ -35,10 +35,6 @@
 #include "thread/Cond.hxx"
 #include "Log.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <unistd.h>
 #include <stdlib.h>
 
@@ -64,14 +60,6 @@ int main(int argc, char **argv)
 	const Path config_path = Path::FromFS(argv[1]);
 	uri = argv[2];
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	/* initialize MPD */
 
 	config_global_init();
diff --git a/test/dump_text_file.cxx b/test/dump_text_file.cxx
index 5bfd316a5..2ab95db5e 100644
--- a/test/dump_text_file.cxx
+++ b/test/dump_text_file.cxx
@@ -32,10 +32,6 @@
 #include "archive/ArchiveList.hxx"
 #endif
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <unistd.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -79,14 +75,6 @@ int main(int argc, char **argv)
 		return EXIT_FAILURE;
 	}
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	/* initialize MPD */
 
 	config_global_init();
diff --git a/test/read_mixer.cxx b/test/read_mixer.cxx
index de77a00c4..587a0075e 100644
--- a/test/read_mixer.cxx
+++ b/test/read_mixer.cxx
@@ -28,10 +28,6 @@
 #include "util/Error.hxx"
 #include "Log.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <assert.h>
 #include <string.h>
 #include <unistd.h>
@@ -52,12 +48,6 @@ int main(int argc, gcc_unused char **argv)
 		return EXIT_FAILURE;
 	}
 
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	EventLoop event_loop;
 
 	Error error;
diff --git a/test/read_tags.cxx b/test/read_tags.cxx
index 91ac9c674..6d9a718ff 100644
--- a/test/read_tags.cxx
+++ b/test/read_tags.cxx
@@ -32,10 +32,6 @@
 #include "thread/Cond.hxx"
 #include "Log.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <assert.h>
 #include <unistd.h>
 #include <stdlib.h>
@@ -90,12 +86,6 @@ int main(int argc, char **argv)
 	decoder_name = argv[1];
 	const Path path = Path::FromFS(argv[2]);
 
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	const ScopeIOThread io_thread;
 
 	Error error;
diff --git a/test/run_decoder.cxx b/test/run_decoder.cxx
index 0e9af6a1a..3548af1b6 100644
--- a/test/run_decoder.cxx
+++ b/test/run_decoder.cxx
@@ -30,10 +30,6 @@
 #include "Log.hxx"
 #include "stdbin.h"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <assert.h>
 #include <unistd.h>
 #include <stdlib.h>
@@ -50,12 +46,6 @@ int main(int argc, char **argv)
 	const char *const decoder_name = argv[1];
 	const char *const uri = argv[2];
 
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	const ScopeIOThread io_thread;
 
 	Error error;
diff --git a/test/run_filter.cxx b/test/run_filter.cxx
index ab99c9a1e..b9ad89ccd 100644
--- a/test/run_filter.cxx
+++ b/test/run_filter.cxx
@@ -33,10 +33,6 @@
 #include "system/FatalError.hxx"
 #include "Log.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <assert.h>
 #include <string.h>
 #include <stdlib.h>
@@ -86,14 +82,6 @@ int main(int argc, char **argv)
 
 	AudioFormat audio_format(44100, SampleFormat::S16, 2);
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	/* read configuration file (mpd.conf) */
 
 	config_global_init();
diff --git a/test/run_input.cxx b/test/run_input.cxx
index 6864a5d64..e124b175f 100644
--- a/test/run_input.cxx
+++ b/test/run_input.cxx
@@ -35,10 +35,6 @@
 #include "archive/ArchiveList.hxx"
 #endif
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <unistd.h>
 #include <stdlib.h>
 
@@ -105,14 +101,6 @@ int main(int argc, char **argv)
 		return EXIT_FAILURE;
 	}
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	/* initialize MPD */
 
 	config_global_init();
diff --git a/test/run_output.cxx b/test/run_output.cxx
index 345127556..934d3fd8c 100644
--- a/test/run_output.cxx
+++ b/test/run_output.cxx
@@ -36,10 +36,6 @@
 #include "util/Error.hxx"
 #include "Log.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <assert.h>
 #include <string.h>
 #include <unistd.h>
@@ -163,12 +159,6 @@ int main(int argc, char **argv)
 
 	AudioFormat audio_format(44100, SampleFormat::S16, 2);
 
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	/* read configuration file (mpd.conf) */
 
 	config_global_init();
diff --git a/test/run_storage.cxx b/test/run_storage.cxx
index 9fc6e6e76..fad808e24 100644
--- a/test/run_storage.cxx
+++ b/test/run_storage.cxx
@@ -24,10 +24,6 @@
 #include "storage/FileInfo.hxx"
 #include "util/Error.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <memory>
 
 #include <unistd.h>
@@ -102,14 +98,6 @@ main(int argc, char **argv)
 		return EXIT_FAILURE;
 	}
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	const char *const command = argv[1];
 	const char *const storage_uri = argv[2];
 
diff --git a/test/visit_archive.cxx b/test/visit_archive.cxx
index 1ff3ba484..97b22bec6 100644
--- a/test/visit_archive.cxx
+++ b/test/visit_archive.cxx
@@ -30,10 +30,6 @@
 #include "fs/Path.hxx"
 #include "util/Error.hxx"
 
-#ifdef HAVE_GLIB
-#include <glib.h>
-#endif
-
 #include <unistd.h>
 #include <stdlib.h>
 
@@ -57,14 +53,6 @@ main(int argc, char **argv)
 	const char *plugin_name = argv[1];
 	const Path path = Path::FromFS(argv[2]);
 
-	/* initialize GLib */
-
-#ifdef HAVE_GLIB
-#if !GLIB_CHECK_VERSION(2,32,0)
-	g_thread_init(NULL);
-#endif
-#endif
-
 	/* initialize MPD */
 
 	config_global_init();