2009-05-27 15:15:59 +05:30
|
|
|
# Copyright (C) 2009 Oracle/Innobase Oy
|
|
|
|
#
|
|
|
|
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
|
|
|
|
# This is the CMakeLists for InnoDB Plugin
|
|
|
|
|
|
|
|
|
Applying InnoDB Plugin 1.0.5 snapshot, part 11
From revision r5945 to r5994
r5950 - already applied and so skipped
Detailed revision comments:
r5945 | calvin | 2009-09-21 09:53:22 -0500 (Mon, 21 Sep 2009) | 4 lines
branches/zip: fix a type in r5935
Should be innodb_open_files, spotted by Michael.
r5951 | calvin | 2009-09-22 10:17:01 -0500 (Tue, 22 Sep 2009) | 4 lines
branches/zip: adjust CMake file to work with old versions of MySQL
Tested with MySQL 5.1.38 and 5.1.30.
r5956 | calvin | 2009-09-22 18:30:10 -0500 (Tue, 22 Sep 2009) | 4 lines
branches/zip: remove handler0vars.h from Makefile.am
Left over from r5950.
r5971 | marko | 2009-09-23 08:03:51 -0500 (Wed, 23 Sep 2009) | 2 lines
branches/zip: os_file_pwrite(): Make the code compile in InnoDB Hot Backup
when the pwrite system call is not available.
r5972 | marko | 2009-09-23 14:44:52 -0500 (Wed, 23 Sep 2009) | 5 lines
branches/zip: fil_node_open_file(): In InnoDB Hot Backup,
determine the page size of single-file tablespaces before computing
the file node size. Otherwise, the space->size of compressed tablespaces
would be computed with UNIV_PAGE_SIZE instead of key_block_size.
This should fix Issue #313.
r5973 | marko | 2009-09-23 14:53:21 -0500 (Wed, 23 Sep 2009) | 2 lines
branches/zip: recv_add_to_hash_table():
Simplify obfuscated pointer arithmetics.
r5978 | marko | 2009-09-24 02:47:56 -0500 (Thu, 24 Sep 2009) | 1 line
branches/zip: Fix warnings and errors when UNIV_HOTBACKUP is defined.
r5979 | marko | 2009-09-24 05:16:10 -0500 (Thu, 24 Sep 2009) | 4 lines
branches/zip: ha_innodb.cc: Define MYSQL_PLUGIN_IMPORT when necessary.
This preprocessor symbol has been recently introduced in MySQL 5.1.
The InnoDB Plugin should remain source compatible with MySQL 5.1.24
and later.
r5988 | calvin | 2009-09-25 14:14:43 -0500 (Fri, 25 Sep 2009) | 8 lines
branches/zip: fix bug#47055 unconditional exit(1) on ERROR_WORKING_SET_QUOTA
1453 (0x5AD) for InnoDB backend
When error ERROR_WORKING_SET_QUOTA or ERROR_NO_SYSTEM_RESOURCES
occurs, yields for 100ms and retries the operation.
Approved by: Heikki (on IM)
r5992 | vasil | 2009-09-28 02:10:29 -0500 (Mon, 28 Sep 2009) | 4 lines
branches/zip:
Add ChangeLog entry for c5988.
r5994 | marko | 2009-09-28 03:33:59 -0500 (Mon, 28 Sep 2009) | 17 lines
branches/zip: Try to prevent the reuse of tablespace identifiers after
InnoDB has crashed during table creation. Also, refuse to start if
files with duplicate tablespace identifiers are encountered.
fil_node_create(): Update fil_system->max_assigned_id. This should
prevent the reuse of a space->id when InnoDB does a full crash
recovery and invokes fil_load_single_table_tablespaces(). Normally,
fil_system->max_assigned_id is initialized from
SELECT MAX(ID) FROM SYS_TABLES.
fil_open_single_table_tablespace(): Return FALSE when
fil_space_create() fails.
fil_load_single_table_tablespace(): Exit if fil_space_create() fails
and innodb_force_recovery=0.
rb://173 approved by Heikki Tuuri. This addresses Issue #335.
2009-10-09 19:32:18 +05:30
|
|
|
# Starting at 5.1.38, MySQL CMake files are simplified. But the plugin
|
|
|
|
# CMakeLists.txt still needs to work with previous versions of MySQL.
|
|
|
|
IF (MYSQL_VERSION_ID GREATER "50137")
|
|
|
|
INCLUDE("${PROJECT_SOURCE_DIR}/storage/mysql_storage_engine.cmake")
|
|
|
|
ENDIF (MYSQL_VERSION_ID GREATER "50137")
|
|
|
|
|
2009-05-27 15:15:59 +05:30
|
|
|
IF (CMAKE_SIZEOF_VOID_P MATCHES 8)
|
|
|
|
SET(WIN64 TRUE)
|
|
|
|
ENDIF (CMAKE_SIZEOF_VOID_P MATCHES 8)
|
|
|
|
|
2009-06-10 10:59:49 +02:00
|
|
|
# Include directories under innodb_plugin
|
|
|
|
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/storage/innodb_plugin/include
|
2009-10-13 12:41:42 +05:30
|
|
|
${CMAKE_SOURCE_DIR}/storage/innodb_plugin/handler)
|
2009-05-27 15:15:59 +05:30
|
|
|
|
|
|
|
# Include directories under mysql
|
|
|
|
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
|
|
|
|
${CMAKE_SOURCE_DIR}/sql
|
|
|
|
${CMAKE_SOURCE_DIR}/regex
|
|
|
|
${CMAKE_SOURCE_DIR}/zlib
|
|
|
|
${CMAKE_SOURCE_DIR}/extra/yassl/include)
|
|
|
|
|
2010-12-01 21:37:03 +01:00
|
|
|
IF(MSVC)
|
|
|
|
# Removing compiler optimizations for innodb/mem/* files on 64-bit Windows
|
|
|
|
# due to 64-bit compiler error, See MySQL Bug #19424, #36366, #34297
|
|
|
|
IF(CMAKE_SIZEOF_VOID_P MATCHES 8)
|
|
|
|
SET_SOURCE_FILES_PROPERTIES(mem/mem0mem.c mem/mem0pool.c
|
|
|
|
PROPERTIES COMPILE_FLAGS -Od)
|
|
|
|
ENDIF()
|
|
|
|
# Avoid "unreferenced label" warning in generated file
|
|
|
|
SET_SOURCE_FILES_PROPERTIES(pars/pars0grm.c
|
|
|
|
PROPERTIES COMPILE_FLAGS "/wd4102")
|
|
|
|
SET_SOURCE_FILES_PROPERTIES(pars/lexyy.c
|
|
|
|
PROPERTIES COMPILE_FLAGS "/wd4003")
|
|
|
|
ENDIF()
|
2009-05-27 15:15:59 +05:30
|
|
|
|
2009-06-10 10:59:49 +02:00
|
|
|
SET(INNODB_PLUGIN_SOURCES btr/btr0btr.c btr/btr0cur.c btr/btr0pcur.c btr/btr0sea.c
|
2009-05-27 15:15:59 +05:30
|
|
|
buf/buf0buddy.c buf/buf0buf.c buf/buf0flu.c buf/buf0lru.c buf/buf0rea.c
|
|
|
|
data/data0data.c data/data0type.c
|
|
|
|
dict/dict0boot.c dict/dict0crea.c dict/dict0dict.c dict/dict0load.c dict/dict0mem.c
|
|
|
|
dyn/dyn0dyn.c
|
|
|
|
eval/eval0eval.c eval/eval0proc.c
|
|
|
|
fil/fil0fil.c
|
|
|
|
fsp/fsp0fsp.c
|
|
|
|
fut/fut0fut.c fut/fut0lst.c
|
|
|
|
ha/ha0ha.c ha/hash0hash.c ha/ha0storage.c
|
|
|
|
ibuf/ibuf0ibuf.c
|
|
|
|
pars/lexyy.c pars/pars0grm.c pars/pars0opt.c pars/pars0pars.c pars/pars0sym.c
|
|
|
|
lock/lock0lock.c lock/lock0iter.c
|
|
|
|
log/log0log.c log/log0recv.c
|
|
|
|
mach/mach0data.c
|
|
|
|
mem/mem0mem.c mem/mem0pool.c
|
|
|
|
mtr/mtr0log.c mtr/mtr0mtr.c
|
|
|
|
os/os0file.c os/os0proc.c os/os0sync.c os/os0thread.c
|
|
|
|
page/page0cur.c page/page0page.c page/page0zip.c
|
|
|
|
que/que0que.c
|
|
|
|
handler/ha_innodb.cc handler/handler0alter.cc handler/i_s.cc handler/mysql_addons.cc
|
|
|
|
read/read0read.c
|
|
|
|
rem/rem0cmp.c rem/rem0rec.c
|
|
|
|
row/row0ext.c row/row0ins.c row/row0merge.c row/row0mysql.c row/row0purge.c row/row0row.c
|
|
|
|
row/row0sel.c row/row0uins.c row/row0umod.c row/row0undo.c row/row0upd.c row/row0vers.c
|
|
|
|
srv/srv0que.c srv/srv0srv.c srv/srv0start.c
|
|
|
|
sync/sync0arr.c sync/sync0rw.c sync/sync0sync.c
|
|
|
|
thr/thr0loc.c
|
|
|
|
trx/trx0i_s.c trx/trx0purge.c trx/trx0rec.c trx/trx0roll.c trx/trx0rseg.c
|
|
|
|
trx/trx0sys.c trx/trx0trx.c trx/trx0undo.c
|
|
|
|
usr/usr0sess.c
|
2010-04-01 16:56:22 +04:00
|
|
|
ut/ut0byte.c ut/ut0dbg.c ut/ut0mem.c ut/ut0rbt.c ut/ut0rnd.c ut/ut0ut.c ut/ut0vec.c
|
2009-05-27 15:15:59 +05:30
|
|
|
ut/ut0list.c ut/ut0wqueue.c)
|
2010-04-01 16:53:56 +04:00
|
|
|
# Windows atomics do not perform well. Disable Windows atomics by default.
|
|
|
|
# See bug#52102 for details.
|
|
|
|
#ADD_DEFINITIONS(-DHAVE_WINDOWS_ATOMICS -DINNODB_RW_LOCKS_USE_ATOMICS -DHAVE_IB_PAUSE_INSTRUCTION)
|
|
|
|
ADD_DEFINITIONS(-DHAVE_IB_PAUSE_INSTRUCTION)
|
|
|
|
|
2009-12-14 13:42:26 +05:30
|
|
|
MYSQL_STORAGE_ENGINE(INNODB_PLUGIN)
|