List:Commits« Previous MessageNext Message »
From:Tomas Ulin Date:December 12 2008 8:48am
Subject:bzr commit into mysql-6.0 branch (tomas.ulin:2701)
View as plain text  
#At file:///home/tomas/mysql_src/mysql-6.0-ndb/

 2701 Tomas Ulin	2008-12-12 [merge]
      merge
modified:
  CMakeLists.txt
  client/CMakeLists.txt
  dbug/CMakeLists.txt
  extra/CMakeLists.txt
  include/config-win.h
  include/my_pthread.h
  libmysql/CMakeLists.txt
  libmysqld/CMakeLists.txt
  libmysqld/examples/CMakeLists.txt
  mysql-test/suite/ndb/t/disabled.def
  mysys/CMakeLists.txt
  mysys/my_init.c
  mysys/my_thr_init.c
  mysys/my_wincond.c
  mysys/my_winthread.c
  regex/CMakeLists.txt
  scripts/CMakeLists.txt
  scripts/make_win_bin_dist
  sql/CMakeLists.txt
  sql/backup/CMakeLists.txt
  sql/backup/be_thread.cc
  sql/mysqld.cc
  sql/sql_connect.cc
  sql/sql_insert.cc
  sql/udf_example.c
  storage/blackhole/CMakeLists.txt
  storage/csv/CMakeLists.txt
  storage/example/CMakeLists.txt
  storage/heap/CMakeLists.txt
  storage/innobase/CMakeLists.txt
  storage/maria/CMakeLists.txt
  storage/maria/unittest/CMakeLists.txt
  storage/myisam/CMakeLists.txt
  storage/myisammrg/CMakeLists.txt
  strings/CMakeLists.txt
  tests/CMakeLists.txt
  unittest/examples/CMakeLists.txt
  unittest/mysys/CMakeLists.txt
  unittest/mytap/CMakeLists.txt
  vio/CMakeLists.txt
  zlib/CMakeLists.txt

=== modified file 'CMakeLists.txt'
--- a/CMakeLists.txt	2008-10-20 19:13:22 +0000
+++ b/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -32,6 +32,14 @@ ADD_DEFINITIONS(-DHAVE_YASSL)
 # Set debug options
 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFORCE_INIT_OF_VARS")
 
+# Do not use SAFEMALLOC for Windows builds, as Debug CRT has the same functionality
+# Neither SAFE_MUTEX works on Windows and it has been explicitely undefined in 
+# my_pthread.h
+IF(NOT WIN32)
+  SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
+  SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
+ENDIF(NOT WIN32)
+
 # Note that some engines are always compiled in, MyISAM, MyISAMMRG and HEAP,
 # these three plugin defintions are dummys for symmetry
 
@@ -169,7 +177,6 @@ IF(MSVC)
     STRING(REPLACE "/MDd" "/MTd" CMAKE_CXX_FLAGS_DEBUG_INIT    
${CMAKE_CXX_FLAGS_DEBUG_INIT})
 
     # generate map files, set stack size (see bug#20815)
-    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MAP /MAPINFO:EXPORTS")
     SET(thread_stack_size 1048576)
     SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:${thread_stack_size}")
     ADD_DEFINITIONS(-DPTHREAD_STACK_MIN=${thread_stack_size})

=== modified file 'client/CMakeLists.txt'
--- a/client/CMakeLists.txt	2008-06-20 11:40:01 +0000
+++ b/client/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -14,13 +14,6 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake")
 
-# We use the "mysqlclient_notls" library here just as safety, in case
-# any of the clients here would go beyond the client API and access the
-# Thread Local Storage directly.
-
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
                     ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include
@@ -30,27 +23,27 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/strings)
 
 ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc sql_string.cc
../mysys/my_conio.c)
-TARGET_LINK_LIBRARIES(mysql mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysql mysqlclient)
 
 ADD_EXECUTABLE(mysqltest mysqltest.c)
 SET_SOURCE_FILES_PROPERTIES(mysqltest.c PROPERTIES COMPILE_FLAGS "-DTHREADS")
-TARGET_LINK_LIBRARIES(mysqltest mysqlclient mysys regex ws2_32 dbug)
+TARGET_LINK_LIBRARIES(mysqltest mysqlclient mysys regex dbug)
 
 ADD_EXECUTABLE(mysqlcheck mysqlcheck.c)
-TARGET_LINK_LIBRARIES(mysqlcheck mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysqlcheck mysqlclient)
 
 ADD_EXECUTABLE(mysqldump mysqldump.c ../sql-common/my_user.c ../mysys/mf_getdate.c)
-TARGET_LINK_LIBRARIES(mysqldump mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysqldump mysqlclient)
 
 ADD_EXECUTABLE(mysqlimport mysqlimport.c)
-TARGET_LINK_LIBRARIES(mysqlimport mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysqlimport mysqlclient)
 
 ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c ../mysys/my_getpagesize.c)
-TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient)
 ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs)
 
 ADD_EXECUTABLE(mysqlshow mysqlshow.c)
-TARGET_LINK_LIBRARIES(mysqlshow mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysqlshow mysqlclient)
 
 ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc
 			   ../mysys/mf_tempdir.c
@@ -59,14 +52,14 @@ ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.c
 			   ../mysys/my_bitmap.c
 			   ../mysys/my_vle.c
 			   ../mysys/base64.c)
-TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient)
 
 ADD_EXECUTABLE(mysqladmin mysqladmin.cc)
-TARGET_LINK_LIBRARIES(mysqladmin mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysqladmin mysqlclient)
 
 ADD_EXECUTABLE(mysqlslap mysqlslap.c)
 SET_SOURCE_FILES_PROPERTIES(mysqlslap.c PROPERTIES COMPILE_FLAGS "-DTHREADS")
-TARGET_LINK_LIBRARIES(mysqlslap mysqlclient mysys zlib ws2_32 dbug)
+TARGET_LINK_LIBRARIES(mysqlslap mysqlclient mysys zlib dbug)
 
 ADD_EXECUTABLE(echo echo.c)
 

=== modified file 'dbug/CMakeLists.txt'
--- a/dbug/CMakeLists.txt	2008-07-09 07:12:43 +0000
+++ b/dbug/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -18,7 +18,6 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
 SET(DBUG_SOURCES dbug.c factorial.c sanity.c)
 
 IF(NOT SOURCE_SUBLIBS)
-  SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
   INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
   ADD_LIBRARY(dbug ${DBUG_SOURCES})
 ENDIF(NOT SOURCE_SUBLIBS)

=== modified file 'extra/CMakeLists.txt'
--- a/extra/CMakeLists.txt	2008-12-09 14:22:54 +0000
+++ b/extra/CMakeLists.txt	2008-12-12 07:48:03 +0000
@@ -14,13 +14,11 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake")
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
 ADD_EXECUTABLE(comp_err comp_err.c)
-TARGET_LINK_LIBRARIES(comp_err debug dbug mysys strings zlib ws2_32)
+TARGET_LINK_LIBRARIES(comp_err dbug mysys strings zlib)
 
 GET_TARGET_PROPERTY(COMP_ERR_EXE comp_err LOCATION)
 
