1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
8 SDESC[standard]= Multithreaded SQL database (server)
9 HOMEPAGE= https://www.mysql.com/
13 SITES[main]= MYSQL/MySQL-5.7
14 DISTFILE[1]= mysql-boost-5.7.22.tar.gz:main
16 SPKGS[standard]= complete
20 OPTIONS_AVAILABLE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
21 PARTITION PERFSCHEMA PERFORMANCE
22 OPTIONS_STANDARD= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
23 PARTITION PERFSCHEMA PERFORMANCE
24 OPTGROUP_UNLIMITED= STORAGE
25 OPTDESCR[STORAGE]= Storage engines statically compiled into server
26 OPTGROUP[STORAGE]= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
28 OPT_ON[all]= PERFORMANCE
30 BUILD_DEPENDS= rpcgen:single:standard
31 libedit:single:standard
32 BUILDRUN_DEPENDS= libevent:single:standard
34 EXRUN[client]= libedit:single:standard
35 zlib:complete:standard
39 USERGROUP_SPKG= server
41 USES= bison cmake:outsource perl:run shebangfix ssl:build
42 c++:server,client cclibs:server,client
44 DISTNAME= mysql-5.7.22
48 LICENSE_FILE= GPLv2:{{WRKSRC}}/README
50 CMAKE_BUILD_TYPE= Release
51 FPC_EQUIVALENT= databases/mysql57-server
52 SHEBANG_FILES= scripts/*.pl
54 INSTALL_REQ_TOOLCHAIN= yes
55 PLIST_SUB= MY_DBDIR=/var/db/mysql
56 MY_SECDIR=/var/db/mysql_secure
57 MY_TMPDIR=/var/db/mysql_tmpdir
58 RC_SUBR= mysql-server:server
59 SUB_FILES= my.cnf.sample
60 SUB_LIST= MY_DBDIR=/var/db/mysql
61 MY_SECDIR=/var/db/mysql_secure
62 MY_TMPDIR=/var/db/mysql_tmpdir
64 CFLAGS= -Wno-deprecated-declarations
65 CMAKE_ARGS= -DINSTALL_PKGCONFIGDIR="{{LOCALBASE}}/lib/pkgconfig"
66 -DINSTALL_DOCDIR="share/doc/mysql"
67 -DINSTALL_DOCREADMEDIR="share/doc/mysql"
68 -DINSTALL_INCLUDEDIR="include/mysql"
69 -DINSTALL_INFODIR="share/info"
70 -DINSTALL_LIBDIR="lib/mysql"
71 -DINSTALL_MANDIR="share/man"
72 -DINSTALL_MYSQLDATADIR="/var/db/mysql"
73 -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring"
74 -DINSTALL_MYSQLSHAREDIR="share/mysql"
75 -DINSTALL_MYSQLTESTDIR="share/mysql/tests"
76 -DINSTALL_PLUGINDIR="lib/mysql/plugin"
77 -DINSTALL_SBINDIR="libexec"
78 -DINSTALL_SCRIPTDIR="bin"
79 -DINSTALL_SECURE_FILE_PRIVDIR="/var/db/mysql_secure"
80 -DINSTALL_SHAREDIR="share"
81 -DINSTALL_SUPPORTFILESDIR="share/mysql"
82 -DMYSQL_KEYRINGDIR="etc/mysql/keyring"
83 -DWITH_BOOST="{{WRKSRC}}/boost"
84 -DWITH_EDITLINE=system
85 -DWITH_LIBEVENT=system
88 -DWITH_SSL={{OPENSSLBASE}}
89 -DWITH_EMBEDDED_SERVER="ON"
90 -DINSTALL_MYSQLTESTDIR=0
92 [PERFSCHEMA].DESCRIPTION= Provide "Performance Schema Storage" engine
93 [PERFSCHEMA].CMAKE_ARGS_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
95 [EXAMPLE].DESCRIPTION= Provide "Example Storage" engine
96 [EXAMPLE].CMAKE_ARGS_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1
98 [PARTITION].DESCRIPTION= Provide "Partitioning support Storage" engine
99 [PARTITION].CMAKE_ARGS_ON= -DWITH_PARTITION_STORAGE_ENGINE=1
101 [BLACKHOLE].DESCRIPTION= Provide "Blackhole Storage" engine
102 [BLACKHOLE].CMAKE_ARGS_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1
104 [PERFORMANCE].DESCRIPTION= Enable "Performance Schema" (High RAM usage)
105 [PERFORMANCE].SUB_LIST_OFF= PERFSCHEMRC="--skip-performance-schema"
106 [PERFORMANCE].SUB_LIST_ON= PERFSCHEMRC=""
108 [ARCHIVE].DESCRIPTION= Provide "Archive Storage" engine
109 [ARCHIVE].CMAKE_ARGS_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1
111 [FEDERATED].DESCRIPTION= Provide "Federated Storage" engine
112 [FEDERATED].CMAKE_ARGS_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1
113 [FEDERATED].SUB_LIST_OFF= FEDER=""
114 [FEDERATED].SUB_LIST_ON= FEDER="--federated"
116 [INNOBASE].DESCRIPTION= Provide "InnoDB Storage" engine
117 [INNOBASE].CMAKE_ARGS_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1
120 ${REINPLACE_CMD} -e 's|/usr/bin/perl|${PREFIX}/bin/perl|' \
121 -e 's|/usr/local/bin/perl|${PREFIX}/bin/perl|' \
122 ${WRKSRC}/scripts/CMakeLists.txt
125 ${MKDIR} ${STAGEDIR}${PREFIX}/etc/mysql/keyring \
126 ${STAGEDIR}/var/db/mysql_secure \
127 ${STAGEDIR}/var/db/mysql_tmpdir
128 ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample \
129 ${STAGEDIR}${ETCDIR}/my.cnf.sample
130 ${RM} ${STAGEDIR}${MANPREFIX}/man/man1/zlib_decompress.1 \
131 ${STAGEDIR}${MANPREFIX}/man/man1/lz4_decompress.1
132 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/lib*.so
133 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/plugin/*.so
134 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/mysqld
135 # Linux doesn't like -R flags
136 ${SED} -i'' -e 's| -R| -Wl,-rpath,|g' \
137 ${STAGEDIR}${PREFIX}/bin/mysql_config
138 list=$$(cd ${STAGEDIR}${PREFIX}/bin && ${LS} * | ${AWK} \
139 '{ if ($$1 != "mysql_config" && $$1 != "mysqld_mult" && \
140 $$1 != "mysqld_safe" && $$1 != "mysqldumpslow" && \
141 $$1 != "mysqld_multi") print}'); \
142 (cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} $$list)
145 ${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
148 ${RM} ${WRKSRC}/cmake/os/FreeBSD.cmake
150 [FILE:294:descriptions/desc.server]
151 MySQL is a very fast, multi-threaded, multi-user and robust SQL
152 (Structured Query Language) database server.
154 MySQL, the most popular Open Source SQL database management system, is
155 developed, distributed, and supported by Oracle Corporation.
157 This package contains the MySQL server components.
160 [FILE:150:descriptions/desc.client]
161 MySQL is a very fast, multi-threaded, multi-user and robust SQL
162 (Structured Query Language) database server.
164 This package contains the MySQL client.
168 5b2a61700af7c99f5630a7dfdb099af9283c3029843cddd9e123bcdbcc4aad03 48985783 mysql-boost-5.7.22.tar.gz
171 [FILE:3527:manifests/plist.server]
172 @dir(mysql,mysql,0750) %%MY_SECDIR%%
173 @dir(mysql,mysql,0750) %%MY_TMPDIR%%
174 @dir(mysql,mysql,0750) etc/mysql/keyring
175 @sample(root,wheel,0644) etc/mysql/my.cnf.sample
186 mysql_secure_installation
199 lib/mysql/libmysqld.a
203 %%ONLY-LINUX%%lib/mysql/plugin/auth_socket.so
205 connection_control.so
214 libtest_services_threaded.so
215 libtest_session_detach.so
216 libtest_session_in_thd.so
217 libtest_session_info.so
218 libtest_sql_2_sessions.so
219 libtest_sql_all_col_types.so
220 libtest_sql_cmds_1.so
221 libtest_sql_commit.so
222 libtest_sql_complex.so
223 libtest_sql_errors.so
225 libtest_sql_processlist.so
226 libtest_sql_replication.so
227 libtest_sql_shutdown.so
228 libtest_sql_sqlmode.so
229 libtest_sql_stored_procedures_functions.so
230 libtest_sql_views_triggers.so
231 libtest_x_sessions_deinit.so
232 libtest_x_sessions_init.so
240 replication_observers_example_plugin.so
245 test_security_context.so
251 my_print_defaults.1.gz
258 mysql_install_db.1.gz
260 mysql_secure_installation.1.gz
261 mysql_ssl_rsa_setup.1.gz
262 mysql_tzinfo_to_sql.1.gz
270 resolve_stack_dump.1.gz
272 share/man/man8/mysqld.8.gz
273 share/mysql/bulgarian/errmsg.sys
274 share/mysql/charsets/
301 share/mysql/czech/errmsg.sys
302 share/mysql/danish/errmsg.sys
305 share/mysql/dutch/errmsg.sys
306 share/mysql/english/errmsg.sys
308 share/mysql/estonian/errmsg.sys
310 share/mysql/french/errmsg.sys
311 share/mysql/german/errmsg.sys
312 share/mysql/greek/errmsg.sys
313 share/mysql/hungarian/errmsg.sys
314 innodb_memcached_config.sql
316 share/mysql/italian/errmsg.sys
317 share/mysql/japanese/errmsg.sys
318 share/mysql/korean/errmsg.sys
322 mysql_security_commands.sql
324 mysql_system_tables.sql
325 mysql_system_tables_data.sql
326 mysql_test_data_timezone.sql
328 share/mysql/norwegian-ny/errmsg.sys
329 share/mysql/norwegian/errmsg.sys
330 share/mysql/polish/errmsg.sys
331 share/mysql/portuguese/errmsg.sys
332 share/mysql/romanian/errmsg.sys
333 share/mysql/russian/errmsg.sys
334 share/mysql/serbian/errmsg.sys
335 share/mysql/slovak/errmsg.sys
336 share/mysql/spanish/errmsg.sys
337 share/mysql/swedish/errmsg.sys
338 share/mysql/ukrainian/errmsg.sys
339 uninstall_rewriter.sql
342 [FILE:2502:manifests/plist.client]
361 byte_order_generic_x86.h
384 client_authentication.h
389 group_replication_priv.h
400 plugin_group_replication.h
404 plugin_validate_password.h
405 include/mysql/mysql/psi/
424 service_my_plugin_log.h
425 service_my_snprintf.h
426 service_mysql_alloc.h
427 service_mysql_keyring.h
428 service_mysql_password_policy.h
429 service_mysql_string.h
431 service_rpl_transaction_ctx.h
432 service_rpl_transaction_write_set.h
433 service_rules_table.h
434 service_security_context.h
435 service_srv_session.h
436 service_srv_session_info.h
437 service_ssl_wrapper.h
439 service_thd_engine_lock.h
441 service_thread_scheduler.h
457 plugin_group_replication.h
459 plugin_validate_password.h
473 lib/pkgconfig/mysqlclient.pc
474 share/aclocal/mysql.m4
479 mysql_config_editor.1.gz
490 [FILE:1384:patches/patch-CMakeLists.txt]
491 --- CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
493 @@ -582,6 +582,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
496 # Check for pthread_getthreadid_np()
497 +set(CMAKE_REQUIRED_LIBRARIES pthread)
498 CHECK_C_SOURCE_COMPILES("
499 #include <pthread_np.h>
500 int main(int ac, char **av)
501 @@ -590,6 +591,7 @@ int main(int ac, char **av)
502 return (tid != 0 ? 0 : 1);
504 HAVE_PTHREAD_GETTHREADID_NP)
505 +set(CMAKE_REQUIRED_LIBRARIES "")
507 # Check for pthread_self() returning an integer type
508 CHECK_C_SOURCE_COMPILES("
509 @@ -676,7 +678,6 @@ IF(NOT WITHOUT_SERVER)
510 OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
511 IF(WITH_EMBEDDED_SERVER)
512 ADD_SUBDIRECTORY(libmysqld)
513 - ADD_SUBDIRECTORY(libmysqld/examples)
514 ENDIF(WITH_EMBEDDED_SERVER)
517 @@ -737,7 +738,6 @@ ELSE()
518 SET(CPACK_GENERATOR "TGZ")
520 ADD_SUBDIRECTORY(packaging/WiX)
521 -ADD_SUBDIRECTORY(packaging/solaris)
524 INSTALL(FILES Docs/mysql.info DESTINATION ${INSTALL_INFODIR} OPTIONAL COMPONENT Info)
525 @@ -745,6 +745,7 @@ ENDIF()
527 # RPM installs documentation directly from the source tree
530 IF(NOT INSTALL_LAYOUT MATCHES "RPM")
531 INSTALL(FILES COPYING LICENSE.mysql
532 DESTINATION ${INSTALL_DOCREADMEDIR}
533 @@ -767,6 +768,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
534 PATTERN "sp-imp-spec.txt" EXCLUDE
543 [FILE:566:patches/patch-cmake_plugin.cmake]
544 --- cmake/plugin.cmake.orig 2017-12-28 03:46:26 UTC
545 +++ cmake/plugin.cmake
546 @@ -264,9 +264,6 @@ MACRO(MYSQL_ADD_PLUGIN)
547 MYSQL_INSTALL_TARGETS(${target}
548 DESTINATION ${INSTALL_PLUGINDIR}
549 COMPONENT ${INSTALL_COMPONENT})
550 - INSTALL_DEBUG_TARGET(${target}
551 - DESTINATION ${INSTALL_PLUGINDIR}/debug
552 - COMPONENT ${INSTALL_COMPONENT})
553 # Add installed files to list for RPMs
554 FILE(APPEND ${CMAKE_BINARY_DIR}/support-files/plugins.files
555 "%attr(755, root, root) %{_prefix}/${INSTALL_PLUGINDIR}/${ARG_MODULE_OUTPUT_NAME}.so\n"
558 [FILE:435:patches/patch-cmake_ssl.cmake]
559 --- cmake/ssl.cmake.orig 2017-12-28 03:46:26 UTC
561 @@ -180,6 +180,12 @@ MACRO (MYSQL_CHECK_SSL)
562 OPENSSL_MAJOR_VERSION STREQUAL "1"
564 SET(OPENSSL_FOUND TRUE)
565 + ELSEIF(OPENSSL_INCLUDE_DIR AND
566 + OPENSSL_LIBRARY AND
568 + OPENSSL_MAJOR_VERSION STREQUAL "2"
570 + SET(OPENSSL_FOUND TRUE)
572 SET(OPENSSL_FOUND FALSE)
576 [FILE:491:patches/patch-include_my__compare.h]
577 --- include/my_compare.h.orig 2017-12-28 03:46:26 UTC
578 +++ include/my_compare.h
579 @@ -40,7 +40,7 @@ extern "C" {
580 But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
583 -#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */
584 +#define HA_MAX_KEY_LENGTH 4000 /* Max length in bytes */
585 #define HA_MAX_KEY_SEG 16 /* Max segments for key */
587 #define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6)
590 [FILE:419:patches/patch-include_my__thread__os__id.h]
591 --- include/my_thread_os_id.h.orig 2017-12-28 03:46:26 UTC
592 +++ include/my_thread_os_id.h
593 @@ -75,8 +75,12 @@ static inline my_thread_os_id_t my_threa
594 return pthread_getthreadid_np();
596 #ifdef HAVE_INTEGER_PTHREAD_SELF
597 +# ifdef __DragonFly__
598 + return syscall(SYS_lwp_gettid);
600 /* Unknown platform, fallback. */
601 return pthread_self();
604 /* Feature not available. */
608 [FILE:549:patches/patch-include_myisam.h]
609 --- include/myisam.h.orig 2017-12-28 03:46:26 UTC
611 @@ -45,7 +45,7 @@ extern "C" {
612 The following defines can be increased if necessary.
613 But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
615 -#define MI_MAX_KEY_LENGTH 1000 /* Max length in bytes */
616 +#define MI_MAX_KEY_LENGTH 4000 /* Max length in bytes */
617 #define MI_MAX_KEY_SEG 16 /* Max segments for key */
619 #define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
622 [FILE:434:patches/patch-libmysql_CMakeLists.txt]
623 --- libmysql/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
624 +++ libmysql/CMakeLists.txt
625 @@ -274,7 +274,7 @@ IF(NOT DISABLE_SHARED)
626 COMPONENT SharedLibraries)
628 # libtool compatability
629 - IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
630 + IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly|Linux" OR APPLE)
631 SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
633 SET(OS_SHARED_LIB_VERSION
636 [FILE:334:patches/patch-libservices_CMakeLists.txt]
637 --- libservices/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
638 +++ libservices/CMakeLists.txt
639 @@ -40,4 +40,6 @@ SET(MYSQLSERVICES_SOURCES
640 mysql_keyring_service.c)
642 ADD_CONVENIENCE_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
644 INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
648 [FILE:1910:patches/patch-mysys__ssl_my__default.cc]
649 --- mysys_ssl/my_default.cc.orig 2017-12-28 03:46:26 UTC
650 +++ mysys_ssl/my_default.cc
651 @@ -114,7 +114,7 @@ static my_bool defaults_already_read= FA
653 /* Which directories are searched for options (and in which order) */
655 -#define MAX_DEFAULT_DIRS 6
656 +#define MAX_DEFAULT_DIRS 7
657 #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
658 static const char **default_directories = NULL;
660 @@ -918,6 +918,14 @@ static int search_default_file_with_ext(
661 return 1; /* Ignore wrong files */
664 + if (strstr(name, "/etc") == name)
667 + "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
672 while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file))
675 @@ -1256,7 +1264,8 @@ void my_print_default_files(const char *
676 end[(strlen(end)-1)] = ' ';
678 strxmov(end, conf_file, *ext , " ", NullS);
679 - fputs(name, stdout);
680 + if (strstr(name, "/etc") != name)
681 + fputs(name, stdout);
685 @@ -1415,13 +1424,8 @@ static const char **init_default_directo
689 - errors += add_directory(alloc, "/etc/", dirs);
690 - errors += add_directory(alloc, "/etc/mysql/", dirs);
692 -#if defined(DEFAULT_SYSCONFDIR)
693 - if (DEFAULT_SYSCONFDIR[0])
694 - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
695 -#endif /* DEFAULT_SYSCONFDIR */
696 + errors += add_directory(alloc, "/usr/local/etc/", dirs);
697 + errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs);
701 @@ -1492,7 +1496,7 @@ int check_file_permissions(const char *f
704 if (!my_stat(file_name,&stat_info,MYF(0)))
708 Ignore .mylogin.cnf file if not exclusively readable/writable
712 [FILE:430:patches/patch-plugin_password__validation_validate__password.cc]
713 --- plugin/password_validation/validate_password.cc.orig 2017-12-28 03:46:26 UTC
714 +++ plugin/password_validation/validate_password.cc
716 #include <mysql/plugin_validate_password.h>
717 #include <mysql/service_my_plugin_log.h>
718 #include <mysql/service_mysql_string.h>
719 +/* solve clash between libc++ bitset::test() and test macro from my_global.h */
726 [FILE:545:patches/patch-rapid_plugin_x_CMakeLists.txt]
727 --- rapid/plugin/x/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
728 +++ rapid/plugin/x/CMakeLists.txt
729 @@ -92,14 +92,14 @@ ELSE()
730 ${CMAKE_SOURCE_DIR}/include #temporary
731 ${CMAKE_CURRENT_SOURCE_DIR}/include/mysql
732 ${CMAKE_CURRENT_BINARY_DIR}/generated
733 - ${SSL_INCLUDE_DIRS}
734 - ${ZLIB_INCLUDE_DIR}
735 + ${BOOST_INCLUDE_DIR}
738 INCLUDE_DIRECTORIES(SYSTEM
739 - ${BOOST_INCLUDE_DIR}
740 ${PROTOBUF_INCLUDE_DIRS}
741 ${LIBEVENT_INCLUDE_DIR}
742 + ${SSL_INCLUDE_DIRS}
743 + ${ZLIB_INCLUDE_DIR}
746 IF(XPLUGIN_NO_LITE_PROTOBUF)
749 [FILE:678:patches/patch-rapid_plugin_x_mysqlx__configure.cmake]
750 --- rapid/plugin/x/mysqlx_configure.cmake.orig 2017-12-28 03:46:26 UTC
751 +++ rapid/plugin/x/mysqlx_configure.cmake
752 @@ -35,6 +35,7 @@ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src
753 CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/mysqlx_version.h.in
754 ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h )
757 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_error.h
758 DESTINATION ${INSTALL_INCLUDEDIR}
759 COMPONENT Developement)
760 @@ -46,3 +47,4 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR
761 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h
762 DESTINATION ${INSTALL_INCLUDEDIR}
763 COMPONENT Developement)
767 [FILE:652:patches/patch-rapid_unittest_gunit_xplugin_CMakeLists.txt]
768 --- rapid/unittest/gunit/xplugin/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
769 +++ rapid/unittest/gunit/xplugin/CMakeLists.txt
770 @@ -64,7 +64,6 @@ ENDIF()
771 ADD_DEFINITIONS(${GMOCK_CFLAGS} -DBOOST_ALL_NO_LIB -DBOOST_NO_AUTO_PTR -DUSE_MYSQLX_FULL_PROTO -DXPLUGIN_UNIT_TESTS)
773 INCLUDE_DIRECTORIES(SYSTEM
774 - ${BOOST_INCLUDE_DIR}
775 ${PROTOBUF_INCLUDE_DIRS}
777 ${LIBEVENT_INCLUDE_DIR}
778 @@ -74,6 +73,7 @@ INCLUDE_DIRECTORIES(SYSTEM
782 + ${BOOST_INCLUDE_DIR}
783 ${CMAKE_SOURCE_DIR}/testing/include
784 ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include
785 ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include/ngs
788 [FILE:1683:patches/patch-scripts_CMakeLists.txt]
789 --- scripts/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
790 +++ scripts/CMakeLists.txt
791 @@ -239,13 +239,9 @@ IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME M
792 "ps -p $PID | grep -v mysqld_safe | grep -- $MYSQLD > /dev/null")
797 - EXECUTE_PROCESS(COMMAND ps -uaxww OUTPUT_QUIET ERROR_QUIET RESULT_VARIABLE result)
798 - IF(result MATCHES 0)
799 +IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD")
801 "ps -uaxww | grep -v mysqld_safe | grep -- $MYSQLD | grep $PID > /dev/null")
806 @@ -292,7 +288,7 @@ SET(pkglibdir ${prefix}/${INSTALL_LIBDIR
807 SET(pkgplugindir ${prefix}/${INSTALL_PLUGINDIR})
808 SET(localstatedir ${MYSQL_DATADIR})
810 -IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
812 SET(RPATH_OPTION " -R$pkglibdir")
815 @@ -332,6 +328,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
816 GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
817 STRING(REGEX REPLACE "^lib" "" lib "${lib}")
818 SET(${var} "${${var}}-l${lib} " )
819 + ELSEIF(lib STREQUAL "-pthread")
820 + SET(${var} "${${var}}-pthread " )
822 SET(${var} "${${var}}-l${lib} " )
824 @@ -458,7 +456,7 @@ ELSE()
825 FOREACH(file ${BIN_SCRIPTS})
826 IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
827 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
828 - ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
829 + ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY)
830 ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file})
831 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}
832 ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
835 [FILE:268:patches/patch-sql_CMakeLists.txt]
836 --- sql/CMakeLists.txt.orig 2017-12-28 03:46:26 UTC
837 +++ sql/CMakeLists.txt
838 @@ -24,6 +24,8 @@ INCLUDE_DIRECTORIES(
841 ${CMAKE_BINARY_DIR}/sql
842 + ${CMAKE_BINARY_DIR}/include
843 + ${CMAKE_BINARY_DIR}
849 [FILE:1264:patches/patch-sql_conn__handler_socket__connection.cc]
850 --- sql/conn_handler/socket_connection.cc.orig 2017-12-28 03:46:26 UTC
851 +++ sql/conn_handler/socket_connection.cc
852 @@ -943,22 +943,25 @@ Channel_info* Mysqld_socket_listener::li
853 signal(SIGCHLD, SIG_DFL);
854 request_init(&req, RQ_DAEMON, m_libwrap_name, RQ_FILE,
855 mysql_socket_getfd(connect_sock), NULL);
857 + void (*my_fromhost) (void *) = (void (*)(void *)) fromhost;
860 - if (!hosts_access(&req))
861 + int (*my_hosts_access) (void *) = (int (*) (void *)) hosts_access;
862 + if (!my_hosts_access(&req))
865 This may be stupid but refuse() includes an exit(0)
866 which we surely don't want...
867 clean_exit() - same stupid thing ...
869 + char *(*my_eval_client) (void *) = (char *(*) (void *)) eval_client;
870 syslog(LOG_AUTH | m_deny_severity,
871 - "refused connect from %s", eval_client(&req));
872 + "refused connect from %s", my_eval_client(&req));
874 #ifdef HAVE_LIBWRAP_PROTOTYPES
875 // Some distros have patched tcpd.h to have proper prototypes
877 - (req.sink)(req.fd);
878 + ((void (*)(int)) (req.sink))(req.fd);
880 // Some distros have not patched tcpd.h
884 [FILE:2575:patches/patch-sql_sql__view.cc]
885 --- sql/sql_view.cc.orig 2017-12-28 03:46:26 UTC
887 @@ -773,46 +773,46 @@ static const int required_view_parameter
889 static File_option view_parameters[]=
890 {{{ C_STRING_WITH_LEN("query")},
891 - my_offsetof(TABLE_LIST, select_stmt),
892 + static_cast<int>(my_offsetof(TABLE_LIST, select_stmt)),
893 FILE_OPTIONS_ESTRING},
894 {{ C_STRING_WITH_LEN("md5")},
895 - my_offsetof(TABLE_LIST, md5),
896 + static_cast<int>(my_offsetof(TABLE_LIST, md5)),
897 FILE_OPTIONS_STRING},
898 {{ C_STRING_WITH_LEN("updatable")},
899 - my_offsetof(TABLE_LIST, updatable_view),
900 + static_cast<int>(my_offsetof(TABLE_LIST, updatable_view)),
901 FILE_OPTIONS_ULONGLONG},
902 {{ C_STRING_WITH_LEN("algorithm")},
903 - my_offsetof(TABLE_LIST, algorithm),
904 + static_cast<int>(my_offsetof(TABLE_LIST, algorithm)),
905 FILE_OPTIONS_ULONGLONG},
906 {{ C_STRING_WITH_LEN("definer_user")},
907 - my_offsetof(TABLE_LIST, definer.user),
908 + static_cast<int>(my_offsetof(TABLE_LIST, definer.user)),
909 FILE_OPTIONS_STRING},
910 {{ C_STRING_WITH_LEN("definer_host")},
911 - my_offsetof(TABLE_LIST, definer.host),
912 + static_cast<int>(my_offsetof(TABLE_LIST, definer.host)),
913 FILE_OPTIONS_STRING},
914 {{ C_STRING_WITH_LEN("suid")},
915 - my_offsetof(TABLE_LIST, view_suid),
916 + static_cast<int>(my_offsetof(TABLE_LIST, view_suid)),
917 FILE_OPTIONS_ULONGLONG},
918 {{ C_STRING_WITH_LEN("with_check_option")},
919 - my_offsetof(TABLE_LIST, with_check),
920 + static_cast<int>(my_offsetof(TABLE_LIST, with_check)),
921 FILE_OPTIONS_ULONGLONG},
922 {{ C_STRING_WITH_LEN("timestamp")},
923 - my_offsetof(TABLE_LIST, timestamp),
924 + static_cast<int>(my_offsetof(TABLE_LIST, timestamp)),
925 FILE_OPTIONS_TIMESTAMP},
926 {{ C_STRING_WITH_LEN("create-version")},
927 - my_offsetof(TABLE_LIST, file_version),
928 + static_cast<int>(my_offsetof(TABLE_LIST, file_version)),
929 FILE_OPTIONS_ULONGLONG},
930 {{ C_STRING_WITH_LEN("source")},
931 - my_offsetof(TABLE_LIST, source),
932 + static_cast<int>(my_offsetof(TABLE_LIST, source)),
933 FILE_OPTIONS_ESTRING},
934 {{(char*) STRING_WITH_LEN("client_cs_name")},
935 - my_offsetof(TABLE_LIST, view_client_cs_name),
936 + static_cast<int>(my_offsetof(TABLE_LIST, view_client_cs_name)),
937 FILE_OPTIONS_STRING},
938 {{(char*) STRING_WITH_LEN("connection_cl_name")},
939 - my_offsetof(TABLE_LIST, view_connection_cl_name),
940 + static_cast<int>(my_offsetof(TABLE_LIST, view_connection_cl_name)),
941 FILE_OPTIONS_STRING},
942 {{(char*) STRING_WITH_LEN("view_body_utf8")},
943 - my_offsetof(TABLE_LIST, view_body_utf8),
944 + static_cast<int>(my_offsetof(TABLE_LIST, view_body_utf8)),
945 FILE_OPTIONS_ESTRING},
950 [FILE:1921:patches/patch-sql_sys__vars.cc]
951 --- sql/sys_vars.cc.orig 2017-12-28 03:46:26 UTC
953 @@ -1736,7 +1736,7 @@ static Sys_var_ulong Sys_interactive_tim
954 "connection before closing it",
955 SESSION_VAR(net_interactive_timeout),
956 CMD_LINE(REQUIRED_ARG),
957 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
958 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
960 static Sys_var_ulong Sys_join_buffer_size(
962 @@ -2572,7 +2572,7 @@ static Sys_var_ulong Sys_net_read_timeou
963 "Number of seconds to wait for more data from a connection before "
965 SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG),
966 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
967 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
968 NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
969 ON_UPDATE(fix_net_read_timeout));
971 @@ -2596,7 +2596,7 @@ static Sys_var_ulong Sys_net_write_timeo
972 "Number of seconds to wait for a block to be written to a connection "
973 "before aborting the write",
974 SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG),
975 - VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
976 + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
977 NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
978 ON_UPDATE(fix_net_write_timeout));
980 @@ -4249,7 +4249,7 @@ static Sys_var_ulong Sys_net_wait_timeou
981 "The number of seconds the server waits for activity on a "
982 "connection before closing it",
983 SESSION_VAR(net_wait_timeout), CMD_LINE(REQUIRED_ARG),
984 - VALID_RANGE(1, IF_WIN(INT_MAX32/1000, LONG_TIMEOUT)),
985 + VALID_RANGE(1, INT_MAX32/1000),
986 DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
988 static Sys_var_plugin Sys_default_storage_engine(
991 [FILE:440:patches/patch-storage_innobase_include_srv0mon.h]
992 --- storage/innobase/include/srv0mon.h.orig 2017-12-28 03:46:26 UTC
993 +++ storage/innobase/include/srv0mon.h
994 @@ -34,6 +34,10 @@ Created 12/15/2009 Jimmy Yang
995 /* Required for FreeBSD so that INT64_MAX is defined. */
996 #define __STDC_LIMIT_MACROS
997 #endif /* __STDC_LIMIT_MACROS */
998 +#ifdef __DragonFly__
999 +/* The hack above doen't work for dragonfly, stdint.h already imported */
1000 +#include <machine/int_limits.h>
1007 [FILE:985:patches/patch-storage_myisam_mi__dynrec.c]
1008 --- storage/myisam/mi_dynrec.c.orig 2017-12-28 03:46:26 UTC
1009 +++ storage/myisam/mi_dynrec.c
1010 @@ -65,18 +65,13 @@ my_bool mi_dynmap_file(MI_INFO *info, my
1014 - I wonder if it is good to use MAP_NORESERVE. From the Linux man page:
1016 - Do not reserve swap space for this mapping. When swap space is
1017 - reserved, one has the guarantee that it is possible to modify the
1018 - mapping. When swap space is not reserved one might get SIGSEGV
1019 - upon a write if no physical memory is available.
1020 + MAP_NORESERVE is unimplemented in FreeBSD
1022 info->s->file_map= (uchar*)
1023 my_mmap(0, (size_t) size,
1024 info->s->mode==O_RDONLY ? PROT_READ :
1025 PROT_READ | PROT_WRITE,
1026 - MAP_SHARED | MAP_NORESERVE,
1029 if (info->s->file_map == (uchar*) MAP_FAILED)
1033 [FILE:2182:files/my.cnf.sample.in]
1036 socket = /tmp/mysql.sock
1039 prompt = \u@\h [\d]>\_
1045 socket = /tmp/mysql.sock
1046 bind-address = 127.0.0.1
1047 basedir = %%PREFIX%%
1048 datadir = %%MY_DBDIR%%
1049 tmpdir = %%MY_TMPDIR%%
1050 slave-load-tmpdir = %%MY_TMPDIR%%
1051 secure-file-priv = %%MY_SECDIR%%
1054 master-info-repository = TABLE
1055 relay-log-info-repository = TABLE
1056 relay-log-recovery = 1
1061 binlog_cache_size = 16M
1062 expire_logs_days = 30
1063 default_password_lifetime = 0
1064 enforce-gtid-consistency = 1
1066 safe-user-create = 1
1067 lower_case_table_names = 1
1068 explicit-defaults-for-timestamp = 1
1069 myisam-recover-options = BACKUP,FORCE
1070 open_files_limit = 32768
1071 table_open_cache = 16384
1072 table_definition_cache = 8192
1073 net_retry_count = 16384
1074 key_buffer_size = 256M
1075 max_allowed_packet = 64M
1076 query_cache_type = 0
1077 query_cache_size = 0
1078 long_query_time = 0.5
1079 innodb_buffer_pool_size = 1G
1080 innodb_data_home_dir = %%MY_DBDIR%%
1081 innodb_log_group_home_dir = %%MY_DBDIR%%
1082 innodb_data_file_path = ibdata1:128M:autoextend
1083 innodb_temp_data_file_path = ibtmp1:128M:autoextend
1084 innodb_flush_method = O_DIRECT
1085 innodb_log_file_size = 256M
1086 innodb_log_buffer_size = 16M
1087 innodb_write_io_threads = 8
1088 innodb_read_io_threads = 8
1089 innodb_autoinc_lock_mode = 2
1093 max_allowed_packet = 256M
1098 [FILE:2478:files/mysql-server.in]
1106 # Add the following line to /etc/rc.conf to enable mysql:
1107 # mysql_enable (bool): Set to "NO" by default.
1108 # Set it to "YES" to enable MySQL.
1109 # mysql_limits (bool): Set to "NO" by default.
1110 # Set it to yes to run `limits -e -U mysql`
1111 # just before mysql starts.
1112 # mysql_dbdir (str): Default to "%%MY_DBDIR%%"
1113 # Base database directory.
1114 # mysql_confdir (str): Default to "%%ETCDIR%%"
1115 # Base configuration directory.
1116 # mysql_optfile (str): Server-specific option file.
1117 # Set it in the rc.conf or default behaviour of
1118 # `mysqld_safe` itself, will be picking
1119 # ${mysql_confdir}/my.cnf if it exists.
1120 # mysql_pidfile (str): Custum PID file path and name.
1121 # Default to "${mysql_dbdir}/${hostname}.pid".
1122 # mysql_args (str): Custom additional arguments to be passed
1123 # to mysqld_safe (default empty).
1131 load_rc_config $name
1133 : ${mysql_enable="NO"}
1134 : ${mysql_limits="NO"}
1135 : ${mysql_dbdir="%%MY_DBDIR%%"}
1136 : ${mysql_confdir="%%ETCDIR%%"}
1137 if [ -f "${mysql_confdir}/my.cnf" ]; then
1138 : ${mysql_optfile="${mysql_confdir}/my.cnf"}
1139 elif [ -f "${mysql_dbdir}/my.cnf" ]; then
1140 : ${mysql_optfile="${mysql_dbdir}/my.cnf"}
1142 if [ ! -z "${mysql_optfile}" ]; then
1143 mysql_extra="--defaults-extra-file=${mysql_optfile}"
1147 mysql_limits_args="-e -U ${mysql_user}"
1148 : ${hostname:=`/bin/hostname`}
1149 pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
1150 command="/usr/sbin/daemon"
1151 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%%"
1152 procname="%%PREFIX%%/libexec/mysqld"
1153 start_precmd="${name}_prestart"
1154 start_postcmd="${name}_poststart"
1155 mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
1156 mysql_install_db_args="${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --mysqld-file=${procname} --user=${mysql_user}"
1158 mysql_create_auth_tables()
1160 eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
1165 if [ ! -d "${mysql_dbdir}/mysql/." ]; then
1166 mysql_create_auth_tables || return 1
1168 if checkyesno mysql_limits; then
1169 eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
1178 while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
1179 timeout=$(( timeout - 1 ))
1188 [FILE:576:files/pkg-message-server.in]
1189 *****************************************************************************
1191 Remember to run mysql_upgrade the first time you start the MySQL server
1192 after an upgrade from an earlier version.
1194 Initial password for first time use of MySQL is saved in $HOME/.mysql_secret
1195 ie. when you want to use "mysql -u root -p" first you should see password
1196 in /root/.mysql_secret
1198 MySQL57 has a default %%ETCDIR%%/my.cnf,
1199 remember to replace it wit your own
1200 or set `mysql_optfile="$YOUR_CNF_FILE` in rc.conf.
1202 *****************************************************************************
1205 [FILE:28:files/special.mk]
1206 ETCDIR= ${PREFIX}/etc/mysql