From a5741fb5a79634ec1e40a5de18ed077ddb507fd7 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Thu, 7 Apr 2016 22:23:19 +0000 Subject: In the exp-run for bug 208158, building databases/mysql57-server resulted in errors with libc++ 3.8.0, because it declares the allocators for several std::map declarations incorrectly. Fix this by sprinkling const in the right places. Approved by: mokhi64@gmail.com (maintainer) PR: 208525 MFH: 2016Q2 --- databases/mysql57-server/Makefile | 2 +- .../files/patch-include_CMakeLists.txt | 5 +++-- .../mysql57-server/files/patch-man_CMakeLists.txt | 6 ++++-- .../mysql57-server/files/patch-sql_json__dom.h | 22 ++++++++++++++++++++++ .../files/patch-storage_innobase_buf_buf0buf.cc | 22 ++++++++++++++++++++++ .../patch-storage_innobase_dict_dict0stats.cc | 22 ++++++++++++++++++++++ .../patch-storage_innobase_sync_sync0debug.cc | 22 ++++++++++++++++++++++ 7 files changed, 96 insertions(+), 5 deletions(-) create mode 100644 databases/mysql57-server/files/patch-sql_json__dom.h create mode 100644 databases/mysql57-server/files/patch-storage_innobase_buf_buf0buf.cc create mode 100644 databases/mysql57-server/files/patch-storage_innobase_dict_dict0stats.cc create mode 100644 databases/mysql57-server/files/patch-storage_innobase_sync_sync0debug.cc (limited to 'databases') diff --git a/databases/mysql57-server/Makefile b/databases/mysql57-server/Makefile index 13b114b0d704..3010284df537 100644 --- a/databases/mysql57-server/Makefile +++ b/databases/mysql57-server/Makefile @@ -3,7 +3,7 @@ PORTNAME= mysql PORTVERSION= 5.7.10 -PORTREVISION?= 3 +PORTREVISION?= 4 CATEGORIES= databases ipv6 MASTER_SITES= MYSQL/MySQL-5.7:MySQL SF/boost/boost/1.59.0:boost PKGNAMESUFFIX?= 57-server diff --git a/databases/mysql57-server/files/patch-include_CMakeLists.txt b/databases/mysql57-server/files/patch-include_CMakeLists.txt index 860024bd0b13..a68196b7e221 100644 --- a/databases/mysql57-server/files/patch-include_CMakeLists.txt +++ b/databases/mysql57-server/files/patch-include_CMakeLists.txt @@ -1,8 +1,9 @@ --- include/CMakeLists.txt.orig 2015-11-29 19:16:24 UTC +++ include/CMakeLists.txt -@@ -69,10 +69,12 @@ SET(HEADERS +@@ -68,11 +68,13 @@ SET(HEADERS + ${HEADERS_GEN_CONFIGURE} ) - + +IF(FALSE) INSTALL(FILES ../libbinlogevents/export/binary_log_types.h DESTINATION ${INSTALL_INCLUDEDIR}) INSTALL(FILES ${HEADERS} DESTINATION ${INSTALL_INCLUDEDIR} COMPONENT Development) diff --git a/databases/mysql57-server/files/patch-man_CMakeLists.txt b/databases/mysql57-server/files/patch-man_CMakeLists.txt index b771ae6214f0..ab3ac8f8aaf6 100644 --- a/databases/mysql57-server/files/patch-man_CMakeLists.txt +++ b/databases/mysql57-server/files/patch-man_CMakeLists.txt @@ -1,11 +1,13 @@ --- man/CMakeLists.txt.orig 2015-11-29 19:16:24 UTC +++ man/CMakeLists.txt -@@ -15,8 +15,6 @@ +@@ -14,9 +14,7 @@ + # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # Copy man pages - FILE(GLOB MAN1_FILES *.1) +-FILE(GLOB MAN1_FILES *.1) -FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1) -FILE(GLOB MAN1_NDB ndb*.1) ++FILE(GLOB MAN1_FILES my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql_zap.1 mysqlbug.1 mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1) FILE(GLOB MAN8_FILES *.8) FILE(GLOB MAN8_NDB ndb*.8) IF(MAN1_FILES) diff --git a/databases/mysql57-server/files/patch-sql_json__dom.h b/databases/mysql57-server/files/patch-sql_json__dom.h new file mode 100644 index 000000000000..14fc069505cb --- /dev/null +++ b/databases/mysql57-server/files/patch-sql_json__dom.h @@ -0,0 +1,22 @@ +--- sql/json_dom.h.orig 2015-11-29 19:16:24 UTC ++++ sql/json_dom.h +@@ -368,7 +368,7 @@ struct Json_key_comparator + Json_object class. + */ + typedef std::map > > Json_object_map; ++ Malloc_allocator > > Json_object_map; + + /** + Represents a JSON container value of type "object" (ECMA), type +--- sql/json_dom.h.orig 2015-11-29 19:16:24 UTC ++++ sql/json_dom.h +@@ -368,7 +368,7 @@ struct Json_key_comparator + Json_object class. + */ + typedef std::map > > Json_object_map; ++ Malloc_allocator > > Json_object_map; + + /** + Represents a JSON container value of type "object" (ECMA), type diff --git a/databases/mysql57-server/files/patch-storage_innobase_buf_buf0buf.cc b/databases/mysql57-server/files/patch-storage_innobase_buf_buf0buf.cc new file mode 100644 index 000000000000..ee535e2f6455 --- /dev/null +++ b/databases/mysql57-server/files/patch-storage_innobase_buf_buf0buf.cc @@ -0,0 +1,22 @@ +--- storage/innobase/buf/buf0buf.cc.orig 2015-11-29 19:16:24 UTC ++++ storage/innobase/buf/buf0buf.cc +@@ -300,7 +300,7 @@ typedef std::map< + const byte*, + buf_chunk_t*, + std::less, +- ut_allocator > > ++ ut_allocator > > + buf_pool_chunk_map_t; + + static buf_pool_chunk_map_t* buf_chunk_map_reg; +--- storage/innobase/buf/buf0buf.cc.orig 2015-11-29 19:16:24 UTC ++++ storage/innobase/buf/buf0buf.cc +@@ -300,7 +300,7 @@ typedef std::map< + const byte*, + buf_chunk_t*, + std::less, +- ut_allocator > > ++ ut_allocator > > + buf_pool_chunk_map_t; + + static buf_pool_chunk_map_t* buf_chunk_map_reg; diff --git a/databases/mysql57-server/files/patch-storage_innobase_dict_dict0stats.cc b/databases/mysql57-server/files/patch-storage_innobase_dict_dict0stats.cc new file mode 100644 index 000000000000..d5d5d6ab3393 --- /dev/null +++ b/databases/mysql57-server/files/patch-storage_innobase_dict_dict0stats.cc @@ -0,0 +1,22 @@ +--- storage/innobase/dict/dict0stats.cc.orig 2015-11-29 19:16:24 UTC ++++ storage/innobase/dict/dict0stats.cc +@@ -139,7 +139,7 @@ then we would store 5,7,10,11,12 in the + typedef std::vector > boundaries_t; + + /** Allocator type used for index_map_t. */ +-typedef ut_allocator > ++typedef ut_allocator > + index_map_t_allocator; + + /** Auxiliary map used for sorting indexes by name in dict_stats_save(). */ +--- storage/innobase/dict/dict0stats.cc.orig 2015-11-29 19:16:24 UTC ++++ storage/innobase/dict/dict0stats.cc +@@ -139,7 +139,7 @@ then we would store 5,7,10,11,12 in the + typedef std::vector > boundaries_t; + + /** Allocator type used for index_map_t. */ +-typedef ut_allocator > ++typedef ut_allocator > + index_map_t_allocator; + + /** Auxiliary map used for sorting indexes by name in dict_stats_save(). */ diff --git a/databases/mysql57-server/files/patch-storage_innobase_sync_sync0debug.cc b/databases/mysql57-server/files/patch-storage_innobase_sync_sync0debug.cc new file mode 100644 index 000000000000..30d9d2d06b99 --- /dev/null +++ b/databases/mysql57-server/files/patch-storage_innobase_sync_sync0debug.cc @@ -0,0 +1,22 @@ +--- storage/innobase/sync/sync0debug.cc.orig 2015-11-29 19:16:24 UTC ++++ storage/innobase/sync/sync0debug.cc +@@ -1704,7 +1704,7 @@ private: + const void*, + File, + std::less, +- ut_allocator > > ++ ut_allocator > > + Files; + + typedef OSMutex Mutex; +--- storage/innobase/sync/sync0debug.cc.orig 2015-11-29 19:16:24 UTC ++++ storage/innobase/sync/sync0debug.cc +@@ -1704,7 +1704,7 @@ private: + const void*, + File, + std::less, +- ut_allocator > > ++ ut_allocator > > + Files; + + typedef OSMutex Mutex; -- cgit v1.2.3