@@ -39,20 +37,20 @@ ADD_CUSTOM_TARGET(GenError
                   DEPENDS ${PROJECT_SOURCE_DIR}/include/mysqld_error.h)
 
 ADD_EXECUTABLE(my_print_defaults my_print_defaults.c)
-TARGET_LINK_LIBRARIES(my_print_defaults strings mysys debug dbug taocrypt ws2_32)
+TARGET_LINK_LIBRARIES(my_print_defaults strings mysys dbug taocrypt)
 
 ADD_EXECUTABLE(perror perror.c)
 ADD_DEPENDENCIES(perror GenError)
-TARGET_LINK_LIBRARIES(perror strings mysys debug dbug ws2_32)
+TARGET_LINK_LIBRARIES(perror strings mysys dbug)
 
 ADD_EXECUTABLE(resolveip resolveip.c)
-TARGET_LINK_LIBRARIES(resolveip strings mysys debug dbug ws2_32)
+TARGET_LINK_LIBRARIES(resolveip strings mysys dbug)
 
 ADD_EXECUTABLE(resolveip resolveip.c)
 TARGET_LINK_LIBRARIES(resolveip strings mysys debug dbug wsock32)
 
 ADD_EXECUTABLE(replace replace.c)
-TARGET_LINK_LIBRARIES(replace strings mysys debug dbug ws2_32)
+TARGET_LINK_LIBRARIES(replace strings mysys dbug)
 
 IF(EMBED_MANIFESTS)
   MYSQL_EMBED_MANIFEST("myTest" "asInvoker")

=== modified file 'include/config-win.h'
--- a/include/config-win.h	2008-12-09 18:59:54 +0000
+++ b/include/config-win.h	2008-12-12 07:48:03 +0000
@@ -37,6 +37,7 @@
 #include <io.h>
 #include <malloc.h>
 #include <sys/stat.h>
+#include <process.h>     /* getpid()*/
 
 #define HAVE_SMEM 1
 

=== modified file 'include/my_pthread.h'
--- a/include/my_pthread.h	2008-12-09 14:22:54 +0000
+++ b/include/my_pthread.h	2008-12-12 07:48:03 +0000
@@ -31,7 +31,7 @@ extern "C" {
 
 #if defined(__WIN__)
 typedef CRITICAL_SECTION pthread_mutex_t;
-typedef HANDLE		 pthread_t;
+typedef DWORD		 pthread_t;
 typedef struct thread_attr {
     DWORD dwStackSize ;
     DWORD dwCreatingFlag ;
@@ -63,8 +63,7 @@ typedef struct {
 
 
 typedef int pthread_mutexattr_t;
-#define win_pthread_self my_thread_var->pthread_self
-#define pthread_self() win_pthread_self
+#define pthread_self() GetCurrentThreadId()
 #define pthread_handler_t EXTERNC void * __cdecl
 typedef void * (__cdecl *pthread_handler)(void *);
 
@@ -100,8 +99,6 @@ struct timespec {
   set_timespec_time_nsec((ABSTIME), tv.i64, (NSEC));            \
 } while(0)
 
-void win_pthread_init(void);
-int win_pthread_setspecific(void *A,void *B,uint length);
 int win_pthread_mutex_trylock(pthread_mutex_t *mutex);
 int pthread_create(pthread_t *,pthread_attr_t *,pthread_handler,void *);
 int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr);
@@ -117,42 +114,25 @@ int pthread_attr_destroy(pthread_attr_t 
 struct tm *localtime_r(const time_t *timep,struct tm *tmp);
 struct tm *gmtime_r(const time_t *timep,struct tm *tmp);
 
+void pthread_exit(void *a);
+int pthread_join(pthread_t thread, void **value_ptr);
 
-void pthread_exit(void *a);	 /* was #define pthread_exit(A) ExitThread(A)*/
 
 #define ETIMEDOUT 145		    /* Win32 doesn't have this */
-#define getpid() GetCurrentThreadId()
 #define HAVE_LOCALTIME_R		1
 #define _REENTRANT			1
 #define HAVE_PTHREAD_ATTR_SETSTACKSIZE	1
 
-/*
-  Windows has two ways to use thread local storage. The most efficient
-  is using __declspec(thread), but that does not work properly when
-  used in a .dll that is loaded at runtime, after program load. So for
-  libmysql.dll and libmysqld.dll we define USE_TLS in order to use the
-  TlsXxx() API instead, which works in all cases.
-*/
-#ifdef USE_TLS					/* For LIBMYSQL.DLL */
+
 #undef SAFE_MUTEX				/* This will cause conflicts */
 #define pthread_key(T,V)  DWORD V
 #define pthread_key_create(A,B) ((*A=TlsAlloc())==0xFFFFFFFF)
 #define pthread_key_delete(A) TlsFree(A)
+#define my_pthread_setspecific_ptr(T,V) (!TlsSetValue((T),(V)))
+#define pthread_setspecific(A,B) (!TlsSetValue((A),(B)))
 #define pthread_getspecific(A) (TlsGetValue(A))
 #define my_pthread_getspecific(T,A) ((T) TlsGetValue(A))
 #define my_pthread_getspecific_ptr(T,V) ((T) TlsGetValue(V))
-#define my_pthread_setspecific_ptr(T,V) (!TlsSetValue((T),(V)))
-#define pthread_setspecific(A,B) (!TlsSetValue((A),(B)))
-#else
-#define pthread_key(T,V) __declspec(thread) T V
-#define pthread_key_create(A,B) pthread_dummy(0)
-#define pthread_key_delete(A) pthread_dummy(0)
-#define pthread_getspecific(A) (&(A))
-#define my_pthread_getspecific(T,A) (&(A))
-#define my_pthread_getspecific_ptr(T,V) (V)
-#define my_pthread_setspecific_ptr(T,V) ((T)=(V),0)
-#define pthread_setspecific(A,B) win_pthread_setspecific(&(A),(B),sizeof(A))
-#endif /* USE_TLS */
 
 #define pthread_equal(A,B) ((A) == (B))
 #define pthread_mutex_init(A,B)  (InitializeCriticalSection(A),0)
@@ -162,7 +142,6 @@ void pthread_exit(void *a);	 /* was #def
 #define pthread_mutex_destroy(A) DeleteCriticalSection(A)
 #define pthread_kill(A,B) pthread_dummy((A) ? 0 : ESRCH)
 
-#define pthread_join(A,B) (WaitForSingleObject((A), INFINITE) != WAIT_OBJECT_0)
 
 /* Dummy defines for easier code */
 #define pthread_attr_setdetachstate(A,B) pthread_dummy(0)
@@ -170,10 +149,8 @@ void pthread_exit(void *a);	 /* was #def
 #define pthread_detach_this_thread()
 #define pthread_condattr_init(A)
 #define pthread_condattr_destroy(A)
-#define pthread_yield() Sleep(0) /* according to MSDN */
+#define pthread_yield() SwitchToThread() 
 
-/* per the platform's documentation */
-#define pthread_yield() Sleep(0)
 
 #else /* Normal threads */
 

=== modified file 'libmysql/CMakeLists.txt'
--- a/libmysql/CMakeLists.txt	2008-10-16 19:32:35 +0000
+++ b/libmysql/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -14,8 +14,6 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake")
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG   "${CMAKE_C_FLAGS_DEBUG}   -DSAFEMALLOC -DSAFE_MUTEX")
 
 # Note that we don't link with the libraries "strings" or "mysys"
 # here, instead we recompile the files needed and include them
@@ -98,34 +96,14 @@ SET(CLIENT_SOURCES   ../mysys/array.c ..
                      ../strings/strtoll.c ../strings/strtoull.c ../strings/strxmov.c
../strings/strxnmov.c 
                      ../mysys/thr_mutex.c ../mysys/typelib.c ../vio/vio.c
../vio/viosocket.c 
                      ../vio/viossl.c ../vio/viosslfactories.c ../strings/xml.c
../mysys/mf_qsort.c
-		     ../mysys/my_getsystime.c ../mysys/my_winerr.c ../mysys/my_winfile.c
${LIB_SOURCES})
-
-# Need to set USE_TLS for building the DLL, since __declspec(thread)
-# approach to thread local storage does not work properly in DLLs.
-#
-# The static library might be used to form another DLL, as is the case
-# with the ODBC driver, so it has to be compiled with USE_TLS as well.
-#
-# We create a third library without USE_TLS for internal use. We can't
-# be sure that some client application part of this build doesn't go
-# beond the documented API, and try access the Thread Local Storage.
-# The "_notls" means no Tls*() functions used, i.e. "static" TLS.
+                     ../mysys/my_getsystime.c ../mysys/my_sync.c ../mysys/my_winerr.c
../mysys/my_winfile.c ${LIB_SOURCES})
 
+                     
 ADD_LIBRARY(mysqlclient       STATIC ${CLIENT_SOURCES})
 ADD_DEPENDENCIES(mysqlclient GenError)
 TARGET_LINK_LIBRARIES(mysqlclient)
 
-ADD_LIBRARY(mysqlclient_notls STATIC ${CLIENT_SOURCES})
-ADD_DEPENDENCIES(mysqlclient_notls GenError)
-TARGET_LINK_LIBRARIES(mysqlclient_notls)
 
 ADD_LIBRARY(libmysql          SHARED ${CLIENT_SOURCES} libmysql.def)
-IF(WIN32)
-  SET_TARGET_PROPERTIES(libmysql mysqlclient PROPERTIES COMPILE_FLAGS "-DUSE_TLS")
-ENDIF(WIN32)
 ADD_DEPENDENCIES(libmysql GenError)
-TARGET_LINK_LIBRARIES(libmysql ws2_32)
-
-IF(EMBED_MANIFESTS)
-  MYSQL_EMBED_MANIFEST("myTest" "asInvoker")
-ENDIF(EMBED_MANIFESTS)
+TARGET_LINK_LIBRARIES(libmysql)
\ No newline at end of file

=== modified file 'libmysqld/CMakeLists.txt'
--- a/libmysqld/CMakeLists.txt	2008-10-20 09:16:47 +0000
+++ b/libmysqld/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,15 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
-# Need to set USE_TLS, since __declspec(thread) approach to thread local
-# storage does not work properly in DLLs.
-IF(WIN32)
-  ADD_DEFINITIONS(-DUSE_TLS)
-ENDIF(WIN32)
-
 ADD_DEFINITIONS(-DMYSQL_SERVER -DEMBEDDED_LIBRARY -DHAVE_DLOPEN)
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include 
@@ -222,4 +213,4 @@ TARGET_LINK_LIBRARIES(mysqlserver)
 
 ADD_LIBRARY(libmysqld MODULE cmake_dummy.c libmysqld.def)
 ADD_DEPENDENCIES(libmysqld mysqlserver)
-TARGET_LINK_LIBRARIES(libmysqld mysqlserver ws2_32)
+TARGET_LINK_LIBRARIES(libmysqld mysqlserver)

=== modified file 'libmysqld/examples/CMakeLists.txt'
--- a/libmysqld/examples/CMakeLists.txt	2008-12-05 01:05:05 +0000
+++ b/libmysqld/examples/CMakeLists.txt	2008-12-10 11:39:22 +0000
@@ -20,22 +20,20 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include)
 
 # Currently does not work with DBUG, there are missing symbols reported.
