summaryrefslogtreecommitdiff
path: root/dev-perl/DBD-mysql/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-perl/DBD-mysql/files
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-perl/DBD-mysql/files')
-rw-r--r--dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch47
-rw-r--r--dev-perl/DBD-mysql/files/4.041-mariadb-10.2.patch35
-rw-r--r--dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch103
-rw-r--r--dev-perl/DBD-mysql/files/4.042-no-dot-inc.patch178
-rw-r--r--dev-perl/DBD-mysql/files/DBD-mysql-4.044-amvis-type-conversions.patch56
-rw-r--r--dev-perl/DBD-mysql/files/DBD-mysql-4.044-no-dot-inc.patch151
-rw-r--r--dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch20
7 files changed, 590 insertions, 0 deletions
diff --git a/dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch b/dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch
new file mode 100644
index 000000000000..041ba0a496a6
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch
@@ -0,0 +1,47 @@
+From: Pali <pali@cpan.org>
+Date: Fri, 24 Feb 2017 19:51:36 +0100
+Subject: [PATCH] Fix type conversions
+
+Calling SvNV() for magical scalar is not enough for float type conversion.
+It caused problem for Amavis in tainted mode -- all float values were zero.
+On the other hand SvIV() and SvUV() seems to work fine. To be sure that
+correct value of float is in scalar use sv_setnv() with explicit NV float
+value. Similar code is changed also for integers IV/UV.
+
+This patch should fix reported Amavis bug:
+https://github.com/perl5-dbi/DBD-mysql/issues/78
+
+See also reported perl bug about SvNV():
+https://rt.perl.org/Public/Bug/Display.html?id=130801
+
+Bugs: https://github.com/perl5-dbi/DBD-mysql/issues/78
+Bugs-Debian: https://bugs.debian.org/856064
+
+--- a/dbdimp.c
++++ b/dbdimp.c
+@@ -4250,8 +4250,7 @@
+ switch (mysql_to_perl_type(fields[i].type)) {
+ case MYSQL_TYPE_DOUBLE:
+ /* Coerce to dobule and set scalar as NV */
+- (void) SvNV(sv);
+- SvNOK_only(sv);
++ sv_setnv(sv, SvNV(sv));
+ break;
+
+ case MYSQL_TYPE_LONG:
+@@ -4259,13 +4258,11 @@
+ /* Coerce to integer and set scalar as UV resp. IV */
+ if (fields[i].flags & UNSIGNED_FLAG)
+ {
+- (void) SvUV(sv);
+- SvIOK_only_UV(sv);
++ sv_setuv(sv, SvUV(sv));
+ }
+ else
+ {
+- (void) SvIV(sv);
+- SvIOK_only(sv);
++ sv_setiv(sv, SvIV(sv));
+ }
+ break;
+
diff --git a/dev-perl/DBD-mysql/files/4.041-mariadb-10.2.patch b/dev-perl/DBD-mysql/files/4.041-mariadb-10.2.patch
new file mode 100644
index 000000000000..13fa2775a3c4
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/4.041-mariadb-10.2.patch
@@ -0,0 +1,35 @@
+From 509fd6a054de9408ce9032e93fff61f6bdbc568a Mon Sep 17 00:00:00 2001
+From: Brian Evans <grknight@gentoo.org>
+Date: Fri, 13 Oct 2017 15:03:50 -0400
+Subject: Fix building/linking against MariaDB 10.2
+
+Bug: https://bugs.gentoo.org/634192
+---
+ mysql.xs | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mysql.xs b/mysql.xs
+index 13c6a57..6de3c8e 100644
+--- a/mysql.xs
++++ b/mysql.xs
+@@ -790,7 +790,7 @@ dbd_mysql_get_info(dbh, sql_info_type)
+ D_imp_dbh(dbh);
+ IV type = 0;
+ SV* retsv=NULL;
+-#if !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 50709
++#if ( !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 50709 ) || MYSQL_VERSION_ID >= 100202
+ /* MariaDB 10 is not MySQL source level compatible so this only applies to MySQL*/
+ IV buffer_len;
+ #endif
+@@ -822,7 +822,7 @@ dbd_mysql_get_info(dbh, sql_info_type)
+ retsv = newSVpvn("`", 1);
+ break;
+ case SQL_MAXIMUM_STATEMENT_LENGTH:
+-#if !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 50709
++#if ( !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 50709 ) || MYSQL_VERSION_ID >= 100202
+ /* MariaDB 10 is not MySQL source level compatible so this
+ only applies to MySQL*/
+ /* mysql_get_option() was added in mysql 5.7.3 */
+--
+2.14.2
+
diff --git a/dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch b/dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch
new file mode 100644
index 000000000000..f26837f548a8
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch
@@ -0,0 +1,103 @@
+From 497224cad8b6469913c61ee856228bc1d0280980 Mon Sep 17 00:00:00 2001
+From: Pali <pali@cpan.org>
+Date: Mon, 17 Apr 2017 21:38:58 +0200
+Subject: [PATCH] Fix tests on Perl On 5.25.10 or greater with
+ -Ddefault_inc_excludes_dot
+
+Some tests do not include dot in %INC and fails with error:
+Can't locate t/lib.pl in @INC
+
+Fixes: https://rt.cpan.org/Public/Bug/Display.html?id=120709
+---
+ t/40server_prepare_crash.t | 3 ++-
+ t/rt25389-bin-case.t | 3 ++-
+ t/rt50304-column_info_parentheses.t | 3 ++-
+ t/rt61849-bind-param-buffer-overflow.t | 3 ++-
+ t/rt75353-innodb-lock-timeout.t | 3 ++-
+ t/rt83494-quotes-comments.t | 3 ++-
+ 11 files changed, 22 insertions(+), 11 deletions(-)
+
+diff --git a/t/40server_prepare_crash.t b/t/40server_prepare_crash.t
+index e3777b9..d04eb9c 100644
+--- a/t/40server_prepare_crash.t
++++ b/t/40server_prepare_crash.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password, { PrintError => 1, RaiseError => 1, AutoCommit => 0, mysql_server_prepare => 1, mysql_server_prepare_disable_fallback => 1 });
+ plan skip_all => "You must have MySQL version 4.1.3 and greater for this test to run" if $dbh->{mysql_clientversion} < 40103 or $dbh->{mysql_serverversion} < 40103;
+diff --git a/t/rt25389-bin-case.t b/t/rt25389-bin-case.t
+index cbda8b7..3aee41b 100644
+--- a/t/rt25389-bin-case.t
++++ b/t/rt25389-bin-case.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ use Test::More;
+
+diff --git a/t/rt50304-column_info_parentheses.t b/t/rt50304-column_info_parentheses.t
+index 76f9eff..6c3aac5 100644
+--- a/t/rt50304-column_info_parentheses.t
++++ b/t/rt50304-column_info_parentheses.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ use Test::More;
+
+diff --git a/t/rt61849-bind-param-buffer-overflow.t b/t/rt61849-bind-param-buffer-overflow.t
+index 82baf2f..a3c75de 100644
+--- a/t/rt61849-bind-param-buffer-overflow.t
++++ b/t/rt61849-bind-param-buffer-overflow.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $INSECURE_VALUE_FROM_USER = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
+
+diff --git a/t/rt75353-innodb-lock-timeout.t b/t/rt75353-innodb-lock-timeout.t
+index a1f437d..95694db 100644
+--- a/t/rt75353-innodb-lock-timeout.t
++++ b/t/rt75353-innodb-lock-timeout.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh1 = DbiTestConnect($test_dsn, $test_user, $test_password, { RaiseError => 1, AutoCommit => 0 });
+
+diff --git a/t/rt83494-quotes-comments.t b/t/rt83494-quotes-comments.t
+index c48b0b9..83919f2 100644
+--- a/t/rt83494-quotes-comments.t
++++ b/t/rt83494-quotes-comments.t
+@@ -9,7 +9,8 @@ use DBI;
+ use Test::More;
+
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password,
+ { RaiseError => 1, PrintError => 0, AutoCommit => 0 });
diff --git a/dev-perl/DBD-mysql/files/4.042-no-dot-inc.patch b/dev-perl/DBD-mysql/files/4.042-no-dot-inc.patch
new file mode 100644
index 000000000000..274605c44c7d
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/4.042-no-dot-inc.patch
@@ -0,0 +1,178 @@
+From 497224cad8b6469913c61ee856228bc1d0280980 Mon Sep 17 00:00:00 2001
+From: Pali <pali@cpan.org>
+Date: Mon, 17 Apr 2017 21:38:58 +0200
+Subject: [PATCH] Fix tests on Perl On 5.25.10 or greater with
+ -Ddefault_inc_excludes_dot
+
+Some tests do not include dot in %INC and fails with error:
+Can't locate t/lib.pl in @INC
+
+Fixes: https://rt.cpan.org/Public/Bug/Display.html?id=120709
+---
+ t/40server_prepare_crash.t | 3 ++-
+ t/55utf8_jp.t | 3 ++-
+ t/cve-2017-3302.t | 3 ++-
+ t/magic.t | 3 ++-
+ t/rt110983-valid-mysqlfd.t | 3 ++-
+ t/rt118977-zerofill.t | 3 ++-
+ t/rt25389-bin-case.t | 3 ++-
+ t/rt50304-column_info_parentheses.t | 3 ++-
+ t/rt61849-bind-param-buffer-overflow.t | 3 ++-
+ t/rt75353-innodb-lock-timeout.t | 3 ++-
+ t/rt83494-quotes-comments.t | 3 ++-
+ 11 files changed, 22 insertions(+), 11 deletions(-)
+
+diff --git a/t/40server_prepare_crash.t b/t/40server_prepare_crash.t
+index e3777b9..d04eb9c 100644
+--- a/t/40server_prepare_crash.t
++++ b/t/40server_prepare_crash.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password, { PrintError => 1, RaiseError => 1, AutoCommit => 0, mysql_server_prepare => 1, mysql_server_prepare_disable_fallback => 1 });
+ plan skip_all => "You must have MySQL version 4.1.3 and greater for this test to run" if $dbh->{mysql_clientversion} < 40103 or $dbh->{mysql_serverversion} < 40103;
+diff --git a/t/55utf8_jp.t b/t/55utf8_jp.t
+index 638d494..88874c3 100644
+--- a/t/55utf8_jp.t
++++ b/t/55utf8_jp.t
+@@ -6,7 +6,8 @@ use DBI;
+ use Encode;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password, { mysql_enable_utf8 => 1, PrintError => 1, RaiseError => 1 });
+
+diff --git a/t/cve-2017-3302.t b/t/cve-2017-3302.t
+index b2de927..fbca0e3 100644
+--- a/t/cve-2017-3302.t
++++ b/t/cve-2017-3302.t
+@@ -6,7 +6,8 @@ if ($ENV{SKIP_CRASH_TESTING}) {
+ no warnings 'once';
+ use DBI;
+ use vars qw($test_dsn $test_user $test_password $test_db);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+ eval {
+ $dbh = DBI->connect($test_dsn, $test_user, $test_password, {RaiseError => 1, mysql_server_prepare => 1});
+ } or do {
+diff --git a/t/magic.t b/t/magic.t
+index 2720655..a7978a4 100644
+--- a/t/magic.t
++++ b/t/magic.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $tb = Test::More->builder;
+ binmode $tb->failure_output, ":utf8";
+diff --git a/t/rt110983-valid-mysqlfd.t b/t/rt110983-valid-mysqlfd.t
+index ad59762..12dace7 100644
+--- a/t/rt110983-valid-mysqlfd.t
++++ b/t/rt110983-valid-mysqlfd.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password, { RaiseError => 1, AutoCommit => 0 });
+
+diff --git a/t/rt118977-zerofill.t b/t/rt118977-zerofill.t
+index 1992c4c..328766b 100644
+--- a/t/rt118977-zerofill.t
++++ b/t/rt118977-zerofill.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password, { PrintError => 1, RaiseError => 1 });
+
+diff --git a/t/rt25389-bin-case.t b/t/rt25389-bin-case.t
+index cbda8b7..3aee41b 100644
+--- a/t/rt25389-bin-case.t
++++ b/t/rt25389-bin-case.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ use Test::More;
+
+diff --git a/t/rt50304-column_info_parentheses.t b/t/rt50304-column_info_parentheses.t
+index 76f9eff..6c3aac5 100644
+--- a/t/rt50304-column_info_parentheses.t
++++ b/t/rt50304-column_info_parentheses.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ use Test::More;
+
+diff --git a/t/rt61849-bind-param-buffer-overflow.t b/t/rt61849-bind-param-buffer-overflow.t
+index 82baf2f..a3c75de 100644
+--- a/t/rt61849-bind-param-buffer-overflow.t
++++ b/t/rt61849-bind-param-buffer-overflow.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $INSECURE_VALUE_FROM_USER = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
+
+diff --git a/t/rt75353-innodb-lock-timeout.t b/t/rt75353-innodb-lock-timeout.t
+index a1f437d..95694db 100644
+--- a/t/rt75353-innodb-lock-timeout.t
++++ b/t/rt75353-innodb-lock-timeout.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh1 = DbiTestConnect($test_dsn, $test_user, $test_password, { RaiseError => 1, AutoCommit => 0 });
+
+diff --git a/t/rt83494-quotes-comments.t b/t/rt83494-quotes-comments.t
+index c48b0b9..83919f2 100644
+--- a/t/rt83494-quotes-comments.t
++++ b/t/rt83494-quotes-comments.t
+@@ -9,7 +9,8 @@ use DBI;
+ use Test::More;
+
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password,
+ { RaiseError => 1, PrintError => 0, AutoCommit => 0 });
diff --git a/dev-perl/DBD-mysql/files/DBD-mysql-4.044-amvis-type-conversions.patch b/dev-perl/DBD-mysql/files/DBD-mysql-4.044-amvis-type-conversions.patch
new file mode 100644
index 000000000000..9cf9ff91fc8a
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/DBD-mysql-4.044-amvis-type-conversions.patch
@@ -0,0 +1,56 @@
+From eb7eddaa2341b853df045ad4a3690c60fc38c6c8 Mon Sep 17 00:00:00 2001
+From: Pali <pali@cpan.org>
+Date: Fri, 24 Feb 2017 19:51:36 +0100
+Subject: Fix type conversions
+
+Calling SvNV() for magical scalar is not enough for float type conversion.
+It caused problem for Amavis in tainted mode -- all float values were zero.
+On the other hand SvIV() and SvUV() seems to work fine. To be sure that
+correct value of float is in scalar use sv_setnv() with explicit NV float
+value. Similar code is changed also for integers IV/UV.
+
+This patch should fix reported Amavis bug:
+https://github.com/perl5-dbi/DBD-mysql/issues/78
+
+See also reported perl bug about SvNV():
+https://rt.perl.org/Public/Bug/Display.html?id=130801
+
+Bugs: https://github.com/perl5-dbi/DBD-mysql/issues/78
+Bugs-Debian: https://bugs.debian.org/856064
+---
+ dbdimp.c | 9 +++------
+ 1 file changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/dbdimp.c b/dbdimp.c
+index 9c33994..7fdfba1 100644
+--- a/dbdimp.c
++++ b/dbdimp.c
+@@ -4380,8 +4380,7 @@ process:
+ if (!(fields[i].flags & ZEROFILL_FLAG))
+ {
+ /* Coerce to dobule and set scalar as NV */
+- (void) SvNV(sv);
+- SvNOK_only(sv);
++ sv_setnv(sv, SvNV(sv));
+ }
+ break;
+
+@@ -4392,13 +4391,11 @@ process:
+ /* Coerce to integer and set scalar as UV resp. IV */
+ if (fields[i].flags & UNSIGNED_FLAG)
+ {
+- (void) SvUV(sv);
+- SvIOK_only_UV(sv);
++ sv_setuv(sv, SvUV(sv));
+ }
+ else
+ {
+- (void) SvIV(sv);
+- SvIOK_only(sv);
++ sv_setiv(sv, SvIV(sv));
+ }
+ }
+ break;
+--
+2.15.1
+
diff --git a/dev-perl/DBD-mysql/files/DBD-mysql-4.044-no-dot-inc.patch b/dev-perl/DBD-mysql/files/DBD-mysql-4.044-no-dot-inc.patch
new file mode 100644
index 000000000000..5e0829384be4
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/DBD-mysql-4.044-no-dot-inc.patch
@@ -0,0 +1,151 @@
+From 35931a7465f19da53b97cd1bc5369a69aeac2ff6 Mon Sep 17 00:00:00 2001
+From: Pali <pali@cpan.org>
+Date: Mon, 17 Apr 2017 21:38:58 +0200
+Subject: Fix tests on Perl On 5.25.10 or greater with
+ -Ddefault_inc_excludes_dot
+
+Some tests do not include dot in %INC and fails with error:
+Can't locate t/lib.pl in @INC
+
+Fixes: https://rt.cpan.org/Public/Bug/Display.html?id=120709
+---
+ t/40server_prepare_crash.t | 3 ++-
+ t/lib.pl | 5 +++--
+ t/rt118977-zerofill.t | 2 +-
+ t/rt25389-bin-case.t | 3 ++-
+ t/rt50304-column_info_parentheses.t | 3 ++-
+ t/rt61849-bind-param-buffer-overflow.t | 3 ++-
+ t/rt75353-innodb-lock-timeout.t | 3 ++-
+ t/rt83494-quotes-comments.t | 3 ++-
+ 8 files changed, 16 insertions(+), 9 deletions(-)
+
+diff --git a/t/40server_prepare_crash.t b/t/40server_prepare_crash.t
+index df6e2b3..e2c8c9f 100644
+--- a/t/40server_prepare_crash.t
++++ b/t/40server_prepare_crash.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh = eval { DBI->connect($test_dsn, $test_user, $test_password, { PrintError => 1, RaiseError => 1, AutoCommit => 0, mysql_server_prepare => 1, mysql_server_prepare_disable_fallback => 1 }) };
+ plan skip_all => "no database connection" if $@ or not $dbh;
+diff --git a/t/lib.pl b/t/lib.pl
+index 2221c40..0c756a0 100644
+--- a/t/lib.pl
++++ b/t/lib.pl
+@@ -2,6 +2,7 @@ use strict;
+ use warnings;
+
+ use Test::More;
++use File::Spec ();
+ use DBI::Const::GetInfoType;
+ use vars qw($mdriver $dbdriver $childPid $test_dsn $test_user $test_password);
+
+@@ -31,7 +32,7 @@ if (-f ($file = "t/$dbdriver.dbtest") ||
+ -f ($file = "$dbdriver.dbtest") ||
+ -f ($file = "../tests/$dbdriver.dbtest") ||
+ -f ($file = "tests/$dbdriver.dbtest")) {
+- eval { require $file; };
++ eval { require File::Spec->rel2abs($file); };
+ if ($@) {
+ print STDERR "Cannot execute $file: $@.\n";
+ print "1..0\n";
+@@ -45,7 +46,7 @@ if (-f ($file = "t/$mdriver.mtest") ||
+ -f ($file = "$mdriver.mtest") ||
+ -f ($file = "../tests/$mdriver.mtest") ||
+ -f ($file = "tests/$mdriver.mtest")) {
+- eval { require $file; };
++ eval { require File::Spec->rel2abs($file); };
+ if ($@) {
+ print STDERR "Cannot execute $file: $@.\n";
+ print "1..0\n";
+diff --git a/t/rt118977-zerofill.t b/t/rt118977-zerofill.t
+index 27ba1b7..86edb8e 100644
+--- a/t/rt118977-zerofill.t
++++ b/t/rt118977-zerofill.t
+@@ -5,7 +5,7 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++require "./t/lib.pl";
+
+ my $dbh = eval { DBI->connect($test_dsn, $test_user, $test_password, { PrintError => 1, RaiseError => 1 }) };
+ plan skip_all => "no database connection" if $@ or not $dbh;
+diff --git a/t/rt25389-bin-case.t b/t/rt25389-bin-case.t
+index 37bffb9..9d091b3 100644
+--- a/t/rt25389-bin-case.t
++++ b/t/rt25389-bin-case.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ use Test::More;
+
+diff --git a/t/rt50304-column_info_parentheses.t b/t/rt50304-column_info_parentheses.t
+index 5b6d799..8c31bf6 100644
+--- a/t/rt50304-column_info_parentheses.t
++++ b/t/rt50304-column_info_parentheses.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ use Test::More;
+
+diff --git a/t/rt61849-bind-param-buffer-overflow.t b/t/rt61849-bind-param-buffer-overflow.t
+index 99a4ccc..494f985 100644
+--- a/t/rt61849-bind-param-buffer-overflow.t
++++ b/t/rt61849-bind-param-buffer-overflow.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $INSECURE_VALUE_FROM_USER = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
+
+diff --git a/t/rt75353-innodb-lock-timeout.t b/t/rt75353-innodb-lock-timeout.t
+index 69b740e..41d1b8f 100644
+--- a/t/rt75353-innodb-lock-timeout.t
++++ b/t/rt75353-innodb-lock-timeout.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh1 = eval { DBI->connect($test_dsn, $test_user, $test_password, { RaiseError => 1, AutoCommit => 0 }) };
+ plan skip_all => "no database connection" if $@ or not $dbh1;
+diff --git a/t/rt83494-quotes-comments.t b/t/rt83494-quotes-comments.t
+index 9df0d90..c42afe4 100644
+--- a/t/rt83494-quotes-comments.t
++++ b/t/rt83494-quotes-comments.t
+@@ -9,7 +9,8 @@ use DBI;
+ use Test::More;
+
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+
+ my $dbh;
+ eval {$dbh= DBI->connect($test_dsn, $test_user, $test_password,
+--
+2.15.1
+
diff --git a/dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch b/dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch
new file mode 100644
index 000000000000..d205b43f33ec
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch
@@ -0,0 +1,20 @@
+diff -ubBr old/dbdimp.c new/dbdimp.c
+--- old/dbdimp.c 2015-09-12 17:52:41.328543844 -0400
++++ new/dbdimp.c 2015-09-12 23:21:52.848371578 -0400
+@@ -443,14 +443,14 @@
+ Print out embbedded option settings
+
+ */
+-int print_embedded_options(char ** options_list, int options_count)
++int print_embedded_options(PerlIOl ** Log, char ** options_list, int options_count)
+ {
+ int i;
+
+ for (i=0; i<options_count; i++)
+ {
+ if (options_list[i])
+- PerlIO_printf(DBILOGFP,
++ PerlIO_printf(Log,
+ "Embedded server, parameter[%d]=%s\n",
+ i, options_list[i]);
+ }