Ravenports generated: 20 Mar 2019 14:49
[ravenports.git] / bucket_68 / mysql57
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               mysql57
4 VERSION=                5.7.25
5 KEYWORDS=               databases
6 VARIANTS=               standard
7 SDESC[standard]=        Multithreaded SQL database (server)
8 HOMEPAGE=               https://www.mysql.com/
9 CONTACT=                nobody
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            MYSQL/MySQL-5.7
13 DISTFILE[1]=            mysql-boost-5.7.25.tar.gz:main
14 DF_INDEX=               1
15 SPKGS[standard]=        complete
16                         server
17                         client
18
19 OPTIONS_AVAILABLE=      ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
20                         PARTITION PERFSCHEMA PERFORMANCE ALTSSL
21 OPTIONS_STANDARD=       ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
22                         PARTITION PERFSCHEMA PERFORMANCE ALTSSL
23 OPTGROUP_UNLIMITED=     STORAGE
24 OPTDESCR[STORAGE]=      Storage engines statically compiled into server
25 OPTGROUP[STORAGE]=      ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE
26                         PARTITION PERFSCHEMA
27 OPT_ON[sunos]=          ALTSSL
28 OPT_ON[all]=            PERFORMANCE
29
30 BUILD_DEPENDS=          rpcgen:single:standard
31                         libedit:single:standard
32 BUILDRUN_DEPENDS=       libevent:single:standard
33                         lz4:complete:standard
34 EXRUN[client]=          libedit:single:standard
35                         zlib:complete:standard
36
37 USERS=                  mysql
38 GROUPS=                 mysql
39 USERGROUP_SPKG=         server
40
41 USES=                   bison cmake perl:run shebangfix execinfo
42                         c++:server,client cclibs:server,client
43
44 DISTNAME=               mysql-5.7.25
45
46 LICENSE=                GPLv2:server
47 LICENSE_TERMS=          server:{{WRKDIR}}/TERMS
48 LICENSE_FILE=           GPLv2:{{WRKSRC}}/README
49 LICENSE_AWK=            TERMS:"^\/\*$$"
50 LICENSE_SOURCE=         TERMS:{{WRKSRC}}/include/mysql.h
51 LICENSE_SCHEME=         solo
52
53 CMAKE_BUILD_TYPE=       Release
54 FPC_EQUIVALENT=         databases/mysql57-server
55 SHEBANG_FILES=          scripts/*.pl
56
57 INSTALL_REQ_TOOLCHAIN=  yes
58 PLIST_SUB=              MY_DBDIR=/var/db/mysql
59                         MY_SECDIR=/var/db/mysql_secure
60                         MY_TMPDIR=/var/db/mysql_tmpdir
61 RC_SUBR=                mysql-server:server
62 SUB_FILES=              my.cnf.sample
63 SUB_LIST=               MY_DBDIR=/var/db/mysql
64                         MY_SECDIR=/var/db/mysql_secure
65                         MY_TMPDIR=/var/db/mysql_tmpdir
66
67 CFLAGS=                 -Wno-deprecated-declarations
68 CMAKE_ARGS=             -DINSTALL_PKGCONFIGDIR="{{LOCALBASE}}/lib/pkgconfig"
69                         -DINSTALL_DOCDIR="share/doc/mysql"
70                         -DINSTALL_DOCREADMEDIR="share/doc/mysql"
71                         -DINSTALL_INCLUDEDIR="include/mysql"
72                         -DINSTALL_INFODIR="share/info"
73                         -DINSTALL_LIBDIR="lib/mysql"
74                         -DINSTALL_MANDIR="share/man"
75                         -DINSTALL_MYSQLDATADIR="/var/db/mysql"
76                         -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring"
77                         -DINSTALL_MYSQLSHAREDIR="share/mysql"
78                         -DINSTALL_MYSQLTESTDIR="share/mysql/tests"
79                         -DINSTALL_PLUGINDIR="lib/mysql/plugin"
80                         -DINSTALL_SBINDIR="libexec"
81                         -DINSTALL_SCRIPTDIR="bin"
82                         -DINSTALL_SECURE_FILE_PRIVDIR="/var/db/mysql_secure"
83                         -DINSTALL_SHAREDIR="share"
84                         -DINSTALL_SUPPORTFILESDIR="share/mysql"
85                         -DMYSQL_KEYRINGDIR="etc/mysql/keyring"
86                         -DWITH_BOOST="{{WRKSRC}}/boost"
87                         -DWITH_EDITLINE=system
88                         -DWITH_LIBEVENT=system
89                         -DWITH_LZ4=system
90                         -DWITH_ZLIB=system
91                         -DWITH_SSL={{OPENSSLBASE}}
92                         -DWITH_EMBEDDED_SERVER="ON"
93                         -DINSTALL_MYSQLTESTDIR=0
94
95 [PERFSCHEMA].DESCRIPTION=               Provide "Performance Schema Storage" engine
96 [PERFSCHEMA].CMAKE_ARGS_ON=             -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
97
98 [EXAMPLE].DESCRIPTION=                  Provide "Example Storage" engine
99 [EXAMPLE].CMAKE_ARGS_ON=                -DWITH_EXAMPLE_STORAGE_ENGINE=1
100
101 [PARTITION].DESCRIPTION=                Provide "Partitioning support Storage" engine
102 [PARTITION].CMAKE_ARGS_ON=              -DWITH_PARTITION_STORAGE_ENGINE=1
103
104 [ALTSSL].DESCRIPTION=                   Use OpenSSL 1.1 instead of default SSL variant
105 [ALTSSL].USES_OFF=                      ssl:build
106 [ALTSSL].USES_ON=                       ssl:openssl-devel,build
107
108 [BLACKHOLE].DESCRIPTION=                Provide "Blackhole Storage" engine
109 [BLACKHOLE].CMAKE_ARGS_ON=              -DWITH_BLACKHOLE_STORAGE_ENGINE=1
110
111 [PERFORMANCE].DESCRIPTION=              Enable "Performance Schema" (High RAM usage)
112 [PERFORMANCE].SUB_LIST_OFF=             PERFSCHEMRC="--skip-performance-schema"
113 [PERFORMANCE].SUB_LIST_ON=              PERFSCHEMRC=""
114
115 [ARCHIVE].DESCRIPTION=                  Provide "Archive Storage" engine
116 [ARCHIVE].CMAKE_ARGS_ON=                -DWITH_ARCHIVE_STORAGE_ENGINE=1
117
118 [FEDERATED].DESCRIPTION=                Provide "Federated Storage" engine
119 [FEDERATED].CMAKE_ARGS_ON=              -DWITH_FEDERATED_STORAGE_ENGINE=1
120 [FEDERATED].SUB_LIST_OFF=               FEDER=""
121 [FEDERATED].SUB_LIST_ON=                FEDER="--federated"
122
123 [INNOBASE].DESCRIPTION=                 Provide "InnoDB Storage" engine
124 [INNOBASE].CMAKE_ARGS_ON=               -DWITH_INNOBASE_STORAGE_ENGINE=1
125
126 post-patch:
127         ${REINPLACE_CMD} -e 's|/usr/bin/perl|${PREFIX}/bin/perl|' \
128                 -e 's|/usr/local/bin/perl|${PREFIX}/bin/perl|' \
129                 ${WRKSRC}/scripts/CMakeLists.txt
130         # don't build authentication ldap on any platform (yet)
131         ${REINPLACE_CMD} -e '/authentication_ldap/d' \
132                 ${WRKSRC}/libmysql/CMakeLists.txt
133
134 post-install:
135         ${MKDIR} ${STAGEDIR}${PREFIX}/etc/mysql/keyring \
136                 ${STAGEDIR}/var/db/mysql_secure \
137                 ${STAGEDIR}/var/db/mysql_tmpdir
138         ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample \
139                 ${STAGEDIR}${ETCDIR}/my.cnf.sample
140         ${RM} ${STAGEDIR}${MANPREFIX}/man/man1/zlib_decompress.1 \
141                 ${STAGEDIR}${MANPREFIX}/man/man1/lz4_decompress.1
142         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/lib*.so
143         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/plugin/*.so
144         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/mysqld
145         # Linux doesn't like -R flags
146         ${SED} -i'' -e 's| -R| -Wl,-rpath,|g' \
147                 ${STAGEDIR}${PREFIX}/bin/mysql_config
148         list=$$(cd ${STAGEDIR}${PREFIX}/bin && ${LS} * | ${AWK} \
149                 '{ if ($$1 != "mysql_config" && $$1 != "mysqld_mult" && \
150                 $$1 != "mysqld_safe" && $$1 != "mysqldumpslow" && \
151                 $$1 != "mysqld_multi") print}'); \
152         (cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} $$list)
153
154 post-extract:
155         ${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
156
157 post-patch-freebsd:
158         ${RM} ${WRKSRC}/cmake/os/FreeBSD.cmake
159
160 [FILE:294:descriptions/desc.server]
161 MySQL is a very fast, multi-threaded, multi-user and robust SQL
162 (Structured Query Language) database server.
163
164 MySQL, the most popular Open Source SQL database management system, is
165 developed, distributed, and supported by Oracle Corporation.
166
167 This package contains the MySQL server components.
168
169
170 [FILE:150:descriptions/desc.client]
171 MySQL is a very fast, multi-threaded, multi-user and robust SQL
172 (Structured Query Language) database server.
173
174 This package contains the MySQL client.
175
176
177 [FILE:104:distinfo]
178 354c427c8679c6a4774f60723ea211e54b4383307764d240940f960d110bf5cf     49107578 mysql-boost-5.7.25.tar.gz
179
180
181 [FILE:3527:manifests/plist.server]
182 %%ONLY-LINUX%%lib/mysql/plugin/auth_socket.so
183 bin/
184  innochecksum
185  lz4_decompress
186  my_print_defaults
187  myisam_ftdump
188  myisamchk
189  myisamlog
190  myisampack
191  mysql_install_db
192  mysql_plugin
193  mysql_secure_installation
194  mysql_tzinfo_to_sql
195  mysql_upgrade
196  mysqld_multi
197  mysqld_safe
198  mysqldumpslow
199  mysqltest
200  mysqlxtest
201  perror
202  replace
203  resolve_stack_dump
204  resolveip
205  zlib_decompress
206 lib/mysql/libmysqld.a
207 lib/mysql/plugin/
208  adt_null.so
209  auth.so
210  auth_test_plugin.so
211  connection_control.so
212  daemon_example.ini
213  group_replication.so
214  ha_example.so
215  keyring_file.so
216  keyring_udf.so
217  libdaemon_example.so
218  libtest_framework.so
219  libtest_services.so
220  libtest_services_threaded.so
221  libtest_session_detach.so
222  libtest_session_in_thd.so
223  libtest_session_info.so
224  libtest_sql_2_sessions.so
225  libtest_sql_all_col_types.so
226  libtest_sql_cmds_1.so
227  libtest_sql_commit.so
228  libtest_sql_complex.so
229  libtest_sql_errors.so
230  libtest_sql_lock.so
231  libtest_sql_processlist.so
232  libtest_sql_replication.so
233  libtest_sql_shutdown.so
234  libtest_sql_sqlmode.so
235  libtest_sql_stored_procedures_functions.so
236  libtest_sql_views_triggers.so
237  libtest_x_sessions_deinit.so
238  libtest_x_sessions_init.so
239  locking_service.so
240  mypluglib.so
241  mysql_no_login.so
242  mysqlx.so
243  qa_auth_client.so
244  qa_auth_interface.so
245  qa_auth_server.so
246  replication_observers_example_plugin.so
247  rewrite_example.so
248  rewriter.so
249  semisync_master.so
250  semisync_slave.so
251  test_security_context.so
252  test_udf_services.so
253  validate_password.so
254  version_token.so
255 libexec/mysqld
256 share/man/man1/
257  innochecksum.1.gz
258  my_print_defaults.1.gz
259  myisam_ftdump.1.gz
260  myisamchk.1.gz
261  myisamlog.1.gz
262  myisampack.1.gz
263  mysql.server.1.gz
264  mysql_install_db.1.gz
265  mysql_plugin.1.gz
266  mysql_secure_installation.1.gz
267  mysql_ssl_rsa_setup.1.gz
268  mysql_tzinfo_to_sql.1.gz
269  mysql_upgrade.1.gz
270  mysqld_multi.1.gz
271  mysqld_safe.1.gz
272  mysqldumpslow.1.gz
273  mysqlman.1.gz
274  perror.1.gz
275  replace.1.gz
276  resolve_stack_dump.1.gz
277  resolveip.1.gz
278 share/man/man8/mysqld.8.gz
279 share/mysql/
280  dictionary.txt
281  errmsg-utf8.txt
282  fill_help_tables.sql
283  innodb_memcached_config.sql
284  install_rewriter.sql
285  magic
286  mysql-log-rotate
287  mysql.server
288  mysql_security_commands.sql
289  mysql_sys_schema.sql
290  mysql_system_tables.sql
291  mysql_system_tables_data.sql
292  mysql_test_data_timezone.sql
293  mysqld_multi.server
294  uninstall_rewriter.sql
295 share/mysql/bulgarian/errmsg.sys
296 share/mysql/charsets/
297  Index.xml
298  README
299  armscii8.xml
300  ascii.xml
301  cp1250.xml
302  cp1251.xml
303  cp1256.xml
304  cp1257.xml
305  cp850.xml
306  cp852.xml
307  cp866.xml
308  dec8.xml
309  geostd8.xml
310  greek.xml
311  hebrew.xml
312  hp8.xml
313  keybcs2.xml
314  koi8r.xml
315  koi8u.xml
316  latin1.xml
317  latin2.xml
318  latin5.xml
319  latin7.xml
320  macce.xml
321  macroman.xml
322  swe7.xml
323 share/mysql/czech/errmsg.sys
324 share/mysql/danish/errmsg.sys
325 share/mysql/dutch/errmsg.sys
326 share/mysql/english/errmsg.sys
327 share/mysql/estonian/errmsg.sys
328 share/mysql/french/errmsg.sys
329 share/mysql/german/errmsg.sys
330 share/mysql/greek/errmsg.sys
331 share/mysql/hungarian/errmsg.sys
332 share/mysql/italian/errmsg.sys
333 share/mysql/japanese/errmsg.sys
334 share/mysql/korean/errmsg.sys
335 share/mysql/norwegian/errmsg.sys
336 share/mysql/norwegian-ny/errmsg.sys
337 share/mysql/polish/errmsg.sys
338 share/mysql/portuguese/errmsg.sys
339 share/mysql/romanian/errmsg.sys
340 share/mysql/russian/errmsg.sys
341 share/mysql/serbian/errmsg.sys
342 share/mysql/slovak/errmsg.sys
343 share/mysql/spanish/errmsg.sys
344 share/mysql/swedish/errmsg.sys
345 share/mysql/ukrainian/errmsg.sys
346 @dir(mysql,mysql,0750) %%MY_SECDIR%%
347 @dir(mysql,mysql,0750) %%MY_TMPDIR%%
348 @dir(mysql,mysql,0750) etc/mysql/keyring
349 @sample(root,wheel,0644) etc/mysql/my.cnf.sample
350
351
352 [FILE:2466:manifests/plist.client]
353 bin/
354  mysql
355  mysql_client_test
356  mysql_config
357  mysql_config_editor
358  mysql_ssl_rsa_setup
359  mysqladmin
360  mysqlbinlog
361  mysqlcheck
362  mysqldump
363  mysqlimport
364  mysqlpump
365  mysqlshow
366  mysqlslap
367 include/mysql/
368  big_endian.h
369  binary_log_types.h
370  byte_order_generic.h
371  byte_order_generic_x86.h
372  decimal.h
373  errmsg.h
374  keycache.h
375  little_endian.h
376  m_ctype.h
377  m_string.h
378  my_alloc.h
379  my_byteorder.h
380  my_command.h
381  my_compiler.h
382  my_config.h
383  my_dbug.h
384  my_dir.h
385  my_getopt.h
386  my_global.h
387  my_list.h
388  my_sys.h
389  my_thread.h
390  my_thread_local.h
391  my_xml.h
392  mysql.h
393  mysql_com.h
394  mysql_com_server.h
395  mysql_embed.h
396  mysql_time.h
397  mysql_version.h
398  mysqld_ername.h
399  mysqld_error.h
400  plugin.h
401  plugin_audit.h
402  plugin_ftparser.h
403  plugin_group_replication.h
404  plugin_keyring.h
405  plugin_validate_password.h
406  sql_common.h
407  sql_state.h
408  sslopt-case.h
409  sslopt-longopts.h
410  sslopt-vars.h
411  thr_cond.h
412  thr_mutex.h
413  thr_rwlock.h
414  typelib.h
415 include/mysql/mysql/
416  client_authentication.h
417  client_plugin.h
418  client_plugin.h.pp
419  com_data.h
420  get_password.h
421  group_replication_priv.h
422  innodb_priv.h
423  mysql_lex_string.h
424  plugin.h
425  plugin_audit.h
426  plugin_audit.h.pp
427  plugin_auth.h
428  plugin_auth.h.pp
429  plugin_auth_common.h
430  plugin_ftparser.h
431  plugin_ftparser.h.pp
432  plugin_group_replication.h
433  plugin_keyring.h
434  plugin_keyring.h.pp
435  plugin_trace.h
436  plugin_validate_password.h
437  service_command.h
438  service_locking.h
439  service_my_plugin_log.h
440  service_my_snprintf.h
441  service_mysql_alloc.h
442  service_mysql_keyring.h
443  service_mysql_password_policy.h
444  service_mysql_string.h
445  service_parser.h
446  service_rpl_transaction_ctx.h
447  service_rpl_transaction_write_set.h
448  service_rules_table.h
449  service_security_context.h
450  service_srv_session.h
451  service_srv_session_info.h
452  service_ssl_wrapper.h
453  service_thd_alloc.h
454  service_thd_engine_lock.h
455  service_thd_wait.h
456  service_thread_scheduler.h
457  services.h
458  services.h.pp
459  thread_pool_priv.h
460  thread_type.h
461 include/mysql/mysql/psi/
462  mysql_file.h
463  mysql_idle.h
464  mysql_mdl.h
465  mysql_memory.h
466  mysql_ps.h
467  mysql_socket.h
468  mysql_sp.h
469  mysql_stage.h
470  mysql_statement.h
471  mysql_table.h
472  mysql_thread.h
473  mysql_transaction.h
474  psi.h
475  psi_base.h
476  psi_memory.h
477 lib/mysql/
478  libmysqlclient.a
479  libmysqlclient.so
480  libmysqlclient.so.20
481 lib/pkgconfig/mysqlclient.pc
482 share/aclocal/mysql.m4
483 share/man/man1/
484  comp_err.1.gz
485  mysql.1.gz
486  mysql_config.1.gz
487  mysql_config_editor.1.gz
488  mysqladmin.1.gz
489  mysqlbinlog.1.gz
490  mysqlcheck.1.gz
491  mysqldump.1.gz
492  mysqlimport.1.gz
493  mysqlpump.1.gz
494  mysqlshow.1.gz
495  mysqlslap.1.gz
496
497
498 [FILE:1384:patches/patch-CMakeLists.txt]
499 --- CMakeLists.txt.orig 2018-12-21 10:39:40 UTC
500 +++ CMakeLists.txt
501 @@ -590,6 +590,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
502  ENDIF()
503  
504  # Check for pthread_getthreadid_np()
505 +set(CMAKE_REQUIRED_LIBRARIES pthread)
506  CHECK_C_SOURCE_COMPILES("
507  #include <pthread_np.h>
508  int main(int ac, char **av)
509 @@ -598,6 +599,7 @@ int main(int ac, char **av)
510    return (tid != 0 ? 0 : 1);
511  }"
512  HAVE_PTHREAD_GETTHREADID_NP)
513 +set(CMAKE_REQUIRED_LIBRARIES "")
514  
515  # Check for pthread_self() returning an integer type
516  CHECK_C_SOURCE_COMPILES("
517 @@ -684,7 +686,6 @@ IF(NOT WITHOUT_SERVER)
518    OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
519    IF(WITH_EMBEDDED_SERVER) 
520     ADD_SUBDIRECTORY(libmysqld)
521 -   ADD_SUBDIRECTORY(libmysqld/examples)
522    ENDIF(WITH_EMBEDDED_SERVER)
523  ENDIF()
524  
525 @@ -745,7 +746,6 @@ ELSE()
526    SET(CPACK_GENERATOR "TGZ")
527  ENDIF() 
528  ADD_SUBDIRECTORY(packaging/WiX)
529 -ADD_SUBDIRECTORY(packaging/solaris)
530  
531  IF(UNIX)
532    INSTALL(FILES Docs/mysql.info DESTINATION ${INSTALL_INFODIR} OPTIONAL COMPONENT Info)
533 @@ -753,6 +753,7 @@ ENDIF()
534  #
535  # RPM installs documentation directly from the source tree
536  #
537 +IF(FALSE)
538  IF(NOT INSTALL_LAYOUT MATCHES "RPM")
539    INSTALL(FILES COPYING LICENSE.mysql 
540    DESTINATION ${INSTALL_DOCREADMEDIR} 
541 @@ -775,6 +776,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
542      PATTERN "sp-imp-spec.txt" EXCLUDE
543    )
544  ENDIF()
545 +ENDIF()
546  
547  INCLUDE(CPack)
548  
549
550
551 [FILE:566:patches/patch-cmake_plugin.cmake]
552 --- cmake/plugin.cmake.orig     2018-12-21 10:39:40 UTC
553 +++ cmake/plugin.cmake
554 @@ -270,9 +270,6 @@ MACRO(MYSQL_ADD_PLUGIN)
555      MYSQL_INSTALL_TARGETS(${target}
556        DESTINATION ${INSTALL_PLUGINDIR}
557        COMPONENT ${INSTALL_COMPONENT})
558 -    INSTALL_DEBUG_TARGET(${target}
559 -      DESTINATION ${INSTALL_PLUGINDIR}/debug
560 -      COMPONENT ${INSTALL_COMPONENT})
561      # Add installed files to list for RPMs
562      FILE(APPEND ${CMAKE_BINARY_DIR}/support-files/plugins.files
563              "%attr(755, root, root) %{_prefix}/${INSTALL_PLUGINDIR}/${ARG_MODULE_OUTPUT_NAME}.so\n"
564
565
566 [FILE:435:patches/patch-cmake_ssl.cmake]
567 --- cmake/ssl.cmake.orig        2018-12-21 10:39:40 UTC
568 +++ cmake/ssl.cmake
569 @@ -180,6 +180,12 @@ MACRO (MYSQL_CHECK_SSL)
570         OPENSSL_MAJOR_VERSION STREQUAL "1"
571        )
572        SET(OPENSSL_FOUND TRUE)
573 +    ELSEIF(OPENSSL_INCLUDE_DIR AND
574 +       OPENSSL_LIBRARY   AND
575 +       CRYPTO_LIBRARY      AND
576 +       OPENSSL_MAJOR_VERSION STREQUAL "2"
577 +      )
578 +      SET(OPENSSL_FOUND TRUE)
579      ELSE()
580        SET(OPENSSL_FOUND FALSE)
581      ENDIF()
582
583
584 [FILE:491:patches/patch-include_my__compare.h]
585 --- include/my_compare.h.orig   2018-12-21 10:39:40 UTC
586 +++ include/my_compare.h
587 @@ -40,7 +40,7 @@ extern "C" {
588    But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
589  */
590  
591 -#define HA_MAX_KEY_LENGTH           1000        /* Max length in bytes */
592 +#define HA_MAX_KEY_LENGTH           4000        /* Max length in bytes */
593  #define HA_MAX_KEY_SEG              16          /* Max segments for key */
594  
595  #define HA_MAX_POSSIBLE_KEY_BUFF    (HA_MAX_KEY_LENGTH + 24+ 6+6)
596
597
598 [FILE:419:patches/patch-include_my__thread__os__id.h]
599 --- include/my_thread_os_id.h.orig      2018-12-21 10:39:40 UTC
600 +++ include/my_thread_os_id.h
601 @@ -81,8 +81,12 @@ static inline my_thread_os_id_t my_threa
602    return pthread_getthreadid_np();
603  #else
604  #ifdef HAVE_INTEGER_PTHREAD_SELF
605 +#  ifdef __DragonFly__
606 +  return syscall(SYS_lwp_gettid);
607 +#  else
608    /* Unknown platform, fallback. */
609    return pthread_self();
610 +#  endif
611  #else
612    /* Feature not available. */
613    return 0;
614
615
616 [FILE:549:patches/patch-include_myisam.h]
617 --- include/myisam.h.orig       2018-12-21 10:39:40 UTC
618 +++ include/myisam.h
619 @@ -45,7 +45,7 @@ extern "C" {
620    The following defines can be increased if necessary.
621    But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
622  */
623 -#define MI_MAX_KEY_LENGTH           1000            /* Max length in bytes */
624 +#define MI_MAX_KEY_LENGTH           4000            /* Max length in bytes */
625  #define MI_MAX_KEY_SEG              16              /* Max segments for key */
626  
627  #define MI_MAX_KEY_BUFF  (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
628
629
630 [FILE:440:patches/patch-libmysql_CMakeLists.txt]
631 --- libmysql/CMakeLists.txt.orig        2018-12-21 10:39:40 UTC
632 +++ libmysql/CMakeLists.txt
633 @@ -287,7 +287,7 @@ IF(NOT DISABLE_SHARED)
634      COMPONENT SharedLibraries)
635    IF(UNIX)
636      # libtool compatability
637 -    IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
638 +    IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly|Linux|SunOS" OR APPLE)
639        SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
640      ELSE()
641        SET(OS_SHARED_LIB_VERSION
642
643
644 [FILE:334:patches/patch-libservices_CMakeLists.txt]
645 --- libservices/CMakeLists.txt.orig     2018-12-21 10:39:40 UTC
646 +++ libservices/CMakeLists.txt
647 @@ -40,4 +40,6 @@ SET(MYSQLSERVICES_SOURCES
648    mysql_keyring_service.c)
649  
650  ADD_CONVENIENCE_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
651 +IF(FALSE)
652  INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
653 +ENDIF()
654
655
656 [FILE:1910:patches/patch-mysys__ssl_my__default.cc]
657 --- mysys_ssl/my_default.cc.orig        2018-12-21 10:39:40 UTC
658 +++ mysys_ssl/my_default.cc
659 @@ -114,7 +114,7 @@ static my_bool defaults_already_read= FA
660  
661  /* Which directories are searched for options (and in which order) */
662  
663 -#define MAX_DEFAULT_DIRS 6
664 +#define MAX_DEFAULT_DIRS 7
665  #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1)  /* Terminate with NULL */
666  static const char **default_directories = NULL;
667  
668 @@ -918,6 +918,14 @@ static int search_default_file_with_ext(
669        return 1;                                 /* Ignore wrong files */
670    }
671  
672 +  if (strstr(name, "/etc") == name)
673 +  {
674 +    fprintf(stderr,
675 +             "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n",
676 +             name,name);
677 +      goto err;
678 +  }
679 +
680    while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file))
681    {
682      line++;
683 @@ -1256,7 +1264,8 @@ void my_print_default_files(const char *
684              end[(strlen(end)-1)] = ' ';
685            else
686              strxmov(end, conf_file, *ext , " ",  NullS);
687 -          fputs(name, stdout);
688 +          if (strstr(name, "/etc") != name)
689 +            fputs(name, stdout);
690          }
691        }
692      }
693 @@ -1415,13 +1424,8 @@ static const char **init_default_directo
694  
695  #else
696  
697 -  errors += add_directory(alloc, "/etc/", dirs);
698 -  errors += add_directory(alloc, "/etc/mysql/", dirs);
699 -
700 -#if defined(DEFAULT_SYSCONFDIR)
701 -  if (DEFAULT_SYSCONFDIR[0])
702 -    errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
703 -#endif /* DEFAULT_SYSCONFDIR */
704 +  errors += add_directory(alloc, "/usr/local/etc/", dirs);
705 +  errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs);
706  
707  #endif
708  
709 @@ -1492,7 +1496,7 @@ int check_file_permissions(const char *f
710    MY_STAT stat_info;
711  
712    if (!my_stat(file_name,&stat_info,MYF(0)))
713 -    return 1;
714 +    return 0;
715    /*
716      Ignore .mylogin.cnf file if not exclusively readable/writable
717      by current user.
718
719
720 [FILE:430:patches/patch-plugin_password__validation_validate__password.cc]
721 --- plugin/password_validation/validate_password.cc.orig        2018-12-21 10:39:40 UTC
722 +++ plugin/password_validation/validate_password.cc
723 @@ -18,6 +18,8 @@
724  #include <mysql/plugin_validate_password.h>
725  #include <mysql/service_my_plugin_log.h>
726  #include <mysql/service_mysql_string.h>
727 +/* solve clash between libc++ bitset::test() and test macro from my_global.h */
728 +#undef test
729  #include <set>
730  #include <iostream>
731  #include <fstream>
732
733
734 [FILE:678:patches/patch-rapid_plugin_x_mysqlx__configure.cmake]
735 --- rapid/plugin/x/mysqlx_configure.cmake.orig  2018-12-21 10:39:40 UTC
736 +++ rapid/plugin/x/mysqlx_configure.cmake
737 @@ -35,6 +35,7 @@ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src
738  CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/mysqlx_version.h.in
739                 ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h )
740  
741 +IF(FALSE)
742  INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_error.h
743          DESTINATION ${INSTALL_INCLUDEDIR}
744          COMPONENT Developement)
745 @@ -46,3 +47,4 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR
746  INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/generated/mysqlx_version.h
747          DESTINATION ${INSTALL_INCLUDEDIR}
748          COMPONENT Developement)
749 +ENDIF()
750
751
752 [FILE:546:patches/patch-rapid_unittest_gunit_xplugin_CMakeLists.txt]
753 --- rapid/unittest/gunit/xplugin/CMakeLists.txt.orig    2018-12-21 10:39:40 UTC
754 +++ rapid/unittest/gunit/xplugin/CMakeLists.txt
755 @@ -69,7 +69,6 @@ ADD_DEFINITIONS(
756  )
757  
758  INCLUDE_DIRECTORIES(SYSTEM
759 -    ${BOOST_INCLUDE_DIR}
760      ${PROTOBUF_INCLUDE_DIRS}
761      ${SSL_INCLUDE_DIRS}
762      ${LIBEVENT_INCLUDE_DIR}
763 @@ -79,6 +78,7 @@ INCLUDE_DIRECTORIES(SYSTEM
764  )
765  
766  INCLUDE_DIRECTORIES(
767 +  ${BOOST_INCLUDE_DIR}
768    ${CMAKE_SOURCE_DIR}/testing/include
769    ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include
770    ${PROJECT_SOURCE_DIR}/rapid/plugin/x/ngs/include/ngs
771
772
773 [FILE:342:patches/patch-regex_CMakeLists.txt]
774 --- regex/CMakeLists.txt.orig   2018-12-21 10:39:40 UTC
775 +++ regex/CMakeLists.txt
776 @@ -14,6 +14,7 @@
777  # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
778  
779  INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
780 +INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/compile_flags.cmake)
781  
782  INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/compile_flags.cmake)
783  
784
785
786 [FILE:1683:patches/patch-scripts_CMakeLists.txt]
787 --- scripts/CMakeLists.txt.orig 2018-12-21 10:39:40 UTC
788 +++ scripts/CMakeLists.txt
789 @@ -239,13 +239,9 @@ IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME M
790      "ps -p $PID | grep -v mysqld_safe | grep -- $MYSQLD > /dev/null")
791  ENDIF()
792  
793 -IF(NOT FIND_PROC)
794 -  # BSD styl
795 -  EXECUTE_PROCESS(COMMAND ps -uaxww OUTPUT_QUIET ERROR_QUIET RESULT_VARIABLE result)
796 -  IF(result MATCHES 0) 
797 +IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD")
798       SET( FIND_PROC
799         "ps -uaxww | grep -v mysqld_safe | grep -- $MYSQLD | grep $PID > /dev/null")
800 -  ENDIF()
801  ENDIF()
802  
803  IF(NOT FIND_PROC)
804 @@ -292,7 +288,7 @@ SET(pkglibdir ${prefix}/${INSTALL_LIBDIR
805  SET(pkgplugindir ${prefix}/${INSTALL_PLUGINDIR})
806  SET(localstatedir ${MYSQL_DATADIR})
807  
808 -IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
809 +IF(TRUE)
810    SET(RPATH_OPTION " -R$pkglibdir")
811  ENDIF()
812  
813 @@ -324,6 +320,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
814            GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
815            STRING(REGEX REPLACE "^lib" "" lib "${lib}")
816            SET(${var} "${${var}}-l${lib} " ) 
817 +        ELSEIF(lib STREQUAL "-pthread")
818 +          SET(${var} "${${var}}-pthread " ) 
819          ELSE()
820            SET(${var} "${${var}}-l${lib} " ) 
821          ENDIF()
822 @@ -450,7 +448,7 @@ ELSE()
823    FOREACH(file ${BIN_SCRIPTS})
824      IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
825        CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
826 -        ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
827 +        ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY)
828      ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file})
829        CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}
830           ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
831
832
833 [FILE:275:patches/patch-sql_CMakeLists.txt]
834 --- sql/CMakeLists.txt.orig     2018-12-21 10:39:40 UTC
835 +++ sql/CMakeLists.txt
836 @@ -23,6 +23,8 @@ INCLUDE_DIRECTORIES(
837    ${CMAKE_SOURCE_DIR}/regex 
838    ${SSL_INCLUDE_DIRS}
839    ${CMAKE_BINARY_DIR}/sql
840 +  ${CMAKE_BINARY_DIR}/include
841 +  ${CMAKE_BINARY_DIR}
842    ${LZ4_INCLUDE_DIR}
843  )
844  
845
846
847 [FILE:1264:patches/patch-sql_conn__handler_socket__connection.cc]
848 --- sql/conn_handler/socket_connection.cc.orig  2018-12-21 10:39:40 UTC
849 +++ sql/conn_handler/socket_connection.cc
850 @@ -943,22 +943,25 @@ Channel_info* Mysqld_socket_listener::li
851      signal(SIGCHLD, SIG_DFL);
852      request_init(&req, RQ_DAEMON, m_libwrap_name, RQ_FILE,
853                   mysql_socket_getfd(connect_sock), NULL);
854 -    fromhost(&req);
855 +    void (*my_fromhost) (void *) = (void (*)(void *)) fromhost;
856 +    my_fromhost(&req);
857  
858 -    if (!hosts_access(&req))
859 +    int (*my_hosts_access) (void *) = (int (*) (void *)) hosts_access;
860 +    if (!my_hosts_access(&req))
861      {
862        /*
863          This may be stupid but refuse() includes an exit(0)
864          which we surely don't want...
865          clean_exit() - same stupid thing ...
866        */
867 +      char *(*my_eval_client) (void *) = (char *(*) (void *)) eval_client;
868        syslog(LOG_AUTH | m_deny_severity,
869 -             "refused connect from %s", eval_client(&req));
870 +             "refused connect from %s", my_eval_client(&req));
871  
872  #ifdef HAVE_LIBWRAP_PROTOTYPES
873        // Some distros have patched tcpd.h to have proper prototypes
874        if (req.sink)
875 -        (req.sink)(req.fd);
876 +        ((void (*)(int)) (req.sink))(req.fd);
877  #else
878        // Some distros have not patched tcpd.h
879        if (req.sink)
880
881
882 [FILE:374:patches/patch-sql_mysqld.cc]
883 --- sql/mysqld.cc.orig  2018-12-21 10:39:40 UTC
884 +++ sql/mysqld.cc
885 @@ -3415,7 +3415,7 @@ static int init_ssl()
886  {
887  #ifdef HAVE_OPENSSL
888  #ifndef HAVE_YASSL
889 -#if OPENSSL_VERSION_NUMBER < 0x10100000L
890 +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
891    CRYPTO_malloc_init();
892  #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */
893    OPENSSL_malloc_init();
894
895
896 [FILE:2575:patches/patch-sql_sql__view.cc]
897 --- sql/sql_view.cc.orig        2018-12-21 10:39:40 UTC
898 +++ sql/sql_view.cc
899 @@ -778,46 +778,46 @@ static const int required_view_parameter
900  */
901  static File_option view_parameters[]=
902  {{{ C_STRING_WITH_LEN("query")},
903 -  my_offsetof(TABLE_LIST, select_stmt),
904 +  static_cast<int>(my_offsetof(TABLE_LIST, select_stmt)),
905    FILE_OPTIONS_ESTRING},
906   {{ C_STRING_WITH_LEN("md5")},
907 -  my_offsetof(TABLE_LIST, md5),
908 +  static_cast<int>(my_offsetof(TABLE_LIST, md5)),
909    FILE_OPTIONS_STRING},
910   {{ C_STRING_WITH_LEN("updatable")},
911 -  my_offsetof(TABLE_LIST, updatable_view),
912 +  static_cast<int>(my_offsetof(TABLE_LIST, updatable_view)),
913    FILE_OPTIONS_ULONGLONG},
914   {{ C_STRING_WITH_LEN("algorithm")},
915 -  my_offsetof(TABLE_LIST, algorithm),
916 +  static_cast<int>(my_offsetof(TABLE_LIST, algorithm)),
917    FILE_OPTIONS_ULONGLONG},
918   {{ C_STRING_WITH_LEN("definer_user")},
919 -  my_offsetof(TABLE_LIST, definer.user),
920 +  static_cast<int>(my_offsetof(TABLE_LIST, definer.user)),
921    FILE_OPTIONS_STRING},
922   {{ C_STRING_WITH_LEN("definer_host")},
923 -  my_offsetof(TABLE_LIST, definer.host),
924 +  static_cast<int>(my_offsetof(TABLE_LIST, definer.host)),
925    FILE_OPTIONS_STRING},
926   {{ C_STRING_WITH_LEN("suid")},
927 -  my_offsetof(TABLE_LIST, view_suid),
928 +  static_cast<int>(my_offsetof(TABLE_LIST, view_suid)),
929    FILE_OPTIONS_ULONGLONG},
930   {{ C_STRING_WITH_LEN("with_check_option")},
931 -  my_offsetof(TABLE_LIST, with_check),
932 +  static_cast<int>(my_offsetof(TABLE_LIST, with_check)),
933    FILE_OPTIONS_ULONGLONG},
934   {{ C_STRING_WITH_LEN("timestamp")},
935 -  my_offsetof(TABLE_LIST, timestamp),
936 +  static_cast<int>(my_offsetof(TABLE_LIST, timestamp)),
937    FILE_OPTIONS_TIMESTAMP},
938   {{ C_STRING_WITH_LEN("create-version")},
939 -  my_offsetof(TABLE_LIST, file_version),
940 +  static_cast<int>(my_offsetof(TABLE_LIST, file_version)),
941    FILE_OPTIONS_ULONGLONG},
942   {{ C_STRING_WITH_LEN("source")},
943 -  my_offsetof(TABLE_LIST, source),
944 +  static_cast<int>(my_offsetof(TABLE_LIST, source)),
945    FILE_OPTIONS_ESTRING},
946   {{(char*) STRING_WITH_LEN("client_cs_name")},
947 -  my_offsetof(TABLE_LIST, view_client_cs_name),
948 +  static_cast<int>(my_offsetof(TABLE_LIST, view_client_cs_name)),
949    FILE_OPTIONS_STRING},
950   {{(char*) STRING_WITH_LEN("connection_cl_name")},
951 -  my_offsetof(TABLE_LIST, view_connection_cl_name),
952 +  static_cast<int>(my_offsetof(TABLE_LIST, view_connection_cl_name)),
953    FILE_OPTIONS_STRING},
954   {{(char*) STRING_WITH_LEN("view_body_utf8")},
955 -  my_offsetof(TABLE_LIST, view_body_utf8),
956 +  static_cast<int>(my_offsetof(TABLE_LIST, view_body_utf8)),
957    FILE_OPTIONS_ESTRING},
958   {{NullS, 0},                  0,
959    FILE_OPTIONS_STRING}
960
961
962 [FILE:1921:patches/patch-sql_sys__vars.cc]
963 --- sql/sys_vars.cc.orig        2018-12-21 10:39:40 UTC
964 +++ sql/sys_vars.cc
965 @@ -1741,7 +1741,7 @@ static Sys_var_ulong Sys_interactive_tim
966         "connection before closing it",
967         SESSION_VAR(net_interactive_timeout),
968         CMD_LINE(REQUIRED_ARG),
969 -       VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
970 +       VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
971  
972  static Sys_var_ulong Sys_join_buffer_size(
973         "join_buffer_size",
974 @@ -2621,7 +2621,7 @@ static Sys_var_ulong Sys_net_read_timeou
975         "Number of seconds to wait for more data from a connection before "
976         "aborting the read",
977         SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG),
978 -       VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
979 +       VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
980         NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
981         ON_UPDATE(fix_net_read_timeout));
982  
983 @@ -2645,7 +2645,7 @@ static Sys_var_ulong Sys_net_write_timeo
984         "Number of seconds to wait for a block to be written to a connection "
985         "before aborting the write",
986         SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG),
987 -       VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
988 +       VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
989         NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
990         ON_UPDATE(fix_net_write_timeout));
991  
992 @@ -4369,7 +4369,7 @@ static Sys_var_ulong Sys_net_wait_timeou
993         "The number of seconds the server waits for activity on a "
994         "connection before closing it",
995         SESSION_VAR(net_wait_timeout), CMD_LINE(REQUIRED_ARG),
996 -       VALID_RANGE(1, IF_WIN(INT_MAX32/1000, LONG_TIMEOUT)),
997 +       VALID_RANGE(1, INT_MAX32/1000),
998         DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
999  
1000  static Sys_var_plugin Sys_default_storage_engine(
1001
1002
1003 [FILE:440:patches/patch-storage_innobase_include_srv0mon.h]
1004 --- storage/innobase/include/srv0mon.h.orig     2018-12-21 10:39:40 UTC
1005 +++ storage/innobase/include/srv0mon.h
1006 @@ -34,6 +34,10 @@ Created 12/15/2009   Jimmy Yang
1007  /* Required for FreeBSD so that INT64_MAX is defined. */
1008  #define __STDC_LIMIT_MACROS
1009  #endif /* __STDC_LIMIT_MACROS */
1010 +#ifdef __DragonFly__
1011 +/* The hack above doen't work for dragonfly, stdint.h already imported */
1012 +#include <machine/int_limits.h>
1013 +#endif
1014  
1015  #include <stdint.h>
1016  
1017
1018
1019 [FILE:985:patches/patch-storage_myisam_mi__dynrec.c]
1020 --- storage/myisam/mi_dynrec.c.orig     2018-12-21 10:39:40 UTC
1021 +++ storage/myisam/mi_dynrec.c
1022 @@ -65,18 +65,13 @@ my_bool mi_dynmap_file(MI_INFO *info, my
1023      DBUG_RETURN(1);
1024    }
1025    /*
1026 -    I wonder if it is good to use MAP_NORESERVE. From the Linux man page:
1027 -    MAP_NORESERVE
1028 -      Do not reserve swap space for this mapping. When swap space is
1029 -      reserved, one has the guarantee that it is possible to modify the
1030 -      mapping. When swap space is not reserved one might get SIGSEGV
1031 -      upon a write if no physical memory is available.
1032 +    MAP_NORESERVE is unimplemented in FreeBSD
1033    */
1034    info->s->file_map= (uchar*)
1035                    my_mmap(0, (size_t) size,
1036                            info->s->mode==O_RDONLY ? PROT_READ :
1037                            PROT_READ | PROT_WRITE,
1038 -                          MAP_SHARED | MAP_NORESERVE,
1039 +                          MAP_SHARED,
1040                            info->dfile, 0L);
1041    if (info->s->file_map == (uchar*) MAP_FAILED)
1042    {
1043
1044
1045 [FILE:2182:files/my.cnf.sample.in]
1046 [client]
1047 port                            = 3306
1048 socket                          = /tmp/mysql.sock
1049
1050 [mysql]
1051 prompt                          = \u@\h [\d]>\_
1052 no_auto_rehash
1053
1054 [mysqld]
1055 user                            = mysql
1056 port                            = 3306
1057 socket                          = /tmp/mysql.sock
1058 bind-address                    = 127.0.0.1
1059 basedir                         = %%PREFIX%%
1060 datadir                         = %%MY_DBDIR%%
1061 tmpdir                          = %%MY_TMPDIR%%
1062 slave-load-tmpdir               = %%MY_TMPDIR%%
1063 secure-file-priv                = %%MY_SECDIR%%
1064 log-bin                         = mysql-bin
1065 log-output                      = TABLE
1066 master-info-repository          = TABLE
1067 relay-log-info-repository       = TABLE
1068 relay-log-recovery              = 1
1069 slow-query-log                  = 1
1070 server-id                       = 1
1071 sync_binlog                     = 1
1072 sync_relay_log                  = 1
1073 binlog_cache_size               = 16M
1074 expire_logs_days                = 30
1075 default_password_lifetime       = 0
1076 enforce-gtid-consistency        = 1
1077 gtid-mode                       = ON
1078 safe-user-create                = 1
1079 lower_case_table_names          = 1
1080 explicit-defaults-for-timestamp = 1
1081 myisam-recover-options          = BACKUP,FORCE
1082 open_files_limit                = 32768
1083 table_open_cache                = 16384
1084 table_definition_cache          = 8192
1085 net_retry_count                 = 16384
1086 key_buffer_size                 = 256M
1087 max_allowed_packet              = 64M
1088 query_cache_type                = 0
1089 query_cache_size                = 0
1090 long_query_time                 = 0.5
1091 innodb_buffer_pool_size         = 1G
1092 innodb_data_home_dir            = %%MY_DBDIR%%
1093 innodb_log_group_home_dir       = %%MY_DBDIR%%
1094 innodb_data_file_path           = ibdata1:128M:autoextend
1095 innodb_temp_data_file_path      = ibtmp1:128M:autoextend
1096 innodb_flush_method             = O_DIRECT
1097 innodb_log_file_size            = 256M
1098 innodb_log_buffer_size          = 16M
1099 innodb_write_io_threads         = 8
1100 innodb_read_io_threads          = 8
1101 innodb_autoinc_lock_mode        = 2
1102 skip-symbolic-links
1103
1104 [mysqldump]
1105 max_allowed_packet              = 256M
1106 quote_names
1107 quick
1108
1109
1110 [FILE:2478:files/mysql-server.in]
1111 #!/bin/sh
1112 #
1113 # PROVIDE: mysql
1114 # REQUIRE: LOGIN
1115 # KEYWORD: shutdown
1116
1117 #
1118 # Add the following line to /etc/rc.conf to enable mysql:
1119 # mysql_enable (bool):  Set to "NO" by default.
1120 #                       Set it to "YES" to enable MySQL.
1121 # mysql_limits (bool):  Set to "NO" by default.
1122 #                       Set it to yes to run `limits -e -U mysql`
1123 #                       just before mysql starts.
1124 # mysql_dbdir (str):    Default to "%%MY_DBDIR%%"
1125 #                       Base database directory.
1126 # mysql_confdir (str):  Default to "%%ETCDIR%%"
1127 #                       Base configuration directory.
1128 # mysql_optfile (str):  Server-specific option file.
1129 #                       Set it in the rc.conf or default behaviour of
1130 #                       `mysqld_safe` itself, will be picking
1131 #                       ${mysql_confdir}/my.cnf if it exists.
1132 # mysql_pidfile (str):  Custum PID file path and name.
1133 #                       Default to "${mysql_dbdir}/${hostname}.pid".
1134 # mysql_args (str):     Custom additional arguments to be passed
1135 #                       to mysqld_safe (default empty).
1136 #
1137
1138 . /etc/rc.subr
1139
1140 name="mysql"
1141 rcvar=mysql_enable
1142
1143 load_rc_config $name
1144
1145 : ${mysql_enable="NO"}
1146 : ${mysql_limits="NO"}
1147 : ${mysql_dbdir="%%MY_DBDIR%%"}
1148 : ${mysql_confdir="%%ETCDIR%%"}
1149 if [ -f "${mysql_confdir}/my.cnf" ]; then
1150 : ${mysql_optfile="${mysql_confdir}/my.cnf"}
1151 elif [ -f "${mysql_dbdir}/my.cnf" ]; then
1152 : ${mysql_optfile="${mysql_dbdir}/my.cnf"}
1153 fi
1154 if [ ! -z "${mysql_optfile}" ]; then
1155 mysql_extra="--defaults-extra-file=${mysql_optfile}"
1156 fi
1157
1158 mysql_user="mysql"
1159 mysql_limits_args="-e -U ${mysql_user}"
1160 : ${hostname:=`/bin/hostname`}
1161 pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
1162 command="/usr/sbin/daemon"
1163 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%%"
1164 procname="%%PREFIX%%/libexec/mysqld"
1165 start_precmd="${name}_prestart"
1166 start_postcmd="${name}_poststart"
1167 mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
1168 mysql_install_db_args="${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --mysqld-file=${procname} --user=${mysql_user}"
1169
1170 mysql_create_auth_tables()
1171 {
1172         eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
1173 }
1174
1175 mysql_prestart()
1176 {
1177         if [ ! -d "${mysql_dbdir}/mysql/." ]; then
1178                 mysql_create_auth_tables || return 1
1179         fi
1180         if checkyesno mysql_limits; then
1181                 eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
1182         else
1183                 return 0
1184         fi
1185 }
1186
1187 mysql_poststart()
1188 {
1189         local timeout=15
1190         while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
1191                 timeout=$(( timeout - 1 ))
1192                 sleep 1
1193         done
1194         return 0
1195 }
1196
1197 run_rc_command "$1"
1198
1199
1200 [FILE:576:files/pkg-message-server.in]
1201 *****************************************************************************
1202
1203 Remember to run mysql_upgrade the first time you start the MySQL server
1204 after an upgrade from an earlier version.
1205
1206 Initial password for first time use of MySQL is saved in $HOME/.mysql_secret
1207 ie. when you want to use "mysql -u root -p" first you should see password
1208 in /root/.mysql_secret
1209
1210 MySQL57 has a default %%ETCDIR%%/my.cnf,
1211 remember to replace it wit your own
1212 or set `mysql_optfile="$YOUR_CNF_FILE` in rc.conf.
1213
1214 *****************************************************************************
1215
1216
1217 [FILE:28:files/special.mk]
1218 ETCDIR= ${PREFIX}/etc/mysql
1219