-IF(WIN32)
-  ADD_DEFINITIONS(-DUSE_TLS)
-ENDIF(WIN32)
 
 ADD_DEFINITIONS(-DEMBEDDED_LIBRARY -DMY_USE_CLIENT_DLL)
 
 ADD_EXECUTABLE(mysql_embedded ../../client/completion_hash.cc
                ../../client/mysql.cc ../../client/readline.cc
                ../../client/sql_string.cc)
-TARGET_LINK_LIBRARIES(mysql_embedded debug dbug strings mysys vio yassl taocrypt regex
ws2_32)
+
+TARGET_LINK_LIBRARIES(mysql_embedded mysys yassl taocrypt zlib dbug regex strings)
 ADD_DEPENDENCIES(mysql_embedded libmysqld)
 
 ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.c)
-TARGET_LINK_LIBRARIES(mysqltest_embedded debug dbug strings mysys vio yassl taocrypt
regex ws2_32)
+TARGET_LINK_LIBRARIES(mysqltest_embedded mysys yassl taocrypt zlib dbug regex strings)
 ADD_DEPENDENCIES(mysqltest_embedded libmysqld)
 
 ADD_EXECUTABLE(mysql_client_test_embedded ../../tests/mysql_client_test.c)
-TARGET_LINK_LIBRARIES(mysql_client_test_embedded debug dbug strings mysys vio yassl
taocrypt regex ws2_32)
+TARGET_LINK_LIBRARIES(mysql_client_test_embedded dbug mysys yassl taocrypt zlib strings)
 ADD_DEPENDENCIES(mysql_client_test_embedded libmysqld)

=== modified file 'mysql-test/suite/ndb/t/disabled.def'
--- a/mysql-test/suite/ndb/t/disabled.def	2008-12-10 10:11:34 +0000
+++ b/mysql-test/suite/ndb/t/disabled.def	2008-12-12 07:48:03 +0000
@@ -11,6 +11,5 @@
 ##############################################################################
 
 ndb_partition_error2	  : Bug#40989 msvensson 2007-06-27 HF is not sure if the test can
work as internded on all the platforms
-
 # the below testcase have been reworked to avoid the bug, test contains comment, keep bug
open
 #ndb_binlog_ddl_multi     : BUG#18976 2006-04-10 kent    CRBR: multiple binlog, second
binlog may miss schema log events

=== modified file 'mysys/CMakeLists.txt'
--- a/mysys/CMakeLists.txt	2008-12-11 08:03:37 +0000
+++ b/mysys/CMakeLists.txt	2008-12-12 07:48:03 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 # Only the server link with this library, the client libraries and the client
 # executables all link with recompiles of source found in the "mysys" directory.
 # So we only need to create one version of this library, with the "static"

