List:Commits« Previous MessageNext Message »
From:antony Date:January 25 2007 9:59am
Subject:bk commit into 5.1 tree (antony:1.2404)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of antony. When antony does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-01-25 01:59:24-08:00, antony@stripped +33 -0
  Allow CMake to generate working project files for Xcode

  CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +4 -10
    take out a few Win32 specific declarations

  Makefile.am@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +1 -1
    rename dir win -> cmake

  client/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +39 -17
    taocrypt uses C++ so need to add in dummy C++ file to ensure
    that CMake pulls in C++ library
    Only link wsock32 on Win32.

  client/mysql_upgrade.c@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +7 -0
    cmake Xcode generator cannot handle defines with " characters

  cmake/Makefile.am@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +3 -1
    some new files

  cmake/Makefile.am@stripped, 2007-01-24 10:59:54-08:00, antony@stripped +0 -0
    Rename: win/Makefile.am -> cmake/Makefile.am

  cmake/README@stripped, 2007-01-24 10:59:54-08:00, antony@stripped +0 -0
    Rename: win/README -> cmake/README

  cmake/build-vs71.bat@stripped, 2007-01-24 10:59:54-08:00, antony@stripped +0 -0
    Rename: win/build-vs71.bat -> cmake/build-vs71.bat

  cmake/build-vs8.bat@stripped, 2007-01-24 10:59:54-08:00, antony@stripped +0 -0
    Rename: win/build-vs8.bat -> cmake/build-vs8.bat

  cmake/build-vs8_x64.bat@stripped, 2007-01-24 10:59:54-08:00, antony@stripped +0 -0
    Rename: win/build-vs8_x64.bat -> cmake/build-vs8_x64.bat

  cmake/build-xcode.sh@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +38 -0
    New BitKeeper file ``cmake/build-xcode.sh''

  cmake/build-xcode.sh@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +0 -0

  cmake/cleanxcode.sh@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +7 -0
    New BitKeeper file ``cmake/cleanxcode.sh''

  cmake/cleanxcode.sh@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +0 -0

  cmake/config.unix@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +17 -0
    New BitKeeper file ``cmake/config.unix''

  cmake/config.unix@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +0 -0

  cmake/config.win@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +25 -0
    New BitKeeper file ``cmake/config.win''

  cmake/config.win@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +0 -0

  cmake/configure.js@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +1 -0
    include cmake declarations for windows

  cmake/configure.js@stripped, 2007-01-24 10:59:54-08:00, antony@stripped +0 -0
    Rename: win/configure.js -> cmake/configure.js

  cmake/configure.sh.in@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +79 -0
    New BitKeeper file ``cmake/configure.sh.in''

  cmake/configure.sh.in@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +0 -0

  cmd-line-utils/readline/CMakeLists.txt@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +35 -0
    New BitKeeper file ``cmd-line-utils/readline/CMakeLists.txt''

  cmd-line-utils/readline/CMakeLists.txt@stripped, 2007-01-25 01:59:20-08:00, antony@stripped +0 -0

  configure.in@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +1 -1
    rename dir win -> cmake

  dbug/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +1 -1
    remove unneccessary/unused declaration

  extra/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +11 -4
    only link wsock32 when generating for Win32

  extra/yassl/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +8 -2
    Only define WIN32 for Win32.
    Xcode generator does not handle relative paths

  extra/yassl/taocrypt/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +3 -1
    Xcode generator does not handle relative paths

  libmysql/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +15 -6
    Only link in wsock32 on Win32.
    Only build mytest on Win32.
    Fix flags

  libmysqld/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +11 -2
    fix flags
    Only link in wsock32 on Win32

  libmysqld/examples/CMakeLists.txt@stripped, 2007-01-25 01:59:18-08:00, antony@stripped +6 -1
    Only link in wsock32 on Win32

  mysys/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +2 -0
    fix flags

  mysys/charset.c@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +6 -0
    Xcode generator cannot handle string defines

  server-tools/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +12 -2
    fix flags
    only link wsock32 on Win32

  server-tools/instance-manager/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +11 -2
    fix flags
    only link wsock32 on Win32

  sql/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +34 -14
    fix flags
    fix source files
    don't hardwire bison.exe
    only link wsock32 on Win32

  sql/mysqld.cc@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +4 -0
    Xcode generator cannot handle string defines

  storage/innobase/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +7 -3
    fix flags
    xcode generator cannot handle relative paths

  storage/myisam/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +11 -4
    only link wsock32 on Win32

  tests/CMakeLists.txt@stripped, 2007-01-25 01:59:19-08:00, antony@stripped +8 -2
    only link wsock32 on Win32
    need dummy C++ file to bring in c++ lib

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	antony
# Host:	ppcg5.local
# Root:	/Volumes/Development/Work/mysql-5.1-cmake

--- 1.112/Makefile.am	2007-01-25 01:59:35 -08:00
+++ 1.113/Makefile.am	2007-01-25 01:59:35 -08:00
@@ -27,7 +27,7 @@ SUBDIRS =		. include @docs_dirs@ @zlib_d
 			@sql_server@ scripts @man_dirs@ tests \
 			netware @libmysqld_dirs@ \
 			mysql-test support-files sql-bench @tools_dirs@ \
-			win
+			cmake
 
 DIST_SUBDIRS =		$(SUBDIRS) BUILD
 

