1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=7
|
|
4 |
EAPI=8
|
5 |
5 |
|
6 |
6 |
if [[ "${PV}" == 9999 ]] ; then
|
7 |
7 |
inherit git-r3
|
... | ... | |
9 |
9 |
else
|
10 |
10 |
MY_PN=${PN#mariadb-}
|
11 |
11 |
MY_PV=${PV/_b/-b}
|
12 |
|
SRC_URI="https://downloads.mariadb.org/f/${MY_PN}-${PV%_beta}/${PN}-${MY_PV}-src.tar.gz?serve -> ${P}-src.tar.gz"
|
|
12 |
SRC_URI="https://downloads.mariadb.com/Connectors/c/connector-c-${PV}/${P}-src.tar.gz"
|
13 |
13 |
S="${WORKDIR%/}/${PN}-${MY_PV}-src"
|
14 |
|
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~ppc ppc64 ~riscv ~s390 x86"
|
|
14 |
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 x86"
|
15 |
15 |
fi
|
16 |
16 |
|
17 |
17 |
inherit cmake-multilib toolchain-funcs
|
... | ... | |
43 |
43 |
)
|
44 |
44 |
)
|
45 |
45 |
"
|
|
46 |
BDEPEND="test? ( dev-db/mariadb[server] )"
|
46 |
47 |
RDEPEND="${DEPEND}"
|
47 |
48 |
PATCHES=(
|
48 |
49 |
"${FILESDIR}"/gentoo-layout-3.0.patch
|
49 |
50 |
"${FILESDIR}"/${PN}-3.1.3-fix-pkconfig-file.patch
|
50 |
51 |
)
|
51 |
52 |
|
|
53 |
src_prepare() {
|
|
54 |
# These tests the remote_io plugin which requires network access
|
|
55 |
sed -i 's/{"test_remote1", test_remote1, TEST_CONNECTION_NEW, 0, NULL, NULL},//g' "unittest/libmariadb/misc.c" || die
|
|
56 |
|
|
57 |
# These tests don't work with --skip-grant-tables
|
|
58 |
sed -i 's/{"test_conc366", test_conc366, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die
|
|
59 |
sed -i 's/{"test_conc66", test_conc66, TEST_CONNECTION_DEFAULT, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die
|
|
60 |
|
|
61 |
# [Warning] Aborted connection 2078 to db: 'test' user: 'root' host: '' (Got an error reading communication packets)
|
|
62 |
# Not sure about this one - might also require network access
|
|
63 |
sed -i 's/{"test_default_auth", test_default_auth, TEST_CONNECTION_NONE, 0, NULL, NULL},//g' "unittest/libmariadb/connection.c" || die
|
|
64 |
|
|
65 |
cmake_src_prepare
|
|
66 |
}
|
|
67 |
|
52 |
68 |
multilib_src_configure() {
|
53 |
69 |
# bug 508724 mariadb cannot use ld.gold
|
54 |
70 |
tc-ld-disable-gold
|
... | ... | |
61 |
77 |
-DCLIENT_PLUGIN_AUTH_GSSAPI_CLIENT:STRING=$(usex kerberos DYNAMIC OFF)
|
62 |
78 |
-DMARIADB_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
63 |
79 |
-DINSTALL_LIBDIR="$(get_libdir)"
|
|
80 |
-DINSTALL_MANDIR=share/man
|
64 |
81 |
-DINSTALL_PCDIR="$(get_libdir)/pkgconfig"
|
65 |
82 |
-DINSTALL_PLUGINDIR="$(get_libdir)/mariadb/plugin"
|
66 |
83 |
-DINSTALL_BINDIR=bin
|
... | ... | |
69 |
86 |
cmake_src_configure
|
70 |
87 |
}
|
71 |
88 |
|
|
89 |
multilib_src_test() {
|
|
90 |
mkdir -vp "${T}/mysql/data" || die
|
|
91 |
mysql_install_db --no-defaults --datadir="${T}/mysql/data" || die
|
|
92 |
mysqld --no-defaults --datadir="${T}/mysql/data" --socket="${T}/mysql/mysql.sock" --skip-grant-tables --skip-networking &
|
|
93 |
while ! mysqladmin ping --socket="${T}/mysql/mysql.sock" --silent ; do sleep 1 ; done
|
|
94 |
cd unittest/libmariadb && MYSQL_TEST_SOCKET="${T}/mysql/mysql.sock" MARIADB_CC_TEST=1 ctest --verbose || die
|
|
95 |
}
|
|
96 |
|
72 |
97 |
multilib_src_install_all() {
|
73 |
98 |
if ! use static-libs ; then
|
74 |
99 |
find "${ED}" -name "*.a" -delete || die
|