=== modified file 'mysys/my_init.c'
--- a/mysys/my_init.c	2008-11-10 20:41:05 +0000
+++ b/mysys/my_init.c	2008-11-15 17:02:01 +0000
@@ -27,6 +27,8 @@
 #ifdef _MSC_VER
 #include <locale.h>
 #include <crtdbg.h>
+/* WSAStartup needs winsock library*/
+#pragma comment(lib, "ws2_32")
 #endif
 my_bool have_tcpip=0;
 static void my_win_init(void);

=== modified file 'mysys/my_thr_init.c'
--- a/mysys/my_thr_init.c	2008-12-05 01:05:05 +0000
+++ b/mysys/my_thr_init.c	2008-12-10 12:57:51 +0000
@@ -24,11 +24,7 @@
 #include <signal.h>
 
 #ifdef THREAD
-#ifdef USE_TLS
 pthread_key(struct st_my_thread_var*, THR_KEY_mysys);
-#else
-pthread_key(struct st_my_thread_var, THR_KEY_mysys);
-#endif /* USE_TLS */
 pthread_mutex_t THR_LOCK_malloc,THR_LOCK_open,
 	        THR_LOCK_lock,THR_LOCK_isam,THR_LOCK_heap, THR_LOCK_net,
                 THR_LOCK_charset, THR_LOCK_threads, THR_LOCK_time;
@@ -51,7 +47,9 @@ pthread_mutexattr_t my_fast_mutexattr;
 #ifdef PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
 pthread_mutexattr_t my_errorcheck_mutexattr;
 #endif
-
+#ifdef _MSC_VER
+static void install_sigabrt_handler();
+#endif
 #ifdef TARGET_OS_LINUX
 
 /*
@@ -155,9 +153,7 @@ my_bool my_thread_global_init(void)
   pthread_mutex_init(&THR_LOCK_threads,MY_MUTEX_INIT_FAST);
   pthread_mutex_init(&THR_LOCK_time,MY_MUTEX_INIT_FAST);
   pthread_cond_init(&THR_COND_threads, NULL);
-#if defined( __WIN__) || defined(OS2)
-  win_pthread_init();
-#endif
+
 #if !defined(HAVE_LOCALTIME_R) || !defined(HAVE_GMTIME_R)
   pthread_mutex_init(&LOCK_localtime_r,MY_MUTEX_INIT_SLOW);
 #endif
@@ -265,7 +261,6 @@ my_bool my_thread_init(void)
           (ulong) pthread_self());
 #endif
 
-#if !defined(__WIN__) || defined(USE_TLS)
   if (my_pthread_getspecific(struct st_my_thread_var *,THR_KEY_mysys))
   {
 #ifdef EXTRA_DEBUG_THREADS
@@ -274,26 +269,18 @@ my_bool my_thread_init(void)
 #endif
     goto end;
   }
+
+#ifdef _MSC_VER
+  install_sigabrt_handler();
+#endif
+
   if (!(tmp= (struct st_my_thread_var *) calloc(1, sizeof(*tmp))))
   {
     error= 1;
     goto end;
   }
   pthread_setspecific(THR_KEY_mysys,tmp);
-
-#else /* defined(__WIN__) && !(defined(USE_TLS) */
-  /*
-    Skip initialization if the thread specific variable is already initialized
-  */
-  if (THR_KEY_mysys.id)
-    goto end;
-  tmp= &THR_KEY_mysys;
-#endif
-#if defined(__WIN__) && defined(EMBEDDED_LIBRARY)
-  tmp->pthread_self= (pthread_t) getpid();
-#else
   tmp->pthread_self= pthread_self();
-#endif
   pthread_mutex_init(&tmp->mutex,MY_MUTEX_INIT_FAST);
   pthread_cond_init(&tmp->suspend, NULL);
 
@@ -355,15 +342,8 @@ void my_thread_end(void)
     pthread_cond_destroy(&tmp->suspend);
 #endif
     pthread_mutex_destroy(&tmp->mutex);
-#if !defined(__WIN__) || defined(USE_TLS)
     free(tmp);
-#else
-    tmp->init= 0;
-#endif
-
-#if !defined(__WIN__) || defined(USE_TLS)
     pthread_setspecific(THR_KEY_mysys,0);
-#endif
     /*
       Decrement counter for number of running threads. We are using this
       in my_thread_global_end() to wait until all threads have called
@@ -378,9 +358,7 @@ void my_thread_end(void)
   }
   else
   {
-#if !defined(__WIN__) || defined(USE_TLS)
     pthread_setspecific(THR_KEY_mysys,0);
-#endif
   }
 }
 
@@ -446,5 +424,31 @@ static uint get_thread_lib(void)
 #endif
   return THD_LIB_OTHER;
 }
+
+#ifdef _WIN32
+/*
+  In Visual Studio 2005 and later, default SIGABRT handler will overwrite
+  any unhandled exception filter set by the application  and will try to
+  call JIT debugger. This is not what we want, this we calling __debugbreak
+  to stop in debugger, if process is being debugged or to generate 
+  EXCEPTION_BREAKPOINT and then handle_segfault will do its magic.
+*/
+
+#if (_MSC_VER >= 1400)
+static void my_sigabrt_handler(int sig)
+{
+  __debugbreak();
+}
+#endif /*_MSC_VER >=1400 */
+
+static void install_sigabrt_handler(void)
+{
+#if (_MSC_VER >=1400)
+  /*abort() should not override our exception filter*/
+  _set_abort_behavior(0,_CALL_REPORTFAULT);
+  signal(SIGABRT,my_sigabrt_handler);
+#endif /* _MSC_VER >=1400 */
+}
+#endif
 
 #endif /* THREAD */

=== modified file 'mysys/my_wincond.c'
--- a/mysys/my_wincond.c	2008-11-06 18:39:27 +0000
+++ b/mysys/my_wincond.c	2008-11-24 15:30:37 +0000
@@ -16,12 +16,11 @@
 /*****************************************************************************
 ** The following is a simple implementation of posix conditions
 *****************************************************************************/
+#if defined(_WIN32)
 
 #undef SAFE_MUTEX			/* Avoid safe_mutex redefinitions */
 #include "mysys_priv.h"
-#if defined(THREAD) && defined(__WIN__)
 #include <m_string.h>
-#undef getpid
 #include <process.h>
 #include <sys/timeb.h>
 

=== modified file 'mysys/my_winthread.c'
--- a/mysys/my_winthread.c	2008-10-16 00:24:55 +0000
+++ b/mysys/my_winthread.c	2008-11-24 15:30:37 +0000
@@ -14,33 +14,23 @@
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
 
 /*****************************************************************************
-** Simulation of posix threads calls for WIN95 and NT
+** Simulation of posix threads calls for Windows
 *****************************************************************************/
-
+#if defined (_WIN32)
 /* SAFE_MUTEX will not work until the thread structure is up to date */
 #undef SAFE_MUTEX
-
 #include "mysys_priv.h"
-#if defined(THREAD) && defined(__WIN__)
-#include <m_string.h>
-#undef getpid
 #include <process.h>
+#include <signal.h>
 
