1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-28 05:29:48 +00:00

databases/mariadb114-server: Fix build error for Hashi plugin

Reported by:	Gergely Czuczy
This commit is contained in:
Bernard Spil 2024-08-20 18:59:28 +02:00
parent d24e76ca72
commit 31581cbd77
13 changed files with 1 additions and 440 deletions

View File

@ -183,7 +183,7 @@ CONNECT_EXTRA_USE= gnome=libxml2
CONNECT_EXTRA_USES= gnome
CONNECT_EXTRA_CMAKE_BOOL= CONNECT_WITH_LIBXML2 CONNECT_WITH_ODBC
GSSAPI_NONE_VARS= disabled_plugins+=AUTH_GSSAPI
HASHICORP_VAULT_CMAKE_OFF= -DPLUGIN_HASHICORP_KEY_MANAGEMENT=OFF
HASHICORP_VAULT_CMAKE_OFF= -DPLUGIN_HASHICORP_KEY_MANAGEMENT=NO
HASHICORP_VAULT_LIB_DEPENDS= libcurl.so:ftp/curl
LZO_CMAKE_ON= -DWITH_INNODB_LZO=ON
LZO_CMAKE_OFF= -DWITH_INNODB_LZO=OFF

View File

@ -1,52 +0,0 @@
# Options specific to client applications, see
# https://mariadb.com/kb/en/configuring-mariadb-with-option-files/#client-option-groups
# Options specific to all client programs
[client]
# port = 3306 # inherited from %%ETCDIR%%/my.cnf
# socket = %%MARIADB_RUNDIR%%/%%MARIADB_SOCK%% # inherited from %%ETCDIR%%/my.cnf
# Options specific to MariaDB client programs
[client-mariadb]
#
## Options for specific client Tools
#
# Options read by `mysql`
# Renamed from [mysql] starting with MariaDB 10.4.6.
[mariadb-client] Options read by mysql. Available starting with MariaDB 10.4.6.
prompt = \u@\h [\d]>\_
no_auto_rehash
# Options read by `mysqldump`
# Renamed from [mysqldump] starting with MariaDB 10.4.6.
[mariadb-dump]
max_allowed_packet = 256M
quote_names
quick
# Options read by `mysqladmin`
# Renamed from [mysqladmin] starting with MariaDB 10.4.6.
[mariadb-admin]
# Options read by `mysqlbinlog`
# Renamed from [mysqlbinlog] starting with MariaDB 10.4.6.
[mariadb-binlog]
# Options read by `mysqlcheck`
# Renamed from [mysqlcheck] starting with MariaDB 10.4.6.
[mariadb-check]
# Options read by `mysqlimport`
# Renamed from [mysqlimport] starting with MariaDB 10.4.6.
[mariadb-import]
# Options read by `mysqlshow`
# Renamed from [mysqlshow] starting with MariaDB 10.4.6.
[mariadb-show]
# Options read by `mysqlslap`
# Renamed from [mysqlslap] starting with MariaDB 10.4.6.
[mariadb-slap]

View File

@ -1,13 +0,0 @@
#
# This group is read both by the client and the server
# use it for options that affect everything, see
# https://mariadb.com/kb/en/configuring-mariadb-with-option-files/#option-groups
#
[client-server]
port = 3306
socket = %%MARIADB_RUNDIR%%/%%MARIADB_SOCK%%
#
# include *.cnf from the config directory
#
!includedir %%ETCDIR%%/conf.d/

View File

