1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Multithreaded SQL database (server)
8 HOMEPAGE= https://www.mysql.com/
12 SITES[main]= MYSQL/MySQL-5.7
13 DISTFILE[1]= mysql-boost-5.7.22.tar.gz:main
15 SPKGS[standard]= complete
19 OPTIONS_AVAILABLE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
20 PARTITION PERFSCHEMA PERFORMANCE
21 OPTIONS_STANDARD= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
22 PARTITION PERFSCHEMA PERFORMANCE
23 OPTGROUP_UNLIMITED= STORAGE
24 OPTDESCR[STORAGE]= Storage engines statically compiled into server
25 OPTGROUP[STORAGE]= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
27 OPT_ON[all]= PERFORMANCE
29 BUILD_DEPENDS= rpcgen:single:standard
30 libedit:single:standard
31 BUILDRUN_DEPENDS= libevent:single:standard
33 EXRUN[client]= libedit:single:standard
34 zlib:complete:standard
38 USERGROUP_SPKG= server
40 USES= bison cmake:outsource perl:run shebangfix ssl:build
41 c++:server,client cclibs:server,client
43 DISTNAME= mysql-5.7.22
46 LICENSE_FILE= GPLv2:{{WRKSRC}}/README
49 CMAKE_BUILD_TYPE= Release
50 FPC_EQUIVALENT= databases/mysql57-server
51 SHEBANG_FILES= scripts/*.pl
53 INSTALL_REQ_TOOLCHAIN= yes
54 PLIST_SUB= MY_DBDIR=/var/db/mysql
55 MY_SECDIR=/var/db/mysql_secure
56 MY_TMPDIR=/var/db/mysql_tmpdir
57 RC_SUBR= mysql-server:server
58 SUB_FILES= my.cnf.sample
59 SUB_LIST= MY_DBDIR=/var/db/mysql
60 MY_SECDIR=/var/db/mysql_secure
61 MY_TMPDIR=/var/db/mysql_tmpdir
63 CFLAGS= -Wno-deprecated-declarations
64 CMAKE_ARGS= -DINSTALL_PKGCONFIGDIR="{{LOCALBASE}}/lib/pkgconfig"
65 -DINSTALL_DOCDIR="share/doc/mysql"
66 -DINSTALL_DOCREADMEDIR="share/doc/mysql"
67 -DINSTALL_INCLUDEDIR="include/mysql"
68 -DINSTALL_INFODIR="share/info"
69 -DINSTALL_LIBDIR="lib/mysql"
70 -DINSTALL_MANDIR="share/man"
71 -DINSTALL_MYSQLDATADIR="/var/db/mysql"
72 -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring"
73 -DINSTALL_MYSQLSHAREDIR="share/mysql"
74 -DINSTALL_MYSQLTESTDIR="share/mysql/tests"
75 -DINSTALL_PLUGINDIR="lib/mysql/plugin"
76 -DINSTALL_SBINDIR="libexec"
77 -DINSTALL_SCRIPTDIR="bin"
78 -DINSTALL_SECURE_FILE_PRIVDIR="/var/db/mysql_secure"
79 -DINSTALL_SHAREDIR="share"
80 -DINSTALL_SUPPORTFILESDIR="share/mysql"
81 -DMYSQL_KEYRINGDIR="etc/mysql/keyring"
82 -DWITH_BOOST="{{WRKSRC}}/boost"
83 -DWITH_EDITLINE=system
84 -DWITH_LIBEVENT=system
87 -DWITH_SSL={{OPENSSLBASE}}
88 -DWITH_EMBEDDED_SERVER="ON"
89 -DINSTALL_MYSQLTESTDIR=0
91 [PERFSCHEMA].DESCRIPTION= Provide "Performance Schema Storage" engine
92 [PERFSCHEMA].CMAKE_ARGS_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
94 [EXAMPLE].DESCRIPTION= Provide "Example Storage" engine
95 [EXAMPLE].CMAKE_ARGS_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1
97 [PARTITION].DESCRIPTION= Provide "Partitioning support Storage" engine
98 [PARTITION].CMAKE_ARGS_ON= -DWITH_PARTITION_STORAGE_ENGINE=1
100 [BLACKHOLE].DESCRIPTION= Provide "Blackhole Storage" engine
101 [BLACKHOLE].CMAKE_ARGS_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1
103 [PERFORMANCE].DESCRIPTION= Enable "Performance Schema" (High RAM usage)
104 [PERFORMANCE].SUB_LIST_OFF= PERFSCHEMRC="--skip-performance-schema"
105 [PERFORMANCE].SUB_LIST_ON= PERFSCHEMRC=""
107 [ARCHIVE].DESCRIPTION= Provide "Archive Storage" engine
108 [ARCHIVE].CMAKE_ARGS_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1
110 [FEDERATED].DESCRIPTION= Provide "Federated Storage" engine
111 [FEDERATED].CMAKE_ARGS_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1
112 [FEDERATED].SUB_LIST_OFF= FEDER=""
113 [FEDERATED].SUB_LIST_ON= FEDER="--federated"
115 [INNOBASE].DESCRIPTION= Provide "InnoDB Storage" engine
116 [INNOBASE].CMAKE_ARGS_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1
119 ${REINPLACE_CMD} -e 's|/usr/bin/perl|${PREFIX}/bin/perl|' \
120 -e 's|/usr/local/bin/perl|${PREFIX}/bin/perl|' \
121 ${WRKSRC}/scripts/CMakeLists.txt
124 ${MKDIR} ${STAGEDIR}${PREFIX}/etc/mysql/keyring \
125 ${STAGEDIR}/var/db/mysql_secure \
126 ${STAGEDIR}/var/db/mysql_tmpdir
127 ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample \
128 ${STAGEDIR}${ETCDIR}/my.cnf.sample
129 ${RM} ${STAGEDIR}${MANPREFIX}/man/man1/zlib_decompress.1 \
130 ${STAGEDIR}${MANPREFIX}/man/man1/lz4_decompress.1
131 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/lib*.so
132 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/plugin/*.so
133 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/mysqld
134 # Linux doesn't like -R flags
135 ${SED} -i'' -e 's| -R| -Wl,-rpath,|g' \
136 ${STAGEDIR}${PREFIX}/bin/mysql_config
137 list=$$(cd ${STAGEDIR}${PREFIX}/bin && ${LS} * | ${AWK} \
138 '{ if ($$1 != "mysql_config" && $$1 != "mysqld_mult" && \
139 $$1 != "mysqld_safe" && $$1 != "mysqldumpslow" && \
140 $$1 != "mysqld_multi") print}'); \
141 (cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} $$list)
144 ${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
147 ${RM} ${WRKSRC}/cmake/os/FreeBSD.cmake
149 [FILE:294:descriptions/desc.server]
150 MySQL is a very fast, multi-threaded, multi-user and robust SQL
151 (Structured Query Language) database server.
153 MySQL, the most popular Open Source SQL database management system, is
154 developed, distributed, and supported by Oracle Corporation.
156 This package contains the MySQL server components.
159 [FILE:150:descriptions/desc.client]
160 MySQL is a very fast, multi-threaded, multi-user and robust SQL
161 (Structured Query Language) database server.
163 This package contains the MySQL client.
167 5b2a61700af7c99f5630a7dfdb099af9283c3029843cddd9e123bcdbcc4aad03 48985783 mysql-boost-5.7.22.tar.gz
170 [FILE:3527:manifests/plist.server]
171 %%ONLY-LINUX%%lib/mysql/plugin/auth_socket.so
182 mysql_secure_installation
195 lib/mysql/libmysqld.a
200 connection_control.so
209 libtest_services_threaded.so
210 libtest_session_detach.so
211 libtest_session_in_thd.so
212 libtest_session_info.so
213 libtest_sql_2_sessions.so
214 libtest_sql_all_col_types.so
215 libtest_sql_cmds_1.so
216 libtest_sql_commit.so
217 libtest_sql_complex.so
218 libtest_sql_errors.so
220 libtest_sql_processlist.so
221 libtest_sql_replication.so
222 libtest_sql_shutdown.so
223 libtest_sql_sqlmode.so
224 libtest_sql_stored_procedures_functions.so
225 libtest_sql_views_triggers.so
226 libtest_x_sessions_deinit.so
227 libtest_x_sessions_init.so
235 replication_observers_example_plugin.so
240 test_security_context.so
247 my_print_defaults.1.gz
253 mysql_install_db.1.gz
255 mysql_secure_installation.1.gz
256 mysql_ssl_rsa_setup.1.gz
257 mysql_tzinfo_to_sql.1.gz
265 resolve_stack_dump.1.gz
267 share/man/man8/mysqld.8.gz
272 innodb_memcached_config.sql
277 mysql_security_commands.sql
279 mysql_system_tables.sql
280 mysql_system_tables_data.sql
281 mysql_test_data_timezone.sql
283 uninstall_rewriter.sql
284 share/mysql/bulgarian/errmsg.sys
285 share/mysql/charsets/
312 share/mysql/czech/errmsg.sys
313 share/mysql/danish/errmsg.sys
314 share/mysql/dutch/errmsg.sys
315 share/mysql/english/errmsg.sys
316 share/mysql/estonian/errmsg.sys
317 share/mysql/french/errmsg.sys
318 share/mysql/german/errmsg.sys
319 share/mysql/greek/errmsg.sys
320 share/mysql/hungarian/errmsg.sys
321 share/mysql/italian/errmsg.sys
322 share/mysql/japanese/errmsg.sys
323 share/mysql/korean/errmsg.sys
324 share/mysql/norwegian/errmsg.sys
325 share/mysql/norwegian-ny/errmsg.sys
326 share/mysql/polish/errmsg.sys
327 share/mysql/portuguese/errmsg.sys
328 share/mysql/romanian/errmsg.sys
329 share/mysql/russian/errmsg.sys
330 share/mysql/serbian/errmsg.sys
331 share/mysql/slovak/errmsg.sys
332 share/mysql/spanish/errmsg.sys
333 share/mysql/swedish/errmsg.sys
334 share/mysql/ukrainian/errmsg.sys
335 @dir(mysql,mysql,0750) %%MY_SECDIR%%
336 @dir(mysql,mysql,0750) %%MY_TMPDIR%%
337 @dir(mysql,mysql,0750) etc/mysql/keyring
338 @sample(root,wheel,0644) etc/mysql/my.cnf.sample
341 [FILE:2466:manifests/plist.client]
360 byte_order_generic_x86.h
392 plugin_group_replication.h
394 plugin_validate_password.h
405 client_authentication.h
410 group_replication_priv.h
421 plugin_group_replication.h
425 plugin_validate_password.h
428 service_my_plugin_log.h
429 service_my_snprintf.h
430 service_mysql_alloc.h
431 service_mysql_keyring.h
432 service_mysql_password_policy.h
433 service_mysql_string.h
435 service_rpl_transaction_ctx.h
436 service_rpl_transaction_write_set.h
437 service_rules_table.h
438 service_security_context.h
439 service_srv_session.h
440 service_srv_session_info.h
441 service_ssl_wrapper.h
443 service_thd_engine_lock.h
445 service_thread_scheduler.h
450 include/mysql/mysql/psi/
470 lib/pkgconfig/mysqlclient.pc
471 share/aclocal/mysql.m4
476 mysql_config_editor.1.gz
487 [FILE:1384:patches/patch-CMakeLists.txt]
488 --- CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
490 @@ -582,6 +582,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
493 # Check for pthread_getthreadid_np()
494 +set(CMAKE_REQUIRED_LIBRARIES pthread)
495 CHECK_C_SOURCE_COMPILES("
496 #include <pthread_np.h>
497 int main(int ac, char **av)
498 @@ -590,6 +591,7 @@ int main(int ac, char **av)
499 return (tid != 0 ? 0 : 1);
501 HAVE_PTHREAD_GETTHREADID_NP)
502 +set(CMAKE_REQUIRED_LIBRARIES "")
504 # Check for pthread_self() returning an integer type
505 CHECK_C_SOURCE_COMPILES("
506 @@ -676,7 +678,6 @@ IF(NOT WITHOUT_SERVER)
507 OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
508 IF(WITH_EMBEDDED_SERVER)
509 ADD_SUBDIRECTORY(libmysqld)
510 - ADD_SUBDIRECTORY(libmysqld/examples)
511 ENDIF(WITH_EMBEDDED_SERVER)
514 @@ -737,7 +738,6 @@ ELSE()
515 SET(CPACK_GENERATOR "TGZ")
517 ADD_SUBDIRECTORY(packaging/WiX)
518 -ADD_SUBDIRECTORY(packaging/solaris)
521 INSTALL(FILES Docs/mysql.info DESTINATION ${INSTALL_INFODIR} OPTIONAL COMPONENT Info)
522 @@ -745,6 +745,7 @@ ENDIF()
524 # RPM installs documentation directly from the source tree
527 IF(NOT INSTALL_LAYOUT MATCHES "RPM")
528 INSTALL(FILES COPYING LICENSE.mysql
529 DESTINATION ${INSTALL_DOCREADMEDIR}
530 @@ -767,6 +768,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
531 PATTERN "sp-imp-spec.txt" EXCLUDE
540 [FILE:566:patches/patch-cmake_plugin.cmake]
541 --- cmake/plugin.cmake.orig 2017-12-28 03:46:26 UTC
542 +++ cmake/plugin.cmake
543 @@ -264,9 +264,6 @@ MACRO(MYSQL_ADD_PLUGIN)
544 MYSQL_INSTALL_TARGETS(${target}
545 DESTINATION ${INSTALL_PLUGINDIR}
546 COMPONENT ${INSTALL_COMPONENT})
547 - INSTALL_DEBUG_TARGET(${target}
548 - DESTINATION ${INSTALL_PLUGINDIR}/debug
549 - COMPONENT ${INSTALL_COMPONENT})
550 # Add installed files to list for RPMs
551 FILE(APPEND ${CMAKE_BINARY_DIR}/support-files/plugins.files
552 "%attr(755, root, root) %{_prefix}/${INSTALL_PLUGINDIR}/${ARG_MODULE_OUTPUT_NAME}.so\n"
555 [FILE:435:patches/patch-cmake_ssl.cmake]
556 --- cmake/ssl.cmake.orig 2017-12-28 03:46:26 UTC
558 @@ -180,6 +180,12 @@ MACRO (MYSQL_CHECK_SSL)
559 OPENSSL_MAJOR_VERSION STREQUAL "1"
561 SET(OPENSSL_FOUND TRUE)
562 + ELSEIF(OPENSSL_INCLUDE_DIR AND
563 + OPENSSL_LIBRARY AND
565 + OPENSSL_MAJOR_VERSION STREQUAL "2"
567 + SET(OPENSSL_FOUND TRUE)
569 SET(OPENSSL_FOUND FALSE)
573 [FILE:491:patches/patch-include_my__compare.h]
574 --- include/my_compare.h.orig 2017-12-28 03:46:26 UTC
575 +++ include/my_compare.h
576 @@ -40,7 +40,7 @@ extern "C" {
577 But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
580 -#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */
581 +#define HA_MAX_KEY_LENGTH 4000 /* Max length in bytes */
582 #define HA_MAX_KEY_SEG 16 /* Max segments for key */
584 #define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6)
587 [FILE:419:patches/patch-include_my__thread__os__id.h]
588 --- include/my_thread_os_id.h.orig 2017-12-28 03:46:26 UTC
589 +++ include/my_thread_os_id.h
590 @@ -75,8 +75,12 @@ static inline my_thread_os_id_t my_threa
591 return pthread_getthreadid_np();
593 #ifdef HAVE_INTEGER_PTHREAD_SELF
594 +# ifdef __DragonFly__
595 + return syscall(SYS_lwp_gettid);
597 /* Unknown platform, fallback. */
598 return pthread_self();
601 /* Feature not available. */
605 [FILE:549:patches/patch-include_myisam.h]
606 --- include/myisam.h.orig 2017-12-28 03:46:26 UTC
608 @@ -45,7 +45,7 @@ extern "C" {
609 The following defines can be increased if necessary.
610 But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
612 -#define MI_MAX_KEY_LENGTH 1000 /* Max length in bytes */
613 +#define MI_MAX_KEY_LENGTH 4000 /* Max length in bytes */
614 #define MI_MAX_KEY_SEG 16 /* Max segments for key */
616 #define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
619 [FILE:434:patches/patch-libmysql_CMakeLists.txt]
620 --- libmysql/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
621 +++ libmysql/CMakeLists.txt
622 @@ -274,7 +274,7 @@ IF(NOT DISABLE_SHARED)
623 COMPONENT SharedLibraries)
625 # libtool compatability
626 - IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
627 + IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly|Linux" OR APPLE)
628 SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
630 SET(OS_SHARED_LIB_VERSION
633 [FILE:334:patches/patch-libservices_CMakeLists.txt]
634 --- libservices/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
635 +++ libservices/CMakeLists.txt
636 @@ -40,4 +40,6 @@ SET(MYSQLSERVICES_SOURCES
637 mysql_keyring_service.c)
639 ADD_CONVENIENCE_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
641 INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
645 [FILE:1910:patches/patch-mysys__ssl_my__default.cc]
646 --- mysys_ssl/my_default.cc.orig 2017-12-28 03:46:26 UTC
647 +++ mysys_ssl/my_default.cc
648 @@ -114,7 +114,7 @@ static my_bool defaults_already_read= FA
650 /* Which directories are searched for options (and in which order) */
652 -#define MAX_DEFAULT_DIRS 6
653 +#define MAX_DEFAULT_DIRS 7
654 #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
655 static const char **default_directories = NULL;
657 @@ -918,6 +918,14 @@ static int search_default_file_with_ext(
658 return 1; /* Ignore wrong files */
661 + if (strstr(name, "/etc") == name)
664 + "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
669 while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file))
672 @@ -1256,7 +1264,8 @@ void my_print_default_files(const char *
673 end[(strlen(end)-1)] = ' ';
675 strxmov(end, conf_file, *ext , " ", NullS);
676 - fputs(name, stdout);
677 + if (strstr(name, "/etc") != name)
678 + fputs(name, stdout);
682 @@ -1415,13 +1424,8 @@ static const char **init_default_directo
686 - errors += add_directory(alloc, "/etc/", dirs);
687 - errors += add_directory(alloc, "/etc/mysql/", dirs);
689 -#if defined(DEFAULT_SYSCONFDIR)
690 - if (DEFAULT_SYSCONFDIR[0])
691 - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
692 -#endif /* DEFAULT_SYSCONFDIR */
693 + errors += add_directory(alloc, "/usr/local/etc/", dirs);
694 + errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs);
698 @@ -1492,7 +1496,7 @@ int check_file_permissions(const char *f
701 if (!my_stat(file_name,&stat_info,MYF(0)))
705 Ignore .mylogin.cnf file if not exclusively readable/writable
709 [FILE:430:patches/patch-plugin_password__validation_validate__password.cc]
710 --- plugin/password_validation/validate_password.cc.orig 2017-12-28 03:46:26 UTC
711 +++ plugin/password_validation/validate_password.cc
713 #include <mysql/plugin_validate_password.h>
714 #include <mysql/service_my_plugin_log.h>
715 #include <mysql/service_mysql_string.h>
716 +/* solve clash between libc++ bitset::test() and test macro from my_global.h */
723 [FILE:545:patches/patch-rapid_plugin_x_CMakeLists.txt]
724 --- rapid/plugin/x/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
725 +++ rapid/plugin/x/CMakeLists.txt
726 @@ -92,14 +92,14 @@ ELSE()
727 ${CMAKE_SOURCE_DIR}/include #temporary
728 ${CMAKE_CURRENT_SOURCE_DIR}/include/mysql
729 ${CMAKE_CURRENT_BINARY_DIR}/generated
730 - ${SSL_INCLUDE_DIRS}
731 - ${ZLIB_INCLUDE_DIR}
732 + ${BOOST_INCLUDE_DIR}
735 INCLUDE_DIRECTORIES(SYSTEM
736 - ${BOOST_INCLUDE_DIR}
737 ${PROTOBUF_INCLUDE_DIRS}
738 ${LIBEVENT_INCLUDE_DIR}
739 + ${SSL_INCLUDE_DIRS}
740 + ${ZLIB_INCLUDE_DIR}
743 IF(XPLUGIN_NO_LITE_PROTOBUF)
746 [FILE:678:patches/patch-rapid_plugin_x_mysqlx__configure.cmake]
747 --- rapid/plugin/x/mysqlx_configure.cmake.orig 2017-12-28 03:46:26 UTC
748 +++ rapid/plugin/x/mysqlx_configure.cmake
749 @@ -35,6 +35,7 @@ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src
750 CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/mysqlx_version.h.in
751 ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h )
754 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_error.h
755 DESTINATION ${INSTALL_INCLUDEDIR}
756 COMPONENT Developement)
757 @@ -46,3 +47,4 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR
758 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h
759 DESTINATION ${INSTALL_INCLUDEDIR}
760 COMPONENT Developement)
764 [FILE:652:patches/patch-rapid_unittest_gunit_xplugin_CMakeLists.txt]
765 --- rapid/unittest/gunit/xplugin/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
766 +++ rapid/unittest/gunit/xplugin/CMakeLists.txt
767 @@ -64,7 +64,6 @@ ENDIF()
768 ADD_DEFINITIONS(${GMOCK_CFLAGS} -DBOOST_ALL_NO_LIB -DBOOST_NO_AUTO_PTR -DUSE_MYSQLX_FULL_PROTO -DXPLUGIN_UNIT_TESTS)
770 INCLUDE_DIRECTORIES(SYSTEM
771 - ${BOOST_INCLUDE_DIR}
772 ${PROTOBUF_INCLUDE_DIRS}
774 ${LIBEVENT_INCLUDE_DIR}
775 @@ -74,6 +73,7 @@ INCLUDE_DIRECTORIES(SYSTEM
779 + ${BOOST_INCLUDE_DIR}
780 ${CMAKE_SOURCE_DIR}/testing/include
781 ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include
782 ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include/ngs
785 [FILE:1683:patches/patch-scripts_CMakeLists.txt]
786 --- scripts/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
787 +++ scripts/CMakeLists.txt
788 @@ -239,13 +239,9 @@ IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME M
789 "ps -p $PID | grep -v mysqld_safe | grep -- $MYSQLD > /dev/null")
794 - EXECUTE_PROCESS(COMMAND ps -uaxww OUTPUT_QUIET ERROR_QUIET RESULT_VARIABLE result)
795 - IF(result MATCHES 0)
796 +IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD")
798 "ps -uaxww | grep -v mysqld_safe | grep -- $MYSQLD | grep $PID > /dev/null")
803 @@ -292,7 +288,7 @@ SET(pkglibdir ${prefix}/${INSTALL_LIBDIR
804 SET(pkgplugindir ${prefix}/${INSTALL_PLUGINDIR})
805 SET(localstatedir ${MYSQL_DATADIR})
807 -IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
809 SET(RPATH_OPTION " -R$pkglibdir")
812 @@ -332,6 +328,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
813 GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
814 STRING(REGEX REPLACE "^lib" "" lib "${lib}")
815 SET(${var} "${${var}}-l${lib} " )
816 + ELSEIF(lib STREQUAL "-pthread")
817 + SET(${var} "${${var}}-pthread " )
819 SET(${var} "${${var}}-l${lib} " )
821 @@ -458,7 +456,7 @@ ELSE()
822 FOREACH(file ${BIN_SCRIPTS})
823 IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
824 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
825 - ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
826 + ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY)
827 ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file})
828 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}
829 ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
832 [FILE:268:patches/patch-sql_CMakeLists.txt]
833 --- sql/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
834 +++ sql/CMakeLists.txt
835 @@ -24,6 +24,8 @@ INCLUDE_DIRECTORIES(
838 ${CMAKE_BINARY_DIR}/sql
839 + ${CMAKE_BINARY_DIR}/include
840 + ${CMAKE_BINARY_DIR}
846 [FILE:1264:patches/patch-sql_conn__handler_socket__connection.cc]
847 --- sql/conn_handler/socket_connection.cc.orig 2017-12-28 03:46:26 UTC
848 +++ sql/conn_handler/socket_connection.cc
849 @@ -943,22 +943,25 @@ Channel_info* Mysqld_socket_listener::li
850 signal(SIGCHLD, SIG_DFL);
851 request_init(&req, RQ_DAEMON, m_libwrap_name, RQ_FILE,
852 mysql_socket_getfd(connect_sock), NULL);
854 + void (*my_fromhost) (void *) = (void (*)(void *)) fromhost;
857 - if (!hosts_access(&req))
858 + int (*my_hosts_access) (void *) = (int (*) (void *)) hosts_access;
859 + if (!my_hosts_access(&req))
862 This may be stupid but refuse() includes an exit(0)
863 which we surely don't want...
864 clean_exit() - same stupid thing ...
866 + char *(*my_eval_client) (void *) = (char *(*) (void *)) eval_client;
867 syslog(LOG_AUTH | m_deny_severity,
868 - "refused connect from %s", eval_client(&req));
869 + "refused connect from %s", my_eval_client(&req));
871 #ifdef HAVE_LIBWRAP_PROTOTYPES
872 // Some distros have patched tcpd.h to have proper prototypes
874 - (req.sink)(req.fd);
875 + ((void (*)(int)) (req.sink))(req.fd);
877 // Some distros have not patched tcpd.h
881 [FILE:2575:patches/patch-sql_sql__view.cc]
882 --- sql/sql_view.cc.orig 2017-12-28 03:46:26 UTC
884 @@ -773,46 +773,46 @@ static const int required_view_parameter
886 static File_option view_parameters[]=
887 {{{ C_STRING_WITH_LEN("query")},
888 - my_offsetof(TABLE_LIST, select_stmt),
889 + static_cast<int>(my_offsetof(TABLE_LIST, select_stmt)),
890 FILE_OPTIONS_ESTRING},
891 {{ C_STRING_WITH_LEN("md5")},
892 - my_offsetof(TABLE_LIST, md5),
893 + static_cast<int>(my_offsetof(TABLE_LIST, md5)),
894 FILE_OPTIONS_STRING},
895 {{ C_STRING_WITH_LEN("updatable")},
896 - my_offsetof(TABLE_LIST, updatable_view),
897 + static_cast<int>(my_offsetof(TABLE_LIST, updatable_view)),
898 FILE_OPTIONS_ULONGLONG},
899 {{ C_STRING_WITH_LEN("algorithm")},
900 - my_offsetof(TABLE_LIST, algorithm),
901 + static_cast<int>(my_offsetof(TABLE_LIST, algorithm)),
902 FILE_OPTIONS_ULONGLONG},
903 {{ C_STRING_WITH_LEN("definer_user")},
904 - my_offsetof(TABLE_LIST, definer.user),
905 + static_cast<int>(my_offsetof(TABLE_LIST, definer.user)),
906 FILE_OPTIONS_STRING},
907 {{ C_STRING_WITH_LEN("definer_host")},
908 - my_offsetof(TABLE_LIST, definer.host),
909 + static_cast<int>(my_offsetof(TABLE_LIST, definer.host)),
910 FILE_OPTIONS_STRING},
911 {{ C_STRING_WITH_LEN("suid")},
912 - my_offsetof(TABLE_LIST, view_suid),
913 + static_cast<int>(my_offsetof(TABLE_LIST, view_suid)),
914 FILE_OPTIONS_ULONGLONG},
915 {{ C_STRING_WITH_LEN("with_check_option")},
916 - my_offsetof(TABLE_LIST, with_check),
917 + static_cast<int>(my_offsetof(TABLE_LIST, with_check)),
918 FILE_OPTIONS_ULONGLONG},
919 {{ C_STRING_WITH_LEN("timestamp")},
920 - my_offsetof(TABLE_LIST, timestamp),
921 + static_cast<int>(my_offsetof(TABLE_LIST, timestamp)),
922 FILE_OPTIONS_TIMESTAMP},
923 {{ C_STRING_WITH_LEN("create-version")},
924 - my_offsetof(TABLE_LIST, file_version),
925 + static_cast<int>(my_offsetof(TABLE_LIST, file_version)),
926 FILE_OPTIONS_ULONGLONG},
927 {{ C_STRING_WITH_LEN("source")},
928 - my_offsetof(TABLE_LIST, source),
929 + static_cast<int>(my_offsetof(TABLE_LIST, source)),
930 FILE_OPTIONS_ESTRING},
931 {{(char*) STRING_WITH_LEN("client_cs_name")},
932 - my_offsetof(TABLE_LIST, view_client_cs_name),
933 + static_cast<int>(my_offsetof(TABLE_LIST, view_client_cs_name)),
934 FILE_OPTIONS_STRING},
935 {{(char*) STRING_WITH_LEN("connection_cl_name")},
936 - my_offsetof(TABLE_LIST, view_connection_cl_name),
937 + static_cast<int>(my_offsetof(TABLE_LIST, view_connection_cl_name)),
938 FILE_OPTIONS_STRING},
939 {{(char*) STRING_WITH_LEN("view_body_utf8")},
940 - my_offsetof(TABLE_LIST, view_body_utf8),
941 + static_cast<int>(my_offsetof(TABLE_LIST, view_body_utf8)),
942 FILE_OPTIONS_ESTRING},
947 [FILE:1921:patches/patch-sql_sys__vars.cc]
948 --- sql/sys_vars.cc.orig 2017-12-28 03:46:26 UTC
950 @@ -1736,7 +1736,7 @@ static Sys_var_ulong Sys_interactive_tim
951 "connection before closing it",
952 SESSION_VAR(net_interactive_timeout),
953 CMD_LINE(REQUIRED_ARG),
954 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
955 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
957 static Sys_var_ulong Sys_join_buffer_size(
959 @@ -2572,7 +2572,7 @@ static Sys_var_ulong Sys_net_read_timeou
960 "Number of seconds to wait for more data from a connection before "
962 SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG),
963 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
964 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
965 NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
966 ON_UPDATE(fix_net_read_timeout));
968 @@ -2596,7 +2596,7 @@ static Sys_var_ulong Sys_net_write_timeo
969 "Number of seconds to wait for a block to be written to a connection "
970 "before aborting the write",
971 SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG),
972 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
973 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
974 NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
975 ON_UPDATE(fix_net_write_timeout));
977 @@ -4249,7 +4249,7 @@ static Sys_var_ulong Sys_net_wait_timeou
978 "The number of seconds the server waits for activity on a "
979 "connection before closing it",
980 SESSION_VAR(net_wait_timeout), CMD_LINE(REQUIRED_ARG),
981 - VALID_RANGE(1, IF_WIN(INT_MAX32/1000, LONG_TIMEOUT)),
982 + VALID_RANGE(1, INT_MAX32/1000),
983 DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
985 static Sys_var_plugin Sys_default_storage_engine(
988 [FILE:440:patches/patch-storage_innobase_include_srv0mon.h]
989 --- storage/innobase/include/srv0mon.h.orig 2017-12-28 03:46:26 UTC
990 +++ storage/innobase/include/srv0mon.h
991 @@ -34,6 +34,10 @@ Created 12/15/2009 Jimmy Yang
992 /* Required for FreeBSD so that INT64_MAX is defined. */
993 #define __STDC_LIMIT_MACROS
994 #endif /* __STDC_LIMIT_MACROS */
995 +#ifdef __DragonFly__
996 +/* The hack above doen't work for dragonfly, stdint.h already imported */
997 +#include <machine/int_limits.h>
1004 [FILE:985:patches/patch-storage_myisam_mi__dynrec.c]
1005 --- storage/myisam/mi_dynrec.c.orig 2017-12-28 03:46:26 UTC
1006 +++ storage/myisam/mi_dynrec.c
1007 @@ -65,18 +65,13 @@ my_bool mi_dynmap_file(MI_INFO *info, my
1011 - I wonder if it is good to use MAP_NORESERVE. From the Linux man page:
1013 - Do not reserve swap space for this mapping. When swap space is
1014 - reserved, one has the guarantee that it is possible to modify the
1015 - mapping. When swap space is not reserved one might get SIGSEGV
1016 - upon a write if no physical memory is available.
1017 + MAP_NORESERVE is unimplemented in FreeBSD
1019 info->s->file_map= (uchar*)
1020 my_mmap(0, (size_t) size,
1021 info->s->mode==O_RDONLY ? PROT_READ :
1022 PROT_READ | PROT_WRITE,
1023 - MAP_SHARED | MAP_NORESERVE,
1026 if (info->s->file_map == (uchar*) MAP_FAILED)
1030 [FILE:2182:files/my.cnf.sample.in]
1033 socket = /tmp/mysql.sock
1036 prompt = \u@\h [\d]>\_
1042 socket = /tmp/mysql.sock
1043 bind-address = 127.0.0.1
1044 basedir = %%PREFIX%%
1045 datadir = %%MY_DBDIR%%
1046 tmpdir = %%MY_TMPDIR%%
1047 slave-load-tmpdir = %%MY_TMPDIR%%
1048 secure-file-priv = %%MY_SECDIR%%
1051 master-info-repository = TABLE
1052 relay-log-info-repository = TABLE
1053 relay-log-recovery = 1
1058 binlog_cache_size = 16M
1059 expire_logs_days = 30
1060 default_password_lifetime = 0
1061 enforce-gtid-consistency = 1
1063 safe-user-create = 1
1064 lower_case_table_names = 1
1065 explicit-defaults-for-timestamp = 1
1066 myisam-recover-options = BACKUP,FORCE
1067 open_files_limit = 32768
1068 table_open_cache = 16384
1069 table_definition_cache = 8192
1070 net_retry_count = 16384
1071 key_buffer_size = 256M
1072 max_allowed_packet = 64M
1073 query_cache_type = 0
1074 query_cache_size = 0
1075 long_query_time = 0.5
1076 innodb_buffer_pool_size = 1G
1077 innodb_data_home_dir = %%MY_DBDIR%%
1078 innodb_log_group_home_dir = %%MY_DBDIR%%
1079 innodb_data_file_path = ibdata1:128M:autoextend
1080 innodb_temp_data_file_path = ibtmp1:128M:autoextend
1081 innodb_flush_method = O_DIRECT
1082 innodb_log_file_size = 256M
1083 innodb_log_buffer_size = 16M
1084 innodb_write_io_threads = 8
1085 innodb_read_io_threads = 8
1086 innodb_autoinc_lock_mode = 2
1090 max_allowed_packet = 256M
1095 [FILE:2478:files/mysql-server.in]
1103 # Add the following line to /etc/rc.conf to enable mysql:
1104 # mysql_enable (bool): Set to "NO" by default.
1105 # Set it to "YES" to enable MySQL.
1106 # mysql_limits (bool): Set to "NO" by default.
1107 # Set it to yes to run `limits -e -U mysql`
1108 # just before mysql starts.
1109 # mysql_dbdir (str): Default to "%%MY_DBDIR%%"
1110 # Base database directory.
1111 # mysql_confdir (str): Default to "%%ETCDIR%%"
1112 # Base configuration directory.
1113 # mysql_optfile (str): Server-specific option file.
1114 # Set it in the rc.conf or default behaviour of
1115 # `mysqld_safe` itself, will be picking
1116 # ${mysql_confdir}/my.cnf if it exists.
1117 # mysql_pidfile (str): Custum PID file path and name.
1118 # Default to "${mysql_dbdir}/${hostname}.pid".
1119 # mysql_args (str): Custom additional arguments to be passed
1120 # to mysqld_safe (default empty).
1128 load_rc_config $name
1130 : ${mysql_enable="NO"}
1131 : ${mysql_limits="NO"}
1132 : ${mysql_dbdir="%%MY_DBDIR%%"}
1133 : ${mysql_confdir="%%ETCDIR%%"}
1134 if [ -f "${mysql_confdir}/my.cnf" ]; then
1135 : ${mysql_optfile="${mysql_confdir}/my.cnf"}
1136 elif [ -f "${mysql_dbdir}/my.cnf" ]; then
1137 : ${mysql_optfile="${mysql_dbdir}/my.cnf"}
1139 if [ ! -z "${mysql_optfile}" ]; then
1140 mysql_extra="--defaults-extra-file=${mysql_optfile}"
1144 mysql_limits_args="-e -U ${mysql_user}"
1145 : ${hostname:=`/bin/hostname`}
1146 pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
1147 command="/usr/sbin/daemon"
1148 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%%"
1149 procname="%%PREFIX%%/libexec/mysqld"
1150 start_precmd="${name}_prestart"
1151 start_postcmd="${name}_poststart"
1152 mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
1153 mysql_install_db_args="${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --mysqld-file=${procname} --user=${mysql_user}"
1155 mysql_create_auth_tables()
1157 eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
1162 if [ ! -d "${mysql_dbdir}/mysql/." ]; then
1163 mysql_create_auth_tables || return 1
1165 if checkyesno mysql_limits; then
1166 eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
1175 while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
1176 timeout=$(( timeout - 1 ))
1185 [FILE:576:files/pkg-message-server.in]
1186 *****************************************************************************
1188 Remember to run mysql_upgrade the first time you start the MySQL server
1189 after an upgrade from an earlier version.
1191 Initial password for first time use of MySQL is saved in $HOME/.mysql_secret
1192 ie. when you want to use "mysql -u root -p" first you should see password
1193 in /root/.mysql_secret
1195 MySQL57 has a default %%ETCDIR%%/my.cnf,
1196 remember to replace it wit your own
1197 or set `mysql_optfile="$YOUR_CNF_FILE` in rc.conf.
1199 *****************************************************************************
1202 [FILE:28:files/special.mk]
1203 ETCDIR= ${PREFIX}/etc/mysql