summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-perl/DBD-mysql')
-rw-r--r--dev-perl/DBD-mysql/DBD-mysql-5.5.0.ebuild140
-rw-r--r--dev-perl/DBD-mysql/Manifest1
2 files changed, 141 insertions, 0 deletions
diff --git a/dev-perl/DBD-mysql/DBD-mysql-5.5.0.ebuild b/dev-perl/DBD-mysql/DBD-mysql-5.5.0.ebuild
new file mode 100644
index 000000000000..d89d1db0fcb0
--- /dev/null
+++ b/dev-perl/DBD-mysql/DBD-mysql-5.5.0.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_AUTHOR=DVEEDEN
+# Parallel testing is broken as 2 tests create the same table
+# and mysql isn't acid compliant and can't limit visibility of tables
+# to a transaction...
+DIST_TEST="do"
+DIST_WIKI=tests
+DIST_VERSION=5.005
+inherit perl-module
+
+DESCRIPTION="MySQL driver for the Perl5 Database Interface (DBI)"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="mariadb +mysql test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="^^ ( mysql mariadb )"
+
+DB_DEPENDS="
+ mysql? ( >=dev-db/mysql-connector-c-8:= )
+ mariadb? ( >=dev-db/mariadb-connector-c-3.1:=[ssl(+)] )
+"
+RDEPEND="
+ >=dev-perl/DBI-1.609.0
+ >=dev-perl/Devel-CheckLib-1.109.0
+ ${DB_DEPENDS}
+"
+DEPEND="
+ ${DB_DEPENDS}
+"
+BDEPEND="
+ ${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+ virtual/perl-Data-Dumper
+ test? (
+ dev-perl/Test-Deep
+ >=virtual/perl-Test-Simple-0.900.0
+ virtual/perl-Time-HiRes
+ mariadb? ( dev-db/mariadb:* )
+ mysql? ( >=dev-db/mysql-8:* )
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.050-no-dot-inc.patch"
+)
+
+PERL_RM_FILES=(
+ t/pod.t
+ t/manifest.t
+
+ # Failed test 'USE is not supported with mysql_server_prepare_disable_fallback=1'
+ # at t/40server_prepare.t line 93.
+ t/40server_prepare.t
+)
+
+src_configure() {
+ local impl=$(usex mariadb mariadb mysql)
+ local myconf=()
+
+ if use test; then
+ myconf+=(
+ --testdb=test
+ --testhost=localhost
+ --testsocket="${T}"/mysqld.sock
+ --testuser=root
+ )
+ fi
+
+ myconf+=( --mysql_config="${EPREFIX}"/usr/bin/${impl}_config )
+
+ perl-module_src_configure
+}
+
+src_test() {
+ local -x USER=$(whoami)
+
+ einfo "Creating mysql test instance ..."
+ mkdir -p "${T}"/mysql || die
+ if use mariadb ; then
+ local -x PATH="${BROOT}/usr/share/mariadb/scripts:${PATH}"
+
+ mysql_install_db \
+ --no-defaults \
+ --auth-root-authentication-method=normal \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ else
+ mysqld \
+ --no-defaults \
+ --initialize-insecure \
+ --user ${USER} \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ fi
+
+ einfo "Starting mysql test instance ..."
+ mysqld \
+ --no-defaults \
+ --character-set-server=utf8 \
+ --bind-address=127.0.0.1 \
+ --pid-file="${T}"/mysqld.pid \
+ --socket="${T}"/mysqld.sock \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld.log 2>&1 &
+
+ # Wait for it to start
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] && break
+ sleep 1
+ done
+ [[ ! -S ${T}/mysqld.sock ]] && die "mysqld failed to start"
+
+ einfo "Configuring test mysql instance ..."
+ mysql -u root \
+ -e 'CREATE DATABASE /*M!50701 IF NOT EXISTS */ test' \
+ -S "${T}"/mysqld.sock || die "Failed to create test database"
+
+ # Don't be a hero and try to do EXTENDED_TESTING=1 unless you can figure
+ # out why 60leaks.t fails
+ nonfatal perl-module_src_test
+ ret=$?
+
+ einfo "Stopping mysql test instance ..."
+ pkill -F "${T}"/mysqld.pid || die
+ # wait for it to stop
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] || break
+ sleep 1
+ done
+
+ rm -rf "${T}"/mysql || die
+
+ [[ ${ret} -ne 0 ]] && die
+}
diff --git a/dev-perl/DBD-mysql/Manifest b/dev-perl/DBD-mysql/Manifest
index c5f7549e899e..a0466a059e0d 100644
--- a/dev-perl/DBD-mysql/Manifest
+++ b/dev-perl/DBD-mysql/Manifest
@@ -1,3 +1,4 @@
DIST DBD-mysql-4.050.tar.gz 161579 BLAKE2B fb17e151db730fd6955d3e4424dd495a9fcf5f3f4e2b6b79d9fdc86bc42c3314b68771f1d3c393fd80ea14aeda626a5c5d21f5b921d487350ffd79802edab1f6 SHA512 910f5b4ba7a7890d50a79f37d04ec8971a4f62acd0fe30bf3ab634f66e3128f0cd6513e5c9da8c807a0f4477d0cc766682ea8dd0d8072d02821b78df51f37879
DIST DBD-mysql-5.001.tar.gz 151639 BLAKE2B 02edf5454d46ca16886c5fc559466f63c57352354983095feda7568822eb0cf4d87e44aa63754d873c6889d070b2108dc40e32a253532b893987a779d71808c9 SHA512 1aea86bba76f371ed11eb22e9fe1f99dfaefafd83dea69ee0ac5ea175c1328ff324934ad45bfa73851463931656471ca890b3d7656e9db3861a8465d6130d5c0
DIST DBD-mysql-5.004.tar.gz 156428 BLAKE2B 8eccf2da4f97e4b0193a1bdfefe50aabc3aa905efcfbc4a3e87d210801b2ff011f772d74e083bb0a50ae8f4c794ff025e3af73c5a2e35de6155ce685828714ac SHA512 4361b15afd3b72f1ed1d9aca9d6bf3f0c37344ff9682160423fe748029cb52d8e565b4c8fc853ab1e2e1d9241c34203d6333d08855af88b6f1d1b0bc806c82a7
+DIST DBD-mysql-5.005.tar.gz 155029 BLAKE2B 04ade0bd0a43dc0414d2f191db0f20bc31f993e0a303f57da4376a46b3f44112c012aa7c421d76bc26e638021cb1bdc1b41b2f7bf06066d9c7ed9a6ee5dd2ada SHA512 498ba157f12d754ed907ff331fb6df9f5167a8d331b2d479a3ddb7af945af3ed9e6fdb5feffc323b3b6a7c13d1eb66e5101a84d66511e620acb1b81c80e71d27