-static pthread_mutex_t THR_LOCK_thread;
+static void install_sigabrt_handler(void);
 
-struct pthread_map
+struct thread_start_parameter
 {
-  HANDLE pthreadself;
   pthread_handler func;
-  void *param;
+  void *arg;
 };
 
-void win_pthread_init(void)
-{
-  pthread_mutex_init(&THR_LOCK_thread,MY_MUTEX_INIT_FAST);
-}
-
-
 /**
    Adapter to @c pthread_mutex_trylock()
 
@@ -62,86 +52,81 @@ win_pthread_mutex_trylock(pthread_mutex_
   return EBUSY;
 }
 
-
-/*
-** We have tried to use '_beginthreadex' instead of '_beginthread' here
-** but in this case the program leaks about 512 characters for each
-** created thread !
-** As we want to save the created thread handler for other threads to
-** use and to be returned by pthread_self() (instead of the Win32 pseudo
-** handler), we have to go trough pthread_start() to catch the returned handler
-** in the new thread.
-*/
-
-pthread_handler_t pthread_start(void *param)
-{
-  pthread_handler func=((struct pthread_map *) param)->func;
-  void *func_param=((struct pthread_map *) param)->param;
-  void *result;
-  my_thread_init();			/* Will always succeed in windows */
-  pthread_mutex_lock(&THR_LOCK_thread);	  /* Wait for beginthread to return */
-  win_pthread_self=((struct pthread_map *) param)->pthreadself;
-  pthread_mutex_unlock(&THR_LOCK_thread);
-  free((char*) param);			  /* Free param from create */
-  result= (void*) (*func)(func_param);
-  my_thread_end();
-  pthread_exit(result);
-  return 0;				  /* Safety */
+static unsigned int __stdcall pthread_start(void *p)
+{
+  struct thread_start_parameter *par= (struct thread_start_parameter *)p;
+  pthread_handler func= par->func;
+  void *arg= par->arg;
+  free(p);
+  (*func)(arg);
+  return 0;
 }
 
 
 int pthread_create(pthread_t *thread_id, pthread_attr_t *attr,
-		   pthread_handler func, void *param)
+     pthread_handler func, void *param)
 {
-  HANDLE hThread;
-  struct pthread_map *map;
-  DWORD StackSize= 0;
+  uintptr_t handle;
+  struct thread_start_parameter *par;
+  unsigned int  stack_size;
   DBUG_ENTER("pthread_create");
 
-  if (!(map=malloc(sizeof(*map))))
-    DBUG_RETURN(-1);
-  map->func=func;
-  map->param=param;
-  if (attr != NULL)
-  {
-    StackSize= attr->dwStackSize;
-  }
-  if (StackSize == 0)
-    StackSize= PTHREAD_STACK_MIN;
-  pthread_mutex_lock(&THR_LOCK_thread);
-#ifdef __BORLANDC__
-  hThread=(HANDLE)_beginthread((void(_USERENTRY *)(void *)) pthread_start,
-			       StackSize, (void*) map);
-#else
-  hThread=(HANDLE)_beginthread((void( __cdecl *)(void *)) pthread_start,
-			       StackSize, (void*) map);
-#endif
-  DBUG_PRINT("info", ("hThread=%lu",(long) hThread));
-  *thread_id=map->pthreadself=hThread;
-  pthread_mutex_unlock(&THR_LOCK_thread);
+  par= (struct thread_start_parameter *)malloc(sizeof(*par));
+  if (!par)
+   goto error_return;
+
+  par->func= func;
+  par->arg= param;
+  stack_size= attr?attr->dwStackSize:0;
+
+  handle= _beginthreadex(NULL, stack_size , pthread_start, par, 0, thread_id);
+  if (!handle)
+    goto error_return;
+  DBUG_PRINT("info", ("thread id=%u",*thread_id));
 
-  if (hThread == (HANDLE) -1)
-  {
-    int error=errno;
-    DBUG_PRINT("error",
-	       ("Can't create thread to handle request (error %d)",error));
-    DBUG_RETURN(error ? error : -1);
-  }
+  /* Do not need thread handle, close it */
+  CloseHandle((HANDLE)handle);
   DBUG_RETURN(0);
+
+error_return:
+  DBUG_PRINT("error",
+         ("Can't create thread to handle request (error %d)",errno));
+  DBUG_RETURN(-1);
 }
 
 
 void pthread_exit(void *a)
 {
-  _endthread();
+  _endthreadex(0);
 }
 
-/* This is neaded to get the macro pthread_setspecific to work */
-
-int win_pthread_setspecific(void *a,void *b,uint length)
+int pthread_join(pthread_t thread, void **value_ptr)
 {
-  memcpy(a,b,length);
+  DWORD  ret;
+  HANDLE handle;
+
+  handle= OpenThread(SYNCHRONIZE, FALSE, thread);
+  if (!handle)
+  {
+    errno= EINVAL;
+    goto error_return;
+  }
+
+  ret= WaitForSingleObject(handle, INFINITE);
+
+  if(ret != WAIT_OBJECT_0)
+  {
+    errno= EINVAL;
+    goto error_return;
+  }
+
+  CloseHandle(handle);
   return 0;
+
+error_return:
+  if(handle)
+    CloseHandle(handle);
+  return -1;
 }
 
 #endif

=== modified file 'regex/CMakeLists.txt'
--- a/regex/CMakeLists.txt	2008-06-11 18:14:43 +0000
+++ b/regex/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG -DSAFEMALLOC -DSAFE_MUTEX")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 

=== modified file 'scripts/CMakeLists.txt'
--- a/scripts/CMakeLists.txt	2008-03-11 14:46:07 +0000
+++ b/scripts/CMakeLists.txt	2008-11-03 20:13:35 +0000
@@ -24,7 +24,7 @@ ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_SOUR
 
 # Build comp_sql - used for embedding SQL in C or C++ programs
 ADD_EXECUTABLE(comp_sql comp_sql.c)
-TARGET_LINK_LIBRARIES(comp_sql debug dbug mysys strings)
+TARGET_LINK_LIBRARIES(comp_sql dbug mysys strings)
 
 # Use comp_sql to build mysql_fix_privilege_tables_sql.c
 GET_TARGET_PROPERTY(COMP_SQL_EXE comp_sql LOCATION)

=== modified file 'scripts/make_win_bin_dist'
--- a/scripts/make_win_bin_dist	2008-10-21 15:45:46 +0000
+++ b/scripts/make_win_bin_dist	2008-11-11 12:44:05 +0000
@@ -163,7 +163,6 @@ cp tests/$TARGET/*.exe                  
 cp libmysql/$TARGET/libmysql.dll                         $DESTDIR/bin/
 
 cp sql/$TARGET/mysqld.exe                $DESTDIR/bin/mysqld$EXE_SUFFIX.exe
-cp sql/$TARGET/mysqld.map                $DESTDIR/bin/mysqld$EXE_SUFFIX.map
 if [ x"$TARGET" != x"release" ] ; then
   cp sql/$TARGET/mysqld.pdb              $DESTDIR/bin/mysqld$EXE_SUFFIX.pdb
 fi
@@ -172,7 +171,6 @@ if [ x"$PACK_DEBUG" = x"" -a -f "sql/deb
      x"$PACK_DEBUG" = x"yes" ] ; then
   cp sql/debug/mysqld.exe                $DESTDIR/bin/mysqld-debug.exe
   cp sql/debug/mysqld.pdb                $DESTDIR/bin/mysqld-debug.pdb
-  cp sql/debug/mysqld.map                $DESTDIR/bin/mysqld-debug.map
 fi
 
 # ----------------------------------------------------------------------

=== modified file 'sql/CMakeLists.txt'
--- a/sql/CMakeLists.txt	2008-11-06 18:39:27 +0000
+++ b/sql/CMakeLists.txt	2008-11-12 01:37:42 +0000
@@ -14,12 +14,6 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake")
 
-SET(CMAKE_CXX_FLAGS_DEBUG 
-    "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX -DUSE_SYMDIR /Zi")
-SET(CMAKE_C_FLAGS_DEBUG 
-    "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX -DUSE_SYMDIR /Zi")
-SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /MAP /MAPINFO:EXPORTS")

-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include 
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include 
                     ${CMAKE_SOURCE_DIR}/sql 
@@ -87,8 +81,8 @@ ADD_EXECUTABLE(mysqld
                ${PROJECT_SOURCE_DIR}/sql/lex_hash.h)
 
 TARGET_LINK_LIBRARIES(mysqld
-                      heap myisam myisammrg mysys yassl zlib debug dbug yassl 
-                      taocrypt strings vio regex ws2_32)
+                      heap myisam myisammrg mysys yassl zlib dbug yassl 
+                      taocrypt strings vio regex)
 
 TARGET_LINK_LIBRARIES(mysqld backup)
 
@@ -138,7 +132,7 @@ ADD_CUSTOM_COMMAND(
 
 # Gen_lex_hash
 ADD_EXECUTABLE(gen_lex_hash gen_lex_hash.cc)
-TARGET_LINK_LIBRARIES(gen_lex_hash debug dbug mysqlclient ws2_32)
+TARGET_LINK_LIBRARIES(gen_lex_hash dbug mysqlclient)
 GET_TARGET_PROPERTY(GEN_LEX_HASH_EXE gen_lex_hash LOCATION)
 ADD_CUSTOM_COMMAND(
         OUTPUT ${PROJECT_SOURCE_DIR}/sql/lex_hash.h
@@ -161,7 +155,7 @@ SET_DIRECTORY_PROPERTIES(PROPERTIES ADDI
 
 ADD_LIBRARY(udf_example MODULE udf_example.c udf_example.def)
 ADD_DEPENDENCIES(udf_example strings GenError)
-TARGET_LINK_LIBRARIES(udf_example strings ws2_32)
+TARGET_LINK_LIBRARIES(udf_example strings)
 
 ADD_SUBDIRECTORY(backup)
 

=== modified file 'sql/backup/CMakeLists.txt'
--- a/sql/backup/CMakeLists.txt	2008-08-27 17:30:49 +0000
+++ b/sql/backup/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,9 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/sql/backup

=== modified file 'sql/backup/be_thread.cc'
--- a/sql/backup/be_thread.cc	2008-10-30 12:29:54 +0000
+++ b/sql/backup/be_thread.cc	2008-12-05 22:05:20 +0000
@@ -109,10 +109,7 @@ pthread_handler_t backup_thread_for_lock
     Turn off condition variable check for lock.
   */
   locking_thd->lock_state= LOCK_NOT_STARTED;
-
-#if !defined( __WIN__) /* Win32 calls this in pthread_create */
   my_thread_init();
-#endif
 
   /*
     First, create a new THD object.

=== modified file 'sql/mysqld.cc'
--- a/sql/mysqld.cc	2008-12-09 18:59:54 +0000
+++ b/sql/mysqld.cc	2008-12-12 07:48:03 +0000
@@ -841,7 +841,10 @@ static void set_server_version(void);
 static int init_thread_environment();
 static char *get_relative_path(const char *path);
 static void fix_paths(void);
-pthread_handler_t handle_connections_sockets(void *arg);
+void handle_connections_sockets();
+#ifdef _WIN32
+pthread_handler_t handle_connections_sockets_thread(void *arg);
+#endif
 pthread_handler_t kill_server_thread(void *arg);
 static void bootstrap(FILE *file);
 static bool read_init_file(char *file_name);
@@ -2120,29 +2123,6 @@ static BOOL WINAPI console_event_handler
 }
 
 
-/*
-  In Visual Studio 2005 and later, default SIGABRT handler will overwrite
-  any unhandled exception filter set by the application  and will try to
-  call JIT debugger. This is not what we want, this we calling __debugbreak
-  to stop in debugger, if process is being debugged or to generate 
-  EXCEPTION_BREAKPOINT and then handle_segfault will do its magic.
-*/
-
-#if (_MSC_VER >= 1400)
-static void my_sigabrt_handler(int sig)
-{
-  __debugbreak();
-}
-#endif /*_MSC_VER >=1400 */
-
-void win_install_sigabrt_handler(void)
-{
-#if (_MSC_VER >=1400)
-  /*abort() should not override our exception filter*/
-  _set_abort_behavior(0,_CALL_REPORTFAULT);
-  signal(SIGABRT,my_sigabrt_handler);
-#endif /* _MSC_VER >=1400 */
-}
 
 #ifdef DEBUG_UNHANDLED_EXCEPTION_FILTER
 #define DEBUGGER_ATTACH_TIMEOUT 120
