apr-util: prevent recursive linking
authorSebastian Kemper <sebastian_ml@gmx.net>
Wed, 15 Jan 2020 18:27:17 +0000 (19:27 +0100)
committerSebastian Kemper <sebastian_ml@gmx.net>
Wed, 15 Jan 2020 18:27:19 +0000 (19:27 +0100)
004-avoid_ldap_by_defaut.patch:
 By default use --avoid-ldap since apache2 is the only user, and we don't
 want to add extra dependencies to other apr-utils rdepends. Patch from
 Ryan Niebur <ryanryan52@gmail.com>, copied from Debian.

005-apu_config_dont_list_indep_libs.patch:
 Prevent recursive linking of dependent libraries by apr-util users.
 Patch from Peter Samuelson <peter@p12n.org>, also copied from Debian.
 Makes libexpat and libiconv private.

006-avoid_db_by-default.patch:
 Make apu-config not output dbm libs by default. See Debian #622081.
 Patch from Stefan Fritsch <sf@debian.org>, also copied from Debian

While bumping the revision also correct license information.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
libs/apr-util/Makefile
libs/apr-util/patches/004-avoid_ldap_by_defaut.patch [new file with mode: 0644]
libs/apr-util/patches/005-apu_config_dont_list_indep_libs.patch [new file with mode: 0644]
libs/apr-util/patches/006-avoid_db_by-default.patch [new file with mode: 0644]

index e948c98bdad0f4ee7e64915c168b1ef630cdd8eb..d0efff1a4cd43f67b0dd1b91622be13ac40586c9 100644 (file)
@@ -9,14 +9,17 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=apr-util
 PKG_VERSION:=1.6.1
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@APACHE/apr/
 PKG_HASH:=d3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b
 PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>, \
                Sebastian Kemper <sebastian_ml@gmx.net>
-PKG_LICENSE:=Apache License
+
+PKG_LICENSE:=Apache-2.0
+PKG_LICENSE_FILES:=LICENSE
+
 PKG_CPE_ID:=cpe:/a:apache:apr-util
 
 PKG_BUILD_PARALLEL:=1
