Stop using HAVE_G_THREAD_IMPL_INIT
[platform/upstream/glib.git] / gthread / gthread-impl.c
1 /* GLIB - Library of useful routines for C programming
2  * Copyright (C) 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * gthread.c: thread related functions
5  * Copyright 1998 Sebastian Wilhelmi; University of Karlsruhe
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 /*
24  * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
25  * file for a list of people on the GLib Team.  See the ChangeLog
26  * files for a list of changes.  These files are distributed with
27  * GLib at ftp://ftp.gtk.org/pub/gtk/.
28  */
29
30 /*
31  * MT safe
32  */
33
34 #include "config.h"
35
36 #include "glib.h"
37 #include "gthreadprivate.h"
38
39 #include G_THREAD_SOURCE
40
41 void
42 g_thread_init (GThreadFunctions *init)
43 {
44   static gboolean already_done;
45
46   if (init != NULL)
47     g_warning ("GThread system no longer supports custom thread implementations.");
48
49   if (already_done)
50     return;
51
52   already_done = TRUE;
53
54   g_thread_impl_init ();
55   g_thread_functions_for_glib_use = g_thread_functions_for_glib_use_default;
56   g_thread_init_glib ();
57 }
58
59 void
60 g_thread_init_with_errorcheck_mutexes (GThreadFunctions *vtable)
61 {
62   g_assert (vtable == NULL);
63
64   g_thread_init (NULL);
65 }