maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #00981
Rev 2739: MySQL 5.1 -> Maria 5.1 merge: Fix windows build in file:///home/psergey/bzr-new/mysql-5.1-maria-contd4/
At file:///home/psergey/bzr-new/mysql-5.1-maria-contd4/
------------------------------------------------------------
revno: 2739
revision-id: psergey@xxxxxxxxxxxx-20090915212058-1h5zxw94b6czbpxb
parent: knielsen@xxxxxxxxxxxxxxx-20090915125307-3l2ogdv87galo02o
committer: Sergey Petrunya <psergey@xxxxxxxxxxxx>
branch nick: mysql-5.1-maria-contd4
timestamp: Wed 2009-09-16 01:20:58 +0400
message:
MySQL 5.1 -> Maria 5.1 merge: Fix windows build
- Fix XtraDB to be built as a static library.
=== modified file 'CMakeLists.txt'
--- a/CMakeLists.txt 2009-09-15 12:12:51 +0000
+++ b/CMakeLists.txt 2009-09-15 21:20:58 +0000
@@ -225,6 +225,14 @@
STRING (REGEX MATCH "MYSQL_PLUGIN_DYNAMIC" MYSQL_PLUGIN_DYNAMIC ${PLUGIN_FILE_CONTENT})
STRING (REGEX MATCH "MYSQL_PLUGIN_MANDATORY" MYSQL_PLUGIN_MANDATORY ${PLUGIN_FILE_CONTENT})
STRING (REGEX MATCH "MYSQL_PLUGIN_STATIC" MYSQL_PLUGIN_STATIC ${PLUGIN_FILE_CONTENT})
+
+ #
+ # XTRADB is located in storage/xtradb, but it says everywhere it is 'innobase' (e.g.
+ # it declares 'builtin_innobase_plugin', not builtin_xtradb_plugin).
+ # Extract the intended plugin name from MYSQL_STORAGE_ENGINE definition and use it
+ # where appropriate.
+ STRING (REGEX MATCH "MYSQL_STORAGE_ENGINE.[a-z]*" PLUGIN_NAME ${PLUGIN_FILE_CONTENT})
+ STRING (REGEX REPLACE "MYSQL_STORAGE_ENGINE.(.*)" "\\1" PLUGIN_NAME ${PLUGIN_NAME})
IF(MYSQL_PLUGIN_MANDATORY)
SET(WITH_${ENGINE}_STORAGE_ENGINE TRUE)
@@ -238,8 +246,8 @@
SET(ENGINE_BUILD_TYPE "NONE")
ENDIF(WITH_${ENGINE}_STORAGE_ENGINE AND MYSQL_PLUGIN_STATIC)
IF (ENGINE_BUILD_TYPE STREQUAL "STATIC")
- SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_${ENGINE_LOWER}_plugin")
- SET (MYSQLD_STATIC_ENGINE_LIBS ${MYSQLD_STATIC_ENGINE_LIBS} ${ENGINE_LOWER})
+ SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_${PLUGIN_NAME}_plugin")
+ SET (MYSQLD_STATIC_ENGINE_LIBS ${MYSQLD_STATIC_ENGINE_LIBS} ${PLUGIN_NAME})
SET (STORAGE_ENGINE_DEFS "${STORAGE_ENGINE_DEFS} -DWITH_${ENGINE}_STORAGE_ENGINE")
SET (WITH_${ENGINE}_STORAGE_ENGINE TRUE)
ENDIF (ENGINE_BUILD_TYPE STREQUAL "STATIC")
=== modified file 'storage/xtradb/buf/buf0flu.c'
--- a/storage/xtradb/buf/buf0flu.c 2009-09-15 12:53:07 +0000
+++ b/storage/xtradb/buf/buf0flu.c 2009-09-15 21:20:58 +0000
@@ -1107,6 +1107,8 @@
mutex_exit(block_mutex);
if (ready) {
+ mutex_t* block_mutex;
+ buf_page_t* bpage_tmp;
space = buf_page_get_space(bpage);
offset = buf_page_get_page_no(bpage);
@@ -1120,10 +1122,8 @@
/* Try to flush also all the neighbors */
page_count += buf_flush_try_neighbors(
space, offset, flush_type, srv_flush_neighbor_pages);
- mutex_t* block_mutex;
- buf_page_t* bpage_tmp;
- block_mutex = buf_page_get_mutex(bpage);
- bpage_tmp = buf_page_hash_get(space, offset);
+ block_mutex = buf_page_get_mutex(bpage);
+ bpage_tmp = buf_page_hash_get(space, offset);
/* fprintf(stderr,
"Flush type %lu, page no %lu, neighb %lu\n",
flush_type, offset,
=== modified file 'storage/xtradb/plug.in'
--- a/storage/xtradb/plug.in 2009-08-03 20:09:53 +0000
+++ b/storage/xtradb/plug.in 2009-09-15 21:20:58 +0000
@@ -20,7 +20,9 @@
MYSQL_PLUGIN_STATIC(innobase, [libinnobase.a])
MYSQL_PLUGIN_DYNAMIC(innobase, [ha_innodb.la])
MYSQL_PLUGIN_ACTIONS(innobase, [
- AC_CHECK_HEADERS(sched.h)
+ AC_CHECK_LIB(rt, aio_read, [innodb_system_libs="-lrt"])
+ AC_SUBST(innodb_system_libs)
+ AC_CHECK_HEADERS(aio.h sched.h)
AC_CHECK_SIZEOF(int, 4)
AC_CHECK_SIZEOF(long, 4)
AC_CHECK_SIZEOF(void*, 4)