@ -1,149 +0,0 @@
#!/bin/sh
# PROVIDE: mysql
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable mysql:
# mysql_(instance_)?enable (bool): Set to "NO" by default.
# Set it to "YES" to enable MySQL.
%%LEGACY_LIMITS%%# mysql_(instance_)?limits (bool): Set to "NO" by default.
%%LEGACY_LIMITS%%# Set it to yes to run `limits -e -U mysql`
%%LEGACY_LIMITS%%# just before mysql starts.
# mysql_(instance_)?dbdir (str): Default to "%%MARIADB_DBDIR%%"
# Base database directory.
# mysql_(instance_)?args (str): Custom additional arguments to be passed
# to mysqld_safe (default empty).
# mysql_(instance_)?pidfile (str): Custom PID file path and name.
# Default to "${mysql_dbdir}/${hostname}.pid".
# mysql_(instance_)?user (str): User to run mysqld as
# Default to "%%MARIADB_USER%%" created by the port
# mysql_(instance_)?optfile (str): Server-specific option file.
# Default to "${mysql_dbdir}/my.cnf".
# mysql_(instance)?rundir (str): Default to "%%MARIADB_RUNDIR%%"
# mysql_instances (str): Set to "" by default.
# If defined, list of instances to enable
. /etc/rc.subr
name="mysql"
rcvar=mysql_enable
load_rc_config $name
: ${mysql_enable="NO"}
%%LEGACY_LIMITS%%: ${mysql_limits="NO"}
: ${mysql_user="%%MARIADB_USER%%"}
%%LEGACY_LIMITS%%mysql_limits_args="-e -U ${mysql_user}"
: ${mysql_dbdir="%%MARIADB_DBDIR%%"}
: ${mysql_optfile="%%ETCDIR%%/my.cnf"}
: ${mysql_rundir="%%MARIADB_RUNDIR%%"}
command="/usr/sbin/daemon"
procname="%%PREFIX%%/libexec/mariadbd"
start_precmd="${name}_prestart"
start_postcmd="${name}_poststart"
if [ -n "$2" ]; then
instance="$2"
load_rc_config ${name}_${instance}
case "$mysql_instances" in
"$2 "*|*" $2 "*|*" $2"|"$2")
eval mysql_args="\${mysql_${instance}_args:-\"${mysql_args}\"}"
eval mysql_dbdir="\${mysql_${instance}_dbdir:-\"%%MARIADB_DBDIR%%_${instance}\"}"
%%LEGACY_LIMITS%%eval mysql_limits="\${mysql_${instance}_limits:-\"${mysql_limits}\"}"
eval mysql_user="\${mysql_${instance}_user:-\"${mysql_user}\"}"
%%LEGACY_LIMITS%%eval mysql_limits_args="\${mysql_${instance}_limits_args:-\"-e -U $mysql_user\"}"
eval mysql_socket="\${mysql_${instance}_socket:-\"%%MARIADB_RUNDIR%%_${instance}/%%MARIADB_SOCK%%\"}"
eval mysql_optfile="\${mysql_${instance}_optfile:-\"%%ETCDIR%%_${instance}/my.cnf\"}"
eval mysql_pidfile="\${mysql_${instance}_pidfile:-\"%%MARIADB_RUNDIR%%_${instance}/mysqld.pid\"}"
;;
*)
err 1 "$2 not found in mysql_instances" ;;
esac
else
if [ -n "${mysql_instances}" -a -n "$1" ]; then
for instance in ${mysql_instances}; do
eval _enable="\${mysql_${instance}_enable}"
case "${_enable:-${mysql_enable}}" in
[Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0)
continue
;;
[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1)
;;
*)
if [ -z "$_enable" ]; then
_var=mysql_enable
else
_var=mysql_${instance}_enable
fi
warn "Bad value" \
"'${_enable:-${mysql_enable}}'" \
"for ${_var}. " \
"Instance ${instance} skipped."
continue
;;
esac
echo "===> mysql instance: ${instance}"
if %%PREFIX%%/etc/rc.d/mysql-server $1 ${instance}; then
success="${instance} ${success}"
else
failed="${instance} (${retcode}) ${failed}"
fi
done
exit 0
else
mysql_pidfile=${mysql_pidfile:-"%%MARIADB_RUNDIR%%/mysqld.pid"}
fi
fi
pidfile=$mysql_pidfile
mysql_install_db="%%PREFIX%%/bin/mariadb-install-db"
mysql_install_db_args="--basedir=%%PREFIX%% --datadir=${mysql_dbdir} --force"
command_args="-c -f %%PREFIX%%/bin/mariadbd-safe --defaults-extra-file=${mysql_optfile} --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_socket:+--socket=${mysql_socket}} ${mysql_args}"
mysql_create_auth_tables()
{
eval $mysql_install_db $mysql_install_db_args
[ $? -eq 0 ] && chown -R ${mysql_user}:$(id -gn $mysql_user) ${mysql_dbdir}
}
mysql_prestart()
{
local dir
for dir in /etc /usr/local/etc /etc/mysql /var/db/mysql; do
if [ -f "${dir}/my.cnf" ]; then
echo "Please merge existing ${dir}/my.cnf file with %%ETCDIR%%/conf.d/server.cnf"
return 1
fi
done
if [ ! -d "${mysql_dbdir}/mysql/." ]; then
mysql_create_auth_tables || return 1
fi
mysql_group="`/usr/bin/id -gn ${mysql_user}`"
[ "${mysql_socket}" = "" ] && mysql_rundir="%%MARIADB_RUNDIR%%" || mysql_rundir="`/usr/bin/dirname ${mysql_socket}`"
if [ ! -d "${mysql_rundir}" ]; then
install -d -o ${mysql_user} -g ${mysql_group} "${mysql_rundir}"
fi
%%LEGACY_LIMITS%% if checkyesno mysql_limits; then
%%LEGACY_LIMITS%% eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
%%LEGACY_LIMITS%% else
%%LEGACY_LIMITS%% return 0
%%LEGACY_LIMITS%% fi
%%MODERN_LIMITS%% return 0
if [ ! -d "${mysql_rundir}" ]; then
install -d -u${mysql_user} -g$(id -gn $mysql_user) -m755 ${mysql_rundir}
fi
}
mysql_poststart()
{
local timeout=15
while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
timeout=$(( timeout - 1 ))
sleep 1
done
return 0
}
run_rc_command "$1"

View File

@ -1,48 +0,0 @@
--- include/my_cpu.h.orig 2021-09-27 13:32:48 UTC
+++ include/my_cpu.h
@@ -23,7 +23,8 @@
The defines are the same ones used by the linux kernel
*/
-#ifdef _ARCH_PWR8
+#if defined(_ARCH_PWR8)
+#if defined(linux)
#include <sys/platform/ppc.h>
/* Very low priority */
#define HMT_very_low() __ppc_set_ppr_very_low()
@@ -37,6 +38,22 @@
#define HMT_medium_high() __ppc_set_ppr_med_high()
/* High priority */
#define HMT_high() asm volatile("or 3,3,3")
+#elif defined(__FreeBSD__)
+#include <sys/types.h>
+#include <sys/sysctl.h>
+/* Very low priority */
+#define HMT_very_low() __asm__ volatile ("or 31,31,31")
+/* Low priority */
+#define HMT_low() __asm__ volatile ("or 1,1,1")
+/* Medium low priority */
+#define HMT_medium_low() __asm__ volatile ("or 6,6,6")
+/* Medium priority */
+#define HMT_medium() __asm__ volatile ("or 2,2,2")
+/* Medium high priority */
+#define HMT_medium_high() __asm__ volatile ("or 5,5,5")
+/* High priority */
+#define HMT_high() asm volatile("or 3,3,3")
+#endif
#else
#define HMT_very_low()
#define HMT_low()
@@ -81,7 +98,12 @@ static inline void MY_RELAX_CPU(void)
__asm__ __volatile__ ("pause");
#endif
#elif defined(_ARCH_PWR8)
+#if defined(linux)
__ppc_get_timebase();
+#elif defined(__FreeBSD__)
+ uint64_t __tb;
+ __asm__ volatile ("mfspr %0, 268" : "=r" (__tb));
+#endif
#elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
/* Mainly, prevent the compiler from optimizing away delay loops */
#ifdef _aarch64_

View File

