From aee88a4cc637e32c593a36fccceccb66906be591 Mon Sep 17 00:00:00 2001
From: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date: Thu, 21 Jul 2011 17:45:38 +0200
Subject: [PATCH] Bug#12779790 COMPILATION FAILS OS X 10.7 - IMPLICIT
 DECLARATION OF              FUNCTION 'PTHREAD_INIT'

The problem was that compilation would fail with a warning:
Implicit declaration of function 'pthread_init' if MySQL was
compiled on OS X 10.7 (Lion). The reason was that pthread_init()
is now part of an internal OS X pthread library so it was found
by CMake.

This patch fixes the problem by removing HAVE_PTHREAD_INIT and
related code. pthread_init() was specific to MIT-pthreads which
has not been supported since 4.1 and was therefore no longer
relevant.

No test case added.
---
 config.h.cmake      | 1 -
 configure.cmake     | 1 -
 dbug/dbug_analyze.c | 3 ---
 dbug/my_main.c      | 3 ---
 dbug/tests.c        | 3 ---
 mysys/my_init.c     | 4 ----
 6 files changed, 15 deletions(-)

diff --git a/config.h.cmake b/config.h.cmake
index 3247093c61..8c146011c7 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -219,7 +219,6 @@
 #cmakedefine HAVE_PTHREAD_ATTR_SETSTACKSIZE 1
 #cmakedefine HAVE_PTHREAD_CONDATTR_CREATE 1
 #cmakedefine HAVE_PTHREAD_CONDATTR_SETCLOCK 1
-#cmakedefine HAVE_PTHREAD_INIT 1
 #cmakedefine HAVE_PTHREAD_KEY_DELETE 1
 #cmakedefine HAVE_PTHREAD_KEY_DELETE 1
 #cmakedefine HAVE_PTHREAD_KILL 1
diff --git a/configure.cmake b/configure.cmake
index 64de376f66..c3cc787ebc 100644
--- a/configure.cmake
+++ b/configure.cmake
@@ -391,7 +391,6 @@ CHECK_FUNCTION_EXISTS (pthread_attr_setscope HAVE_PTHREAD_ATTR_SETSCOPE)
 CHECK_FUNCTION_EXISTS (pthread_attr_setstacksize HAVE_PTHREAD_ATTR_SETSTACKSIZE)
 CHECK_FUNCTION_EXISTS (pthread_condattr_create HAVE_PTHREAD_CONDATTR_CREATE)
 CHECK_FUNCTION_EXISTS (pthread_condattr_setclock HAVE_PTHREAD_CONDATTR_SETCLOCK)
-CHECK_FUNCTION_EXISTS (pthread_init HAVE_PTHREAD_INIT)
 CHECK_FUNCTION_EXISTS (pthread_key_delete HAVE_PTHREAD_KEY_DELETE)
 CHECK_FUNCTION_EXISTS (pthread_rwlock_rdlock HAVE_PTHREAD_RWLOCK_RDLOCK)
 CHECK_FUNCTION_EXISTS (pthread_sigmask HAVE_PTHREAD_SIGMASK)
diff --git a/dbug/dbug_analyze.c b/dbug/dbug_analyze.c
index 3d5713758a..cd395cd3b0 100644
--- a/dbug/dbug_analyze.c
+++ b/dbug/dbug_analyze.c
@@ -571,9 +571,6 @@ int main (int argc, char **argv)
     FILE *infile;
     FILE *outfile = {stdout};
 
-#if defined(HAVE_PTHREAD_INIT)
-  pthread_init();                       /* Must be called before DBUG_ENTER */
-#endif
   my_thread_global_init(); 
   {
     DBUG_ENTER ("main");
diff --git a/dbug/my_main.c b/dbug/my_main.c
index 48d092ca10..490e1808dd 100644
--- a/dbug/my_main.c
+++ b/dbug/my_main.c
@@ -16,9 +16,6 @@ char *argv[];
 {
   register int result, ix;
   extern int factorial(int);
-#if defined(HAVE_PTHREAD_INIT)
-  pthread_init();			/* Must be called before DBUG_ENTER */
-#endif
   my_thread_global_init();
 
   {
diff --git a/dbug/tests.c b/dbug/tests.c
index 837a477aef..5fb84d48ff 100644
--- a/dbug/tests.c
+++ b/dbug/tests.c
@@ -44,9 +44,6 @@ int main (int argc, char *argv[])
   if (argc == 1)
     return 0;
 
-#if defined(HAVE_PTHREAD_INIT)
-  pthread_init();                       /* Must be called before DBUG_ENTER */
-#endif
   my_thread_global_init();
 
   dup2(1, 2);
diff --git a/mysys/my_init.c b/mysys/my_init.c
index b5da20b262..e81752fb27 100644
--- a/mysys/my_init.c
+++ b/mysys/my_init.c
@@ -99,10 +99,6 @@ my_bool my_init(void)
   fastmutex_global_init();              /* Must be called early */
 #endif
 
-#if defined(HAVE_PTHREAD_INIT)
-  pthread_init();			/* Must be called before DBUG_ENTER */
-#endif
-
   /* $HOME is needed early to parse configuration files located in ~/ */
   if ((home_dir= getenv("HOME")) != 0)
     home_dir= intern_filename(home_dir_buff, home_dir);
-- 
2.30.9