# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= mariadb106 VERSION= 10.6.17 REVISION= 1 KEYWORDS= databases VARIANTS= standard SDESC[standard]= Fast SQL database server, derived from MySQL HOMEPAGE= https://mariadb.org/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= https://downloads.mariadb.com/MariaDB/mariadb-10.6.17/source/ DISTFILE[1]= mariadb-10.6.17.tar.gz:main DF_INDEX= 1 SPKGS[standard]= complete server client dev man docs OPTIONS_AVAILABLE= ROCKSDB OPTIONS_STANDARD= ROCKSDB BUILD_DEPENDS= bison:primary:standard msgpack:dev:standard snappy:dev:standard boost-libraries:dev:standard krb5:dev:standard BUILDRUN_DEPENDS= boost-libraries:primary:standard snappy:primary:standard msgpack:primary:standard judy:primary:standard krb5:primary:standard B_DEPS[netbsd]= openpam:dev:standard BR_DEPS[netbsd]= openpam:primary:standard USERS= mysql GROUPS= mysql USERGROUP_SPKG= server USES= cmake zlib readline ncurses pcre2 shebangfix cpe python:build perl:build pkgconfig iconv:translit curl zstd lz4 lzo bz2 execinfo ssl:openssl30 GNOME_COMPONENTS= libxml2 DISTNAME= mariadb-10.6.17 LICENSE= GPLv2:server LICENSE_TERMS= server:{{WRKDIR}}/TERMS LICENSE_FILE= GPLv2:{{WRKSRC}}/COPYING LICENSE_AWK= TERMS:"^\#include" LICENSE_SOURCE= TERMS:{{WRKSRC}}/libmysqld/libmysqld.c LICENSE_SCHEME= solo CPE_PRODUCT= mariadb CPE_VENDOR= mariadb FPC_EQUIVALENT= databases/mariadb106-server SHEBANG_FILES= scripts/*.sh INSTALL_REQ_TOOLCHAIN= yes PLIST_SUB= PORTNAME=mariadb106 AUTHSOCKET={{AUTHSOCKET}} PAM={{PAM:U"@comment "}} CMAKE_ARGS= -DCOMPILATION_COMMENT="Ravenports" -DINSTALL_INCLUDEDIR=include/mysql -DINSTALL_PLUGINDIR=lib/mysql/plugin -DINSTALL_SHAREDIR=share -DINSTALL_SUPPORTFILESDIR=share/mysql -DINSTALL_MYSQLSHAREDIR=share/mysql -DINSTALL_DOCREADMEDIR=share/doc/mariadb106 -DINSTALL_DOCDIR=share/doc/mariadb106 -DINSTALL_LIBDIR=lib/mysql -DINSTALL_MANDIR=share/man -DINSTALL_SCRIPTDIR=bin -DINSTALL_MYSQLTESTDIR= -DINSTALL_SQLBENCHDIR= -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_unicode_ci -DDEFAULT_SYSCONFDIR="{{PREFIX}}/etc" -DENABLED_LOCAL_INFILE=ON -DPLUGIN_EXAMPLE=NO -DPLUGIN_FEEDBACK=NO -DPLUGIN_TOKUDB=NO -DWITH_EMBEDDED_SERVER=ON -DWITH_EXTRA_CHARSETS=complex -DWITH_JEMALLOC=NO -DWITH_SYSTEMD=no -DWITH_LIBWRAP=OFF -DWITH_UNIT_TESTS=OFF -DWITH_READLINE=system -DWITH_SSL="{{OPENSSLBASE}}" -DWITH_ZLIB=system -DWITH_PCRE=system -Wno-dev VAR_OPSYS[freebsd]= CXXFLAGS=-DHAVE_POSIX_MEMALIGN=1 VAR_OPSYS[netbsd]= MAKEFILE_LINE=AUTHSOCKET="@comment " MAKEFILE_LINE=PAM= [ROCKSDB].DESCRIPTION= Build RocksDB LSM Engine [ROCKSDB].CMAKE_ARGS_OFF= -DPLUGIN_ROCKSDB=NO [ROCKSDB].CMAKE_ARGS_ON= -DPLUGIN_ROCKSDB=DYNAMIC post-patch: ${CP} ${WRKSRC}/cmake/os/FreeBSD.cmake \ ${WRKSRC}/cmake/os/DragonFly.cmake post-install: ${RM} ${STAGEDIR}${STD_DOCDIR}/COPYING ${MV} ${STAGEDIR}${PREFIX}/lib/mysql/pkgconfig/mariadb.pc \ ${STAGEDIR}${PREFIX}/lib/pkgconfig/ ${RMDIR} ${STAGEDIR}${PREFIX}/lib/mysql/pkgconfig # strip plugins and libraries ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmariadb.so ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmariadbd.so ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/*/*.so # strip binaries @flist=$$(${FIND} ${STAGEDIR}${PREFIX}/bin -type f -perm /111 -print) ;\ for f in $$flist; do \ (${FILE} $$f | ${GREP} -Fq ", not stripped")\ && ${ECHO_CMD} "Auto-stripping $$f"\ && ${STRIP_CMD} $$f || ${TRUE} ;\ done # if pam config file exists, set it as a sample # remove testsuite files too if [ -f "${STAGEDIR}${PREFIX}/etc/mariadb/user_map.conf" ]; then \ (cd ${STAGEDIR}${PREFIX}/etc/mariadb && \ ${MV} user_map.conf user_map.conf.sample) ;\ ${RM} -r ${STAGEDIR}/suite ;\ fi pre-configure: ${REINPLACE_CMD} 's|/usr/bin/env python|${PYTHON_CMD}|' \ ${WRKSRC}/CMakeLists.txt ${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' \ ${WRKSRC}/mysys/my_default.c ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/scripts/mysql_config.sh \ ${WRKSRC}/scripts/CMakeLists.txt post-configure: ${REINPLACE_CMD} -Ee 's|(#define INCLUDE.*)"$$|\1 -I${PREFIX}/include"|' \ -e 's|(#define LIBS .*)"$$|\1 -L${PREFIX}/lib"|' \ ${BUILD_WRKSRC}/libmariadb/mariadb_config/mariadb_config.c # Fix build failure in mbstream, see https://jira.mariadb.org/browse/MDEV-14072 ${REINPLACE_CMD} -e 's| ${PREFIX}/lib/liblz4.so\(.* ${PREFIX}/lib/liblz4.so.*\)|\1|' \ -e 's| ${PREFIX}/lib/liblzo2.so\(.* ${PREFIX}/lib/liblzo2.so.*\)|\1|' \ -e 's| ${PREFIX}/lib/libsnappy.so\(.* ${PREFIX}/lib/libsnappy.so\)|\1|' \ -e 's| -llzma\(.* -llzma\)|\1|;s| -lbz2\(.* -lbz2\)|\1|;' \ ${BUILD_WRKSRC}/extra/mariabackup/CMakeFiles/mbstream.dir/link.txt [FILE:807:descriptions/desc.server] MariaDB Server is one of the most popular database servers in the world. It's made by the original developers of MySQL and guaranteed to stay open source. Notable users include Wikipedia, WordPress.com and Google. MariaDB turns data into structured information in a wide array of applications, ranging from banking to websites. It is an enhanced, drop-in replacement for MySQL. MariaDB is used because it is fast, scalable and robust, with a rich ecosystem of storage engines, plugins and many other tools make it very versatile for a wide variety of use cases. MariaDB is developed as open source software and as a relational database it provides an SQL interface for accessing data. The latest versions of MariaDB also include GIS and JSON features. This package contains the server and related files. [FILE:267:descriptions/desc.client] MariaDB Server is one of the most popular database servers in the world. It's made by the original developers of MySQL and guaranteed to stay open source. Notable users include Wikipedia, WordPress.com and Google. This package contains the client and related files. [FILE:101:distinfo] fb41b0702059c046832d60138733acb73e4c0e5a1a0681061709d25591e4b086 99067793 mariadb-10.6.17.tar.gz [FILE:4021:manifests/plist.server] %%PAM%%@sample etc/mariadb/user_map.conf.sample %%PAM%%lib/mysql/plugin/ auth_pam.so auth_pam_v1.so %%PAM%%lib/mysql/plugin/auth_pam_tool_dir/auth_pam_tool %%PAM%%lib/mysql/security/pam_user_map.so %%ROCKSDB-ON%%bin/ mariadb-ldb myrocks_hotbackup mysql_ldb sst_dump %%ROCKSDB-ON%%lib/mysql/plugin/ha_rocksdb.so bin/ aria_chk aria_dump_log aria_ftdump aria_pack aria_read_log aria_s3_copy innochecksum mariabackup mariadb-backup mariadb-client-test mariadb-client-test-embedded mariadb-config mariadb-conv mariadb-dumpslow mariadb-embedded mariadb-fix-extensions mariadb-install-db mariadb-secure-installation mariadb-test mariadb-test-embedded mariadb-tzinfo-to-sql mariadb-upgrade mariadb-waitpid mariadbd mariadbd-multi mariadbd-safe mariadbd-safe-helper mbstream my_print_defaults myisam_ftdump myisamchk myisamlog myisampack mysql_client_test mysql_client_test_embedded mysql_embedded mysql_fix_extensions mysql_install_db mysql_plugin mysql_secure_installation mysql_tzinfo_to_sql mysql_upgrade mysql_waitpid mysqld mysqld_multi mysqld_safe mysqld_safe_helper mysqldumpslow mysqltest mysqltest_embedded perror resolve_stack_dump resolveip test-connect-t wsrep_sst_backup wsrep_sst_common wsrep_sst_mariabackup wsrep_sst_mysqldump wsrep_sst_rsync wsrep_sst_rsync_wan lib/mysql/ libmariadbd.so.19 libmysqld.so lib/mysql/plugin/ adt_null.so auth_0x0100.so auth_ed25519.so auth_gssapi.so auth_gssapi_client.so auth_test_plugin.so caching_sha2_password.so debug_key_management.so dialog_examples.so disks.so example_key_management.so file_key_management.so func_test.so ha_archive.so ha_blackhole.so ha_connect.so ha_federated.so ha_federatedx.so ha_mroonga.so ha_oqgraph.so ha_s3.so ha_sphinx.so ha_spider.so ha_test_sql_discovery.so handlersocket.so libdaemon_example.so locales.so metadata_lock_info.so mypluglib.so qa_auth_client.so qa_auth_interface.so qa_auth_server.so query_cache_info.so query_response_time.so server_audit.so simple_password_check.so sql_errlog.so test_sql_service.so test_versioning.so type_mysql_json.so type_mysql_timestamp.so type_test.so wsrep_info.so zstd.so share/groonga/ COPYING README.md share/groonga-normalizer-mysql/ README.md lgpl-2.0.txt share/mysql/ binary-configure errmsg-utf8.txt fill_help_tables.sql magic maria_add_gis_sp.sql maria_add_gis_sp_bootstrap.sql mysql-log-rotate mysql.server mysql_performance_tables.sql mysql_sys_schema.sql mysql_system_tables.sql mysql_system_tables_data.sql mysql_test_data_timezone.sql mysql_test_db.sql mysqld_multi.server wsrep.cnf wsrep_notify share/mysql/bulgarian/errmsg.sys share/mysql/charsets/ Index.xml README armscii8.xml ascii.xml cp1250.xml cp1251.xml cp1256.xml cp1257.xml cp850.xml cp852.xml cp866.xml dec8.xml geostd8.xml greek.xml hebrew.xml hp8.xml keybcs2.xml koi8r.xml koi8u.xml latin1.xml latin2.xml latin5.xml latin7.xml macce.xml macroman.xml swe7.xml share/mysql/chinese/errmsg.sys share/mysql/czech/errmsg.sys share/mysql/danish/errmsg.sys share/mysql/dutch/errmsg.sys share/mysql/english/errmsg.sys share/mysql/estonian/errmsg.sys share/mysql/french/errmsg.sys share/mysql/german/errmsg.sys share/mysql/greek/errmsg.sys share/mysql/hindi/errmsg.sys share/mysql/hungarian/errmsg.sys share/mysql/italian/errmsg.sys share/mysql/japanese/errmsg.sys share/mysql/korean/errmsg.sys share/mysql/mroonga/ AUTHORS COPYING install.sql uninstall.sql share/mysql/norwegian/errmsg.sys share/mysql/norwegian-ny/errmsg.sys share/mysql/policy/apparmor/ README usr.sbin.mysqld usr.sbin.mysqld.local share/mysql/policy/selinux/ README mariadb-server.fc mariadb-server.te mariadb.te share/mysql/polish/errmsg.sys share/mysql/portuguese/errmsg.sys share/mysql/romanian/errmsg.sys share/mysql/russian/errmsg.sys share/mysql/serbian/errmsg.sys share/mysql/slovak/errmsg.sys share/mysql/spanish/errmsg.sys share/mysql/swedish/errmsg.sys share/mysql/ukrainian/errmsg.sys [FILE:661:manifests/plist.client] bin/ mariadb mariadb-access mariadb-admin mariadb-binlog mariadb-check mariadb-convert-table-format mariadb-dump mariadb-find-rows mariadb-hotcopy mariadb-import mariadb-plugin mariadb-setpermission mariadb-show mariadb-slap mariadb_config msql2mysql mysql mysql_config mysql_convert_table_format mysql_find_rows mysql_setpermission mysqlaccess mysqladmin mysqlbinlog mysqlcheck mysqldump mysqlhotcopy mysqlimport mysqlshow mysqlslap mytop replace lib/mysql/ libmariadb.so.3 libmysqlclient.so libmysqlclient_r.so lib/mysql/plugin/ client_ed25519.so daemon_example.ini dialog.so mysql_clear_password.so sha256_password.so [FILE:7270:manifests/plist.dev] include/mysql/ errmsg.h ma_list.h ma_pvio.h ma_tls.h mariadb_com.h mariadb_ctype.h mariadb_dyncol.h mariadb_rpl.h mariadb_stmt.h mariadb_version.h my_alloca.h my_config.h my_global.h my_sys.h mysql.h mysql_com.h mysql_version.h mysqld_error.h include/mysql/mariadb/ma_io.h include/mysql/mysql/ client_plugin.h plugin_auth.h plugin_auth_common.h include/mysql/server/ big_endian.h byte_order_generic.h byte_order_generic_x86.h byte_order_generic_x86_64.h decimal.h errmsg.h handler_ername.h handler_state.h json_lib.h keycache.h little_endian.h m_ctype.h m_string.h ma_dyncol.h mariadb_capi_rename.h my_alloc.h my_alloca.h my_attribute.h my_byteorder.h my_compiler.h my_config.h my_dbug.h my_decimal_limits.h my_dir.h my_getopt.h my_global.h my_list.h my_net.h my_pthread.h my_sys.h my_valgrind.h my_xml.h mysql.h mysql_com.h mysql_com_server.h mysql_embed.h mysql_time.h mysql_version.h mysqld_ername.h mysqld_error.h pack.h sql_common.h sql_state.h sslopt-case.h sslopt-longopts.h sslopt-vars.h typelib.h include/mysql/server/mysql/ auth_dialog_client.h client_plugin.h plugin.h plugin_audit.h plugin_auth.h plugin_auth_common.h plugin_data_type.h plugin_encryption.h plugin_ftparser.h plugin_function.h plugin_password_validation.h service_base64.h service_debug_sync.h service_encryption.h service_encryption_scheme.h service_json.h service_kill_statement.h service_logger.h service_md5.h service_my_crypt.h service_my_print_error.h service_my_snprintf.h service_progress_report.h service_sha1.h service_sha2.h service_sql.h service_thd_alloc.h service_thd_autoinc.h service_thd_error_context.h service_thd_mdl.h service_thd_rnd.h service_thd_specifics.h service_thd_timezone.h service_thd_wait.h service_wsrep.h services.h include/mysql/server/mysql/psi/ mysql_file.h mysql_idle.h mysql_mdl.h mysql_memory.h mysql_ps.h mysql_socket.h mysql_sp.h mysql_stage.h mysql_statement.h mysql_table.h mysql_thread.h mysql_transaction.h psi.h psi_abi_v0.h psi_abi_v1.h psi_abi_v2.h psi_base.h psi_memory.h include/mysql/server/private/ aligned.h aria_backup.h assume_aligned.h authors.h backup.h bounded_queue.h client_settings.h compat56.h config.h contributors.h create_options.h create_tmp_table.h cset_narrowing.h custom_conf.h datadict.h ddl_log.h debug.h debug_sync.h derived_handler.h derror.h des_key_file.h discover.h dur_prop.h embedded_priv.h event_data_objects.h event_db_repository.h event_parse_data.h event_queue.h event_scheduler.h events.h field.h field_comp.h filesort.h filesort_utils.h ft_global.h gcalc_slicescan.h gcalc_tools.h grant.h group_by_handler.h gstream.h ha_handler_stats.h ha_partition.h ha_sequence.h handle_connections_win.h handler.h hash.h hash_filo.h heap.h hostname.h ilist.h init.h innodb_priv.h item.h item_cmpfunc.h item_create.h item_func.h item_geofunc.h item_jsonfunc.h item_row.h item_strfunc.h item_subselect.h item_sum.h item_timefunc.h item_vers.h item_windowfunc.h item_xmlfunc.h json_table.h key.h keycaches.h lex.h lex_string.h lex_symbol.h lf.h lock.h log.h log_event.h log_event_data_type.h log_event_old.h log_slow.h maria.h mariadb.h mdl.h mem_root_array.h message.h multi_range_read.h my_alarm.h my_apc.h my_atomic.h my_atomic_wrapper.h my_base.h my_bit.h my_bitmap.h my_check_opt.h my_compare.h my_counter.h my_cpu.h my_crypt.h my_decimal.h my_default.h my_handler_errors.h my_json_writer.h my_libwrap.h my_md5.h my_minidump.h my_nosys.h my_rdtsc.h my_rnd.h my_service_manager.h my_stack_alloc.h my_stacktrace.h my_time.h my_tree.h my_uctype.h my_user.h myisam.h myisamchk.h myisammrg.h myisampack.h mysqld.h mysqld_default_groups.h mysqld_suffix.h mysys_err.h opt_range.h opt_subselect.h opt_trace.h opt_trace_context.h parse_file.h partition_element.h partition_info.h password.h pfs_file_provider.h pfs_idle_provider.h pfs_memory_provider.h pfs_metadata_provider.h pfs_socket_provider.h pfs_stage_provider.h pfs_statement_provider.h pfs_table_provider.h pfs_thread_provider.h pfs_transaction_provider.h privilege.h probes_mysql.h probes_mysql_nodtrace.h procedure.h protocol.h proxy_protocol.h queues.h records.h repl_failsafe.h replication.h rijndael.h rowid_filter.h rpl_constants.h rpl_filter.h rpl_gtid.h rpl_injector.h rpl_mi.h rpl_parallel.h rpl_record.h rpl_record_old.h rpl_reporting.h rpl_rli.h rpl_tblmap.h rpl_utility.h scheduler.h scope.h select_handler.h semisync.h semisync_master.h semisync_master_ack_receiver.h semisync_slave.h service_versions.h session_tracker.h set_var.h slave.h socketpair.h source_revision.h sp.h sp_cache.h sp_head.h sp_pcontext.h sp_rcontext.h span.h spatial.h sql_acl.h sql_admin.h sql_alloc.h sql_alter.h sql_analyse.h sql_analyze_stmt.h sql_array.h sql_audit.h sql_base.h sql_basic_types.h sql_binlog.h sql_bitmap.h sql_bootstrap.h sql_cache.h sql_callback.h sql_class.h sql_cmd.h sql_connect.h sql_const.h sql_crypt.h sql_cte.h sql_cursor.h sql_db.h sql_debug.h sql_delete.h sql_derived.h sql_digest.h sql_digest_stream.h sql_do.h sql_error.h sql_explain.h sql_expression_cache.h sql_get_diagnostics.h sql_handler.h sql_help.h sql_hset.h sql_i_s.h sql_insert.h sql_join_cache.h sql_lex.h sql_lifo_buffer.h sql_limit.h sql_list.h sql_load.h sql_locale.h sql_manager.h sql_mode.h sql_parse.h sql_partition.h sql_partition_admin.h sql_plist.h sql_plugin.h sql_plugin_compat.h sql_prepare.h sql_priv.h sql_profile.h sql_reload.h sql_rename.h sql_repl.h sql_schema.h sql_select.h sql_sequence.h sql_servers.h sql_show.h sql_signal.h sql_sort.h sql_statistics.h sql_string.h sql_table.h sql_tablespace.h sql_test.h sql_time.h sql_trigger.h sql_truncate.h sql_tvc.h sql_type.h sql_type_fixedbin.h sql_type_fixedbin_storage.h sql_type_geom.h sql_type_int.h sql_type_json.h sql_type_real.h sql_type_string.h sql_udf.h sql_union.h sql_update.h sql_view.h sql_window.h ssl_compat.h strfunc.h structs.h sys_vars_shared.h t_ctype.h table.h table_cache.h thr_alarm.h thr_lock.h thr_malloc.h thr_timer.h thread_cache.h threadpool.h threadpool_generic.h threadpool_winsockets.h transaction.h tzfile.h tztime.h uniques.h unireg.h vers_string.h violite.h waiting_threads.h welcome_copyright_notice.h win_tzname_data.h winservice.h wqueue.h wsrep.h wsrep_applier.h wsrep_binlog.h wsrep_client_service.h wsrep_client_state.h wsrep_condition_variable.h wsrep_high_priority_service.h wsrep_mutex.h wsrep_mysqld.h wsrep_mysqld_c.h wsrep_on.h wsrep_priv.h wsrep_schema.h wsrep_server_service.h wsrep_server_state.h wsrep_sst.h wsrep_storage_service.h wsrep_thd.h wsrep_trans_observer.h wsrep_types.h wsrep_utils.h wsrep_var.h wsrep_xid.h xa.h include/mysql/server/private/atomic/ gcc_builtins.h generic-msvc.h solaris.h lib/mysql/ libmariadb.a libmariadb.so libmariadbclient.a libmariadbd.a libmariadbd.so libmysqlclient.a libmysqlclient_r.a libmysqld.a libmysqlservices.a lib/pkgconfig/ libmariadb.pc mariadb.pc share/aclocal/mysql.m4 [FILE:5277:manifests/plist.man] share/man/man1/ aria_chk.1.gz aria_dump_log.1.gz aria_ftdump.1.gz aria_pack.1.gz aria_read_log.1.gz aria_s3_copy.1.gz galera_new_cluster.1.gz galera_recovery.1.gz innochecksum.1.gz mariabackup.1.gz mariadb-access.1.gz mariadb-admin.1.gz mariadb-backup.1.gz mariadb-binlog.1.gz mariadb-check.1.gz mariadb-client-test-embedded.1.gz mariadb-client-test.1.gz mariadb-conv.1.gz mariadb-convert-table-format.1.gz mariadb-dump.1.gz mariadb-dumpslow.1.gz mariadb-embedded.1.gz mariadb-find-rows.1.gz mariadb-fix-extensions.1.gz mariadb-hotcopy.1.gz mariadb-import.1.gz mariadb-install-db.1.gz mariadb-ldb.1.gz mariadb-plugin.1.gz mariadb-secure-installation.1.gz mariadb-service-convert.1.gz mariadb-setpermission.1.gz mariadb-show.1.gz mariadb-slap.1.gz mariadb-test-embedded.1.gz mariadb-test.1.gz mariadb-tzinfo-to-sql.1.gz mariadb-upgrade.1.gz mariadb-waitpid.1.gz mariadb.1.gz mariadb_config.1.gz mariadbd-multi.1.gz mariadbd-safe-helper.1.gz mariadbd-safe.1.gz mbstream.1.gz msql2mysql.1.gz my_print_defaults.1.gz my_safe_process.1.gz myisam_ftdump.1.gz myisamchk.1.gz myisamlog.1.gz myisampack.1.gz myrocks_hotbackup.1.gz mysql-stress-test.pl.1.gz mysql-test-run.pl.1.gz mysql.1.gz mysql.server.1.gz mysql_client_test.1.gz mysql_client_test_embedded.1.gz mysql_config.1.gz mysql_convert_table_format.1.gz mysql_embedded.1.gz mysql_find_rows.1.gz mysql_fix_extensions.1.gz mysql_install_db.1.gz mysql_ldb.1.gz mysql_plugin.1.gz mysql_secure_installation.1.gz mysql_setpermission.1.gz mysql_tzinfo_to_sql.1.gz mysql_upgrade.1.gz mysql_waitpid.1.gz mysqlaccess.1.gz mysqladmin.1.gz mysqlbinlog.1.gz mysqlcheck.1.gz mysqld_multi.1.gz mysqld_safe.1.gz mysqld_safe_helper.1.gz mysqldump.1.gz mysqldumpslow.1.gz mysqlhotcopy.1.gz mysqlimport.1.gz mysqlshow.1.gz mysqlslap.1.gz mysqltest.1.gz mysqltest_embedded.1.gz mytop.1.gz perror.1.gz replace.1.gz resolve_stack_dump.1.gz resolveip.1.gz wsrep_sst_common.1.gz wsrep_sst_mariabackup.1.gz wsrep_sst_mysqldump.1.gz wsrep_sst_rsync.1.gz wsrep_sst_rsync_wan.1.gz share/man/man3/ mariadb_cancel.3.gz mariadb_connection.3.gz mariadb_dyncol_check.3.gz mariadb_dyncol_column_cmp_named.3.gz mariadb_dyncol_column_count.3.gz mariadb_dyncol_create_many_named.3.gz mariadb_dyncol_create_many_num.3.gz mariadb_dyncol_exists_named.3.gz mariadb_dyncol_exists_num.3.gz mariadb_dyncol_free.3.gz mariadb_dyncol_list_named.3.gz mariadb_dyncol_list_num.3.gz mariadb_dyncol_unpack.3.gz mariadb_dyncol_update_many_named.3.gz mariadb_dyncol_update_many_num.3.gz mariadb_get_infov.3.gz mariadb_reconnect.3.gz mariadb_rpl_close.3.gz mariadb_rpl_fetch.3.gz mariadb_rpl_get_optionsv.3.gz mariadb_rpl_open.3.gz mariadb_rpl_optionsv.3.gz mariadb_stmt_execute_direct.3.gz mariadb_stmt_fetch_fields.3.gz mysql_affected_rows.3.gz mysql_autocommit.3.gz mysql_change_user.3.gz mysql_close.3.gz mysql_commit.3.gz mysql_data_seek.3.gz mysql_errno.3.gz mysql_error.3.gz mysql_fetch_field.3.gz mysql_fetch_field_direct.3.gz mysql_fetch_fields.3.gz mysql_fetch_lengths.3.gz mysql_fetch_row.3.gz mysql_field_count.3.gz mysql_field_seek.3.gz mysql_field_tell.3.gz mysql_free_result.3.gz mysql_get_character_set_info.3.gz mysql_get_client_info.3.gz mysql_get_client_version.3.gz mysql_get_host_info.3.gz mysql_get_proto_info.3.gz mysql_get_server_info.3.gz mysql_get_server_version.3.gz mysql_get_socket.3.gz mysql_get_ssl_cipher.3.gz mysql_hex_string.3.gz mysql_info.3.gz mysql_init.3.gz mysql_kill.3.gz mysql_more_results.3.gz mysql_next_result.3.gz mysql_num_fields.3.gz mysql_num_rows.3.gz mysql_options.3.gz mysql_options4.3.gz mysql_optionsv.3.gz mysql_ping.3.gz mysql_query.3.gz mysql_read_query_result.3.gz mysql_real_connect.3.gz mysql_real_escape_string.3.gz mysql_real_query.3.gz mysql_refresh.3.gz mysql_reset_connection.3.gz mysql_rollback.3.gz mysql_row_seek.3.gz mysql_row_tell.3.gz mysql_select_db.3.gz mysql_send_query.3.gz mysql_server_end.3.gz mysql_server_init.3.gz mysql_session_track_get_first.3.gz mysql_session_track_get_next.3.gz mysql_set_character_set.3.gz mysql_set_server_option.3.gz mysql_shutdown.3.gz mysql_sqlstate.3.gz mysql_ssl_set.3.gz mysql_stat.3.gz mysql_stmt_affected_rows.3.gz mysql_stmt_attr_get.3.gz mysql_stmt_attr_set.3.gz mysql_stmt_bind_param.3.gz mysql_stmt_bind_result.3.gz mysql_stmt_close.3.gz mysql_stmt_data_seek.3.gz mysql_stmt_errno.3.gz mysql_stmt_error.3.gz mysql_stmt_execute.3.gz mysql_stmt_fetch.3.gz mysql_stmt_fetch_column.3.gz mysql_stmt_field_count.3.gz mysql_stmt_free_result.3.gz mysql_stmt_init.3.gz mysql_stmt_insert_id.3.gz mysql_stmt_more_results.3.gz mysql_stmt_next_result.3.gz mysql_stmt_num_rows.3.gz mysql_stmt_param_count.3.gz mysql_stmt_param_metadata.3.gz mysql_stmt_prepare.3.gz mysql_stmt_reset.3.gz mysql_stmt_result_metadata.3.gz mysql_stmt_row_seek.3.gz mysql_stmt_row_tell.3.gz mysql_stmt_send_long_data.3.gz mysql_stmt_sqlstate.3.gz mysql_stmt_store_result.3.gz mysql_stmt_warning_count.3.gz mysql_store_result.3.gz mysql_thread_end.3.gz mysql_thread_id.3.gz mysql_thread_init.3.gz mysql_use_result.3.gz mysql_warning_count.3.gz share/man/man8/ mariadbd.8.gz mysqld.8.gz [FILE:86:manifests/plist.docs] share/doc/%%PORTNAME%%/ CREDITS INSTALL-BINARY README-wsrep README.md THIRDPARTY [FILE:572:patches/patch-client_mysql.cc] --- client/mysql.cc.orig 2023-11-08 15:01:57 UTC +++ client/mysql.cc @@ -62,8 +62,8 @@ static char *server_version= NULL; extern "C" { #if defined(HAVE_CURSES_H) && defined(HAVE_TERM_H) -#include -#include +#include +#include #else #if defined(HAVE_TERMIOS_H) #include @@ -82,7 +82,7 @@ extern "C" { #endif #undef SYSV // hack to avoid syntax error #ifdef HAVE_TERM_H -#include +#include #endif #endif #endif /* defined(HAVE_CURSES_H) && defined(HAVE_TERM_H) */ [FILE:312:patches/patch-client_mysqltest.cc] --- client/mysqltest.cc.orig 2023-11-08 15:01:57 UTC +++ client/mysqltest.cc @@ -46,6 +46,7 @@ #include #include #define PCRE2_STATIC 1 /* Important on Windows */ +#include "pcre2.h" #include "pcre2posix.h" /* pcreposix regex library */ #ifdef HAVE_SYS_WAIT_H #include [FILE:500:patches/patch-cmake_install__layout.cmake] --- cmake/install_layout.cmake.orig 2023-11-08 15:01:57 UTC +++ cmake/install_layout.cmake @@ -126,8 +126,8 @@ SET(INSTALL_SUPPORTFILESDIR_STANDALONE SET(INSTALL_MYSQLDATADIR_STANDALONE "data") SET(INSTALL_UNIX_ADDRDIR_STANDALONE "/tmp/mysql.sock") -SET(INSTALL_PAMDIR_STANDALONE "share") -SET(INSTALL_PAMDATADIR_STANDALONE "share") +SET(INSTALL_PAMDIR_STANDALONE "lib/mysql/security") +SET(INSTALL_PAMDATADIR_STANDALONE "etc/mariadb") # # RPM layout # [FILE:1968:patches/patch-cmake_readline.cmake] --- cmake/readline.cmake.orig 2023-11-08 15:01:57 UTC +++ cmake/readline.cmake @@ -52,40 +52,17 @@ MACRO (MYSQL_CHECK_MULTIBYTE) ENDMACRO() MACRO (FIND_CURSES) + SET(CURSES_NEED_NCURSES True) FIND_PACKAGE(Curses REQUIRED) MARK_AS_ADVANCED(CURSES_CURSES_H_PATH CURSES_FORM_LIBRARY CURSES_HAVE_CURSES_H) IF(NOT CURSES_FOUND) SET(ERRORMSG "Curses library not found. Please install appropriate package, remove CMakeCache.txt and rerun cmake.") - IF(CMAKE_SYSTEM_NAME MATCHES "Linux") - SET(ERRORMSG ${ERRORMSG} - "On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivatives " - "it is ncurses-devel.") - ENDIF() MESSAGE(FATAL_ERROR ${ERRORMSG}) ENDIF() - IF(CURSES_HAVE_CURSES_H) - SET(HAVE_CURSES_H 1 CACHE INTERNAL "") - ENDIF() - IF(CMAKE_SYSTEM_NAME MATCHES "HP") - # CMake uses full path to library /lib/libcurses.sl - # On Itanium, it results into architecture mismatch+ - # the library is for PA-RISC - SET(CURSES_LIBRARY "curses" CACHE INTERNAL "" FORCE) - ENDIF() + SET(HAVE_CURSES_H 1 CACHE INTERNAL "") - IF(CMAKE_SYSTEM_NAME MATCHES "Linux") - # -Wl,--as-needed breaks linking with -lcurses, e.g on Fedora - # Lower-level libcurses calls are exposed by libtinfo - CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} tputs "" HAVE_TPUTS_IN_CURSES) - IF(NOT HAVE_TPUTS_IN_CURSES) - CHECK_LIBRARY_EXISTS(tinfo tputs "" HAVE_TPUTS_IN_TINFO) - IF(HAVE_TPUTS_IN_TINFO) - SET(CURSES_LIBRARY tinfo) - ENDIF() - ENDIF() - ENDIF() CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} setupterm "" HAVE_SETUPTERM) CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} vidattr "" HAVE_VIDATTR) ENDMACRO() @@ -220,6 +197,8 @@ MACRO (MYSQL_CHECK_READLINE) SET(CMAKE_REQUIRED_LIBRARIES) SET(CMAKE_REQUIRED_INCLUDES) ENDIF(NOT WIN32) + SET(CMAKE_REQUIRED_INCLUDES ${CURSES_INCLUDE_DIR}/ncurses) CHECK_INCLUDE_FILES ("curses.h;term.h" HAVE_TERM_H) + SET(CMAKE_REQUIRED_INCLUDES) ENDMACRO() [FILE:349:patches/patch-extra_readline_CMakeLists.txt] --- extra/readline/CMakeLists.txt.orig 2023-11-08 15:01:57 UTC +++ extra/readline/CMakeLists.txt @@ -56,4 +56,4 @@ ADD_LIBRARY(readline STATIC # Declare dependency # so every executable that links with readline links with curses as well -TARGET_LINK_LIBRARIES(readline ${CURSES_LIBRARY}) +TARGET_LINK_LIBRARIES(readline ${CURSES_LIBRARY} tinfo) [FILE:1625:patches/patch-mysys_my__default.c] --- mysys/my_default.c.orig 2023-11-08 15:01:59 UTC +++ mysys/my_default.c @@ -624,7 +624,7 @@ static int search_default_file_with_ext( { MY_STAT stat_info; if (!my_stat(name,&stat_info,MYF(0))) - return 1; + return 0; /* Ignore world-writable regular files (exceptions apply). This is mainly done to protect us to not read a file that may be @@ -662,6 +662,14 @@ static int search_default_file_with_ext( add_option(ctx, name)) goto err; + if (strstr(name, "/etc") == name) + { + fprintf(stderr, + "error: Config file %s in invalid location, please move to or merge with %%PREFIX%%%s\n", + name,name); + goto err; + } + while (mysql_file_fgets(buff, sizeof(buff) - 1, fp)) { line++; @@ -929,7 +937,8 @@ void my_print_default_files(const char * if (name[0] == FN_HOMELIB) /* Add . to filenames in home */ *end++= '.'; strxmov(end, conf_file, *ext, " ", NullS); - fputs(name, stdout); + if (strstr(name, "/etc") != name) + fputs(name, stdout); } } } @@ -1056,13 +1065,10 @@ static const char **init_default_directo #else -#if defined(DEFAULT_SYSCONFDIR) - if (DEFAULT_SYSCONFDIR[0]) - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); -#else errors += add_directory(alloc, "/etc/", dirs); errors += add_directory(alloc, "/etc/mysql/", dirs); -#endif /* DEFAULT_SYSCONFDIR */ + errors += add_directory(alloc, "%%PREFIX%%/etc/", dirs); + errors += add_directory(alloc, "%%PREFIX%%/etc/mysql/", dirs); #endif [FILE:1167:patches/patch-oqgraph-MDEV-15291] --- storage/oqgraph/oqgraph_judy.cc.orig 2023-11-08 15:02:00 UTC +++ storage/oqgraph/oqgraph_judy.cc @@ -27,7 +27,7 @@ /* Currently the only active code that can return error is: judy_bitset::reset()/J1U() - judy_bitset::setbit()/J1S() + judy_bitset::jsetbit()/J1S() In most cases errors are either about wrong parameters passed to Judy functions or internal structures corruption. These definitely deserve @@ -60,7 +60,7 @@ bool open_query::judy_bitset::test(size_ return rc == 1; } -open_query::judy_bitset& open_query::judy_bitset::setbit(size_type n) +open_query::judy_bitset& open_query::judy_bitset::jsetbit(size_type n) { int rc; J1S(rc, array, n); --- storage/oqgraph/oqgraph_judy.h.orig 2023-11-08 15:02:00 UTC +++ storage/oqgraph/oqgraph_judy.h @@ -63,7 +63,7 @@ namespace open_query if (!val) return reset(n); else - return setbit(n); + return jsetbit(n); } judy_bitset& set(const judy_bitset& src); @@ -114,7 +114,7 @@ namespace open_query private: mutable void* array; - judy_bitset& setbit(size_type n); + judy_bitset& jsetbit(size_type n); }; } [FILE:413:patches/patch-scripts_CMakeLists.txt] --- scripts/CMakeLists.txt.orig 2023-11-08 15:01:59 UTC +++ scripts/CMakeLists.txt @@ -136,11 +136,7 @@ IF(CMAKE_GENERATOR MATCHES "Makefiles|Ni ENDFOREACH() ENDIF() -IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") - SET (PERL_PATH "/usr/local/bin/perl") -ELSE() - SET (PERL_PATH "/usr/bin/perl") -ENDIF() +SET (PERL_PATH "%%LOCALBASE%%/bin/perl") IF(UNIX) # FIND_PROC and CHECK_PID are used by mysqld_safe [FILE:403:patches/patch-scripts_mysql__config.sh] --- scripts/mysql_config.sh.orig 2023-11-08 15:01:59 UTC +++ scripts/mysql_config.sh @@ -87,7 +87,9 @@ fi # Create options libs="-L$pkglibdir @RPATH_OPTION@ @LIBS_FOR_CLIENTS@" +libs="$libs -L%%LOCALBASE%%/lib " embedded_libs="-L$pkglibdir @RPATH_OPTION@ @EMB_LIBS_FOR_CLIENTS@" +embedded_libs="$embedded_libs -L%%LOCALBASE%%/lib " include="-I$pkgincludedir" if [ "$basedir" != "/usr" ]; then [FILE:445:patches/patch-scripts_mysqld__safe.sh] --- scripts/mysqld_safe.sh.orig 2023-11-08 15:01:59 UTC +++ scripts/mysqld_safe.sh @@ -560,11 +560,11 @@ fi if test -z "$MYSQL_HOME" then - if test -r "$DATADIR/my.cnf" + if test -r "$DATADIR/etc/my.cnf" then log_error "WARNING: Found $DATADIR/my.cnf The data directory is not a valid location for my.cnf, please move it to -$MY_BASEDIR_VERSION/my.cnf" +$MY_BASEDIR_VERSION/etc/my.cnf" fi MYSQL_HOME=$MY_BASEDIR_VERSION fi [FILE:432:patches/patch-scripts_wsrep__sst__mariabackup.sh] --- scripts/wsrep_sst_mariabackup.sh.orig 2023-11-08 15:01:59 UTC +++ scripts/wsrep_sst_mariabackup.sh @@ -799,7 +799,7 @@ recv_joiner() if [ $tmt -gt 0 ]; then if [ -n "$(commandex timeout)" ]; then local koption=0 - if [ "$OS" = 'FreeBSD' ]; then + if [ 1 eq 1 ]; then if timeout 2>&1 | grep -qw -F -- '-k'; then koption=1 fi [FILE:250:patches/patch-sql_mysqld.cc] --- sql/mysqld.cc.orig 2023-11-08 15:01:59 UTC +++ sql/mysqld.cc @@ -4625,8 +4625,9 @@ static void init_ssl() sql_print_warning("SSL error: %s",buf); } } - else + else { ERR_remove_state(0); + } } else { [FILE:1559:patches/patch-storage_innobase_lz4.cmake] --- storage/innobase/lz4.cmake.orig 2023-11-08 15:02:00 UTC +++ storage/innobase/lz4.cmake @@ -17,9 +17,16 @@ SET(WITH_INNODB_LZ4 AUTO CACHE STRING MACRO (MYSQL_CHECK_LZ4) IF (WITH_INNODB_LZ4 STREQUAL "ON" OR WITH_INNODB_LZ4 STREQUAL "AUTO") - CHECK_INCLUDE_FILES(lz4.h HAVE_LZ4_H) - CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_limitedOutput "" HAVE_LZ4_SHARED_LIB) - CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_default "" HAVE_LZ4_COMPRESS_DEFAULT) + find_path(LZ4_INCLUDE_DIR NAMES lz4.h) + find_library(LZ4_LIBRARY NAMES lz4) + IF (LZ4_LIBRARY) + get_filename_component(LZ4_LIBDIR ${LZ4_LIBRARY} DIRECTORY) +#MESSAGE(STATUS "LZ4_INCLUDE_DIR=${LZ4_INCLUDE_DIR} LZ4_LIBRARY=${LZ4_LIBRARY} LZ4_LIBDIR=${LZ4_LIBDIR}") + IF (LZ4_INCLUDE_DIR) + SET(HAVE_LZ4_H YES) + ENDIF() + CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_limitedOutput ${LZ4_LIBDIR} HAVE_LZ4_SHARED_LIB) + CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_default ${LZ4_LIBDIR} HAVE_LZ4_COMPRESS_DEFAULT) IF (HAVE_LZ4_SHARED_LIB AND HAVE_LZ4_H) SET(HAVE_INNODB_LZ4 TRUE) @@ -27,12 +34,13 @@ MACRO (MYSQL_CHECK_LZ4) IF (HAVE_LZ4_COMPRESS_DEFAULT) ADD_DEFINITIONS(-DHAVE_LZ4_COMPRESS_DEFAULT=1) ENDIF() - LINK_LIBRARIES(lz4) + LINK_LIBRARIES(${LZ4_LIBRARY}) ELSE() IF (WITH_INNODB_LZ4 STREQUAL "ON") MESSAGE(FATAL_ERROR "Required lz4 library is not found") ENDIF() ENDIF() + ENDIF() ENDIF() ADD_FEATURE_INFO(INNODB_LZ4 HAVE_INNODB_LZ4 "LZ4 compression in the InnoDB storage engine") ENDMACRO() [FILE:968:patches/patch-storage_innobase_lzo.cmake] --- storage/innobase/lzo.cmake.orig 2023-11-08 15:02:00 UTC +++ storage/innobase/lzo.cmake @@ -17,13 +17,17 @@ SET(WITH_INNODB_LZO AUTO CACHE STRING MACRO (MYSQL_CHECK_LZO) IF (WITH_INNODB_LZO STREQUAL "ON" OR WITH_INNODB_LZO STREQUAL "AUTO") - CHECK_INCLUDE_FILES(lzo/lzo1x.h HAVE_LZO_H) - CHECK_LIBRARY_EXISTS(lzo2 lzo1x_1_compress "" HAVE_LZO_SHARED_LIB) - + find_path(LZO_INCLUDE NAMES lzo/lzo1x.h) + find_library(LZO_LIBRARY NAMES lzo2) + get_filename_component(LZO_LIBDIR ${LZO_LIBRARY} DIRECTORY) + IF (LZO_INCLUDE) + SET(HAVE_LZO_H 1) + ENDIF() + CHECK_LIBRARY_EXISTS(lzo2 lzo1x_1_compress ${LZO_LIBDIR} HAVE_LZO_SHARED_LIB) IF(HAVE_LZO_SHARED_LIB AND HAVE_LZO_H) SET(HAVE_INNODB_LZO TRUE) ADD_DEFINITIONS(-DHAVE_LZO=1) - LINK_LIBRARIES(lzo2) + LINK_LIBRARIES(${LZO_LIBRARY}) ELSE() IF (WITH_INNODB_LZO STREQUAL "ON") MESSAGE(FATAL_ERROR "Required lzo library is not found") [FILE:270:patches/patch-storage_perfschema_pfs__global.cc] --- storage/perfschema/pfs_global.cc.orig 2023-11-08 15:02:00 UTC +++ storage/perfschema/pfs_global.cc @@ -49,6 +49,9 @@ #ifdef HAVE_NETINET_IN_H #include #endif +#ifdef __MidnightBSD__ +#include +#endif bool pfs_initialized= false; [FILE:486:patches/patch-storage_rocksdb_build__rocksdb.cmake] --- storage/rocksdb/build_rocksdb.cmake.orig 2023-11-08 15:02:00 UTC +++ storage/rocksdb/build_rocksdb.cmake @@ -90,7 +90,7 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Linux" add_definitions(-DOS_LINUX) elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS") add_definitions(-DOS_SOLARIS) -elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") +elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|MidnightBSD") add_definitions(-DOS_FREEBSD) elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD") add_definitions(-DOS_NETBSD) [FILE:2105:patches/patch-storage_rocksdb_ha__rocksdb.cc] --- storage/rocksdb/ha_rocksdb.cc.orig 2023-11-08 15:02:00 UTC +++ storage/rocksdb/ha_rocksdb.cc @@ -266,7 +266,7 @@ Rdb_cf_manager cf_manager; Rdb_ddl_manager ddl_manager; Rdb_binlog_manager binlog_manager; -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) Rdb_io_watchdog *io_watchdog = nullptr; #endif /** @@ -850,7 +850,7 @@ static void rocksdb_set_io_write_timeout void *const var_ptr MY_ATTRIBUTE((__unused__)), const void *const save) { DBUG_ASSERT(save != nullptr); DBUG_ASSERT(rdb != nullptr); -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) DBUG_ASSERT(io_watchdog != nullptr); #endif @@ -859,7 +859,7 @@ static void rocksdb_set_io_write_timeout const uint32_t new_val = *static_cast(save); rocksdb_io_write_timeout_secs = new_val; -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) io_watchdog->reset_timeout(rocksdb_io_write_timeout_secs); #endif RDB_MUTEX_UNLOCK_CHECK(rdb_sysvars_mutex); @@ -5798,7 +5798,7 @@ static int rocksdb_init_func(void *const directories.push_back(myrocks::rocksdb_wal_dir); } -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) io_watchdog = new Rdb_io_watchdog(std::move(directories)); io_watchdog->reset_timeout(rocksdb_io_write_timeout_secs); #endif @@ -5905,7 +5905,7 @@ static int rocksdb_done_func(void *const delete commit_latency_stats; commit_latency_stats = nullptr; -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__) && !defined(__OpenBSD__) delete io_watchdog; io_watchdog = nullptr; #endif [FILE:249:patches/patch-storage_rocksdb_rdb__buff.h] --- storage/rocksdb/rdb_buff.h.orig 2023-11-08 15:02:00 UTC +++ storage/rocksdb/rdb_buff.h @@ -40,6 +40,8 @@ #define be16toh(x) OSSwapBigToHostInt16(x) #endif +#include "port/port_posix.h" + /* MySQL header files */ #include "./my_global.h" [FILE:474:patches/patch-storage_rocksdb_rdb__io__watchdog.cc] If timer_t is an integer type, setting it to nullptr fails. --- storage/rocksdb/rdb_io_watchdog.cc.orig 2023-11-08 15:02:00 UTC +++ storage/rocksdb/rdb_io_watchdog.cc @@ -111,7 +111,11 @@ void Rdb_io_watchdog::io_check_callback( sql_print_warning("Deleting the watchdog I/O timer failed with %d.", errno); } +#ifdef __NetBSD__ + m_io_check_watchdog_timer = 0; +#else m_io_check_watchdog_timer = nullptr; +#endif RDB_MUTEX_UNLOCK_CHECK(m_reset_mutex); } [FILE:1227:patches/patch-storage_rocksdb_rdb__io__watchdog.h] If timer_t is an integer type, setting it to nullptr fails. --- storage/rocksdb/rdb_io_watchdog.h.orig 2023-11-08 15:02:00 UTC +++ storage/rocksdb/rdb_io_watchdog.h @@ -32,6 +32,12 @@ /* MyRocks header files */ #include "./rdb_utils.h" +#ifdef __NetBSD__ +#define NULLTIMER 0 +#else +#define NULLTIMER nullptr +#endif + namespace myrocks { // Rdb_io_watchdog does not support Windows ATM. @@ -60,7 +66,7 @@ class Rdb_io_watchdog { ret = timer_delete(m_io_check_watchdog_timer); if (!ret) { - m_io_check_watchdog_timer = nullptr; + m_io_check_watchdog_timer = NULLTIMER; } } @@ -68,7 +74,7 @@ class Rdb_io_watchdog { ret = timer_delete(m_io_check_timer); if (!ret) { - m_io_check_timer = nullptr; + m_io_check_timer = NULLTIMER; } } @@ -93,8 +99,8 @@ class Rdb_io_watchdog { public: explicit Rdb_io_watchdog(std::vector &&directories) - : m_io_check_timer(nullptr), - m_io_check_watchdog_timer(nullptr), + : m_io_check_timer(NULLTIMER), + m_io_check_watchdog_timer(NULLTIMER), m_io_in_progress(false), m_dirs_to_check(std::move(directories)), m_buf(nullptr) { [FILE:494:patches/patch-storage_rocksdb_rocksdb_CMakeLists.txt] --- storage/rocksdb/rocksdb/CMakeLists.txt.orig 2023-11-08 15:02:03 UTC +++ storage/rocksdb/rocksdb/CMakeLists.txt @@ -413,7 +413,7 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Linux" add_definitions(-DOS_LINUX) elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS") add_definitions(-DOS_SOLARIS) -elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") +elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|MidnightBSD") add_definitions(-DOS_FREEBSD) elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD") add_definitions(-DOS_NETBSD) [FILE:328:patches/patch-storage_rocksdb_rocksdb_port_jemalloc__helper.h] --- storage/rocksdb/rocksdb/port/jemalloc_helper.h.orig 2023-11-08 15:02:03 UTC +++ storage/rocksdb/rocksdb/port/jemalloc_helper.h @@ -26,6 +26,10 @@ #include #endif +#ifdef __FreeBSD__ +#define JEMALLOC_USABLE_SIZE_CONST const +#endif + #ifndef JEMALLOC_CXX_THROW #define JEMALLOC_CXX_THROW #endif [FILE:492:patches/patch-storage_rocksdb_ut0counter.h] --- storage/rocksdb/ut0counter.h.orig 2023-11-08 15:02:00 UTC +++ storage/rocksdb/ut0counter.h @@ -30,6 +30,12 @@ Created 2012/04/12 by Sunny Bains #ifdef _WIN32 #define get_curr_thread_id() GetCurrentThreadId() +#elif defined __FreeBSD__ +#include +#define get_curr_thread_id() pthread_getthreadid_np() +#elif defined __DragonFly__ +#include +#define get_curr_thread_id() syscall(SYS_lwp_gettid) #else #define get_curr_thread_id() pthread_self() #endif