Bug#927693: unblock: apr-util/1.6.1-4
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package apr-util
It fixes an RC bug which broke mariadb support.
Changelog/debdiff is included below.
unblock apr-util/1.6.1-4
Cheers,
Stefan
diff -Nru apr-util-1.6.1/debian/changelog apr-util-1.6.1/debian/changelog
--- apr-util-1.6.1/debian/changelog 2018-09-18 21:14:24.000000000 +0200
+++ apr-util-1.6.1/debian/changelog 2019-04-21 09:39:02.000000000 +0200
@@ -1,3 +1,9 @@
+apr-util (1.6.1-4) unstable; urgency=medium
+
+ * Fix libaprutil1-dbd-mysql with mariadb 10.3. Closes: #926400
+
+ -- Stefan Fritsch <sf@debian.org> Sun, 21 Apr 2019 09:39:02 +0200
+
apr-util (1.6.1-3) unstable; urgency=medium
[ Stefan Fritsch ]
diff -Nru apr-util-1.6.1/debian/patches/support_mariadb.patch apr-util-1.6.1/debian/patches/support_mariadb.patch
--- apr-util-1.6.1/debian/patches/support_mariadb.patch 2018-02-25 10:59:52.000000000 +0100
+++ apr-util-1.6.1/debian/patches/support_mariadb.patch 2019-04-21 08:56:45.000000000 +0200
@@ -1,46 +1,125 @@
+# patch by Kris Karas fom
+# https://bz.apache.org/bugzilla/attachment.cgi?id=35326&action=diff
--- apr-util.orig/build/dbd.m4
+++ apr-util/build/dbd.m4
-@@ -176,10 +176,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
+@@ -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_PROG([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,32 +179,40 @@ 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_LINK_IFELSE([#include <my_global.h>
-+ int main(int a, char **b) { mysql_init(); return 0; }],
-+ [apu_have_mysql=1], [apu_have_mysql=0])
-+ if test "$apu_have_mysql" = "0"; then
- 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>])
+- 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
+- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
++ 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_PROG([MYSQL_CONFIG],[mariadb_config],,[$withval/bin])
+ fi
- 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]),
-@@ -207,11 +212,17 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
+ 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`"
++ 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 "
++ mysql_CPPFLAGS="-I$withval/include"
++ mysql_LDFLAGS="-L$withval/lib "
+ fi
+
+ APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
+@@ -207,18 +220,15 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
APR_ADDTO(LIBS, [$mysql_LIBS])
AC_MSG_NOTICE(checking for mysql in $withval)
-+ AC_LINK_IFELSE([#include <my_global.h>
-+ int main(int a, char **b) { mysql_init(); return 0; }],
-+ [apu_have_mysql=1], [apu_have_mysql=0])
-+ if test "$apu_have_mysql" != "1"; then
- 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>])
+- 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>])
-
-+ else
-+ AC_CHECK_HEADERS([mysql.h my_global.h my_sys.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 "$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]),
-@@ -229,7 +240,7 @@ AC_DEFUN([APU_CHECK_DBD_MYSQL], [
++ 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 $mysql_LIBS])
++ APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -l$my_library $mysql_LIBS])
fi
AC_SUBST(LDADD_dbd_mysql)
+--- apr-util.orig/dbd/apr_dbd_mysql.c
++++ apr-util/dbd/apr_dbd_mysql.c
+@@ -1262,7 +1262,9 @@ static apr_status_t thread_end(void *dat
+
+ 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 */
Reply to: