1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Fast SQL database server, derived from MySQL
8 HOMEPAGE= https://mariadb.org/
11 DOWNLOAD_GROUPS= main fmtsrc
12 SITES[main]= https://downloads.mariadb.com/MariaDB/mariadb-11.3.2/source/
13 SITES[fmtsrc]= GITHUB/fmtlib:fmt:8.0.1
14 DISTFILE[1]= mariadb-11.3.2.tar.gz:main
15 DISTFILE[2]= generated:fmtsrc
17 SPKGS[standard]= complete
24 OPTIONS_AVAILABLE= ROCKSDB
25 OPTIONS_STANDARD= ROCKSDB
27 BUILD_DEPENDS= bison:primary:standard
30 boost-libraries:dev:standard
32 BUILDRUN_DEPENDS= boost-libraries:primary:standard
33 snappy:primary:standard
34 msgpack:primary:standard
37 B_DEPS[netbsd]= openpam:dev:standard
38 BR_DEPS[netbsd]= openpam:primary:standard
42 USERGROUP_SPKG= server
44 USES= cmake zlib readline ncurses pcre2 shebangfix cpe
45 python:build perl:build pkgconfig iconv:translit
46 curl zstd xz lz4 lzo bz2 execinfo ssl:openssl30
47 GNOME_COMPONENTS= libxml2
49 DISTNAME= mariadb-11.3.2
52 LICENSE_TERMS= server:{{WRKDIR}}/TERMS
53 LICENSE_FILE= GPLv2:{{WRKSRC}}/COPYING
54 LICENSE_AWK= TERMS:"^\#include"
55 LICENSE_SOURCE= TERMS:{{WRKSRC}}/libmysqld/libmysqld.c
60 SHEBANG_FILES= scripts/*.sh
63 INSTALL_REQ_TOOLCHAIN= yes
64 PLIST_SUB= PORTNAME=mariadb11
65 AUTHSOCKET={{AUTHSOCKET}}
66 PAM={{PAM:U"@comment "}}
68 CMAKE_ARGS= -DCOMPILATION_COMMENT="Ravenports"
69 -DINSTALL_INCLUDEDIR=include/mysql
70 -DINSTALL_PLUGINDIR=lib/mysql/plugin
71 -DINSTALL_SHAREDIR=share
72 -DINSTALL_SUPPORTFILESDIR=share/mysql
73 -DINSTALL_MYSQLSHAREDIR=share/mysql
74 -DINSTALL_DOCREADMEDIR=share/doc/mariadb11
75 -DINSTALL_DOCDIR=share/doc/mariadb11
76 -DINSTALL_LIBDIR=lib/mysql
77 -DINSTALL_MANDIR=share/man
78 -DINSTALL_SCRIPTDIR=bin
79 -DINSTALL_MYSQLTESTDIR=
80 -DINSTALL_SQLBENCHDIR=
81 -DDEFAULT_CHARSET=utf8mb4
82 -DDEFAULT_COLLATION=utf8mb4_unicode_ci
83 -DDEFAULT_SYSCONFDIR="{{PREFIX}}/etc"
84 -DENABLED_LOCAL_INFILE=ON
88 -DWITH_EMBEDDED_SERVER=ON
89 -DWITH_EXTRA_CHARSETS=complex
94 -DWITH_READLINE=system
95 -DWITH_SSL="{{OPENSSLBASE}}"
100 VAR_OPSYS[freebsd]= CXXFLAGS=-DHAVE_POSIX_MEMALIGN=1
101 VAR_OPSYS[netbsd]= MAKEFILE_LINE=AUTHSOCKET="@comment "
104 [ROCKSDB].DESCRIPTION= Build RocksDB LSM Engine
105 [ROCKSDB].CMAKE_ARGS_OFF= -DPLUGIN_ROCKSDB=NO
106 [ROCKSDB].CMAKE_ARGS_ON= -DPLUGIN_ROCKSDB=DYNAMIC
109 ${RM} ${STAGEDIR}${STD_DOCDIR}/COPYING
110 ${MV} ${STAGEDIR}${PREFIX}/lib/mysql/pkgconfig/mariadb.pc \
111 ${STAGEDIR}${PREFIX}/lib/pkgconfig/
112 ${RMDIR} ${STAGEDIR}${PREFIX}/lib/mysql/pkgconfig
113 # strip plugins and libraries
114 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmariadb.so
115 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmariadbd.so
116 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/*/*.so
118 @flist=$$(${FIND} ${STAGEDIR}${PREFIX}/bin -type f -perm /111 -print) ;\
119 for f in $$flist; do \
120 (${FILE} $$f | ${GREP} -Fq ", not stripped")\
121 && ${ECHO_CMD} "Auto-stripping $$f"\
122 && ${STRIP_CMD} $$f || ${TRUE} ;\
124 # if pam config file exists, set it as a sample
125 # remove testsuite files too
126 if [ -f "${STAGEDIR}${PREFIX}/etc/mariadb/user_map.conf" ]; then \
127 (cd ${STAGEDIR}${PREFIX}/etc/mariadb && \
128 ${MV} user_map.conf user_map.conf.sample) ;\
129 ${RM} -r ${STAGEDIR}/suite ;\
133 ${REINPLACE_CMD} 's|/usr/bin/env python|${PYTHON_CMD}|' \
134 ${WRKSRC}/CMakeLists.txt
135 ${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' \
136 ${WRKSRC}/mysys/my_default.c
137 ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
138 ${WRKSRC}/scripts/mysql_config.sh \
139 ${WRKSRC}/scripts/CMakeLists.txt
142 ${REINPLACE_CMD} -Ee 's|(#define INCLUDE.*)"$$|\1 -I${PREFIX}/include"|' \
143 -e 's|(#define LIBS .*)"$$|\1 -L${PREFIX}/lib"|' \
144 ${BUILD_WRKSRC}/libmariadb/mariadb_config/mariadb_config.c
145 # Fix build failure in mbstream, see https://jira.mariadb.org/browse/MDEV-14072
146 ${REINPLACE_CMD} -e 's| ${PREFIX}/lib/liblz4.so\(.* ${PREFIX}/lib/liblz4.so.*\)|\1|' \
147 -e 's| ${PREFIX}/lib/liblzo2.so\(.* ${PREFIX}/lib/liblzo2.so.*\)|\1|' \
148 -e 's| ${PREFIX}/lib/libsnappy.so\(.* ${PREFIX}/lib/libsnappy.so\)|\1|' \
149 -e 's| -llzma\(.* -llzma\)|\1|;s| -lbz2\(.* -lbz2\)|\1|;' \
150 ${BUILD_WRKSRC}/extra/mariabackup/CMakeFiles/mbstream.dir/link.txt
152 [FILE:807:descriptions/desc.server]
153 MariaDB Server is one of the most popular database servers in the world.
154 It's made by the original developers of MySQL and guaranteed to stay open
155 source. Notable users include Wikipedia, WordPress.com and Google.
157 MariaDB turns data into structured information in a wide array of
158 applications, ranging from banking to websites. It is an enhanced, drop-in
159 replacement for MySQL. MariaDB is used because it is fast, scalable and
160 robust, with a rich ecosystem of storage engines, plugins and many other
161 tools make it very versatile for a wide variety of use cases.
163 MariaDB is developed as open source software and as a relational database
164 it provides an SQL interface for accessing data. The latest versions of
165 MariaDB also include GIS and JSON features.
167 This package contains the server and related files.
170 [FILE:267:descriptions/desc.client]
171 MariaDB Server is one of the most popular database servers in the world.
172 It's made by the original developers of MySQL and guaranteed to stay open
173 source. Notable users include Wikipedia, WordPress.com and Google.
175 This package contains the client and related files.
179 5570778f0a2c27af726c751cda1a943f3f8de96d11d107791be5b44a0ce3fb5c 107001231 mariadb-11.3.2.tar.gz
180 b06ca3130158c625848f3fb7418f235155a4d389b2abc3a6245fb01cb0eb1e01 805616 fmtlib-fmt-8.0.1.tar.gz
183 [FILE:4258:manifests/plist.server]
184 %%PAM%%@sample etc/mariadb/user_map.conf.sample
185 %%PAM%%lib/mysql/plugin/
188 %%PAM%%lib/mysql/plugin/auth_pam_tool_dir/auth_pam_tool
189 %%PAM%%lib/mysql/security/pam_user_map.so
195 %%ROCKSDB-ON%%lib/mysql/plugin/ha_rocksdb.so
207 mariadb-client-test-embedded
212 mariadb-fix-extensions
214 mariadb-secure-installation
216 mariadb-test-embedded
217 mariadb-tzinfo-to-sql
231 mysql_client_test_embedded
236 mysql_secure_installation
253 wsrep_sst_mariabackup
265 auth_gssapi_client.so
267 caching_sha2_password.so
268 debug_key_management.so
271 example_key_management.so
272 file_key_management.so
284 ha_test_sql_discovery.so
286 hashicorp_key_management.so
289 metadata_lock_info.so
291 password_reuse_check.so
301 query_response_time.so
303 simple_password_check.so
308 type_mysql_timestamp.so
315 share/groonga-normalizer-mysql/
324 maria_add_gis_sp_bootstrap.sql
326 mariadb_performance_tables.sql
327 mariadb_sys_schema.sql
328 mariadb_system_tables.sql
329 mariadb_system_tables_data.sql
330 mariadb_test_data_timezone.sql
337 share/mysql/bulgarian/errmsg.sys
338 share/mysql/charsets/
365 share/mysql/chinese/errmsg.sys
366 share/mysql/czech/errmsg.sys
367 share/mysql/danish/errmsg.sys
368 share/mysql/dutch/errmsg.sys
369 share/mysql/english/errmsg.sys
370 share/mysql/estonian/errmsg.sys
371 share/mysql/french/errmsg.sys
372 share/mysql/georgian/errmsg.sys
373 share/mysql/german/errmsg.sys
374 share/mysql/greek/errmsg.sys
375 share/mysql/hindi/errmsg.sys
376 share/mysql/hungarian/errmsg.sys
377 share/mysql/italian/errmsg.sys
378 share/mysql/japanese/errmsg.sys
379 share/mysql/korean/errmsg.sys
385 share/mysql/norwegian/errmsg.sys
386 share/mysql/norwegian-ny/errmsg.sys
387 share/mysql/policy/apparmor/
390 usr.sbin.mysqld.local
391 share/mysql/policy/selinux/
396 share/mysql/polish/errmsg.sys
397 share/mysql/portuguese/errmsg.sys
398 share/mysql/romanian/errmsg.sys
399 share/mysql/russian/errmsg.sys
400 share/mysql/serbian/errmsg.sys
401 share/mysql/slovak/errmsg.sys
402 share/mysql/spanish/errmsg.sys
403 share/mysql/swahili/errmsg.sys
404 share/mysql/swedish/errmsg.sys
405 share/mysql/ukrainian/errmsg.sys
408 [FILE:661:manifests/plist.client]
415 mariadb-convert-table-format
421 mariadb-setpermission
428 mysql_convert_table_format
450 mysql_clear_password.so
454 [FILE:7723:manifests/plist.dev]
474 include/mysql/mariadb/ma_io.h
479 include/mysql/server/
482 byte_order_generic_x86.h
483 byte_order_generic_x86_64.h
494 mariadb_capi_rename.h
527 include/mysql/server/mysql/
538 plugin_password_validation.h
542 service_encryption_scheme.h
544 service_kill_statement.h
548 service_my_print_error.h
549 service_my_snprintf.h
550 service_progress_report.h
555 service_thd_autoinc.h
556 service_thd_error_context.h
559 service_thd_specifics.h
560 service_thd_timezone.h
564 include/mysql/server/mysql/psi/
583 include/mysql/server/private/
612 event_db_repository.h
630 handle_connections_win.h
668 log_event_data_type.h
711 mysqld_default_groups.h
716 opt_rewrite_date_cmp.h
728 pfs_memory_provider.h
729 pfs_metadata_provider.h
730 pfs_socket_provider.h
732 pfs_statement_provider.h
734 pfs_thread_provider.h
735 pfs_transaction_provider.h
738 probes_mysql_nodtrace.h
764 semisync_master_ack_receiver.h
812 sql_expression_cache.h
813 sql_get_diagnostics.h
830 sql_partition_admin.h
857 sql_type_fixedbin_storage.h
884 threadpool_winsockets.h
893 welcome_copyright_notice.h
898 wsrep_allowlist_service.h
901 wsrep_client_service.h
903 wsrep_condition_variable.h
904 wsrep_event_service.h
905 wsrep_high_priority_service.h
913 wsrep_server_service.h
917 wsrep_storage_service.h
919 wsrep_trans_observer.h
925 include/mysql/server/private/atomic/
929 include/mysql/server/private/providers/
934 include/mysql/server/private/providers/lzo/lzo1x.h
948 share/aclocal/mysql.m4
951 [FILE:5307:manifests/plist.man]
952 %%ROCKSDB-ON%%share/man/man1/
954 myrocks_hotbackup.1.gz
963 galera_new_cluster.1.gz
972 mariadb-client-test-embedded.1.gz
973 mariadb-client-test.1.gz
975 mariadb-convert-table-format.1.gz
977 mariadb-dumpslow.1.gz
978 mariadb-embedded.1.gz
979 mariadb-find-rows.1.gz
980 mariadb-fix-extensions.1.gz
983 mariadb-install-db.1.gz
985 mariadb-secure-installation.1.gz
986 mariadb-service-convert.1.gz
987 mariadb-setpermission.1.gz
990 mariadb-test-embedded.1.gz
992 mariadb-tzinfo-to-sql.1.gz
998 mariadbd-safe-helper.1.gz
1002 my_print_defaults.1.gz
1003 my_safe_process.1.gz
1008 mysql-stress-test.pl.1.gz
1009 mysql-test-run.pl.1.gz
1012 mysql_client_test.1.gz
1013 mysql_client_test_embedded.1.gz
1015 mysql_convert_table_format.1.gz
1017 mysql_find_rows.1.gz
1018 mysql_fix_extensions.1.gz
1019 mysql_install_db.1.gz
1021 mysql_secure_installation.1.gz
1022 mysql_setpermission.1.gz
1023 mysql_tzinfo_to_sql.1.gz
1032 mysqld_safe_helper.1.gz
1040 mysqltest_embedded.1.gz
1044 resolve_stack_dump.1.gz
1046 wsrep_sst_common.1.gz
1047 wsrep_sst_mariabackup.1.gz
1048 wsrep_sst_mysqldump.1.gz
1049 wsrep_sst_rsync.1.gz
1050 wsrep_sst_rsync_wan.1.gz
1053 mariadb_connection.3.gz
1054 mariadb_dyncol_check.3.gz
1055 mariadb_dyncol_column_cmp_named.3.gz
1056 mariadb_dyncol_column_count.3.gz
1057 mariadb_dyncol_create_many_named.3.gz
1058 mariadb_dyncol_create_many_num.3.gz
1059 mariadb_dyncol_exists_named.3.gz
1060 mariadb_dyncol_exists_num.3.gz
1061 mariadb_dyncol_free.3.gz
1062 mariadb_dyncol_list_named.3.gz
1063 mariadb_dyncol_list_num.3.gz
1064 mariadb_dyncol_unpack.3.gz
1065 mariadb_dyncol_update_many_named.3.gz
1066 mariadb_dyncol_update_many_num.3.gz
1067 mariadb_get_infov.3.gz
1068 mariadb_reconnect.3.gz
1069 mariadb_rpl_close.3.gz
1070 mariadb_rpl_fetch.3.gz
1071 mariadb_rpl_get_optionsv.3.gz
1072 mariadb_rpl_open.3.gz
1073 mariadb_rpl_optionsv.3.gz
1074 mariadb_stmt_execute_direct.3.gz
1075 mariadb_stmt_fetch_fields.3.gz
1076 mysql_affected_rows.3.gz
1077 mysql_autocommit.3.gz
1078 mysql_change_user.3.gz
1081 mysql_data_seek.3.gz
1084 mysql_fetch_field.3.gz
1085 mysql_fetch_field_direct.3.gz
1086 mysql_fetch_fields.3.gz
1087 mysql_fetch_lengths.3.gz
1088 mysql_fetch_row.3.gz
1089 mysql_field_count.3.gz
1090 mysql_field_seek.3.gz
1091 mysql_field_tell.3.gz
1092 mysql_free_result.3.gz
1093 mysql_get_character_set_info.3.gz
1094 mysql_get_client_info.3.gz
1095 mysql_get_client_version.3.gz
1096 mysql_get_host_info.3.gz
1097 mysql_get_proto_info.3.gz
1098 mysql_get_server_info.3.gz
1099 mysql_get_server_version.3.gz
1100 mysql_get_socket.3.gz
1101 mysql_get_ssl_cipher.3.gz
1102 mysql_hex_string.3.gz
1106 mysql_more_results.3.gz
1107 mysql_next_result.3.gz
1108 mysql_num_fields.3.gz
1115 mysql_read_query_result.3.gz
1116 mysql_real_connect.3.gz
1117 mysql_real_escape_string.3.gz
1118 mysql_real_query.3.gz
1120 mysql_reset_connection.3.gz
1124 mysql_select_db.3.gz
1125 mysql_send_query.3.gz
1126 mysql_server_end.3.gz
1127 mysql_server_init.3.gz
1128 mysql_session_track_get_first.3.gz
1129 mysql_session_track_get_next.3.gz
1130 mysql_set_character_set.3.gz
1131 mysql_set_server_option.3.gz
1136 mysql_stmt_affected_rows.3.gz
1137 mysql_stmt_attr_get.3.gz
1138 mysql_stmt_attr_set.3.gz
1139 mysql_stmt_bind_param.3.gz
1140 mysql_stmt_bind_result.3.gz
1141 mysql_stmt_close.3.gz
1142 mysql_stmt_data_seek.3.gz
1143 mysql_stmt_errno.3.gz
1144 mysql_stmt_error.3.gz
1145 mysql_stmt_execute.3.gz
1146 mysql_stmt_fetch.3.gz
1147 mysql_stmt_fetch_column.3.gz
1148 mysql_stmt_field_count.3.gz
1149 mysql_stmt_free_result.3.gz
1150 mysql_stmt_init.3.gz
1151 mysql_stmt_insert_id.3.gz
1152 mysql_stmt_more_results.3.gz
1153 mysql_stmt_next_result.3.gz
1154 mysql_stmt_num_rows.3.gz
1155 mysql_stmt_param_count.3.gz
1156 mysql_stmt_param_metadata.3.gz
1157 mysql_stmt_prepare.3.gz
1158 mysql_stmt_reset.3.gz
1159 mysql_stmt_result_metadata.3.gz
1160 mysql_stmt_row_seek.3.gz
1161 mysql_stmt_row_tell.3.gz
1162 mysql_stmt_send_long_data.3.gz
1163 mysql_stmt_sqlstate.3.gz
1164 mysql_stmt_store_result.3.gz
1165 mysql_stmt_warning_count.3.gz
1166 mysql_store_result.3.gz
1167 mysql_thread_end.3.gz
1168 mysql_thread_id.3.gz
1169 mysql_thread_init.3.gz
1170 mysql_use_result.3.gz
1171 mysql_warning_count.3.gz
1177 [FILE:116:manifests/plist.docs]
1178 share/doc/%%PORTNAME%%/
1184 hashicorp_key_management.txt
1187 [FILE:572:patches/patch-client_mysql.cc]
1188 --- client/mysql.cc.orig 2023-11-19 07:41:55 UTC
1190 @@ -62,8 +62,8 @@ static char *server_version= NULL;
1193 #if defined(HAVE_CURSES_H) && defined(HAVE_TERM_H)
1194 -#include <curses.h>
1196 +#include <ncurses/curses.h>
1197 +#include <ncurses/term.h>
1199 #if defined(HAVE_TERMIOS_H)
1200 #include <termios.h>
1201 @@ -82,7 +82,7 @@ extern "C" {
1203 #undef SYSV // hack to avoid syntax error
1206 +#include <ncurses/term.h>
1209 #endif /* defined(HAVE_CURSES_H) && defined(HAVE_TERM_H) */
1212 [FILE:312:patches/patch-client_mysqltest.cc]
1213 --- client/mysqltest.cc.orig 2023-11-19 07:41:55 UTC
1214 +++ client/mysqltest.cc
1217 #include <violite.h>
1218 #define PCRE2_STATIC 1 /* Important on Windows */
1220 #include "pcre2posix.h" /* pcreposix regex library */
1221 #ifdef HAVE_SYS_WAIT_H
1222 #include <sys/wait.h>
1225 [FILE:500:patches/patch-cmake_install__layout.cmake]
1226 --- cmake/install_layout.cmake.orig 2023-11-19 07:41:55 UTC
1227 +++ cmake/install_layout.cmake
1228 @@ -126,8 +126,8 @@ SET(INSTALL_SUPPORTFILESDIR_STANDALONE
1229 SET(INSTALL_MYSQLDATADIR_STANDALONE "data")
1231 SET(INSTALL_UNIX_ADDRDIR_STANDALONE "/tmp/mysql.sock")
1232 -SET(INSTALL_PAMDIR_STANDALONE "share")
1233 -SET(INSTALL_PAMDATADIR_STANDALONE "share")
1234 +SET(INSTALL_PAMDIR_STANDALONE "lib/mysql/security")
1235 +SET(INSTALL_PAMDATADIR_STANDALONE "etc/mariadb")
1241 [FILE:471:patches/patch-cmake_libfmt.cmake]
1242 --- cmake/libfmt.cmake.orig 2023-11-19 07:41:55 UTC
1243 +++ cmake/libfmt.cmake
1244 @@ -15,8 +15,8 @@ MACRO(BUNDLE_LIBFMT)
1245 ExternalProject_Add(
1248 - URL "https://github.com/fmtlib/fmt/archive/refs/tags/8.0.1.zip"
1249 - URL_MD5 e77873199e897ca9f780479ad68e25b1
1250 + URL "file:///distfiles/fmtlib-fmt-8.0.1.tar.gz"
1251 + URL_MD5 7d5af964c6633ef90cd6a47be3afe6a0
1253 CONFIGURE_COMMAND ""
1257 [FILE:1968:patches/patch-cmake_readline.cmake]
1258 --- cmake/readline.cmake.orig 2023-11-19 07:41:55 UTC
1259 +++ cmake/readline.cmake
1260 @@ -52,40 +52,17 @@ MACRO (MYSQL_CHECK_MULTIBYTE)
1264 + SET(CURSES_NEED_NCURSES True)
1265 FIND_PACKAGE(Curses REQUIRED)
1266 MARK_AS_ADVANCED(CURSES_CURSES_H_PATH CURSES_FORM_LIBRARY CURSES_HAVE_CURSES_H)
1267 IF(NOT CURSES_FOUND)
1268 SET(ERRORMSG "Curses library not found. Please install appropriate package,
1269 remove CMakeCache.txt and rerun cmake.")
1270 - IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
1271 - SET(ERRORMSG ${ERRORMSG}
1272 - "On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivatives "
1273 - "it is ncurses-devel.")
1275 MESSAGE(FATAL_ERROR ${ERRORMSG})
1278 - IF(CURSES_HAVE_CURSES_H)
1279 - SET(HAVE_CURSES_H 1 CACHE INTERNAL "")
1281 - IF(CMAKE_SYSTEM_NAME MATCHES "HP")
1282 - # CMake uses full path to library /lib/libcurses.sl
1283 - # On Itanium, it results into architecture mismatch+
1284 - # the library is for PA-RISC
1285 - SET(CURSES_LIBRARY "curses" CACHE INTERNAL "" FORCE)
1287 + SET(HAVE_CURSES_H 1 CACHE INTERNAL "")
1289 - IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
1290 - # -Wl,--as-needed breaks linking with -lcurses, e.g on Fedora
1291 - # Lower-level libcurses calls are exposed by libtinfo
1292 - CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} tputs "" HAVE_TPUTS_IN_CURSES)
1293 - IF(NOT HAVE_TPUTS_IN_CURSES)
1294 - CHECK_LIBRARY_EXISTS(tinfo tputs "" HAVE_TPUTS_IN_TINFO)
1295 - IF(HAVE_TPUTS_IN_TINFO)
1296 - SET(CURSES_LIBRARY tinfo)
1300 CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} setupterm "" HAVE_SETUPTERM)
1301 CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} vidattr "" HAVE_VIDATTR)
1303 @@ -220,6 +197,8 @@ MACRO (MYSQL_CHECK_READLINE)
1304 SET(CMAKE_REQUIRED_LIBRARIES)
1305 SET(CMAKE_REQUIRED_INCLUDES)
1307 + SET(CMAKE_REQUIRED_INCLUDES ${CURSES_INCLUDE_DIR}/ncurses)
1308 CHECK_INCLUDE_FILES ("curses.h;term.h" HAVE_TERM_H)
1309 + SET(CMAKE_REQUIRED_INCLUDES)
1314 [FILE:349:patches/patch-extra_readline_CMakeLists.txt]
1315 --- extra/readline/CMakeLists.txt.orig 2023-11-19 07:41:55 UTC
1316 +++ extra/readline/CMakeLists.txt
1317 @@ -56,4 +56,4 @@ ADD_LIBRARY(readline STATIC
1319 # Declare dependency
1320 # so every executable that links with readline links with curses as well
1321 -TARGET_LINK_LIBRARIES(readline ${CURSES_LIBRARY})
1322 +TARGET_LINK_LIBRARIES(readline ${CURSES_LIBRARY} tinfo)
1325 [FILE:1625:patches/patch-mysys_my__default.c]
1326 --- mysys/my_default.c.orig 2023-11-19 07:41:57 UTC
1327 +++ mysys/my_default.c
1328 @@ -624,7 +624,7 @@ static int search_default_file_with_ext(
1331 if (!my_stat(name,&stat_info,MYF(0)))
1335 Ignore world-writable regular files (exceptions apply).
1336 This is mainly done to protect us to not read a file that may be
1337 @@ -662,6 +662,14 @@ static int search_default_file_with_ext(
1338 add_option(ctx, name))
1341 + if (strstr(name, "/etc") == name)
1344 + "error: Config file %s in invalid location, please move to or merge with %%PREFIX%%%s\n",
1349 while (mysql_file_fgets(buff, sizeof(buff) - 1, fp))
1352 @@ -929,7 +937,8 @@ void my_print_default_files(const char *
1353 if (name[0] == FN_HOMELIB) /* Add . to filenames in home */
1355 strxmov(end, conf_file, *ext, " ", NullS);
1356 - fputs(name, stdout);
1357 + if (strstr(name, "/etc") != name)
1358 + fputs(name, stdout);
1362 @@ -1056,13 +1065,10 @@ static const char **init_default_directo
1366 -#if defined(DEFAULT_SYSCONFDIR)
1367 - if (DEFAULT_SYSCONFDIR[0])
1368 - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
1370 errors += add_directory(alloc, "/etc/", dirs);
1371 errors += add_directory(alloc, "/etc/mysql/", dirs);
1372 -#endif /* DEFAULT_SYSCONFDIR */
1373 + errors += add_directory(alloc, "%%PREFIX%%/etc/", dirs);
1374 + errors += add_directory(alloc, "%%PREFIX%%/etc/mysql/", dirs);
1380 [FILE:1167:patches/patch-oqgraph-MDEV-15291]
1381 --- storage/oqgraph/oqgraph_judy.cc.orig 2023-11-19 07:41:57 UTC
1382 +++ storage/oqgraph/oqgraph_judy.cc
1385 Currently the only active code that can return error is:
1386 judy_bitset::reset()/J1U()
1387 - judy_bitset::setbit()/J1S()
1388 + judy_bitset::jsetbit()/J1S()
1390 In most cases errors are either about wrong parameters passed to Judy
1391 functions or internal structures corruption. These definitely deserve
1392 @@ -60,7 +60,7 @@ bool open_query::judy_bitset::test(size_
1396 -open_query::judy_bitset& open_query::judy_bitset::setbit(size_type n)
1397 +open_query::judy_bitset& open_query::judy_bitset::jsetbit(size_type n)
1401 --- storage/oqgraph/oqgraph_judy.h.orig 2023-11-19 07:41:57 UTC
1402 +++ storage/oqgraph/oqgraph_judy.h
1403 @@ -63,7 +63,7 @@ namespace open_query
1408 + return jsetbit(n);
1411 judy_bitset& set(const judy_bitset& src);
1412 @@ -114,7 +114,7 @@ namespace open_query
1414 mutable void* array;
1416 - judy_bitset& setbit(size_type n);
1417 + judy_bitset& jsetbit(size_type n);
1423 [FILE:413:patches/patch-scripts_CMakeLists.txt]
1424 --- scripts/CMakeLists.txt.orig 2023-11-19 07:41:57 UTC
1425 +++ scripts/CMakeLists.txt
1426 @@ -136,11 +136,7 @@ IF(CMAKE_GENERATOR MATCHES "Makefiles|Ni
1430 -IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
1431 - SET (PERL_PATH "/usr/local/bin/perl")
1433 - SET (PERL_PATH "/usr/bin/perl")
1435 +SET (PERL_PATH "%%LOCALBASE%%/bin/perl")
1438 # FIND_PROC and CHECK_PID are used by mysqld_safe
1441 [FILE:403:patches/patch-scripts_mysql__config.sh]
1442 --- scripts/mysql_config.sh.orig 2023-11-19 07:41:57 UTC
1443 +++ scripts/mysql_config.sh
1444 @@ -87,7 +87,9 @@ fi
1447 libs="-L$pkglibdir @RPATH_OPTION@ @LIBS_FOR_CLIENTS@"
1448 +libs="$libs -L%%LOCALBASE%%/lib "
1449 embedded_libs="-L$pkglibdir @RPATH_OPTION@ @EMB_LIBS_FOR_CLIENTS@"
1450 +embedded_libs="$embedded_libs -L%%LOCALBASE%%/lib "
1452 include="-I$pkgincludedir"
1453 if [ "$basedir" != "/usr" ]; then
1456 [FILE:445:patches/patch-scripts_mysqld__safe.sh]
1457 --- scripts/mysqld_safe.sh.orig 2023-11-19 07:41:57 UTC
1458 +++ scripts/mysqld_safe.sh
1459 @@ -566,11 +566,11 @@ fi
1461 if test -z "$MYSQL_HOME"
1463 - if test -r "$DATADIR/my.cnf"
1464 + if test -r "$DATADIR/etc/my.cnf"
1466 log_error "WARNING: Found $DATADIR/my.cnf
1467 The data directory is not a valid location for my.cnf, please move it to
1468 -$MY_BASEDIR_VERSION/my.cnf"
1469 +$MY_BASEDIR_VERSION/etc/my.cnf"
1471 MYSQL_HOME=$MY_BASEDIR_VERSION
1475 [FILE:432:patches/patch-scripts_wsrep__sst__mariabackup.sh]
1476 --- scripts/wsrep_sst_mariabackup.sh.orig 2023-11-19 07:41:57 UTC
1477 +++ scripts/wsrep_sst_mariabackup.sh
1478 @@ -799,7 +799,7 @@ recv_joiner()
1479 if [ $tmt -gt 0 ]; then
1480 if [ -n "$(commandex timeout)" ]; then
1482 - if [ "$OS" = 'FreeBSD' ]; then
1483 + if [ 1 eq 1 ]; then
1484 if timeout 2>&1 | grep -qw -F -- '-k'; then
1489 [FILE:250:patches/patch-sql_mysqld.cc]
1490 --- sql/mysqld.cc.orig 2023-11-19 07:41:57 UTC
1492 @@ -4759,8 +4759,9 @@ static void init_ssl()
1493 sql_print_warning("SSL error: %s",buf);
1498 ERR_remove_state(0);
1505 [FILE:270:patches/patch-storage_perfschema_pfs__global.cc]
1506 --- storage/perfschema/pfs_global.cc.orig 2023-11-19 07:41:57 UTC
1507 +++ storage/perfschema/pfs_global.cc
1509 #ifdef HAVE_NETINET_IN_H
1510 #include <netinet/in.h>
1512 +#ifdef __MidnightBSD__
1513 +#include <malloc_np.h>
1516 bool pfs_initialized= false;
1520 [FILE:486:patches/patch-storage_rocksdb_build__rocksdb.cmake]
1521 --- storage/rocksdb/build_rocksdb.cmake.orig 2023-11-19 07:41:57 UTC
1522 +++ storage/rocksdb/build_rocksdb.cmake
1523 @@ -90,7 +90,7 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Linux"
1524 add_definitions(-DOS_LINUX)
1525 elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS")
1526 add_definitions(-DOS_SOLARIS)
1527 -elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
1528 +elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|MidnightBSD")
1529 add_definitions(-DOS_FREEBSD)
1530 elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
1531 add_definitions(-DOS_NETBSD)
1534 [FILE:2090:patches/patch-storage_rocksdb_ha__rocksdb.cc]
1535 --- storage/rocksdb/ha_rocksdb.cc.orig 2023-11-19 07:41:57 UTC
1536 +++ storage/rocksdb/ha_rocksdb.cc
1537 @@ -266,7 +266,7 @@ Rdb_cf_manager cf_manager;
1538 Rdb_ddl_manager ddl_manager;
1539 Rdb_binlog_manager binlog_manager;
1541 -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__)
1542 +#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
1543 Rdb_io_watchdog *io_watchdog = nullptr;
1546 @@ -851,7 +851,7 @@ static void rocksdb_set_io_write_timeout
1547 void *const var_ptr MY_ATTRIBUTE((__unused__)), const void *const save) {
1548 DBUG_ASSERT(save != nullptr);
1549 DBUG_ASSERT(rdb != nullptr);
1550 -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__)
1551 +#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
1552 DBUG_ASSERT(io_watchdog != nullptr);
1555 @@ -860,7 +860,7 @@ static void rocksdb_set_io_write_timeout
1556 const uint32_t new_val = *static_cast<const uint32_t *>(save);
1558 rocksdb_io_write_timeout_secs = new_val;
1559 -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__)
1560 +#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
1561 io_watchdog->reset_timeout(rocksdb_io_write_timeout_secs);
1563 RDB_MUTEX_UNLOCK_CHECK(rdb_sysvars_mutex);
1564 @@ -5813,7 +5813,7 @@ static int rocksdb_init_func(void *const
1565 directories.push_back(myrocks::rocksdb_wal_dir);
1568 -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__)
1569 +#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
1570 io_watchdog = new Rdb_io_watchdog(std::move(directories));
1571 io_watchdog->reset_timeout(rocksdb_io_write_timeout_secs);
1573 @@ -5912,7 +5912,7 @@ static int rocksdb_done_func(void *const
1574 delete commit_latency_stats;
1575 commit_latency_stats = nullptr;
1577 -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__)
1578 +#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
1580 io_watchdog = nullptr;
1584 [FILE:249:patches/patch-storage_rocksdb_rdb__buff.h]
1585 --- storage/rocksdb/rdb_buff.h.orig 2023-11-19 07:41:57 UTC
1586 +++ storage/rocksdb/rdb_buff.h
1588 #define be16toh(x) OSSwapBigToHostInt16(x)
1591 +#include "port/port_posix.h"
1593 /* MySQL header files */
1594 #include "./my_global.h"
1598 [FILE:474:patches/patch-storage_rocksdb_rdb__io__watchdog.cc]
1599 If timer_t is an integer type, setting it to nullptr fails.
1601 --- storage/rocksdb/rdb_io_watchdog.cc.orig 2023-11-19 07:41:57 UTC
1602 +++ storage/rocksdb/rdb_io_watchdog.cc
1603 @@ -111,7 +111,11 @@ void Rdb_io_watchdog::io_check_callback(
1604 sql_print_warning("Deleting the watchdog I/O timer failed with %d.", errno);
1608 + m_io_check_watchdog_timer = 0;
1610 m_io_check_watchdog_timer = nullptr;
1613 RDB_MUTEX_UNLOCK_CHECK(m_reset_mutex);
1617 [FILE:1227:patches/patch-storage_rocksdb_rdb__io__watchdog.h]
1618 If timer_t is an integer type, setting it to nullptr fails.
1620 --- storage/rocksdb/rdb_io_watchdog.h.orig 2023-11-19 07:41:57 UTC
1621 +++ storage/rocksdb/rdb_io_watchdog.h
1623 /* MyRocks header files */
1624 #include "./rdb_utils.h"
1627 +#define NULLTIMER 0
1629 +#define NULLTIMER nullptr
1634 // Rdb_io_watchdog does not support Windows ATM.
1635 @@ -60,7 +66,7 @@ class Rdb_io_watchdog {
1636 ret = timer_delete(m_io_check_watchdog_timer);
1639 - m_io_check_watchdog_timer = nullptr;
1640 + m_io_check_watchdog_timer = NULLTIMER;
1644 @@ -68,7 +74,7 @@ class Rdb_io_watchdog {
1645 ret = timer_delete(m_io_check_timer);
1648 - m_io_check_timer = nullptr;
1649 + m_io_check_timer = NULLTIMER;
1653 @@ -93,8 +99,8 @@ class Rdb_io_watchdog {
1656 explicit Rdb_io_watchdog(std::vector<std::string> &&directories)
1657 - : m_io_check_timer(nullptr),
1658 - m_io_check_watchdog_timer(nullptr),
1659 + : m_io_check_timer(NULLTIMER),
1660 + m_io_check_watchdog_timer(NULLTIMER),
1661 m_io_in_progress(false),
1662 m_dirs_to_check(std::move(directories)),
1666 [FILE:494:patches/patch-storage_rocksdb_rocksdb_CMakeLists.txt]
1667 --- storage/rocksdb/rocksdb/CMakeLists.txt.orig 2023-11-19 07:41:59 UTC
1668 +++ storage/rocksdb/rocksdb/CMakeLists.txt
1669 @@ -413,7 +413,7 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Linux"
1670 add_definitions(-DOS_LINUX)
1671 elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS")
1672 add_definitions(-DOS_SOLARIS)
1673 -elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
1674 +elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|MidnightBSD")
1675 add_definitions(-DOS_FREEBSD)
1676 elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
1677 add_definitions(-DOS_NETBSD)
1680 [FILE:328:patches/patch-storage_rocksdb_rocksdb_port_jemalloc__helper.h]
1681 --- storage/rocksdb/rocksdb/port/jemalloc_helper.h.orig 2023-11-19 07:42:00 UTC
1682 +++ storage/rocksdb/rocksdb/port/jemalloc_helper.h
1684 #include <jemalloc/jemalloc.h>
1688 +#define JEMALLOC_USABLE_SIZE_CONST const
1691 #ifndef JEMALLOC_CXX_THROW
1692 #define JEMALLOC_CXX_THROW
1696 [FILE:492:patches/patch-storage_rocksdb_ut0counter.h]
1697 --- storage/rocksdb/ut0counter.h.orig 2023-11-19 07:41:57 UTC
1698 +++ storage/rocksdb/ut0counter.h
1699 @@ -30,6 +30,12 @@ Created 2012/04/12 by Sunny Bains
1702 #define get_curr_thread_id() GetCurrentThreadId()
1703 +#elif defined __FreeBSD__
1704 +#include <pthread_np.h>
1705 +#define get_curr_thread_id() pthread_getthreadid_np()
1706 +#elif defined __DragonFly__
1707 +#include <sys/syscall.h>
1708 +#define get_curr_thread_id() syscall(SYS_lwp_gettid)
1710 #define get_curr_thread_id() pthread_self()