LICENSE="GPL-2"
SLOT="0/${SUBSLOT:-0}"
-IUSE="+community cluster debug embedded extraengine jemalloc latin1 libressl +openssl
+IUSE="debug embedded extraengine jemalloc latin1 libressl +openssl
+perl profiling selinux systemtap static static-libs tcmalloc test yassl"
REQUIRED_USE="^^ ( yassl openssl libressl )"
# IUSE="bindist ${IUSE}"
#fi
+# Tests always fail when libressl is enabled due to hard-coded ciphers in the tests
+RESTRICT="libressl? ( test )"
+
if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
IUSE="bindist ${IUSE}"
RESTRICT="${RESTRICT} !bindist? ( bindist )"
die
fi
fi
- if use_if_iuse cluster && [[ "${PN}" != "mysql-cluster" ]]; then
- die "NDB Cluster support has been removed from all packages except mysql-cluster"
- fi
}
# @FUNCTION: mysql-multilib_pkg_setup
if ! multilib_is_native_abi && in_iuse client-libs ; then
if ! use client-libs ; then
- ewarn "Skipping multilib build due to client-libs USE disabled"
+ einfo "Skipping multilib build due to client-libs USE disabled"
return 0
fi
fi
multilib_src_compile() {
if ! multilib_is_native_abi && in_iuse client-libs ; then
if ! use client-libs ; then
- ewarn "Skipping multilib build due to client-libs USE disabled"
return 0
fi
fi
if ! multilib_is_native_abi && in_iuse client-libs ; then
if ! use client-libs ; then
- ewarn "Skipping multilib build due to client-libs USE disabled"
return 0
fi
fi
einfo
elog "This install includes the PAM authentication plugin."
elog "To activate and configure the PAM plugin, please read:"
- elog "https://kb.askmonty.org/en/pam-authentication-plugin/"
+ elog "https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/"
einfo
fi
fi
elog "mysql_upgrade tool."
einfo
- if [[ ${PN} == "mariadb-galera" ]] ; then
+ if [[ ${PN} == "mariadb-galera" ]] || use_if_iuse galera ; then
einfo
elog "Be sure to edit the my.cnf file to activate your cluster settings."
elog "This should be done after running \"emerge --config =${CATEGORY}/${PF}\""
# Use my_print_defaults to extract specific config options
mysql-multilib_getoptval() {
local mypd="${EROOT}"/usr/bin/my_print_defaults
- section="$1"
- flag="--${2}="
- "${mypd}" $section | sed -n "/^${flag}/s,${flag},,gp"
+ local section="$1"
+ local flag="--${2}="
+ local extra_options="${3}"
+ "${mypd}" $extra_options $section | sed -n "/^${flag}/s,${flag},,gp"
}
# @FUNCTION: mysql-multilib_pkg_config
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
MYSQL_ROOT_PASSWORD="$(mysql-multilib_getoptval 'client mysql' password)"
+ # Sometimes --show is required to display passwords in some implementations of my_print_defaults
+ if [[ "${MYSQL_ROOT_PASSWORD}" == '*****' ]]; then
+ MYSQL_ROOT_PASSWORD="$(mysql-multilib_getoptval 'client mysql' password --show)"
+ fi
fi
MYSQL_TMPDIR="$(mysql-multilib_getoptval mysqld tmpdir)"
# These are dir+prefix
help_tables="${TMPDIR}/fill_help_tables.sql"
# Figure out which options we need to disable to do the setup
- helpfile="${TMPDIR}/mysqld-help"
+ local helpfile="${TMPDIR}/mysqld-help"
${EROOT}/usr/sbin/mysqld --verbose --help >"${helpfile}" 2>/dev/null
for opt in grant-tables host-cache name-resolve networking slave-start \
federated ssl log-bin relay-log slow-query-log external-locking \