summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2020-07-26 04:41:11 +0200
committerThomas Deutschmann <whissi@gentoo.org>2020-07-26 04:41:15 +0200
commita64869237c80ac96494ed4557d581bd416e7ce38 (patch)
tree248a4531a7c02c31a47c686211399186e4332585 /dev-libs/apr-util/files
parentdev-db/mariadb-connector-c: security cleanup (diff)
downloadgentoo-a64869237c80ac96494ed4557d581bd416e7ce38.tar.gz
gentoo-a64869237c80ac96494ed4557d581bd416e7ce38.tar.bz2
gentoo-a64869237c80ac96494ed4557d581bd416e7ce38.zip
dev-libs/apr-util: fix building against >=dev-db/mysql-connector-c-8.0
Closes: https://bugs.gentoo.org/709650 Package-Manager: Portage-3.0.0, Repoman-2.3.23 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'dev-libs/apr-util/files')
-rw-r--r--dev-libs/apr-util/files/apr-util-1.6.1-mariadb-support.patch116
-rw-r--r--dev-libs/apr-util/files/apr-util-1.6.1-my_boold.patch17
2 files changed, 133 insertions, 0 deletions
diff --git a/dev-libs/apr-util/files/apr-util-1.6.1-mariadb-support.patch b/dev-libs/apr-util/files/apr-util-1.6.1-mariadb-support.patch
new file mode 100644
index 000000000000..137e99f97637
--- /dev/null
+++ b/dev-libs/apr-util/files/apr-util-1.6.1-mariadb-support.patch
@@ -0,0 +1,116 @@
+Backport of http://svn.apache.org/viewvc?rev=1872060&view=rev
+
+--- a/build/dbd.m4
++++ b/build/dbd.m4
+@@ -163,10 +163,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
+ old_cppflags="$CPPFLAGS"
+ old_ldflags="$LDFLAGS"
+
++ my_library="mysqlclient"
++
+ AC_ARG_WITH([mysql], APR_HELP_STRING([--with-mysql=DIR], [enable MySQL DBD driver]),
+ [
+ if test "$withval" = "yes"; then
+ AC_PATH_PROG([MYSQL_CONFIG],[mysql_config])
++ if test "x$MYSQL_CONFIG" = "x"; then
++ AC_PATH_TOOL([MYSQL_CONFIG],[mariadb_config])
++ fi
+ if test "x$MYSQL_CONFIG" != 'x'; then
+ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
+ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
+@@ -174,29 +179,37 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
+
+ APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
+ APR_ADDTO(LIBS, [$mysql_LIBS])
++
++ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
++ my_library="mariadb"
++ fi
+ fi
+
+- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <my_global.h>])
+- if test "$apu_have_mysql" = "0"; then
+- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <mysql/my_global.h>])
++ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
++ if test "$apr_have_mysql" = "0"; then
++ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
+ fi
+- if test "$apu_have_mysql" != "0" && test "x$MYSQL_CONFIG" != 'x'; then
++ if test "$apr_have_mysql" = "1"; then
++ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
++ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
++ fi
++ if test "$apu_have_mysql" = "1" && test "x$MYSQL_CONFIG" != 'x'; then
+ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
+ fi
+ elif test "$withval" = "no"; then
+ :
+ else
+ AC_PATH_PROG([MYSQL_CONFIG],[mysql_config],,[$withval/bin])
++ if test "x$MYSQL_CONFIG" = "x"; then
++ AC_PATH_TOOL([MYSQL_CONFIG],[mariadb_config],,[$withval/bin])
++ fi
+ if test "x$MYSQL_CONFIG" != 'x'; then
+ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
+ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
+ mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
++ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
++ my_library="mariadb"
++ fi
+ else
+ mysql_CPPFLAGS="-I$withval/include"
+ mysql_LDFLAGS="-L$withval/lib "
+@@ -207,18 +220,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
+ APR_ADDTO(LIBS, [$mysql_LIBS])
+
+ AC_MSG_NOTICE(checking for mysql in $withval)
+- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <my_global.h>])
+-
+- if test "$apu_have_mysql" != "1"; then
+- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <mysql/my_global.h>])
++ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
++ if test "$apr_have_mysql" = "0"; then
++ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
++ fi
++ if test "$apr_have_mysql" = "1"; then
++ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
++ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
+ fi
+- if test "$apu_have_mysql" != "0"; then
++ if test "$apu_have_mysql" = "1"; then
+ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
+ fi
+ fi
+@@ -229,7 +239,7 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
+ dnl Since we have already done the AC_CHECK_LIB tests, if we have it,
+ dnl we know the library is there.
+ if test "$apu_have_mysql" = "1"; then
+- APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -lmysqlclient $mysql_LIBS])
++ APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -l$my_library $mysql_LIBS])
+ fi
+ AC_SUBST(LDADD_dbd_mysql)
+
+--- a/dbd/apr_dbd_mysql.c
++++ b/dbd/apr_dbd_mysql.c
+@@ -1262,7 +1262,9 @@ static apr_status_t thread_end(void *data)
+
+ static void dbd_mysql_init(apr_pool_t *pool)
+ {
++#if MYSQL_VERSION_ID < 100000
+ my_init();
++#endif
+ mysql_thread_init();
+
+ /* FIXME: this is a guess; find out what it really does */
diff --git a/dev-libs/apr-util/files/apr-util-1.6.1-my_boold.patch b/dev-libs/apr-util/files/apr-util-1.6.1-my_boold.patch
new file mode 100644
index 000000000000..6cd875bcde89
--- /dev/null
+++ b/dev-libs/apr-util/files/apr-util-1.6.1-my_boold.patch
@@ -0,0 +1,17 @@
+Description: Reintroduce my_bool to fix build with MySQL 8
+Author: Robie Basak <robie.basak@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/1863026
+Forwarded: no
+Last-Update: 2020-02-18
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/dbd/apr_dbd_mysql.c
++++ b/dbd/apr_dbd_mysql.c
+@@ -41,6 +41,7 @@
+ #endif
+ #endif
+ #include <mysql.h>
++typedef bool my_bool;
+ #include <errmsg.h>
+ #endif
+