@ -1,14 +0,0 @@
--- mysys_ssl/openssl.c.orig 2024-02-01 17:44:37 UTC
+++ mysys_ssl/openssl.c
@@ -30,6 +30,11 @@ int check_openssl_compatibility()
{
return 0;
}
+#elif defined(LIBRESSL_VERSION_NUMBER)
+int check_openssl_compatibility()
+{
+ return 0;
+}
#else
#include <openssl/evp.h>

View File

@ -1,10 +0,0 @@
--- scripts/mysql_config.sh.orig 2021-07-07 20:25:20 UTC
+++ scripts/mysql_config.sh
@@ -88,6 +88,7 @@ fi
# Create options
libs="-L$pkglibdir @RPATH_OPTION@ @LIBS_FOR_CLIENTS@"
embedded_libs="-L$pkglibdir @RPATH_OPTION@ @EMB_LIBS_FOR_CLIENTS@"
+embedded_libs="$embedded_libs -%%LOCALBASE%%/lib "
include="-I$pkgincludedir"
if [ "$basedir" != "/usr" ]; then

View File

@ -1,20 +0,0 @@
--- sql/mysqld.cc.orig 2021-06-15 10:16:51 UTC
+++ sql/mysqld.cc
@@ -205,7 +205,7 @@ typedef fp_except fp_except_t;
inline void setup_fpu()
{
-#if defined(__FreeBSD__) && defined(HAVE_IEEEFP_H) && !defined(HAVE_FEDISABLEEXCEPT)
+#if defined(__FreeBSD__) && defined(HAVE_IEEEFP_H) && !defined(HAVE_FEDISABLEEXCEPT) && defined(FP_X_INV)
/* We can't handle floating point exceptions with threads, so disable
this on freebsd
Don't fall for overflow, underflow,divide-by-zero or loss of precision.
@@ -218,7 +218,7 @@ inline void setup_fpu()
fpsetmask(~(FP_X_INV | FP_X_OFL | FP_X_UFL | FP_X_DZ |
FP_X_IMP));
#endif /* FP_X_DNML */
-#endif /* __FreeBSD__ && HAVE_IEEEFP_H && !HAVE_FEDISABLEEXCEPT */
+#endif /* __FreeBSD__ && HAVE_IEEEFP_H && !HAVE_FEDISABLEEXCEPT && FP_X_INV */
#ifdef HAVE_FEDISABLEEXCEPT
fedisableexcept(FE_ALL_EXCEPT);

View File

@ -1,24 +0,0 @@
--- storage/columnstore/columnstore/utils/common/threadnaming.cpp.orig 2022-05-18 08:34:17 UTC
+++ storage/columnstore/columnstore/utils/common/threadnaming.cpp
@@ -22,13 +22,21 @@ namespace utils
{
void setThreadName(const char* threadName)
{
+#ifdef __FreeBSD__
+ pthread_set_name_np(pthread_self(), threadName);
+#else
prctl(PR_SET_NAME, threadName, 0, 0, 0);
+#endif
}
std::string getThreadName()
{
char buf[32];
+#ifdef __FreeBSD__
+ pthread_get_name_np(pthread_self(), buf, sizeof(buf));
+#else
prctl(PR_GET_NAME, buf, 0, 0, 0);
+#endif
return std::string(buf);
}
} // namespace utils

View File

@ -1,13 +0,0 @@
--- storage/rocksdb/rocksdb/port/jemalloc_helper.h.orig 2020-06-23 15:10:17 UTC
+++ storage/rocksdb/rocksdb/port/jemalloc_helper.h
@@ -26,6 +26,10 @@
#include <jemalloc/jemalloc.h>
#endif
+#ifdef __FreeBSD__
+#define JEMALLOC_USABLE_SIZE_CONST const
+#endif
+
#ifndef JEMALLOC_CXX_THROW
#define JEMALLOC_CXX_THROW
#endif

View File

@ -1,8 +0,0 @@
--- tpool/CMakeLists.txt.orig 2020-06-23 15:10:18 UTC
+++ tpool/CMakeLists.txt
@@ -1,4 +1,5 @@
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/include)
+ADD_DEFINITIONS(-fPIC)
IF(WIN32)
SET(EXTRA_SOURCES tpool_win.cc aio_win.cc)
ELSEIF(CMAKE_SYSTEM_NAME STREQUAL "Linux")

View File

@ -1,28 +0,0 @@
[
{ type: install
message: <<EOM
MariaDB respects hier(7) and doesn't check /etc and /etc/mysql for
my.cnf. Please move existing my.cnf files from those paths to
%%PREFIX%%/etc/mysql or %%PREFIX%%/etc. Sample
configuration files are provided in %%PREFIX%%/etc/mysql
and %%PREFIX%%/etc/mysql/conf.d.
The rc(8) script no longer uses /var/db/mysql/my.cnf for configuration
nor /var/db/mysql for logs and PID-file.
This port does NOT include the mytop perl script, this is included in
the MariaDB tarball but the most recent version can be found in the
databases/mytop port
%%WSREP%%Using wsrep clustering requires adding a configuration file.
%%WSREP%%Copy %%PREFIX%%/etc/mysql/conf.d/wsrep.conf.sample to
%%WSREP%%%%PREFIX%%/etc/mysql/conf.d/wsrep.conf and change what you need there.
EOM
}
{ type: upgrade
message: <<EOM
Remember to run mariadb-upgrade (with the optional --datadir=<dbdir> flag)
the first time you start the MySQL server after an upgrade from an
earlier version.
EOM
}
]

View File

@ -1,60 +0,0 @@
# Options specific to server applications, see
# https://mariadb.com/kb/en/configuring-mariadb-with-option-files/#server-option-groups
# Options specific to all server programs
[server]
# Options specific to MariaDB server programs
[server-mariadb]
#
# Options for specific server tools
#
[mysqld]
user = %%MARIADB_USER%%
# port = 3306 # inherited from %%ETCDIR%%/my.cnf
# socket = %%MARIADB_RUNDIR%%/mysql.sock # inherited from %%ETCDIR%%/my.cnf
bind-address = 127.0.0.1
basedir = %%PREFIX%%
datadir = %%MARIADB_DBDIR%%
net_retry_count = 16384
log_error = %%MARIADB_LOGDIR%%/mysqld.err
# [mysqld] configuration for ZFS
# From https://www.percona.com/resources/technical-presentations/zfs-mysql-percona-technical-webinar
# Create separate datasets for data and logs, eg
# zroot/mysql compression=on recordsize=128k atime=off
# zroot/mysql/data recordsize=16k
# zroot/mysql/logs
# datadir = %%MARIADB_DBDIR%%/data
# innodb_log_group_home_dir = %%MARIADB_DBDIR%%/log
# audit_log_file = %%MARIADB_DBDIR%%/log/audit.log
# general_log_file = %%MARIADB_DBDIR%%/log/general.log
# log_bin = %%MARIADB_DBDIR%%/log/mysql-bin
# relay_log = %%MARIADB_DBDIR%%/log/relay-log
# slow_query_log_file = %%MARIADB_DBDIR%%/log/slow.log
# innodb_doublewrite = 0
# innodb_flush_method = O_DSYNC
# Options read by `mariadb_safe`
# Renamed from [mysqld_safe] starting with MariaDB 10.4.6.
[mariadb-safe]
# Options read my `mariabackup`
[mariabackup]
# Options read by `mysql_upgrade`
# Renamed from [mysql_upgrade] starting with MariaDB 10.4.6.
[mariadb-upgrade]
# Specific options read by the mariabackup SST method
[sst]
# Options read by `mysqlbinlog`
# Renamed from [mysqlbinlog] starting with MariaDB 10.4.6.
[mariadb-binlog]
# Options read by `mysqladmin`
# Renamed from [mysqladmin] starting with MariaDB 10.4.6.
[mariadb-admin]