Commit 76cc47ca 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 f5fa54b3
...@@ -115,7 +115,6 @@ IF(NOT SOURCE_SUBLIBS) ...@@ -115,7 +115,6 @@ IF(NOT SOURCE_SUBLIBS)
# Also require mysqld.lib, which is built as part of the mysqld # Also require mysqld.lib, which is built as part of the mysqld
ADD_DEPENDENCIES(ha_innodb GenError 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) 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 OUTPUT_NAME ha_innodb)
SET_TARGET_PROPERTIES(ha_innodb PROPERTIES LINK_FLAGS "/MAP /MAPINFO:EXPORTS") SET_TARGET_PROPERTIES(ha_innodb PROPERTIES LINK_FLAGS "/MAP /MAPINFO:EXPORTS")
......
...@@ -352,7 +352,7 @@ wdl_load_mapfile( ...@@ -352,7 +352,7 @@ wdl_load_mapfile(
chain_header = map_cell; chain_header = map_cell;
map_cell->symbol = strdup(func_name); 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; - load_addr;
map_fold = ut_fold_string(map_cell->symbol); map_fold = ut_fold_string(map_cell->symbol);
......
...@@ -33,11 +33,11 @@ diff -Nur sql/CMakeLists.txt.orig sql/CMakeLists.txt ...@@ -33,11 +33,11 @@ diff -Nur sql/CMakeLists.txt.orig sql/CMakeLists.txt
IF(EMBED_MANIFESTS) IF(EMBED_MANIFESTS)
MYSQL_EMBED_MANIFEST("mysqld" "asInvoker") MYSQL_EMBED_MANIFEST("mysqld" "asInvoker")
ENDIF(EMBED_MANIFESTS) ENDIF(EMBED_MANIFESTS)
diff -Nur sql/mysqld.def.orig sql/mysqld.def diff -Nur sql/mysqld.def.orig sql/mysqld.def
--- sql/mysqld.def.orig 1969-12-31 18:00:00 -06:00 --- sql/mysqld.def.orig 1969-12-31 18:00:00 -06:00
+++ sql/mysqld.def 2008-10-31 02:20:32 -05:00 +++ sql/mysqld.def 2009-04-09 02:20:32 -05:00
@@ -0,0 +1,98 @@ @@ -0,0 +1,111 @@
+EXPORTS +EXPORTS
+ ?use_hidden_primary_key@handler@@UAEXXZ + ?use_hidden_primary_key@handler@@UAEXXZ
+ ?get_dynamic_partition_info@handler@@UAEXPAUPARTITION_INFO@@I@Z + ?get_dynamic_partition_info@handler@@UAEXPAUPARTITION_INFO@@I@Z
...@@ -136,11 +136,24 @@ diff -Nur sql/mysqld.def.orig sql/mysqld.def ...@@ -136,11 +136,24 @@ diff -Nur sql/mysqld.def.orig sql/mysqld.def
+ pthread_cond_destroy + pthread_cond_destroy
+ localtime_r + localtime_r
+ my_strdup + 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 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.orig 1969-12-31 18:00:00 -06:00
+++ sql/mysqld_x64.def 2008-10-31 02:22:04 -05:00 +++ sql/mysqld_x64.def 2009-04-09 02:22:04 -05:00
@@ -0,0 +1,98 @@ @@ -0,0 +1,111 @@
+EXPORTS +EXPORTS
+ ?use_hidden_primary_key@handler@@UEAAXXZ + ?use_hidden_primary_key@handler@@UEAAXXZ
+ ?get_dynamic_partition_info@handler@@UEAAXPEAUPARTITION_INFO@@I@Z + ?get_dynamic_partition_info@handler@@UEAAXPEAUPARTITION_INFO@@I@Z
...@@ -239,6 +252,19 @@ diff -Nur sql/mysqld_x64.def.orig sql/mysqld_x64.def ...@@ -239,6 +252,19 @@ diff -Nur sql/mysqld_x64.def.orig sql/mysqld_x64.def
+ pthread_cond_destroy + pthread_cond_destroy
+ localtime_r + localtime_r
+ my_strdup + 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 diff -Nur win/configure.js.orig win/configure.js
--- win/configure.js.orig 2008-09-26 21:18:37 -05:00 --- 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