--- 1.421/configure.in	2007-01-25 01:59:35 -08:00
+++ 1.422/configure.in	2007-01-25 01:59:35 -08:00
@@ -2533,7 +2533,7 @@ AC_CONFIG_FILES(Makefile extra/Makefile 
  tests/Makefile Docs/Makefile support-files/Makefile dnl
  support-files/MacOSX/Makefile mysql-test/Makefile dnl
  mysql-test/ndb/Makefile netware/Makefile sql-bench/Makefile dnl
- include/mysql_version.h plugin/Makefile win/Makefile)
+ include/mysql_version.h plugin/Makefile cmake/Makefile cmake/configure.sh)
 
 AC_CONFIG_COMMANDS([default], , test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h)
 

--- 1.149/mysys/charset.c	2007-01-25 01:59:35 -08:00
+++ 1.150/mysys/charset.c	2007-01-25 01:59:35 -08:00
@@ -20,6 +20,12 @@
 #include <my_dir.h>
 #include <my_xml.h>
 
+#ifndef SHAREDIR
+#define SHAREDIR "share"
+#endif
+#ifndef DEFAULT_CHARSET_HOME
+#define DEFAULT_CHARSET_HOME "/usr/local/mysql"
+#endif
 
 /*
   The code below implements this functionality:

--- 1.607/sql/mysqld.cc	2007-01-25 01:59:35 -08:00
+++ 1.608/sql/mysqld.cc	2007-01-25 01:59:35 -08:00
@@ -13,6 +13,10 @@
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
 
+#ifndef DEFAULT_MYSQL_HOME
+#define DEFAULT_MYSQL_HOME "/usr/local/mysql"
+#endif
+
 #include "mysql_priv.h"
 #include <m_ctype.h>
 #include <my_dir.h>
--- New file ---
+++ cmake/build-xcode.sh	07/01/25 01:59:20
#!/bin/sh
#
# Copyright (C) 2007 MySQL AB
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

config=cmake/configure.data

if [ ! -f cmake/configure.sh ]; then
  echo "Must run configure script first"
  exit 1
fi

. cmake/configure.sh

rm -f CMakeCache.txt
if [ -f cmake/xcodecache.txt ]; then
  cp cmake/xcodecache.txt CMakeCache.txt
fi

cmake -G "Xcode"

if [ -f CMakeCache.txt ]; then
  cp CMakeCache.txt cmake/xcodecache.txt
fi

exit 0

--- New file ---
+++ cmake/cleanxcode.sh	07/01/25 01:59:20
#!/bin/sh

rm -rf `find . -type d -name MySql.build`
rm -rf `find . -type d -name Debug`
rm -rf `find . -type d -name Release`
rm -rf `find . -type d -name CMakeFiles`
rm -rf CMakeCache.txt cmake/xcodecache.txt cmake_install.cmake CMakeScripts

--- New file ---
+++ cmake/config.unix	07/01/25 01:59:20
# Copyright (C) 2007 MySQL AB
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

SET(localstatedir "/usr/local/mysql/var")


--- New file ---
+++ cmake/config.win	07/01/25 01:59:20
# Copyright (C) 2007 MySQL AB
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

SET(localstatedir "C:\\mysql\\data")

IF(__NT__)
  ADD_DEFINITIONS(-D __NT__)
ENDIF(__NT__)
IF(CYBOZU)
  ADD_DEFINITIONS(-D CYBOZU)
ENDIF(CYBOZU)

ADD_DEFINITIONS("-D_WINDOWS -D__WIN__ -D _CRT_SECURE_NO_DEPRECATE")

--- New file ---
+++ cmake/configure.sh.in	07/01/25 01:59:20
#!/bin/sh
#
# Copyright (C) 2007 MySQL AB
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

#top_builddir="@top_builddir@"
#ndbcluster_libs="@ndbcluster_libs@"
#ndbcluster_system_libs="@ndbcluster_system_libs@"
#NDB_SCI_LIBS="@NDB_SCI_LIBS@"

cat - >$config<<EOF
SET (COMPILATION_COMMENT "@COMPILATION_COMMENT@")
SET (PROTOCOL_VERSION "@PROTOCOL_VERSION@")
SET (DOT_FRM_VERSION "@DOT_FRM_VERSION@")
SET (MYSQL_TCP_PORT "@MYSQL_TCP_PORT@")
SET (MYSQL_UNIX_ADDR "@MYSQL_UNIX_ADDR@")
SET (VERSION "@VERSION@")
SET (MYSQL_BASE_VERSION "@MYSQL_BASE_VERSION@")
SET (MYSQL_VERSION_ID "@MYSQL_VERSION_ID@")
SET (YACC "`which bison`")
EOF

if [ -n "@plugin_partition_static_target@" ]; then
  echo "SET (WITH_PARTITION_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_archive_static_target@" ]; then
  echo "SET (WITH_ARCHIVE_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_blackhole_static_target@" ]; then
  echo "SET (WITH_BLACKHOLE_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_csv_static_target@" ]; then
  echo "SET (WITH_CSV_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_example_static_target@" ]; then
  echo "SET (WITH_EXAMPLE_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_federated_static_target@" ]; then
  echo "SET (WITH_FEDERATED_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_heap_static_target@" ]; then
  echo "SET (WITH_HEAP_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_innobase_static_target@" ]; then
  echo "SET (WITH_INNOBASE_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_myisam_static_target@" ]; then
  echo "SET (WITH_MYISAM_STORAGE_ENGINE TRUE)" >>$config
fi

if [ -n "@plugin_myisammrg_static_target@" ]; then
  echo "SET (WITH_MYISAMMRG_STORAGE_ENGINE TRUE)" >>$config
fi

#if [ -n "@plugin_ndbcluster_static_target@" ]; then
#  echo "SET (WITH_NDBCLUSTER_STORAGE_ENGINE TRUE)" >>$config
#fi

echo "INCLUDE(cmake/config.unix)" >>$config

--- New file ---
+++ cmd-line-utils/readline/CMakeLists.txt	07/01/25 01:59:20
# Copyright (C) 2007 MySQL AB
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
                    ${CMAKE_SOURCE_DIR}
)

ADD_DEFINITIONS(-DUNDEF_THREADS_HACK -DHAVE_CONFIG_H -DNO_KILL_INTR)

ADD_LIBRARY(myreadline
			readline.c funmap.c keymaps.c
			vi_mode.c parens.c rltty.c
			complete.c bind.c isearch.c
			display.c signals.c
			util.c kill.c
			undo.c macro.c input.c
			callback.c terminal.c xmalloc.c
			history.c histsearch.c histexpand.c
			histfile.c nls.c search.c
			shell.c tilde.c misc.c text.c mbutil.c
			compat.c savestring.c
)



--- 1.2/server-tools/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.3/server-tools/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -17,17 +17,27 @@ SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_F
 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
 ADD_DEFINITIONS(-DMYSQL_SERVER -DMYSQL_INSTANCE_MANAGER)
+
+IF(WIN32)
+ADD_DEFINITIONS(-DWIN32)
+SET(MYSQLMANAGER_EXTRA_SOURCES imservice.cpp windowsservice.cpp)
+ENDIF(WIN32)
+
 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/sql
                     ${PROJECT_SOURCE_DIR}/extra/yassl/include)
  
 ADD_EXECUTABLE(mysqlmanager buffer.cc command.cc commands.cc guardian.cc instance.cc instance_map.cc
                             instance_options.cc listener.cc log.cc manager.cc messages.cc mysql_connection.cc
                             mysqlmanager.cc options.cc parse.cc parse_output.cc priv.cc protocol.cc
-                            thread_registry.cc user_map.cc imservice.cpp windowsservice.cpp
+                            thread_registry.cc user_map.cc
                             user_management_commands.cc
+                            ${MYSQLMANAGER_EXTRA_SOURCES}
                             ../../sql/net_serv.cc ../../sql-common/pack.c ../../sql/password.c
                             ../../sql/sql_state.c ../../sql-common/client.c ../../libmysql/get_password.c
                             ../../libmysql/errmsg.c)
 
 ADD_DEPENDENCIES(mysqlmanager GenError)
-TARGET_LINK_LIBRARIES(mysqlmanager dbug mysys strings taocrypt vio yassl zlib wsock32)
+TARGET_LINK_LIBRARIES(mysqlmanager dbug mysys strings taocrypt vio yassl zlib)
+IF(WIN32)
+TARGET_LINK_LIBRARIES(mysqlmanager wsock32)
+ENDIF(WIN32)

--- 1.24/client/mysql_upgrade.c	2007-01-25 01:59:35 -08:00
+++ 1.25/client/mysql_upgrade.c	2007-01-25 01:59:35 -08:00
@@ -22,6 +22,13 @@
 #define MYSQL_UPGRADE_INFO_NAME "mysql_upgrade_info"
 #define MYSQL_FIX_PRIV_TABLES_NAME "mysql_fix_privilege_tables.sql"
 
+#ifndef DEFAULT_MYSQL_HOME
+#define DEFAULT_MYSQL_HOME "/usr/local/mysql"
+#endif
+#ifndef DATADIR
+#define DATADIR DEFAULT_MYSQL_HOME "/var"
+#endif
+
 #define MY_PARENT       (1 << 0)
 #define MY_ISDIR        (1 << 1)
 #define MY_SEARCH_SELF  (1 << 2)

--- 1.12/libmysqld/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.13/libmysqld/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -18,7 +18,10 @@ SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS
 
 # Need to set USE_TLS, since __declspec(thread) approach to thread local
 # storage does not work properly in DLLs.
-ADD_DEFINITIONS(-DUSE_TLS -DMYSQL_SERVER -DEMBEDDED_LIBRARY)
+IF(WIN32)
+ADD_DEFINITIONS(-DUSE_TLS)
+ENDIF(WIN32)
+ADD_DEFINITIONS(-DMYSQL_SERVER -DEMBEDDED_LIBRARY)
 
 # The old Windows build method used renamed (.cc -> .cpp) source files, fails
 # in #include in lib_sql.cc. So disable that using the USING_CMAKE define.
@@ -84,7 +87,9 @@ ADD_LIBRARY(mysqldemb emb_qcache.cc libm
 FILE(WRITE cmake_dummy.c " ")
 
 ADD_LIBRARY(mysqlserver cmake_dummy.c)
+IF(WIN32)
 TARGET_LINK_LIBRARIES(mysqlserver wsock32)
+ENDIF(WIN32)
 ADD_DEPENDENCIES(mysqlserver dbug mysys strings zlib mysqldemb regex myisam myisammrg
                  heap yassl taocrypt)
 IF(WITH_ARCHIVE_STORAGE_ENGINE)
@@ -100,6 +105,10 @@ IF(WITH_INNOBASE_STORAGE_ENGINE)
   ADD_DEPENDENCIES(mysqlserver innobase)
 ENDIF(WITH_INNOBASE_STORAGE_ENGINE)
 
+IF(WIN32)
 ADD_LIBRARY(libmysqld MODULE cmake_dummy.c libmysqld.def)
 TARGET_LINK_LIBRARIES(libmysqld wsock32)
-ADD_DEPENDENCIES(libmysqld mysqlserver)
+ELSE(WIN32)
+ADD_LIBRARY(libmysqld cmake_dummy.c)
+ENDIF(WIN32)
+ADD_DEPENDENCIES(libmysqld mysqlserver dbug)

--- 1.4/libmysqld/examples/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.5/libmysqld/examples/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -17,10 +17,15 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/libmysqld/include
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include)
 
+IF(WIN32)
+ADD_DEFINITIONS(-DWIN32)
+TARGET_LINK_LIBRARIES(test_libmysqld wsock32)
+ENDIF(WIN32)
+
 # Currently does not work with DBUG, there are missing symbols reported.
 ADD_DEFINITIONS(-DDBUG_OFF)
 ADD_EXECUTABLE(test_libmysqld ../../client/completion_hash.cc
                ../../client/mysql.cc ../../client/readline.cc
                ../../client/sql_string.cc)
-TARGET_LINK_LIBRARIES(test_libmysqld yassl taocrypt zlib wsock32)
+TARGET_LINK_LIBRARIES(test_libmysqld yassl taocrypt zlib)
 ADD_DEPENDENCIES(test_libmysqld libmysqld)

--- 1.5/win/Makefile.am	2007-01-25 01:59:35 -08:00
+++ 1.7/cmake/Makefile.am	2007-01-25 01:59:35 -08:00
@@ -14,7 +14,9 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
 ## Process this file with automake to create Makefile.in
-EXTRA_DIST = build-vs71.bat build-vs8.bat build-vs8_x64.bat configure.js README
+EXTRA_DIST = \
+        build-vs71.bat build-vs8.bat build-vs8_x64.bat configure.js README \
+        build-xcode.sh configure.sh.in config.win config.unix
 
 # Don't update the files from bitkeeper
 %::SCCS/s.%

--- 1.25/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.26/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -16,7 +16,7 @@
 PROJECT(MySql)
 
 # This reads user configuration, generated by configure.js.
-INCLUDE(win/configure.data)
+INCLUDE(cmake/configure.data)
 
 # Hardcode support for CSV storage engine
 SET(WITH_CSV_STORAGE_ENGINE TRUE)
@@ -68,7 +68,6 @@ ENDIF(WITH_FEDERATED_STORAGE_ENGINE)
 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/sql/sql_builtin.cc.in 
                ${CMAKE_SOURCE_DIR}/sql/sql_builtin.cc @ONLY)
 
-SET(localstatedir "C:\\mysql\\data")
 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-huge.cnf.sh
                ${CMAKE_SOURCE_DIR}/support-files/my-huge.ini @ONLY)
 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-innodb-heavy-4G.cnf.sh
@@ -80,13 +79,6 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/suppo
 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/support-files/my-small.cnf.sh
                ${CMAKE_SOURCE_DIR}/support-files/my-small.ini @ONLY)
 
-IF(__NT__)
-  ADD_DEFINITIONS(-D __NT__)
-ENDIF(__NT__)
-IF(CYBOZU)
-  ADD_DEFINITIONS(-D CYBOZU)
-ENDIF(CYBOZU)
-
 # in some places we use DBUG_OFF
 SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -D DBUG_OFF")
 SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -D DBUG_OFF")
@@ -124,7 +116,9 @@ IF(CMAKE_GENERATOR MATCHES "Visual Studi
 ENDIF(CMAKE_GENERATOR MATCHES "Visual Studio 7" OR 
       CMAKE_GENERATOR MATCHES "Visual Studio 8")
 
-ADD_DEFINITIONS("-D_WINDOWS -D__WIN__ -D _CRT_SECURE_NO_DEPRECATE")
+IF(UNIX)
+ADD_SUBDIRECTORY(cmd-line-utils/readline)
+ENDIF(UNIX)
 
 ADD_SUBDIRECTORY(vio)
 ADD_SUBDIRECTORY(dbug)

--- 1.15/client/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.16/client/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -16,6 +16,8 @@
 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
+FILE(WRITE cmake_dummy.cc " ")
+
 # The old Windows build method used renamed (.cc -> .cpp) source files, fails
 # in #include in mysqlbinlog.cc. So disable that using the USING_CMAKE define.
 ADD_DEFINITIONS(-DUSING_CMAKE)
@@ -26,6 +28,9 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/regex
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/strings)
+IF(UNIX)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/cmd-line-utils/readline)
+ENDIF(UNIX)
 
 ADD_LIBRARY(mysqlclient ../mysys/array.c ../strings/bchange.c ../strings/bmove.c 
                         ../strings/bmove_upp.c ../mysys/charset-def.c ../mysys/charset.c
@@ -66,33 +71,50 @@ ADD_LIBRARY(mysqlclient ../mysys/array.c
 ADD_DEPENDENCIES(mysqlclient GenError)
 ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc sql_string.cc)
 LINK_DIRECTORIES(${MYSQL_BINARY_DIR}/mysys ${MYSQL_BINARY_DIR}/zlib)
-TARGET_LINK_LIBRARIES(mysql mysqlclient mysys yassl taocrypt zlib dbug wsock32)
+TARGET_LINK_LIBRARIES(mysql mysqlclient mysys yassl taocrypt zlib dbug)
 
-ADD_EXECUTABLE(mysqltest mysqltest.c)
-TARGET_LINK_LIBRARIES(mysqltest mysqlclient mysys yassl taocrypt zlib dbug regex wsock32)
+ADD_EXECUTABLE(mysqltest mysqltest.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysqltest mysqlclient mysys yassl taocrypt zlib dbug regex)
 
-ADD_EXECUTABLE(mysqlcheck mysqlcheck.c)
-TARGET_LINK_LIBRARIES(mysqlcheck mysqlclient dbug yassl taocrypt zlib wsock32)
+ADD_EXECUTABLE(mysqlcheck mysqlcheck.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysqlcheck mysqlclient dbug yassl taocrypt zlib)
 
-ADD_EXECUTABLE(mysqldump mysqldump.c ../sql-common/my_user.c)
-TARGET_LINK_LIBRARIES(mysqldump mysqlclient mysys dbug yassl taocrypt zlib wsock32)
+ADD_EXECUTABLE(mysqldump mysqldump.c ../sql-common/my_user.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysqldump mysqlclient mysys dbug yassl taocrypt zlib)
 
-ADD_EXECUTABLE(mysqlimport mysqlimport.c)
-TARGET_LINK_LIBRARIES(mysqlimport mysqlclient mysys dbug yassl taocrypt zlib wsock32)
+ADD_EXECUTABLE(mysqlimport mysqlimport.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysqlimport mysqlclient mysys dbug yassl taocrypt zlib)
 
-ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c ../mysys/my_getpagesize.c)
-TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient dbug yassl taocrypt zlib wsock32)
+ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c ../mysys/my_getpagesize.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient dbug yassl taocrypt zlib)
 
-ADD_EXECUTABLE(mysqlshow mysqlshow.c)
-TARGET_LINK_LIBRARIES(mysqlshow mysqlclient mysys dbug yassl taocrypt zlib wsock32)
+ADD_EXECUTABLE(mysqlshow mysqlshow.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysqlshow mysqlclient mysys dbug yassl taocrypt zlib)
 
 ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc ../mysys/mf_tempdir.c ../mysys/my_new.cc
                            ../mysys/my_bit.c ../mysys/my_bitmap.c ../mysys/my_vle.c
                            ../mysys/base64.c)
-TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient dbug yassl taocrypt zlib wsock32)
+TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient dbug yassl taocrypt zlib)
 
 ADD_EXECUTABLE(mysqladmin mysqladmin.cc)
-TARGET_LINK_LIBRARIES(mysqladmin mysqlclient mysys dbug yassl taocrypt zlib wsock32)
+TARGET_LINK_LIBRARIES(mysqladmin mysqlclient mysys dbug yassl taocrypt zlib)
+
+ADD_EXECUTABLE(mysqlslap mysqlslap.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysqlslap mysqlclient mysys yassl taocrypt zlib dbug)
 
-ADD_EXECUTABLE(mysqlslap mysqlslap.c)
-TARGET_LINK_LIBRARIES(mysqlslap mysqlclient mysys yassl taocrypt zlib wsock32 dbug)
+IF(WIN32)
+TARGET_LINK_LIBRARIES(mysql wsock32)
+TARGET_LINK_LIBRARIES(mysqltest wsock32)
+TARGET_LINK_LIBRARIES(mysqlcheck wsock32)
+TARGET_LINK_LIBRARIES(mysqldump wsock32)
+TARGET_LINK_LIBRARIES(mysqlimport wsock32)
+TARGET_LINK_LIBRARIES(mysql_upgrade wsock32)
+TARGET_LINK_LIBRARIES(mysqlshow wsock32)
+TARGET_LINK_LIBRARIES(mysqlbinlog wsock32)
+TARGET_LINK_LIBRARIES(mysqladmin wsock32)
+TARGET_LINK_LIBRARIES(mysqlslap wsock32)
+ENDIF(WIN32)
+
+IF(UNIX)
+TARGET_LINK_LIBRARIES(mysql myreadline ncurses)
+ENDIF(UNIX)

--- 1.6/dbug/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.7/dbug/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -13,7 +13,7 @@
 # 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 -D__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")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)

--- 1.11/extra/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.12/extra/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -19,7 +19,7 @@ SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
 ADD_EXECUTABLE(comp_err comp_err.c)
-TARGET_LINK_LIBRARIES(comp_err dbug mysys strings wsock32)
+TARGET_LINK_LIBRARIES(comp_err dbug mysys strings)
 
 GET_TARGET_PROPERTY(COMP_ERR_EXE comp_err LOCATION)
 
@@ -38,10 +38,17 @@ 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 dbug taocrypt odbc32 odbccp32 wsock32)
+TARGET_LINK_LIBRARIES(my_print_defaults dbug mysys strings taocrypt)
 
 ADD_EXECUTABLE(perror perror.c)
-TARGET_LINK_LIBRARIES(perror strings mysys dbug wsock32)
+TARGET_LINK_LIBRARIES(perror mysys strings dbug)
 
 ADD_EXECUTABLE(replace replace.c)
-TARGET_LINK_LIBRARIES(replace strings mysys dbug wsock32)
+TARGET_LINK_LIBRARIES(replace dbug mysys strings)
+
+IF(WIN32)
+TARGET_LINK_LIBRARIES(comp_err wsock32)
+TARGET_LINK_LIBRARIES(my_print_defaults odbc32 odbccp32 wsock32)
+TARGET_LINK_LIBRARIES(perror wsock32)
+TARGET_LINK_LIBRARIES(replace wsock32)
+ENDIF(WIN32)

--- 1.9/server-tools/instance-manager/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.10/server-tools/instance-manager/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -16,6 +16,11 @@
 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
+IF(WIN32)
+ADD_DEFINITIONS(-DWIN32)
+SET(MYSQLMANAGER_EXTRA_SOURCES imservice.cpp windowsservice.cpp)
+ENDIF(WIN32)
+
 ADD_DEFINITIONS(-DMYSQL_SERVER -DMYSQL_INSTANCE_MANAGER)
 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/sql
                     ${PROJECT_SOURCE_DIR}/extra/yassl/include)
@@ -23,11 +28,15 @@ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR
 ADD_EXECUTABLE(mysqlmanager buffer.cc command.cc commands.cc guardian.cc instance.cc instance_map.cc
                             instance_options.cc listener.cc log.cc manager.cc messages.cc mysql_connection.cc
                             mysqlmanager.cc options.cc parse.cc parse_output.cc priv.cc protocol.cc
-                            thread_registry.cc user_map.cc imservice.cpp windowsservice.cpp
+                            thread_registry.cc user_map.cc
                             user_management_commands.cc
+                            ${MYSQLMANAGER_EXTRA_SOURCES}
                             ../../sql/net_serv.cc ../../sql-common/pack.c ../../sql/password.c
                             ../../sql/sql_state.c ../../sql-common/client.c ../../libmysql/get_password.c
                             ../../libmysql/errmsg.c)
 
 ADD_DEPENDENCIES(mysqlmanager GenError)
-TARGET_LINK_LIBRARIES(mysqlmanager dbug mysys strings taocrypt vio yassl zlib wsock32)
+TARGET_LINK_LIBRARIES(mysqlmanager dbug vio yassl taocrypt mysys strings zlib)
+IF(WIN32)
+TARGET_LINK_LIBRARIES(mysqlmanager wsock32)
+ENDIF(WIN32)

--- 1.10/storage/innobase/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.11/storage/innobase/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -15,11 +15,15 @@
 
 #SET(CMAKE_CXX_FLAGS_DEBUG "-DSAFEMALLOC -DSAFE_MUTEX")
 #SET(CMAKE_C_FLAGS_DEBUG "-DSAFEMALLOC -DSAFE_MUTEX")
-ADD_DEFINITIONS(-DMYSQL_SERVER -D_WIN32 -DWIN32 -D_LIB)
+ADD_DEFINITIONS(-DMYSQL_SERVER -D_LIB)
+IF(WIN32)
+ADD_DEFINITIONS(-D_WIN32 -DWIN32)
+ENDIF(WIN32)
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/zlib
-                    include
-                    handler
+                    ${CMAKE_CURRENT_SOURCE_DIR}/include
+                    ${CMAKE_CURRENT_SOURCE_DIR}/handler
+                    ${CMAKE_SOURCE_DIR}
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/regex
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include)

--- 1.8/storage/myisam/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.9/storage/myisam/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -33,13 +33,20 @@ ADD_LIBRARY(myisam ft_boolean_search.c f
 				rt_split.c sort.c sp_key.c ft_eval.h myisamdef.h rt_index.h mi_rkey.c)
 
 ADD_EXECUTABLE(myisam_ftdump myisam_ftdump.c)
-TARGET_LINK_LIBRARIES(myisam_ftdump myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(myisam_ftdump myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(myisamchk myisamchk.c)
-TARGET_LINK_LIBRARIES(myisamchk myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(myisamchk myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(myisamlog myisamlog.c)
-TARGET_LINK_LIBRARIES(myisamlog myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(myisamlog myisam mysys dbug strings zlib)
 
 ADD_EXECUTABLE(myisampack myisampack.c)
-TARGET_LINK_LIBRARIES(myisampack myisam mysys dbug strings zlib wsock32)
+TARGET_LINK_LIBRARIES(myisampack myisam mysys dbug strings zlib)
+
+IF(WIN32)
+TARGET_LINK_LIBRARIES(myisam_ftdump wsock32)
+TARGET_LINK_LIBRARIES(myisamchk wsock32)
+TARGET_LINK_LIBRARIES(myisamlog wsock32)
+TARGET_LINK_LIBRARIES(myisampack wsock32)
+ENDIF(WIN32)

--- 1.11/mysys/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.12/mysys/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -16,6 +16,7 @@
 SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
 
+IF(WIN32)
 # Need to set USE_TLS, since mysys is linked into libmysql.dll and
 # libmysqld.dll, and __declspec(thread) approach to thread local storage does
 # not work properly in DLLs.
@@ -23,6 +24,7 @@ SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS
 # .dlls cannot be loaded at runtime.
 SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DUSE_TLS")
 SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DUSE_TLS")
+ENDIF(WIN32)
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/zlib ${CMAKE_SOURCE_DIR}/include)
 ADD_LIBRARY(mysys array.c charset-def.c charset.c checksum.c default.c default_modify.c

--- 1.34/sql/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.35/sql/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -13,10 +13,8 @@
 # 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 -DUSE_SYMDIR")
-SET(CMAKE_C_FLAGS_DEBUG 
-    "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX -DUSE_SYMDIR")
+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}/extra/yassl/include 
@@ -25,10 +23,23 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/zlib
 )
 
+IF(WIN32)
+SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DUSE_SYMDIR")
+SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DUSE_SYMDIR")
+
 SET_SOURCE_FILES_PROPERTIES(${CMAKE_SOURCE_DIR}/sql/message.rc 
 							${CMAKE_SOURCE_DIR}/sql/message.h 
-							${CMAKE_SOURCE_DIR}/sql/sql_yacc.h 
-							${CMAKE_SOURCE_DIR}/sql/sql_yacc.cc
+                              PROPERTIES GENERATED 1)
+SET(MYSQLD_EXTRA_SOURCES ${MYSQLD_EXTRA_SOURCES} message.h message.rc nt_servc.cc nt_servc.h)
+SET(UDF_EXAMPLE_EXTRA_SOURCES udf_example.def)
+ENDIF(WIN32)
+
+IF(UNIX)
+SET(MYSQLD_EXTRA_SOURCES ${MYSQLD_EXTRA_SOURCES} stacktrace.c stacktrace.h)
+ENDIF(UNIX)
+
+SET_SOURCE_FILES_PROPERTIES(${CMAKE_SOURCE_DIR}/sql/sql_yacc.h
+                            ${CMAKE_SOURCE_DIR}/sql/sql_yacc.cc
                             ${CMAKE_SOURCE_DIR}/include/mysql_version.h
                             ${CMAKE_SOURCE_DIR}/sql/sql_builtin.cc
                             ${CMAKE_SOURCE_DIR}/sql/lex_hash.h 
@@ -47,10 +58,10 @@ ADD_EXECUTABLE(mysqld ../sql-common/clie
                hostname.cc init.cc item.cc item_buff.cc item_cmpfunc.cc 
                item_create.cc item_func.cc item_geofunc.cc item_row.cc 
                item_strfunc.cc item_subselect.cc item_sum.cc item_timefunc.cc 
-               key.cc log.cc lock.cc log_event.cc message.rc 
-               message.h mf_iocache.cc my_decimal.cc ../sql-common/my_time.c
+               key.cc log.cc lock.cc log_event.cc 
+               mf_iocache.cc my_decimal.cc ../sql-common/my_time.c
                mysqld.cc net_serv.cc 
-               nt_servc.cc nt_servc.h opt_range.cc opt_range.h opt_sum.cc 
+               mysql_priv.h opt_range.cc opt_range.h opt_sum.cc 
                ../sql-common/pack.c parse_file.cc password.c procedure.cc 
                protocol.cc records.cc repl_failsafe.cc rpl_filter.cc set_var.cc 
                slave.cc sp.cc sp_cache.cc sp_head.cc sp_pcontext.cc 
@@ -69,6 +80,7 @@ ADD_EXECUTABLE(mysqld ../sql-common/clie
                sql_tablespace.cc events.cc ../sql-common/my_user.c 
                partition_info.cc rpl_utility.cc rpl_injector.cc sql_locale.cc
                rpl_rli.cc rpl_mi.cc sql_servers.cc
+               ${MYSQLD_EXTRA_SOURCES}
                ${PROJECT_SOURCE_DIR}/sql/sql_yacc.cc
   			   ${PROJECT_SOURCE_DIR}/sql/sql_yacc.h
 			   ${PROJECT_SOURCE_DIR}/include/mysqld_error.h
@@ -78,7 +90,7 @@ ADD_EXECUTABLE(mysqld ../sql-common/clie
 			   ${PROJECT_SOURCE_DIR}/sql/sql_builtin.cc
 			   ${PROJECT_SOURCE_DIR}/sql/lex_hash.h)
 TARGET_LINK_LIBRARIES(mysqld heap myisam myisammrg mysys yassl zlib dbug yassl 
-                      taocrypt strings vio regex wsock32)
+                      taocrypt strings vio regex)
 IF(WITH_ARCHIVE_STORAGE_ENGINE)
   TARGET_LINK_LIBRARIES(mysqld archive)
 ENDIF(WITH_ARCHIVE_STORAGE_ENGINE)
@@ -104,7 +116,7 @@ ADD_DEPENDENCIES(mysqld GenError)
 ADD_CUSTOM_COMMAND(
 	SOURCE ${PROJECT_SOURCE_DIR}/sql/sql_yacc.yy 
 	OUTPUT ${PROJECT_SOURCE_DIR}/sql/sql_yacc.cc
-	COMMAND bison.exe ARGS -y -p MYSQL --defines=sql_yacc.h	
+	COMMAND ${YACC} ARGS -y -p MYSQL --defines=sql_yacc.h	
 	                       --output=sql_yacc.cc sql_yacc.yy
 	DEPENDS ${PROJECT_SOURCE_DIR}/sql/sql_yacc.yy)
 
@@ -114,16 +126,18 @@ ADD_CUSTOM_COMMAND(
 	DEPENDS ${PROJECT_SOURCE_DIR}/sql/sql_yacc.cc
 )
 
+IF(WIN32)
 # Windows message file
 ADD_CUSTOM_COMMAND(
 	SOURCE message.mc
 	OUTPUT message.rc message.h
 	COMMAND mc ARGS message.mc
 	DEPENDS message.mc)
+ENDIF(WIN32)
 
 # Gen_lex_hash
 ADD_EXECUTABLE(gen_lex_hash gen_lex_hash.cc)
-TARGET_LINK_LIBRARIES(gen_lex_hash dbug mysqlclient wsock32)
+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
@@ -133,6 +147,12 @@ ADD_CUSTOM_COMMAND(
 
 ADD_DEPENDENCIES(mysqld gen_lex_hash)
 
-ADD_LIBRARY(udf_example MODULE udf_example.c udf_example.def)
-ADD_DEPENDENCIES(udf_example strings)
+ADD_LIBRARY(udf_example MODULE udf_example.c ${UDF_EXAMPLE_EXTRA_SOURCES}
+            ${PROJECT_SOURCE_DIR}/strings/strmake.c)
+TARGET_LINK_LIBRARIES(udf_example mysys)
+
+IF(WIN32)
+TARGET_LINK_LIBRARIES(gen_lex_hash wsock32)
+TARGET_LINK_LIBRARIES(mysqld wsock32)
 TARGET_LINK_LIBRARIES(udf_example wsock32)
+ENDIF(WIN32)

--- 1.9/extra/yassl/taocrypt/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.10/extra/yassl/taocrypt/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -13,7 +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
 
-INCLUDE_DIRECTORIES(mySTL include)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/mySTL
+                    ${CMAKE_CURRENT_SOURCE_DIR}/include
+)
 
 ADD_LIBRARY(taocrypt src/aes.cpp src/aestables.cpp src/algebra.cpp src/arc4.cpp src/asn.cpp src/coding.cpp 
 				src/des.cpp src/dh.cpp src/dsa.cpp src/file.cpp src/hash.cpp src/integer.cpp src/md2.cpp 

--- 1.7/extra/yassl/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.8/extra/yassl/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -13,9 +13,15 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-ADD_DEFINITIONS("-DWIN32 -D_LIB -DYASSL_PREFIX")
+ADD_DEFINITIONS("-D_LIB -DYASSL_PREFIX")
+IF(WIN32)
+ADD_DEFINITIONS(-DWIN32)
+ENDIF(WIN32)
 
-INCLUDE_DIRECTORIES(include taocrypt/include taocrypt/mySTL)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include
+                    ${CMAKE_CURRENT_SOURCE_DIR}/taocrypt/include
+                    ${CMAKE_CURRENT_SOURCE_DIR}/taocrypt/mySTL
+)
 ADD_LIBRARY(yassl src/buffer.cpp src/cert_wrapper.cpp src/crypto_wrapper.cpp src/handshake.cpp src/lock.cpp 
 				src/log.cpp src/socket_wrapper.cpp src/ssl.cpp src/timer.cpp src/yassl_error.cpp 
 				src/yassl_imp.cpp src/yassl_int.cpp)

--- 1.6/win/configure.js	2007-01-25 01:59:35 -08:00
+++ 1.8/cmake/configure.js	2007-01-25 01:59:35 -08:00
@@ -78,6 +78,7 @@ try 
     configfile.WriteLine("SET (MYSQL_VERSION_ID \"" +
                          GetVersionId(version) + "\")");
 
+    configfile.WriteLine("INCLUDE(cmake/config.win)");
     configfile.Close();
     
     fso = null;

--- 1.12/libmysql/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.13/libmysql/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -13,11 +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
 
-# Need to set USE_TLS, since __declspec(thread) approach to thread local
-# storage does not work properly in DLLs.
-SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX -DUSE_TLS")
-SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX -DUSE_TLS")
-
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include 
                     ${CMAKE_SOURCE_DIR}/zlib 
                     ${CMAKE_SOURCE_DIR}/extra/yassl/include 
@@ -26,7 +21,18 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/sql
                     ${CMAKE_SOURCE_DIR}/strings)
 
-ADD_LIBRARY(libmysql SHARED dll.c libmysql.def
+SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
+SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DSAFEMALLOC -DSAFE_MUTEX")
+
+IF(WIN32)
+# Need to set USE_TLS, since __declspec(thread) approach to thread local
+# storage does not work properly in DLLs.
+SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DUSE_TLS")
+SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DUSE_TLS")
+SET(LIBMYSQL_EXTRA_SOURCES SHARED dll.c libmysql.def)
+ENDIF(WIN32)
+
+ADD_LIBRARY(libmysql ${LIBMYSQL_EXTRA_SOURCES}
                      ../mysys/array.c ../strings/bchange.c ../strings/bmove.c 
                      ../strings/bmove_upp.c ../mysys/charset-def.c ../mysys/charset.c
                      ../sql-common/client.c ../strings/ctype-big5.c ../strings/ctype-bin.c 
@@ -63,7 +69,10 @@ ADD_LIBRARY(libmysql SHARED dll.c libmys
                      ../mysys/thr_mutex.c ../mysys/typelib.c ../vio/vio.c ../vio/viosocket.c 
                      ../vio/viossl.c ../vio/viosslfactories.c ../strings/xml.c)
 ADD_DEPENDENCIES(libmysql dbug vio mysys strings GenError zlib yassl taocrypt)
+
+IF(WIN32)
 TARGET_LINK_LIBRARIES(libmysql mysys strings wsock32)
 
 ADD_EXECUTABLE(myTest mytest.c)
 TARGET_LINK_LIBRARIES(myTest libmysql)
+ENDIF(WIN32)

--- 1.8/tests/CMakeLists.txt	2007-01-25 01:59:35 -08:00
+++ 1.9/tests/CMakeLists.txt	2007-01-25 01:59:35 -08:00
@@ -20,5 +20,11 @@ ADD_DEFINITIONS("-DMYSQL_CLIENT")
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
-ADD_EXECUTABLE(mysql_client_test mysql_client_test.c)
-TARGET_LINK_LIBRARIES(mysql_client_test dbug mysys mysqlclient yassl taocrypt zlib wsock32)
+FILE(WRITE cmake_dummy.cc " ")
+
+ADD_EXECUTABLE(mysql_client_test mysql_client_test.c cmake_dummy.cc)
+TARGET_LINK_LIBRARIES(mysql_client_test dbug mysys mysqlclient yassl taocrypt zlib)
+
+IF(WIN32)
+TARGET_LINK_LIBRARIES(mysqld wsock32)
+ENDIF(WIN32)
Thread
bk commit into 5.1 tree (antony:1.2404)antony25 Jan