Commit 319f148e authored by calvin's avatar calvin

branches/zip: remove statically linked libraries from mysql

To make zlib and strings dynamically linked; mysqld will export
additional functions required by InnoDB.

Since the symbols will be resolved dynamically during runtime,
wdl_load_mapfile() is no longer able to make any function calls
to ones in mysqld. As the result, strtoull() (from strings.lib)
is replaced with _strtoui64().

rb://111

Approved by: Marko
parent 395bee3f
......@@ -115,7 +115,6 @@ IF(NOT SOURCE_SUBLIBS)
# Also require mysqld.lib, which is built as part of the mysqld
ADD_DEPENDENCIES(ha_innodb GenError mysqld)
TARGET_LINK_LIBRARIES(ha_innodb strings zlib)
TARGET_LINK_LIBRARIES(ha_innodb ${CMAKE_SOURCE_DIR}/sql/\$\(OutDir\)/mysqld.lib)
SET_TARGET_PROPERTIES(ha_innodb PROPERTIES OUTPUT_NAME ha_innodb)
SET_TARGET_PROPERTIES(ha_innodb PROPERTIES LINK_FLAGS "/MAP /MAPINFO:EXPORTS")
......
......@@ -352,7 +352,7 @@ wdl_load_mapfile(
chain_header = map_cell;
map_cell->symbol = strdup(func_name);
map_cell->value = (ulint) strtoull(tmp_buf, NULL, 0)
map_cell->value = (ulint) _strtoui64(tmp_buf, NULL, 0)
- load_addr;
map_fold = ut_fold_string(map_cell->symbol);
......
......@@ -33,11 +33,11 @@ diff -Nur sql/CMakeLists.txt.orig sql/CMakeLists.txt
IF(EMBED_MANIFESTS)
MYSQL_EMBED_MANIFEST("mysqld" "asInvoker")
ENDIF(EMBED_MANIFESTS)
diff -Nur sql/mysqld.def.orig sql/mysqld.def
--- sql/mysqld.def.orig 1969-12-31 18:00:00 -06:00
+++ sql/mysqld.def 2008-10-31 02:20:32 -05:00
@@ -0,0 +1,98 @@
+++ sql/mysqld.def 2009-04-09 02:20:32 -05:00
@@ -0,0 +1,111 @@
+EXPORTS
+ ?use_hidden_primary_key@handler@@UAEXXZ
+ ?get_dynamic_partition_info@handler@@UAEXPAUPARTITION_INFO@@I@Z
......@@ -136,11 +136,24 @@ diff -Nur sql/mysqld.def.orig sql/mysqld.def
+ pthread_cond_destroy
+ localtime_r
+ my_strdup
+ deflate
+ deflateEnd
+ deflateReset
+ deflateInit2_
+ inflateEnd
+ inflateInit_
+ inflate
+ compressBound
+ inflateInit2_
+ adler32
+ longlong2str
+ strend
+ my_snprintf
diff -Nur sql/mysqld_x64.def.orig sql/mysqld_x64.def
--- sql/mysqld_x64.def.orig 1969-12-31 18:00:00 -06:00
+++ sql/mysqld_x64.def 2008-10-31 02:22:04 -05:00
@@ -0,0 +1,98 @@
+++ sql/mysqld_x64.def 2009-04-09 02:22:04 -05:00
@@ -0,0 +1,111 @@
+EXPORTS
+ ?use_hidden_primary_key@handler@@UEAAXXZ
+ ?get_dynamic_partition_info@handler@@UEAAXPEAUPARTITION_INFO@@I@Z
......@@ -239,6 +252,19 @@ diff -Nur sql/mysqld_x64.def.orig sql/mysqld_x64.def
+ pthread_cond_destroy
+ localtime_r
+ my_strdup
+ deflate
+ deflateEnd
+ deflateReset
+ deflateInit2_
+ inflateEnd
+ inflateInit_
+ inflate
+ compressBound
+ inflateInit2_
+ adler32
+ longlong2str
+ strend
+ my_snprintf
diff -Nur win/configure.js.orig win/configure.js
--- win/configure.js.orig 2008-09-26 21:18:37 -05:00
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment