apr-util: update to 1.6.3
authorkrant <[email protected]>
Mon, 5 Feb 2024 11:41:44 +0000 (13:41 +0200)
committerRosen Penev <[email protected]>
Wed, 7 Feb 2024 22:00:33 +0000 (14:00 -0800)
- Remove upstreamed patches
- Fix OS path leak in iconv configure script

Signed-off-by: krant <[email protected]>
libs/apr-util/Makefile
libs/apr-util/patches/002-fix-gdbm-error-handling.patch [deleted file]
libs/apr-util/patches/003-support_mariadb.patch [deleted file]

index ccc45872a3fe5f2b7856c77d620cd52330542a26..f953263c2f06457f3edff02cf63b8c618b5ea235 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=apr-util
-PKG_VERSION:=1.6.1
-PKG_RELEASE:=7
+PKG_VERSION:=1.6.3
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@APACHE/apr/
-PKG_HASH:=d3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b
+PKG_HASH:=a41076e3710746326c3945042994ad9a4fcac0ce0277dd8fea076fec3c9772b5
 PKG_MAINTAINER:=Thomas Heil <[email protected]>
 
 PKG_LICENSE:=Apache-2.0
@@ -49,6 +49,11 @@ $(call Package/libaprutil/Default)
   TITLE:=Apache Portable Runtime Utility Library
 endef
 
+## Prevent apu-iconv.m4 to append "/lib" to LDFLAGS if ICONV_PREFIX is empty
+ifeq ($(ICONV_PREFIX),)
+ICONV_PREFIX=no
+endif
+
 CONFIGURE_ARGS += \
        --with-apr="$(STAGING_DIR)/usr/bin/apr-1-config" \
        --with-expat="$(STAGING_DIR)/usr" \
diff --git a/libs/apr-util/patches/002-fix-gdbm-error-handling.patch b/libs/apr-util/patches/002-fix-gdbm-error-handling.patch
deleted file mode 100644 (file)
index dabdbf8..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=889170
-# needs to be submitted upstream
---- a/dbm/apr_dbm_gdbm.c
-+++ b/dbm/apr_dbm_gdbm.c
-@@ -36,13 +36,22 @@
- static apr_status_t g2s(int gerr)
- {
-     if (gerr == -1) {
--        /* ### need to fix this */
--        return APR_EGENERAL;
-+        return APR_OS_START_USEERR + gdbm_errno;
-     }
-     return APR_SUCCESS;
- }
-+static apr_status_t gdat2s(datum d)
-+{
-+    if (d.dptr == NULL) {
-+        return APR_OS_START_USEERR + gdbm_errno;
-+    }
-+
-+    return APR_SUCCESS;
-+}
-+
-+
- static apr_status_t datum_cleanup(void *dptr)
- {
-     if (dptr)
-@@ -55,19 +64,15 @@ static apr_status_t set_error(apr_dbm_t
- {
-     apr_status_t rv = APR_SUCCESS;
--    /* ### ignore whatever the DBM said (dbm_said); ask it explicitly */
--
--    if ((dbm->errcode = gdbm_errno) == GDBM_NO_ERROR) {
-+    if (dbm_said == APR_SUCCESS) {
-+        dbm->errcode = GDBM_NO_ERROR;
-         dbm->errmsg = NULL;
-     }
-     else {
-+        dbm->errcode = dbm_said;
-         dbm->errmsg = gdbm_strerror(gdbm_errno);
--        rv = APR_EGENERAL;        /* ### need something better */
-     }
--    /* captured it. clear it now. */
--    gdbm_errno = GDBM_NO_ERROR;
--
-     return rv;
- }
-@@ -144,7 +149,7 @@ static apr_status_t vt_gdbm_fetch(apr_db
-     /* store the error info into DBM, and return a status code. Also, note
-        that *pvalue should have been cleared on error. */
--    return set_error(dbm, APR_SUCCESS);
-+    return set_error(dbm, gdat2s(rd));
- }
- static apr_status_t vt_gdbm_store(apr_dbm_t *dbm, apr_datum_t key,
-@@ -203,7 +208,7 @@ static apr_status_t vt_gdbm_firstkey(apr
-                                   apr_pool_cleanup_null);
-     /* store any error info into DBM, and return a status code. */
--    return set_error(dbm, APR_SUCCESS);
-+    return set_error(dbm, gdat2s(rd));
- }
- static apr_status_t vt_gdbm_nextkey(apr_dbm_t *dbm, apr_datum_t *pkey)
-@@ -223,7 +228,7 @@ static apr_status_t vt_gdbm_nextkey(apr_
-                                   apr_pool_cleanup_null);
-     /* store any error info into DBM, and return a status code. */
--    return set_error(dbm, APR_SUCCESS);
-+    return set_error(dbm, gdat2s(rd));
- }
- static void vt_gdbm_freedatum(apr_dbm_t *dbm, apr_datum_t data)
diff --git a/libs/apr-util/patches/003-support_mariadb.patch b/libs/apr-util/patches/003-support_mariadb.patch
deleted file mode 100644 (file)
index 1086e19..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-# patch by Kris Karas fom
-# https://bz.apache.org/bugzilla/attachment.cgi?id=35326&action=diff
---- 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_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_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 "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_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 *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 */