@@ -2221,7 +2201,6 @@ LONG WINAPI my_unhandler_exception_filte
 
 static void init_signals(void)
 {
-  win_install_sigabrt_handler();
   if(opt_console)
     SetConsoleCtrlHandler(console_event_handler,TRUE);
   else
@@ -4386,8 +4365,8 @@ static void handle_connections_methods()
   if (have_tcpip && !opt_disable_networking)
   {
     handler_count++;
-    if (pthread_create(&hThread,&connection_attrib,
-		       handle_connections_sockets, 0))
+    if (pthread_create(&hThread,&connection_attrib, 
+                       handle_connections_sockets_thread, 0))
     {
       sql_print_warning("Can't create thread to handle TCP/IP");
       handler_count--;
@@ -4666,14 +4645,7 @@ int main(int argc, char **argv)
 #if defined(_WIN32) || defined(HAVE_SMEM)
   handle_connections_methods();
 #else
-#ifdef __WIN__
-  if (!have_tcpip || opt_disable_networking)
-  {
-    sql_print_error("TCP/IP unavailable or disabled with --skip-networking; no available
interfaces");
-    unireg_abort(1);
-  }
-#endif
-  handle_connections_sockets(0);
+  handle_connections_sockets();
 #endif /* _WIN32 || HAVE_SMEM */
 
   /* (void) pthread_attr_destroy(&connection_attrib); */
@@ -4712,6 +4684,7 @@ int main(int argc, char **argv)
 #endif
   clean_up(1);
   mysqld_exit(0);
+  return 0; /* purecov: inspected */
 }
 
 #endif /* !EMBEDDED_LIBRARY */
@@ -5125,7 +5098,8 @@ inline void kill_broken_server()
 	/* Handle new connections and spawn new process to handle them */
 
 #ifndef EMBEDDED_LIBRARY
-pthread_handler_t handle_connections_sockets(void *arg __attribute__((unused)))
+
+void handle_connections_sockets()
 {
   my_socket sock,new_sock;
   uint error_count=0;
@@ -5327,13 +5301,19 @@ pthread_handler_t handle_connections_soc
 
     create_new_thread(thd);
   }
-
-  decrement_handler_count();
-  DBUG_RETURN(0);
+  DBUG_VOID_RETURN;
 }
 
 
 #ifdef _WIN32
+pthread_handler_t handle_connections_sockets_thread(void *arg)
+{
+  my_thread_init();
+  handle_connections_sockets();
+  decrement_handler_count();
+  return 0;
+}
+
 pthread_handler_t handle_connections_namedpipes(void *arg)
 {
   HANDLE hConnectedPipe;

=== modified file 'sql/sql_connect.cc'
--- a/sql/sql_connect.cc	2008-12-09 14:22:54 +0000
+++ b/sql/sql_connect.cc	2008-12-12 07:48:03 +0000
@@ -39,10 +39,6 @@
 #define MIN_HANDSHAKE_SIZE      6
 #endif /* HAVE_OPENSSL && !EMBEDDED_LIBRARY */
 
-#ifdef __WIN__
-extern void win_install_sigabrt_handler();
-#endif
-
 /*
   Get structure for logging connection data for the current user
 */
@@ -636,13 +632,8 @@ void thd_init_client_charset(THD *thd, u
 bool init_new_connection_handler_thread()
 {
   pthread_detach_this_thread();
-#if defined(__WIN__)
-  win_install_sigabrt_handler();
-#else
-  /* Win32 calls this in pthread_create */
   if (my_thread_init())
     return 1;
-#endif /* __WIN__ */
   return 0;
 }
 

=== modified file 'sql/sql_insert.cc'
--- a/sql/sql_insert.cc	2008-12-09 18:59:54 +0000
+++ b/sql/sql_insert.cc	2008-12-12 07:48:03 +0000
@@ -2344,7 +2344,6 @@ pthread_handler_t handle_delayed_insert(
     since it does not find one in the list.
   */
   pthread_mutex_lock(&di->mutex);
-#if !defined( __WIN__) /* Win32 calls this in pthread_create */
   if (my_thread_init())
   {
     /* Can't use my_error since store_globals has not yet been called */
@@ -2352,8 +2351,6 @@ pthread_handler_t handle_delayed_insert(
                                   ER(ER_OUT_OF_RESOURCES));
     goto end;
   }
-#endif
-
   DBUG_ENTER("handle_delayed_insert");
   thd->thread_stack= (char*) &thd;
   if (init_thr_lock() || thd->store_globals())
@@ -2544,9 +2541,7 @@ err:
    */
   trans_rollback_stmt(thd);
 
-#ifndef __WIN__
 end:
-#endif
   /*
     di should be unlinked from the thread handler list and have no active
     clients

=== modified file 'sql/udf_example.c'
--- a/sql/udf_example.c	2008-05-29 15:44:11 +0000
+++ b/sql/udf_example.c	2008-11-03 20:13:35 +0000
@@ -139,6 +139,11 @@ typedef long long longlong;
 #include <mysql.h>
 #include <ctype.h>
 
+#ifdef _WIN32
+/* inet_aton needs winsock library */
+#pragma comment(lib, "ws2_32")
+#endif
+
 static pthread_mutex_t LOCK_hostname;
 
 #ifdef HAVE_DLOPEN

=== modified file 'storage/blackhole/CMakeLists.txt'
--- a/storage/blackhole/CMakeLists.txt	2008-01-30 02:58:57 +0000
+++ b/storage/blackhole/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,9 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include)

=== modified file 'storage/csv/CMakeLists.txt'
--- a/storage/csv/CMakeLists.txt	2008-01-30 02:58:57 +0000
+++ b/storage/csv/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,9 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include)

=== modified file 'storage/example/CMakeLists.txt'
--- a/storage/example/CMakeLists.txt	2008-01-30 02:58:57 +0000
+++ b/storage/example/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex

=== modified file 'storage/heap/CMakeLists.txt'
--- a/storage/heap/CMakeLists.txt	2008-06-11 18:14:43 +0000
+++ b/storage/heap/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,9 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex

=== modified file 'storage/innobase/CMakeLists.txt'
--- a/storage/innobase/CMakeLists.txt	2008-06-11 18:14:43 +0000
+++ b/storage/innobase/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 ADD_DEFINITIONS(-DMYSQL_SERVER -D_WIN32 -D_LIB)
 
 # Bug 19424 - InnoDB: Possibly a memory overrun of the buffer being freed (64-bit Visual
C)

=== modified file 'storage/maria/CMakeLists.txt'
--- a/storage/maria/CMakeLists.txt	2008-11-26 11:48:06 +0000
+++ b/storage/maria/CMakeLists.txt	2008-12-10 11:39:22 +0000
@@ -14,8 +14,6 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake")
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql
@@ -48,39 +46,39 @@ SET(MARIA_SOURCES ma_init.c ma_open.c ma
 
 IF(NOT SOURCE_SUBLIBS)
 
-  ADD_LIBRARY(maria ${MARIA_SOURCES})
-  ADD_DEPENDENCIES(maria GenError)
+ADD_LIBRARY(maria ${MARIA_SOURCES})
+ADD_DEPENDENCIES(maria GenError)
 
 ADD_EXECUTABLE(maria_ftdump maria_ftdump.c)
-TARGET_LINK_LIBRARIES(maria_ftdump maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(maria_ftdump maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(maria_chk maria_chk.c)
-TARGET_LINK_LIBRARIES(maria_chk maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(maria_chk maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(maria_read_log maria_read_log.c)
-TARGET_LINK_LIBRARIES(maria_read_log maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(maria_read_log maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(maria_pack maria_pack.c)
-TARGET_LINK_LIBRARIES(maria_pack maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(maria_pack maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(maria_dump_log ma_loghandler.c unittest/ma_loghandler_examples.c)
-TARGET_LINK_LIBRARIES(maria_dump_log maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(maria_dump_log maria myisam mysys dbug strings zlib)
 SET_TARGET_PROPERTIES(maria_dump_log PROPERTIES COMPILE_FLAGS "-DMARIA_DUMP_LOG")
 
 ADD_EXECUTABLE(ma_test1 ma_test1.c)
-TARGET_LINK_LIBRARIES(ma_test1 maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(ma_test1 maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(ma_test2 ma_test2.c)
-TARGET_LINK_LIBRARIES(ma_test2 maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(ma_test2 maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(ma_test3 ma_test3.c)
-TARGET_LINK_LIBRARIES(ma_test3 maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(ma_test3 maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(ma_rt_test ma_rt_test.c)
-TARGET_LINK_LIBRARIES(ma_rt_test maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(ma_rt_test maria myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(ma_sp_test ma_sp_test.c)
-TARGET_LINK_LIBRARIES(ma_sp_test maria myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(ma_sp_test maria myisam mysys dbug strings zlib)
 
 IF(EMBED_MANIFESTS)
   MYSQL_EMBED_MANIFEST("maria_ftdump" "asInvoker")

=== modified file 'storage/maria/unittest/CMakeLists.txt'
--- a/storage/maria/unittest/CMakeLists.txt	2008-10-16 19:44:12 +0000
+++ b/storage/maria/unittest/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,12 +13,9 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/unittest/mytap)
-LINK_LIBRARIES(maria myisam mytap mysys dbug strings wsock32 zlib)
+LINK_LIBRARIES(maria myisam mytap mysys dbug strings zlib)
 
 ADD_EXECUTABLE(ma_control_file-t ma_control_file-t.c)
 ADD_EXECUTABLE(trnman-t trnman-t.c)

=== modified file 'storage/myisam/CMakeLists.txt'
--- a/storage/myisam/CMakeLists.txt	2008-07-09 07:12:43 +0000
+++ b/storage/myisam/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -14,9 +14,6 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake")
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex
@@ -42,32 +39,32 @@ IF(NOT SOURCE_SUBLIBS)
   ADD_DEPENDENCIES(myisam GenError)
 
   ADD_EXECUTABLE(myisam_ftdump myisam_ftdump.c)
-  TARGET_LINK_LIBRARIES(myisam_ftdump myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(myisam_ftdump myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(myisamchk myisamchk.c)
-  TARGET_LINK_LIBRARIES(myisamchk myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(myisamchk myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(myisamlog myisamlog.c)
-  TARGET_LINK_LIBRARIES(myisamlog myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(myisamlog myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(myisampack myisampack.c)
 
-  TARGET_LINK_LIBRARIES(myisampack myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(myisampack myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(mi_test1 mi_test1.c)
-  TARGET_LINK_LIBRARIES(mi_test1 myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(mi_test1 myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(mi_test2 mi_test2.c)
-  TARGET_LINK_LIBRARIES(mi_test2 myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(mi_test2 myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(mi_test3 mi_test3.c)
-  TARGET_LINK_LIBRARIES(mi_test3  myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(mi_test3  myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(sp_test sp_test.c)
-  TARGET_LINK_LIBRARIES(sp_test myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(sp_test myisam mysys dbug strings zlib)
 
   ADD_EXECUTABLE(rt_test rt_test.c)
-  TARGET_LINK_LIBRARIES(rt_test myisam mysys debug dbug strings zlib ws2_32)
+  TARGET_LINK_LIBRARIES(rt_test myisam mysys dbug strings zlib)
   
   IF(EMBED_MANIFESTS)
     MYSQL_EMBED_MANIFEST("myisam_ftdump" "asInvoker")

=== modified file 'storage/myisammrg/CMakeLists.txt'
--- a/storage/myisammrg/CMakeLists.txt	2008-06-11 18:14:43 +0000
+++ b/storage/myisammrg/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,9 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex

=== modified file 'strings/CMakeLists.txt'
--- a/strings/CMakeLists.txt	2008-10-20 19:13:22 +0000
+++ b/strings/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,9 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
 SET(STRINGS_SOURCES bchange.c bcmp.c bfill.c bmove512.c bmove_upp.c ctype-big5.c
ctype-bin.c ctype-cp932.c

=== modified file 'tests/CMakeLists.txt'
--- a/tests/CMakeLists.txt	2008-06-11 18:14:43 +0000
+++ b/tests/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,15 +13,12 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-# About "mysqlclient_notls", see note in "client/CMakeLists.txt"
-
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 ADD_DEFINITIONS("-DMYSQL_CLIENT")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
 ADD_EXECUTABLE(mysql_client_test mysql_client_test.c ../mysys/my_memmem.c)
-TARGET_LINK_LIBRARIES(mysql_client_test mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(mysql_client_test mysqlclient)
 
 ADD_EXECUTABLE(bug25714 bug25714.c)
-TARGET_LINK_LIBRARIES(bug25714 mysqlclient_notls ws2_32)
+TARGET_LINK_LIBRARIES(bug25714 mysqlclient)

=== modified file 'unittest/examples/CMakeLists.txt'
--- a/unittest/examples/CMakeLists.txt	2007-10-09 17:55:30 +0000
+++ b/unittest/examples/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql

=== modified file 'unittest/mysys/CMakeLists.txt'
--- a/unittest/mysys/CMakeLists.txt	2008-04-02 17:52:11 +0000
+++ b/unittest/mysys/CMakeLists.txt	2008-11-12 01:37:42 +0000
@@ -13,19 +13,16 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include
                     ${CMAKE_SOURCE_DIR}/unittest/mytap)
 ADD_EXECUTABLE(bitmap-t bitmap-t.c)
-TARGET_LINK_LIBRARIES(bitmap-t mytap mysys dbug strings ws2_32)
+TARGET_LINK_LIBRARIES(bitmap-t mytap mysys dbug strings)
 
 ADD_EXECUTABLE(base64-t base64-t.c)
-TARGET_LINK_LIBRARIES(base64-t mytap mysys dbug strings ws2_32)
+TARGET_LINK_LIBRARIES(base64-t mytap mysys dbug strings)
 
 ADD_EXECUTABLE(my_atomic-t my_atomic-t.c)
-TARGET_LINK_LIBRARIES(my_atomic-t mytap mysys dbug strings ws2_32)
+TARGET_LINK_LIBRARIES(my_atomic-t mytap mysys dbug strings)

=== modified file 'unittest/mytap/CMakeLists.txt'
--- a/unittest/mytap/CMakeLists.txt	2007-10-09 17:55:30 +0000
+++ b/unittest/mytap/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
                     ${CMAKE_SOURCE_DIR}/sql

=== modified file 'vio/CMakeLists.txt'
--- a/vio/CMakeLists.txt	2008-06-11 18:14:43 +0000
+++ b/vio/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -13,8 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG -DSAFEMALLOC -DSAFE_MUTEX")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG -DSAFEMALLOC -DSAFE_MUTEX")
 
 ADD_DEFINITIONS(-DUSE_SYMDIR)
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/extra/yassl/include)

=== modified file 'zlib/CMakeLists.txt'
--- a/zlib/CMakeLists.txt	2007-08-03 20:57:21 +0000
+++ b/zlib/CMakeLists.txt	2008-11-05 10:19:19 +0000
@@ -20,8 +20,6 @@
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/zlib)
 
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D_DEBUG")
-
 SET(ZLIB_SOURCES  adler32.c compress.c crc32.c crc32.h deflate.c deflate.h gzio.c
infback.c inffast.c inffast.h
 			inffixed.h inflate.c inflate.h inftrees.c inftrees.h trees.c trees.h uncompr.c zconf.h
zlib.h
 			zutil.c zutil.h)

Thread
bzr commit into mysql-6.0 branch (tomas.ulin:2701) Tomas Ulin12 Dec