1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Multithreaded SQL database (server)
8 HOMEPAGE= http://www.mysql.com/
12 SITES[main]= MYSQL/MySQL-5.7
13 DISTFILE[1]= mysql-boost-5.7.18.tar.gz:main
15 SPKGS[standard]= complete
19 OPTIONS_AVAILABLE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA
21 OPTIONS_STANDARD= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA
23 OPTGROUP_UNLIMITED= STORAGE
24 OPTDESCR[STORAGE]= Storage engines statically compiled into server
25 OPTGROUP[STORAGE]= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA
26 OPT_ON[all]= PERFORMANCE
28 BUILD_DEPENDS= rpcgen:single:standard
29 libedit:single:standard
30 BUILDRUN_DEPENDS= libevent:single:standard
32 EXRUN[client]= libedit:single:standard
33 zlib:complete:standard
37 USERGROUP_SPKG= server
39 USES= bison cmake:outsource perl:run shebangfix ssl:build c++:server,client
42 DISTNAME= mysql-5.7.18
46 LICENSE_FILE= GPLv2:{{WRKSRC}}/README
47 CMAKE_BUILD_TYPE= Release
48 SHEBANG_FILES= scripts/*.pl*
51 PLIST_SUB= MY_DBDIR=/var/db/mysql
52 MY_SECDIR=/var/db/mysql_secure
53 MY_TMPDIR=/var/db/mysql_tmpdir
54 RC_SUBR= mysql-server:server
55 SUB_FILES= my.cnf.sample
56 SUB_LIST= MY_DBDIR=/var/db/mysql
57 MY_SECDIR=/var/db/mysql_secure
58 MY_TMPDIR=/var/db/mysql_tmpdir
60 CFLAGS= -Wno-deprecated-declarations
61 CMAKE_ARGS= -DINSTALL_PKGCONFIGDIR="{{LOCALBASE}}/lib/pkgconfig"
62 -DINSTALL_DOCDIR="share/doc/mysql"
63 -DINSTALL_DOCREADMEDIR="share/doc/mysql"
64 -DINSTALL_INCLUDEDIR="include/mysql"
65 -DINSTALL_INFODIR="share/info"
66 -DINSTALL_LIBDIR="lib/mysql"
67 -DINSTALL_MANDIR="share/man"
68 -DINSTALL_MYSQLDATADIR="/var/db/mysql"
69 -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring"
70 -DINSTALL_MYSQLSHAREDIR="share/mysql"
71 -DINSTALL_MYSQLTESTDIR="share/mysql/tests"
72 -DINSTALL_PLUGINDIR="lib/mysql/plugin"
73 -DINSTALL_SBINDIR="libexec"
74 -DINSTALL_SCRIPTDIR="bin"
75 -DINSTALL_SECURE_FILE_PRIVDIR="/var/db/mysql_secure"
76 -DINSTALL_SHAREDIR="share"
77 -DINSTALL_SUPPORTFILESDIR="share/mysql"
78 -DMYSQL_KEYRINGDIR="etc/mysql/keyring"
79 -DWITH_BOOST="{{WRKSRC}}/boost"
80 -DWITH_EDITLINE=system
81 -DWITH_LIBEVENT=system
84 -DWITH_SSL={{OPENSSLBASE}}
85 -DWITH_EMBEDDED_SERVER="ON"
86 -DINSTALL_MYSQLTESTDIR=0
88 [PERFSCHEMA].DESCRIPTION= Provide "Performance Schema Storage" engine
89 [PERFSCHEMA].CMAKE_ARGS_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
91 [EXAMPLE].DESCRIPTION= Provide "Example Storage" engine
92 [EXAMPLE].CMAKE_ARGS_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1
94 [PARTITION].DESCRIPTION= Provide "Partitioning support Storage" engine
95 [PARTITION].CMAKE_ARGS_ON= -DWITH_PARTITION_STORAGE_ENGINE=1
97 [BLACKHOLE].DESCRIPTION= Provide "Blackhole Storage" engine
98 [BLACKHOLE].CMAKE_ARGS_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1
100 [PERFORMANCE].DESCRIPTION= Enable "Performance Schema" (High RAM usage)
101 [PERFORMANCE].SUB_LIST_OFF= PERFSCHEMRC="--skip-performance-schema"
102 [PERFORMANCE].SUB_LIST_ON= PERFSCHEMRC=""
104 [ARCHIVE].DESCRIPTION= Provide "Archive Storage" engine
105 [ARCHIVE].CMAKE_ARGS_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1
107 [FEDERATED].DESCRIPTION= Provide "Federated Storage" engine
108 [FEDERATED].CMAKE_ARGS_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1
109 [FEDERATED].SUB_LIST_OFF= FEDER=""
110 [FEDERATED].SUB_LIST_ON= FEDER="--federated"
112 [INNOBASE].DESCRIPTION= Provide "InnoDB Storage" engine
113 [INNOBASE].CMAKE_ARGS_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1
116 ${MKDIR} ${STAGEDIR}${PREFIX}/etc/mysql/keyring \
117 ${STAGEDIR}/var/db/mysql_secure \
118 ${STAGEDIR}/var/db/mysql_tmpdir
119 ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample \
120 ${STAGEDIR}${PREFIX}/etc/mysql/my.cnf.sample
121 ${RM} ${STAGEDIR}${MANPREFIX}/man/man1/zlib_decompress.1 \
122 ${STAGEDIR}${MANPREFIX}/man/man1/lz4_decompress.1
123 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/lib*.so
124 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/plugin/*.so
125 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/mysqld
126 list=$$(cd ${STAGEDIR}${PREFIX}/bin && ${LS} * | ${AWK} \
127 '{ if ($$1 != "mysql_config" && $$1 != "mysqld_mult" && \
128 $$1 != "mysqld_safe" && $$1 != "mysqldumpslow" && \
129 $$1 != "mysqld_multi") print}'); \
130 (cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} $$list)
133 @${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
135 [FILE:294:descriptions/desc.server]
136 MySQL is a very fast, multi-threaded, multi-user and robust SQL
137 (Structured Query Language) database server.
139 MySQL, the most popular Open Source SQL database management system, is
140 developed, distributed, and supported by Oracle Corporation.
142 This package contains the MySQL server components.
145 [FILE:150:descriptions/desc.client]
146 MySQL is a very fast, multi-threaded, multi-user and robust SQL
147 (Structured Query Language) database server.
149 This package contains the MySQL client.
153 ae6f5e2cf7b936496cf60260cd7fd5a0862c21f48cd240448021c4ea067a0f0c 61612105 mysql-boost-5.7.18.tar.gz
156 [FILE:3573:manifests/plist.server]
157 @dir(mysql,mysql,0750) %%MY_SECDIR%%
158 @dir(mysql,mysql,0750) %%MY_TMPDIR%%
159 @dir(mysql,mysql,0750) etc/mysql/keyring
160 @sample(root,wheel,0644) etc/mysql/my.cnf.sample
171 mysql_secure_installation
184 lib/mysql/libmysqld.a
189 connection_control.so
198 libtest_services_threaded.so
199 libtest_session_detach.so
200 libtest_session_in_thd.so
201 libtest_session_info.so
202 libtest_sql_2_sessions.so
203 libtest_sql_all_col_types.so
204 libtest_sql_cmds_1.so
205 libtest_sql_commit.so
206 libtest_sql_complex.so
207 libtest_sql_errors.so
209 libtest_sql_processlist.so
210 libtest_sql_replication.so
211 libtest_sql_shutdown.so
212 libtest_sql_sqlmode.so
213 libtest_sql_stored_procedures_functions.so
214 libtest_sql_views_triggers.so
215 libtest_x_sessions_deinit.so
216 libtest_x_sessions_init.so
224 replication_observers_example_plugin.so
229 test_security_context.so
235 my_print_defaults.1.gz
242 mysql_install_db.1.gz
244 mysql_secure_installation.1.gz
245 mysql_ssl_rsa_setup.1.gz
246 mysql-stress-test.pl.1.gz
247 mysql-test-run.pl.1.gz
248 mysql_tzinfo_to_sql.1.gz
255 mysqltest_embedded.1.gz
258 resolve_stack_dump.1.gz
260 share/man/man8/mysqld.8.gz
261 share/mysql/bulgarian/errmsg.sys
262 share/mysql/charsets/
289 share/mysql/czech/errmsg.sys
290 share/mysql/danish/errmsg.sys
293 share/mysql/dutch/errmsg.sys
294 share/mysql/english/errmsg.sys
296 share/mysql/estonian/errmsg.sys
298 share/mysql/french/errmsg.sys
299 share/mysql/german/errmsg.sys
300 share/mysql/greek/errmsg.sys
301 share/mysql/hungarian/errmsg.sys
302 innodb_memcached_config.sql
304 share/mysql/italian/errmsg.sys
305 share/mysql/japanese/errmsg.sys
306 share/mysql/korean/errmsg.sys
310 mysql_security_commands.sql
312 mysql_system_tables.sql
313 mysql_system_tables_data.sql
314 mysql_test_data_timezone.sql
316 share/mysql/norwegian-ny/errmsg.sys
317 share/mysql/norwegian/errmsg.sys
318 share/mysql/polish/errmsg.sys
319 share/mysql/portuguese/errmsg.sys
320 share/mysql/romanian/errmsg.sys
321 share/mysql/russian/errmsg.sys
322 share/mysql/serbian/errmsg.sys
323 share/mysql/slovak/errmsg.sys
324 share/mysql/spanish/errmsg.sys
325 share/mysql/swedish/errmsg.sys
326 share/mysql/ukrainian/errmsg.sys
327 uninstall_rewriter.sql
330 [FILE:2559:manifests/plist.client]
349 byte_order_generic_x86.h
372 client_authentication.h
377 group_replication_priv.h
388 plugin_group_replication.h
392 plugin_validate_password.h
393 include/mysql/mysql/psi/
412 service_my_plugin_log.h
413 service_my_snprintf.h
414 service_mysql_alloc.h
415 service_mysql_keyring.h
416 service_mysql_password_policy.h
417 service_mysql_string.h
419 service_rpl_transaction_ctx.h
420 service_rpl_transaction_write_set.h
421 service_rules_table.h
422 service_security_context.h
423 service_srv_session.h
424 service_srv_session_info.h
425 service_ssl_wrapper.h
427 service_thd_engine_lock.h
429 service_thread_scheduler.h
445 plugin_group_replication.h
447 plugin_validate_password.h
461 lib/pkgconfig/mysqlclient.pc
462 share/aclocal/mysql.m4
466 mysql_client_test.1.gz
467 mysql_client_test_embedded.1.gz
469 mysql_config_editor.1.gz
480 [FILE:928:patches/patch-CMakeLists.txt]
481 --- CMakeLists.txt.orig 2016-11-28 13:32:52 UTC
483 @@ -622,7 +622,6 @@ IF(NOT WITHOUT_SERVER)
484 OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
485 IF(WITH_EMBEDDED_SERVER)
486 ADD_SUBDIRECTORY(libmysqld)
487 - ADD_SUBDIRECTORY(libmysqld/examples)
488 ENDIF(WITH_EMBEDDED_SERVER)
491 @@ -680,7 +679,6 @@ ELSE()
492 SET(CPACK_GENERATOR "TGZ")
494 ADD_SUBDIRECTORY(packaging/WiX)
495 -ADD_SUBDIRECTORY(packaging/solaris)
498 INSTALL(FILES Docs/mysql.info DESTINATION ${INSTALL_INFODIR} OPTIONAL COMPONENT Info)
499 @@ -688,6 +686,7 @@ ENDIF()
501 # RPM installs documentation directly from the source tree
504 IF(NOT INSTALL_LAYOUT MATCHES "RPM")
505 INSTALL(FILES COPYING LICENSE.mysql
506 DESTINATION ${INSTALL_DOCREADMEDIR}
507 @@ -710,6 +709,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
508 PATTERN "sp-imp-spec.txt" EXCLUDE
517 [FILE:566:patches/patch-cmake_plugin.cmake]
518 --- cmake/plugin.cmake.orig 2016-03-28 18:06:12 UTC
519 +++ cmake/plugin.cmake
520 @@ -237,9 +237,6 @@ MACRO(MYSQL_ADD_PLUGIN)
521 MYSQL_INSTALL_TARGETS(${target}
522 DESTINATION ${INSTALL_PLUGINDIR}
523 COMPONENT ${INSTALL_COMPONENT})
524 - INSTALL_DEBUG_TARGET(${target}
525 - DESTINATION ${INSTALL_PLUGINDIR}/debug
526 - COMPONENT ${INSTALL_COMPONENT})
527 # Add installed files to list for RPMs
528 FILE(APPEND ${CMAKE_BINARY_DIR}/support-files/plugins.files
529 "%attr(755, root, root) %{_prefix}/${INSTALL_PLUGINDIR}/${ARG_MODULE_OUTPUT_NAME}.so\n"
532 [FILE:435:patches/patch-cmake_ssl.cmake]
533 --- cmake/ssl.cmake.orig 2016-08-12 10:55:07 UTC
535 @@ -179,6 +179,12 @@ MACRO (MYSQL_CHECK_SSL)
536 OPENSSL_MAJOR_VERSION STREQUAL "1"
538 SET(OPENSSL_FOUND TRUE)
539 + ELSEIF(OPENSSL_INCLUDE_DIR AND
540 + OPENSSL_LIBRARY AND
542 + OPENSSL_MAJOR_VERSION STREQUAL "2"
544 + SET(OPENSSL_FOUND TRUE)
546 SET(OPENSSL_FOUND FALSE)
550 [FILE:491:patches/patch-include_my__compare.h]
551 --- include/my_compare.h.orig 2016-03-28 18:06:12 UTC
552 +++ include/my_compare.h
553 @@ -40,7 +40,7 @@ extern "C" {
554 But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
557 -#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */
558 +#define HA_MAX_KEY_LENGTH 4000 /* Max length in bytes */
559 #define HA_MAX_KEY_SEG 16 /* Max segments for key */
561 #define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6)
564 [FILE:419:patches/patch-include_my__thread__os__id.h]
565 --- include/my_thread_os_id.h.orig 2016-03-28 18:06:12 UTC
566 +++ include/my_thread_os_id.h
567 @@ -75,8 +75,12 @@ static inline my_thread_os_id_t my_threa
568 return pthread_getthreadid_np();
570 #ifdef HAVE_INTEGER_PTHREAD_SELF
571 +# ifdef __DragonFly__
572 + return syscall(SYS_lwp_gettid);
574 /* Unknown platform, fallback. */
575 return pthread_self();
578 /* Feature not available. */
582 [FILE:549:patches/patch-include_myisam.h]
583 --- include/myisam.h.orig 2016-03-28 18:06:12 UTC
585 @@ -45,7 +45,7 @@ extern "C" {
586 The following defines can be increased if necessary.
587 But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
589 -#define MI_MAX_KEY_LENGTH 1000 /* Max length in bytes */
590 +#define MI_MAX_KEY_LENGTH 4000 /* Max length in bytes */
591 #define MI_MAX_KEY_SEG 16 /* Max segments for key */
593 #define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
596 [FILE:428:patches/patch-libmysql_CMakeLists.txt]
597 --- libmysql/CMakeLists.txt.orig 2016-11-28 13:32:52 UTC
598 +++ libmysql/CMakeLists.txt
599 @@ -276,7 +276,7 @@ IF(NOT DISABLE_SHARED)
600 COMPONENT SharedLibraries)
602 # libtool compatability
603 - IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
604 + IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly" OR APPLE)
605 SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
607 SET(OS_SHARED_LIB_VERSION
610 [FILE:334:patches/patch-libservices_CMakeLists.txt]
611 --- libservices/CMakeLists.txt.orig 2016-03-28 18:06:12 UTC
612 +++ libservices/CMakeLists.txt
613 @@ -35,4 +35,6 @@ SET(MYSQLSERVICES_SOURCES
614 mysql_keyring_service.c)
616 ADD_CONVENIENCE_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
618 INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
622 [FILE:1910:patches/patch-mysys__ssl_my__default.cc]
623 --- mysys_ssl/my_default.cc.orig 2016-08-25 11:52:06 UTC
624 +++ mysys_ssl/my_default.cc
625 @@ -114,7 +114,7 @@ static my_bool defaults_already_read= FA
627 /* Which directories are searched for options (and in which order) */
629 -#define MAX_DEFAULT_DIRS 6
630 +#define MAX_DEFAULT_DIRS 7
631 #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
632 static const char **default_directories = NULL;
634 @@ -914,6 +914,14 @@ static int search_default_file_with_ext(
635 return 1; /* Ignore wrong files */
638 + if (strstr(name, "/etc") == name)
641 + "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
646 while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file))
649 @@ -1252,7 +1260,8 @@ void my_print_default_files(const char *
650 end[(strlen(end)-1)] = ' ';
652 strxmov(end, conf_file, *ext , " ", NullS);
653 - fputs(name, stdout);
654 + if (strstr(name, "/etc") != name)
655 + fputs(name, stdout);
659 @@ -1411,13 +1420,8 @@ static const char **init_default_directo
663 - errors += add_directory(alloc, "/etc/", dirs);
664 - errors += add_directory(alloc, "/etc/mysql/", dirs);
666 -#if defined(DEFAULT_SYSCONFDIR)
667 - if (DEFAULT_SYSCONFDIR[0])
668 - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
669 -#endif /* DEFAULT_SYSCONFDIR */
670 + errors += add_directory(alloc, "/usr/local/etc/", dirs);
671 + errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs);
675 @@ -1488,7 +1492,7 @@ int check_file_permissions(const char *f
678 if (!my_stat(file_name,&stat_info,MYF(0)))
682 Ignore .mylogin.cnf file if not exclusively readable/writable
686 [FILE:430:patches/patch-plugin_password__validation_validate__password.cc]
687 --- plugin/password_validation/validate_password.cc.orig 2016-03-28 18:06:12 UTC
688 +++ plugin/password_validation/validate_password.cc
690 #include <mysql/plugin_validate_password.h>
691 #include <mysql/service_my_plugin_log.h>
692 #include <mysql/service_mysql_string.h>
693 +/* solve clash between libc++ bitset::test() and test macro from my_global.h */
700 [FILE:545:patches/patch-rapid_plugin_x_CMakeLists.txt]
701 --- rapid/plugin/x/CMakeLists.txt.orig 2017-03-18 07:45:14 UTC
702 +++ rapid/plugin/x/CMakeLists.txt
703 @@ -92,14 +92,14 @@ ELSE()
704 ${CMAKE_SOURCE_DIR}/include #temporary
705 ${CMAKE_CURRENT_SOURCE_DIR}/include/mysql
706 ${CMAKE_CURRENT_BINARY_DIR}/generated
707 - ${SSL_INCLUDE_DIRS}
708 - ${ZLIB_INCLUDE_DIR}
709 + ${BOOST_INCLUDE_DIR}
712 INCLUDE_DIRECTORIES(SYSTEM
713 - ${BOOST_INCLUDE_DIR}
714 ${PROTOBUF_INCLUDE_DIRS}
715 ${LIBEVENT_INCLUDE_DIR}
716 + ${SSL_INCLUDE_DIRS}
717 + ${ZLIB_INCLUDE_DIR}
720 IF(XPLUGIN_NO_LITE_PROTOBUF)
723 [FILE:678:patches/patch-rapid_plugin_x_mysqlx__configure.cmake]
724 --- rapid/plugin/x/mysqlx_configure.cmake.orig 2016-09-14 15:25:26 UTC
725 +++ rapid/plugin/x/mysqlx_configure.cmake
726 @@ -29,6 +29,7 @@ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src
727 CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/mysqlx_version.h.in
728 ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h )
731 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_error.h
732 DESTINATION ${INSTALL_INCLUDEDIR}
733 COMPONENT Developement)
734 @@ -36,3 +37,4 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR
735 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h
736 DESTINATION ${INSTALL_INCLUDEDIR}
737 COMPONENT Developement)
741 [FILE:631:patches/patch-rapid_unittest_gunit_xplugin_CMakeLists.txt]
742 --- rapid/unittest/gunit/xplugin/CMakeLists.txt.orig 2016-03-28 18:06:12 UTC
743 +++ rapid/unittest/gunit/xplugin/CMakeLists.txt
744 @@ -65,7 +65,6 @@ ENDIF()
745 ADD_DEFINITIONS(${GMOCK_CFLAGS} -DBOOST_ALL_NO_LIB -DBOOST_NO_AUTO_PTR -DUSE_MYSQLX_FULL_PROTO)
747 INCLUDE_DIRECTORIES(SYSTEM
748 - ${BOOST_INCLUDE_DIR}
749 ${PROTOBUF_INCLUDE_DIRS}
751 ${LIBEVENT_INCLUDE_DIR}
752 @@ -75,6 +74,7 @@ INCLUDE_DIRECTORIES(SYSTEM
756 + ${BOOST_INCLUDE_DIR}
757 ${CMAKE_SOURCE_DIR}/testing/include
758 ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include
759 ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include/ngs
762 [FILE:1179:patches/patch-scripts_CMakeLists.txt]
763 --- scripts/CMakeLists.txt.orig 2016-11-28 13:32:52 UTC
764 +++ scripts/CMakeLists.txt
765 @@ -313,7 +313,7 @@ SET(pkglibdir ${prefix}/${INSTALL_LIBDIR
766 SET(pkgplugindir ${prefix}/${INSTALL_PLUGINDIR})
767 SET(localstatedir ${MYSQL_DATADIR})
769 -IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
771 SET(RPATH_OPTION " -R$pkglibdir")
774 @@ -353,6 +353,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
775 GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
776 STRING(REGEX REPLACE "^lib" "" lib "${lib}")
777 SET(${var} "${${var}}-l${lib} " )
778 + ELSEIF(lib STREQUAL "-pthread")
779 + SET(${var} "${${var}}-pthread " )
781 SET(${var} "${${var}}-l${lib} " )
783 @@ -477,7 +479,7 @@ ELSE()
784 FOREACH(file ${BIN_SCRIPTS})
785 IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
786 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
787 - ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
788 + ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY)
789 ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file})
790 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}
791 ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
794 [FILE:268:patches/patch-sql_CMakeLists.txt]
795 --- sql/CMakeLists.txt.orig 2016-08-25 11:52:06 UTC
796 +++ sql/CMakeLists.txt
797 @@ -24,6 +24,8 @@ INCLUDE_DIRECTORIES(
800 ${CMAKE_BINARY_DIR}/sql
801 + ${CMAKE_BINARY_DIR}/include
802 + ${CMAKE_BINARY_DIR}
808 [FILE:1264:patches/patch-sql_conn__handler_socket__connection.cc]
809 --- sql/conn_handler/socket_connection.cc.orig 2017-03-18 07:45:14 UTC
810 +++ sql/conn_handler/socket_connection.cc
811 @@ -942,22 +942,25 @@ Channel_info* Mysqld_socket_listener::li
812 signal(SIGCHLD, SIG_DFL);
813 request_init(&req, RQ_DAEMON, m_libwrap_name, RQ_FILE,
814 mysql_socket_getfd(connect_sock), NULL);
816 + void (*my_fromhost) (void *) = (void (*)(void *)) fromhost;
819 - if (!hosts_access(&req))
820 + int (*my_hosts_access) (void *) = (int (*) (void *)) hosts_access;
821 + if (!my_hosts_access(&req))
824 This may be stupid but refuse() includes an exit(0)
825 which we surely don't want...
826 clean_exit() - same stupid thing ...
828 + char *(*my_eval_client) (void *) = (char *(*) (void *)) eval_client;
829 syslog(LOG_AUTH | m_deny_severity,
830 - "refused connect from %s", eval_client(&req));
831 + "refused connect from %s", my_eval_client(&req));
833 #ifdef HAVE_LIBWRAP_PROTOTYPES
834 // Some distros have patched tcpd.h to have proper prototypes
836 - (req.sink)(req.fd);
837 + ((void (*)(int)) (req.sink))(req.fd);
839 // Some distros have not patched tcpd.h
843 [FILE:2575:patches/patch-sql_sql__view.cc]
844 --- sql/sql_view.cc.orig 2016-03-28 18:06:12 UTC
846 @@ -773,46 +773,46 @@ static const int required_view_parameter
848 static File_option view_parameters[]=
849 {{{ C_STRING_WITH_LEN("query")},
850 - my_offsetof(TABLE_LIST, select_stmt),
851 + static_cast<int>(my_offsetof(TABLE_LIST, select_stmt)),
852 FILE_OPTIONS_ESTRING},
853 {{ C_STRING_WITH_LEN("md5")},
854 - my_offsetof(TABLE_LIST, md5),
855 + static_cast<int>(my_offsetof(TABLE_LIST, md5)),
856 FILE_OPTIONS_STRING},
857 {{ C_STRING_WITH_LEN("updatable")},
858 - my_offsetof(TABLE_LIST, updatable_view),
859 + static_cast<int>(my_offsetof(TABLE_LIST, updatable_view)),
860 FILE_OPTIONS_ULONGLONG},
861 {{ C_STRING_WITH_LEN("algorithm")},
862 - my_offsetof(TABLE_LIST, algorithm),
863 + static_cast<int>(my_offsetof(TABLE_LIST, algorithm)),
864 FILE_OPTIONS_ULONGLONG},
865 {{ C_STRING_WITH_LEN("definer_user")},
866 - my_offsetof(TABLE_LIST, definer.user),
867 + static_cast<int>(my_offsetof(TABLE_LIST, definer.user)),
868 FILE_OPTIONS_STRING},
869 {{ C_STRING_WITH_LEN("definer_host")},
870 - my_offsetof(TABLE_LIST, definer.host),
871 + static_cast<int>(my_offsetof(TABLE_LIST, definer.host)),
872 FILE_OPTIONS_STRING},
873 {{ C_STRING_WITH_LEN("suid")},
874 - my_offsetof(TABLE_LIST, view_suid),
875 + static_cast<int>(my_offsetof(TABLE_LIST, view_suid)),
876 FILE_OPTIONS_ULONGLONG},
877 {{ C_STRING_WITH_LEN("with_check_option")},
878 - my_offsetof(TABLE_LIST, with_check),
879 + static_cast<int>(my_offsetof(TABLE_LIST, with_check)),
880 FILE_OPTIONS_ULONGLONG},
881 {{ C_STRING_WITH_LEN("timestamp")},
882 - my_offsetof(TABLE_LIST, timestamp),
883 + static_cast<int>(my_offsetof(TABLE_LIST, timestamp)),
884 FILE_OPTIONS_TIMESTAMP},
885 {{ C_STRING_WITH_LEN("create-version")},
886 - my_offsetof(TABLE_LIST, file_version),
887 + static_cast<int>(my_offsetof(TABLE_LIST, file_version)),
888 FILE_OPTIONS_ULONGLONG},
889 {{ C_STRING_WITH_LEN("source")},
890 - my_offsetof(TABLE_LIST, source),
891 + static_cast<int>(my_offsetof(TABLE_LIST, source)),
892 FILE_OPTIONS_ESTRING},
893 {{(char*) STRING_WITH_LEN("client_cs_name")},
894 - my_offsetof(TABLE_LIST, view_client_cs_name),
895 + static_cast<int>(my_offsetof(TABLE_LIST, view_client_cs_name)),
896 FILE_OPTIONS_STRING},
897 {{(char*) STRING_WITH_LEN("connection_cl_name")},
898 - my_offsetof(TABLE_LIST, view_connection_cl_name),
899 + static_cast<int>(my_offsetof(TABLE_LIST, view_connection_cl_name)),
900 FILE_OPTIONS_STRING},
901 {{(char*) STRING_WITH_LEN("view_body_utf8")},
902 - my_offsetof(TABLE_LIST, view_body_utf8),
903 + static_cast<int>(my_offsetof(TABLE_LIST, view_body_utf8)),
904 FILE_OPTIONS_ESTRING},
909 [FILE:1921:patches/patch-sql_sys__vars.cc]
910 --- sql/sys_vars.cc.orig 2016-03-28 18:06:12 UTC
912 @@ -1734,7 +1734,7 @@ static Sys_var_ulong Sys_interactive_tim
913 "connection before closing it",
914 SESSION_VAR(net_interactive_timeout),
915 CMD_LINE(REQUIRED_ARG),
916 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
917 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
919 static Sys_var_ulong Sys_join_buffer_size(
921 @@ -2552,7 +2552,7 @@ static Sys_var_ulong Sys_net_read_timeou
922 "Number of seconds to wait for more data from a connection before "
924 SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG),
925 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
926 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
927 NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
928 ON_UPDATE(fix_net_read_timeout));
930 @@ -2568,7 +2568,7 @@ static Sys_var_ulong Sys_net_write_timeo
931 "Number of seconds to wait for a block to be written to a connection "
932 "before aborting the write",
933 SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG),
934 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
935 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
936 NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
937 ON_UPDATE(fix_net_write_timeout));
939 @@ -4083,7 +4083,7 @@ static Sys_var_ulong Sys_net_wait_timeou
940 "The number of seconds the server waits for activity on a "
941 "connection before closing it",
942 SESSION_VAR(net_wait_timeout), CMD_LINE(REQUIRED_ARG),
943 - VALID_RANGE(1, IF_WIN(INT_MAX32/1000, LONG_TIMEOUT)),
944 + VALID_RANGE(1, INT_MAX32/1000),
945 DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
947 static Sys_var_plugin Sys_default_storage_engine(
950 [FILE:440:patches/patch-storage_innobase_include_srv0mon.h]
951 --- storage/innobase/include/srv0mon.h.orig 2016-03-28 18:06:12 UTC
952 +++ storage/innobase/include/srv0mon.h
953 @@ -34,6 +34,10 @@ Created 12/15/2009 Jimmy Yang
954 /* Required for FreeBSD so that INT64_MAX is defined. */
955 #define __STDC_LIMIT_MACROS
956 #endif /* __STDC_LIMIT_MACROS */
957 +#ifdef __DragonFly__
958 +/* The hack above doen't work for dragonfly, stdint.h already imported */
959 +#include <machine/int_limits.h>
966 [FILE:985:patches/patch-storage_myisam_mi__dynrec.c]
967 --- storage/myisam/mi_dynrec.c.orig 2016-03-28 18:06:12 UTC
968 +++ storage/myisam/mi_dynrec.c
969 @@ -65,18 +65,13 @@ my_bool mi_dynmap_file(MI_INFO *info, my
973 - I wonder if it is good to use MAP_NORESERVE. From the Linux man page:
975 - Do not reserve swap space for this mapping. When swap space is
976 - reserved, one has the guarantee that it is possible to modify the
977 - mapping. When swap space is not reserved one might get SIGSEGV
978 - upon a write if no physical memory is available.
979 + MAP_NORESERVE is unimplemented in FreeBSD
981 info->s->file_map= (uchar*)
982 my_mmap(0, (size_t) size,
983 info->s->mode==O_RDONLY ? PROT_READ :
984 PROT_READ | PROT_WRITE,
985 - MAP_SHARED | MAP_NORESERVE,
988 if (info->s->file_map == (uchar*) MAP_FAILED)
992 [FILE:2284:files/my.cnf.sample.in]
993 # $FreeBSD: head/databases/mysql57-server/files/my.cnf.sample.in 414707 2016-05-06 14:39:59Z riggs $
997 socket = /tmp/mysql.sock
1000 prompt = \u@\h [\d]>\_
1006 socket = /tmp/mysql.sock
1007 bind-address = 127.0.0.1
1008 basedir = %%PREFIX%%
1009 datadir = %%MY_DBDIR%%
1010 tmpdir = %%MY_TMPDIR%%
1011 slave-load-tmpdir = %%MY_TMPDIR%%
1012 secure-file-priv = %%MY_SECDIR%%
1015 master-info-repository = TABLE
1016 relay-log-info-repository = TABLE
1017 relay-log-recovery = 1
1022 binlog_cache_size = 16M
1023 expire_logs_days = 30
1024 default_password_lifetime = 0
1025 enforce-gtid-consistency = 1
1027 safe-user-create = 1
1028 lower_case_table_names = 1
1029 explicit-defaults-for-timestamp = 1
1030 myisam-recover-options = BACKUP,FORCE
1031 open_files_limit = 32768
1032 table_open_cache = 16384
1033 table_definition_cache = 8192
1034 net_retry_count = 16384
1035 key_buffer_size = 256M
1036 max_allowed_packet = 64M
1037 query_cache_type = 0
1038 query_cache_size = 0
1039 long_query_time = 0.5
1040 innodb_buffer_pool_size = 1G
1041 innodb_data_home_dir = %%MY_DBDIR%%
1042 innodb_log_group_home_dir = %%MY_DBDIR%%
1043 innodb_data_file_path = ibdata1:128M:autoextend
1044 innodb_temp_data_file_path = ibtmp1:128M:autoextend
1045 innodb_flush_method = O_DIRECT
1046 innodb_log_file_size = 256M
1047 innodb_log_buffer_size = 16M
1048 innodb_write_io_threads = 8
1049 innodb_read_io_threads = 8
1050 innodb_autoinc_lock_mode = 2
1054 max_allowed_packet = 256M
1059 [FILE:2582:files/mysql-server.in]
1062 # $FreeBSD: head/databases/mysql57-server/files/mysql-server.in 434623 2017-02-22 17:25:22Z mmokhi $
1070 # Add the following line to /etc/rc.conf to enable mysql:
1071 # mysql_enable (bool): Set to "NO" by default.
1072 # Set it to "YES" to enable MySQL.
1073 # mysql_limits (bool): Set to "NO" by default.
1074 # Set it to yes to run `limits -e -U mysql`
1075 # just before mysql starts.
1076 # mysql_dbdir (str): Default to "%%MY_DBDIR%%"
1077 # Base database directory.
1078 # mysql_confdir (str): Default to "%%ETCDIR%%"
1079 # Base configuration directory.
1080 # mysql_optfile (str): Server-specific option file.
1081 # Set it in the rc.conf or default behaviour of
1082 # `mysqld_safe` itself, will be picking
1083 # ${mysql_confdir}/my.cnf if it exists.
1084 # mysql_pidfile (str): Custum PID file path and name.
1085 # Default to "${mysql_dbdir}/${hostname}.pid".
1086 # mysql_args (str): Custom additional arguments to be passed
1087 # to mysqld_safe (default empty).
1095 load_rc_config $name
1097 : ${mysql_enable="NO"}
1098 : ${mysql_limits="NO"}
1099 : ${mysql_dbdir="%%MY_DBDIR%%"}
1100 : ${mysql_confdir="%%ETCDIR%%"}
1101 if [ -f "${mysql_confdir}/my.cnf" ]; then
1102 : ${mysql_optfile="${mysql_confdir}/my.cnf"}
1103 elif [ -f "${mysql_dbdir}/my.cnf" ]; then
1104 : ${mysql_optfile="${mysql_dbdir}/my.cnf"}
1106 if [ ! -z "${mysql_optfile}" ]; then
1107 mysql_extra="--defaults-extra-file=${mysql_optfile}"
1111 mysql_limits_args="-e -U ${mysql_user}"
1112 : ${hostname:=`/bin/hostname`}
1113 pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
1114 command="/usr/sbin/daemon"
1115 command_args="-c -f %%PREFIX%%/bin/mysqld_safe ${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --pid-file=${pidfile} --user=${mysql_user} ${mysql_args} %%FEDER%% %%PERFSCHEMRC%%"
1116 procname="%%PREFIX%%/libexec/mysqld"
1117 start_precmd="${name}_prestart"
1118 start_postcmd="${name}_poststart"
1119 mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
1120 mysql_install_db_args="${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --mysqld-file=${procname} --user=${mysql_user}"
1122 mysql_create_auth_tables()
1124 eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
1129 if [ ! -d "${mysql_dbdir}/mysql/." ]; then
1130 mysql_create_auth_tables || return 1
1132 if checkyesno mysql_limits; then
1133 eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
1142 while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
1143 timeout=$(( timeout - 1 ))
1152 [FILE:576:files/pkg-message-server.in]
1153 *****************************************************************************
1155 Remember to run mysql_upgrade the first time you start the MySQL server
1156 after an upgrade from an earlier version.
1158 Initial password for first time use of MySQL is saved in $HOME/.mysql_secret
1159 ie. when you want to use "mysql -u root -p" first you should see password
1160 in /root/.mysql_secret
1162 MySQL57 has a default %%ETCDIR%%/my.cnf,
1163 remember to replace it wit your own
1164 or set `mysql_optfile="$YOUR_CNF_FILE` in rc.conf.
1166 *****************************************************************************