diff --git a/libs/apr-util/patches/004-avoid_ldap_by_defaut.patch b/libs/apr-util/patches/004-avoid_ldap_by_defaut.patch
new file mode 100644 (file)
index 0000000..a086f2e
--- /dev/null
@@ -0,0 +1,34 @@
+From: Ryan Niebur <ryanryan52@gmail.com>
+Subject: by default --avoid-ldap since apache2 is the only user, and we don't
+ want to add extra dependencies to other apr-utils rdepends
+
+--- a/apu-config.in
++++ b/apu-config.in
+@@ -30,7 +30,8 @@ includedir="@includedir@"
+ LIBS="@APRUTIL_EXPORT_LIBS@"
+ INCLUDES="@APRUTIL_INCLUDES@"
+ LDFLAGS="@APRUTIL_LDFLAGS@"
+-LDAP_LIBS="@LDADD_ldap@"
++ORIG_LDAP_LIBS="@LDADD_ldap@"
++LDAP_LIBS=""
+ DBM_LIBS="@LDADD_dbm_db@ @LDADD_dbm_gdbm@ @LDADD_dbm_ndbm@"
+ APRUTIL_LIBNAME="@APRUTIL_LIBNAME@"
+@@ -55,7 +56,7 @@ Known values for OPTION are:
+   --includedir      print location where headers are installed
+   --ldflags         print linker flags
+   --libs            print library information
+-  --avoid-ldap      do not include ldap library information with --libs
++  --avoid-ldap      do not include ldap library information with --libs (default on OpenWrt)
+   --ldap-libs       print library information to link with ldap
+   --avoid-dbm       do not include DBM library information with --libs
+   --dbm-libs        print additional library information to link with DBM
+@@ -121,7 +122,7 @@ while test $# -gt 0; do
+     flags="$flags $LDAP_LIBS $DBM_LIBS $LIBS"
+     ;;
+     --ldap-libs)
+-    flags="$flags $LDAP_LIBS"
++    flags="$flags $ORIG_LDAP_LIBS"
+     ;;
+     --dbm-libs)
+     flags="$flags $DBM_LIBS"
diff --git a/libs/apr-util/patches/005-apu_config_dont_list_indep_libs.patch b/libs/apr-util/patches/005-apu_config_dont_list_indep_libs.patch
new file mode 100644 (file)
index 0000000..7f4b565
--- /dev/null
@@ -0,0 +1,31 @@
+From: Peter Samuelson <peter@p12n.org>
+Subject: Prevent recursive linking of dependent libraries by apr-util users.
+
+---
+ apr-util.pc.in |    5 +++--
+ apu-config.in  |    2 +-
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+--- a/apr-util.pc.in
++++ b/apr-util.pc.in
+@@ -8,6 +8,7 @@ Name: APR Utils
+ Description: Companion library for APR
+ Version: @APRUTIL_DOTTED_VERSION@
+ # assume that apr-util requires libapr of same major version
+-Requires: apr-@APRUTIL_MAJOR_VERSION@
+-Libs: -L${libdir} -l@APRUTIL_LIBNAME@ @LDADD_ldap@ @APRUTIL_EXPORT_LIBS@
++Requires.private: apr-@APRUTIL_MAJOR_VERSION@
++Libs: -L${libdir} -l@APRUTIL_LIBNAME@ @LDADD_ldap@
++Libs.private: @APRUTIL_EXPORT_LIBS@
+ Cflags: -I${includedir}
+--- a/apu-config.in
++++ b/apu-config.in
+@@ -27,7 +27,7 @@ bindir="@bindir@"
+ libdir="@libdir@"
+ includedir="@includedir@"
+-LIBS="@APRUTIL_EXPORT_LIBS@"
++LIBS=
+ INCLUDES="@APRUTIL_INCLUDES@"
+ LDFLAGS="@APRUTIL_LDFLAGS@"
+ ORIG_LDAP_LIBS="@LDADD_ldap@"
diff --git a/libs/apr-util/patches/006-avoid_db_by-default.patch b/libs/apr-util/patches/006-avoid_db_by-default.patch
new file mode 100644 (file)
index 0000000..033bbbf
--- /dev/null
@@ -0,0 +1,35 @@
+From: Stefan Fritsch <sf@debian.org>
+Subject: Make apu-config not output dbm libs by default. See #622081
+
+--- a/apu-config.in
++++ b/apu-config.in
+@@ -32,7 +32,8 @@ INCLUDES="@APRUTIL_INCLUDES@"
+ LDFLAGS="@APRUTIL_LDFLAGS@"
+ ORIG_LDAP_LIBS="@LDADD_ldap@"
+ LDAP_LIBS=""
+-DBM_LIBS="@LDADD_dbm_db@ @LDADD_dbm_gdbm@ @LDADD_dbm_ndbm@"
++ORIG_DBM_LIBS="@LDADD_dbm_db@ @LDADD_dbm_gdbm@ @LDADD_dbm_ndbm@"
++DBM_LIBS=""
+ APRUTIL_LIBNAME="@APRUTIL_LIBNAME@"
+@@ -58,8 +59,8 @@ Known values for OPTION are:
+   --libs            print library information
+   --avoid-ldap      do not include ldap library information with --libs (default on OpenWrt)
+   --ldap-libs       print library information to link with ldap
+-  --avoid-dbm       do not include DBM library information with --libs
+-  --dbm-libs        print additional library information to link with DBM
++  --avoid-dbm       do not include DBM library information with --libs (default on OpenWrt)
++  --dbm-libs        print library information to link with DBM
+   --srcdir          print APR-util source directory
+   --link-ld         print link switch(es) for linking to APR-util
+   --link-libtool    print the libtool inputs for linking to APR-util
+@@ -125,7 +126,7 @@ while test $# -gt 0; do
+     flags="$flags $ORIG_LDAP_LIBS"
+     ;;
+     --dbm-libs)
+-    flags="$flags $DBM_LIBS"
++    flags="$flags $ORIG_DBM_LIBS"
+     ;;
+     --includedir)
+     if test "$location" = "installed"; then