diff options
Diffstat (limited to 'dev-libs/apr-util')
-rw-r--r-- | dev-libs/apr-util/Manifest | 3 | ||||
-rw-r--r-- | dev-libs/apr-util/apr-util-1.6.3.ebuild | 147 | ||||
-rw-r--r-- | dev-libs/apr-util/files/apr-util-1.6.3-fix-pkgconfig-libs.patch | 29 |
3 files changed, 179 insertions, 0 deletions
diff --git a/dev-libs/apr-util/Manifest b/dev-libs/apr-util/Manifest index d03cde5d9364..ecc634e6d151 100644 --- a/dev-libs/apr-util/Manifest +++ b/dev-libs/apr-util/Manifest @@ -4,6 +4,9 @@ AUX apr-util-1.6.1-fix-gdbm-error-handling.patch 2272 BLAKE2B ca68b87d6f19614cfb AUX apr-util-1.6.1-libtool.patch 533 BLAKE2B d942a897aaeeb543e4dbb4fbaac7b54f4ac0e6791a65fcf8d9c343b99f32f2a67ba8a19eee5277a711d7851ca139a5bed81f7a13dc3c72948f49e58fdacc8aea SHA512 6df7d11aedffef6f6147adf08b7e008e1c0d0a142b9abd6c4f7bed2df6a2c44131a629ee74c9a16e613dba62d27106ea137758981456b509055a437765795b04 AUX apr-util-1.6.1-mariadb-support.patch 4929 BLAKE2B 9f8a06e657386f5f773642f36f0897bba5e55270e860f2f1edc86ebe44214395a64e70c3f984f324328a8f7a6276c86cb46caca16719ab3ad51aff995868818f SHA512 edd5e1cd7d31e7bfb1b166c162ad8c69c704c8e9a09e85770df3b625ed918ed52918a16728a9b4d69370ccc75ade32dd64ef73b31ce6e8dac7a360fe44ca34e7 AUX apr-util-1.6.1-my_bool.patch 311 BLAKE2B c0fdf523983dc75ff977c8f602678cdd7d0b3e539fc266891e2266fa3b60e0971e93d77f2e28ed95959d8ca62bca4f9f566fefea525c845d49ce545ee6b5a99a SHA512 ed7d7857be8b5d29cc17a7216c1b06134798eb5129d50389bb0d5484a46e19e3169f8cea80cab7f845548e528a2cd9909b72016a7216b402092ae15879db792c +AUX apr-util-1.6.3-fix-pkgconfig-libs.patch 982 BLAKE2B f18aa34a3fa0766020ead08b946847bbd8647c7be3485fe78cdff71f742b335969d1065c5ecc8f91f098fb705e616fe78b2c9581aab3770dd736f2d7a36ca732 SHA512 eb1e98d1db892656990ddfc6757e138264790ca37f981d580c0ff16a6e01288a0214898c014ff5c8fbe8ca2eb2df98b17bf3ae61046ae12d20f3ca84f91494a5 DIST apr-util-1.6.1.tar.bz2 428595 BLAKE2B ab6eaf1594aaa1c7aae151319b630b83bdb8b68ec04f0e2b429b7c7789bdf274873270200ba43701359e2502d2be8624d8e42a56a5f399ec95a841e7c73ce706 SHA512 40eff8a37c0634f7fdddd6ca5e596b38de15fd10767a34c30bbe49c632816e8f3e1e230678034f578dd5816a94f246fb5dfdf48d644829af13bf28de3225205d +DIST apr-util-1.6.3.tar.bz2 432692 BLAKE2B 5eb56c45ba9d87ff3e3769439a3a9a858a1947de68b34892c729f39736fc41117a41c630c3c4cfb07b444c4ee0d5853ec5be158e8fa0b0c0ab89f0cb51cc9c6d SHA512 8050a481eeda7532ef3751dbd8a5aa6c48354d52904a856ef9709484f4b0cc2e022661c49ddf55ec58253db22708ee0607dfa7705d9270e8fee117ae4f06a0fe EBUILD apr-util-1.6.1-r10.ebuild 3837 BLAKE2B 964390753d1270160680eb8eabbee019f40568a7b9c37eea72f9bec2968c81aa2eb0d1868589d636eeee96a2310420ee92fbe6d8eb0baa9f045c44e053ab6420 SHA512 ebd329003ea8bd14b879c442ce7b802f21c5835f34f79e9082a2575ec89452f7e979cd38347dc3a620f03e70efef84e44e1aeea07af09b4bd2a1fe6af0462329 +EBUILD apr-util-1.6.3.ebuild 3780 BLAKE2B 733c041fd83ae2720ce8859f8dbdba5c3ca242ced58773b97045e01f57ff6db38e9bd31d1716ff7dbdafb963f44c178dad53970331d7baf835186c8b6e224c23 SHA512 ff7ec176b21f80fedd2017eee28ac57470175e42cc04fdb80c900663d85955ebf1fda1fbeafd38e8fa3f1d55ac4fc2b59c39f30a220f36e7f0ae993d18f99589 MISC metadata.xml 469 BLAKE2B d4ef8b9223183a322e324290e26e78fd291bfd3e60b48a18d1345f0aaf467302cabb62ae330ee5282bf38fcdf84a020dcca1b32a8351e3494d9fecd723196031 SHA512 727443f6ab071b3c657287a698ccaccea336a3b861f199dd07c4472cd61e1252e2a25f24a86dcdd72cedcfb73fb6cb0ebe0cbdc93220223dab5501e9626ecb4e diff --git a/dev-libs/apr-util/apr-util-1.6.3.ebuild b/dev-libs/apr-util/apr-util-1.6.3.ebuild new file mode 100644 index 000000000000..6a870a60553b --- /dev/null +++ b/dev-libs/apr-util/apr-util-1.6.3.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Usually apr-util has the same PV as apr, but in case of security fixes, this may change. +# APR_PV="${PV}" +APR_PV="1.7.2" + +inherit autotools db-use multilib toolchain-funcs + +DESCRIPTION="Apache Portable Runtime Utility Library" +HOMEPAGE="https://apr.apache.org/" +SRC_URI="mirror://apache/apr/${P}.tar.bz2" + +LICENSE="Apache-2.0" +SLOT="1" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="berkdb doc gdbm ldap mysql nss odbc openssl postgres sqlite static-libs" + +RDEPEND=" + >=dev-libs/apr-${APR_PV}:1= + dev-libs/expat + virtual/libcrypt:= + berkdb? ( >=sys-libs/db-4:= ) + gdbm? ( sys-libs/gdbm:= ) + ldap? ( net-nds/openldap:= ) + mysql? ( + || ( + dev-db/mariadb-connector-c + >=dev-db/mysql-connector-c-8 + ) + ) + nss? ( dev-libs/nss ) + odbc? ( dev-db/unixODBC ) + openssl? ( dev-libs/openssl:= ) + postgres? ( dev-db/postgresql:= ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=sys-devel/libtool-2.4.2 + doc? ( app-doc/doxygen ) +" + +DOCS=( CHANGES NOTICE README ) + +PATCHES=( + "${FILESDIR}"/${PN}-1.5.3-sysroot.patch # bug #385775 + "${FILESDIR}"/${PN}-1.6.1-libtool.patch # bug #779487 + "${FILESDIR}"/${PN}-1.6.1-my_bool.patch + "${FILESDIR}"/${PN}-1.6.1-drop-my_init.patch + "${FILESDIR}"/${PN}-1.6.3-fix-pkgconfig-libs.patch +) + +src_prepare() { + default + + # Fix usage of libmysqlclient (bug #620230) + grep -lrF "libmysqlclient_r" "${S}" \ + | xargs sed 's@libmysqlclient_r@libmysqlclient@g' -i \ + || die + + mv configure.{in,ac} || die + eautoreconf +} + +src_configure() { + local myconf=( + --datadir="${EPREFIX}"/usr/share/apr-util-1 + --with-apr="${ESYSROOT}"/usr + --with-expat="${EPREFIX}"/usr + --without-sqlite2 + $(use_with gdbm) + $(use_with ldap) + $(use_with mysql) + $(use_with nss) + $(use_with odbc) + $(use_with openssl) + $(use_with postgres pgsql) + $(use_with sqlite sqlite3) + ) + + tc-is-static-only && myconf+=( --disable-util-dso ) + + if use berkdb; then + local db_version + db_version="$(db_findver sys-libs/db)" || die "Unable to find Berkeley DB version" + db_version="$(db_ver_to_slot "${db_version}")" + db_version="${db_version/\./}" + myconf+=( + --with-dbm=db${db_version} + # We use ${T} for the libdir because otherwise it'd simply be the normal + # system libdir. That's pointless as the compiler will search it for + # us already. This makes cross-compiling and such easier. + --with-berkeley-db="$(db_includedir 2>/dev/null):${T}" + ) + else + myconf+=( --without-berkeley-db ) + fi + + if use nss || use openssl ; then + # bug #518708 + myconf+=( --with-crypto ) + fi + + econf "${myconf[@]}" + + # Use the current env build settings rather than whatever apr was built with. + sed -i -r \ + -e "/^(apr_builddir|apr_builders|top_builddir)=/s:=:=${SYSROOT}:" \ + -e "/^CC=/s:=.*:=$(tc-getCC):" \ + -e '/^(C|CPP|CXX|LD)FLAGS=/d' \ + -e '/^LTFLAGS/s:--silent::' \ + build/rules.mk || die +} + +src_compile() { + emake all $(usev doc dox) +} + +src_test() { + # Building tests in parallel is broken + emake -j1 check +} + +src_install() { + default + + find "${ED}" -name "*.la" -delete || die + if [[ -d "${ED}/usr/$(get_libdir)/apr-util-${SLOT}" ]] ; then + find "${ED}/usr/$(get_libdir)/apr-util-${SLOT}" -name "*.a" -delete || die + fi + + if ! use static-libs ; then + find "${ED}" -name "*.a" -not -name "*$(get_libname)" -delete || die + fi + + if use doc ; then + docinto html + dodoc -r docs/dox/html/* + fi + + # This file is only used on AIX systems, which Gentoo is not, + # and causes collisions between the SLOTs, so remove it. + rm "${ED}/usr/$(get_libdir)/aprutil.exp" || die +} diff --git a/dev-libs/apr-util/files/apr-util-1.6.3-fix-pkgconfig-libs.patch b/dev-libs/apr-util/files/apr-util-1.6.3-fix-pkgconfig-libs.patch new file mode 100644 index 000000000000..06c8e5d2eb07 --- /dev/null +++ b/dev-libs/apr-util/files/apr-util-1.6.3-fix-pkgconfig-libs.patch @@ -0,0 +1,29 @@ +https://bugs.gentoo.org/811765 +https://sources.debian.org/patches/apr-util/1.6.3-1/apu_config_dont_list_indep_libs.patch/ + +From: Peter Samuelson <peter@p12n.org> +Subject: Prevent recursive linking of dependent libraries by apr-util users. + +--- 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="${SYSROOT}@includedir@" + +-LIBS="@APRUTIL_EXPORT_LIBS@" ++LIBS= + INCLUDES="@APRUTIL_INCLUDES@" + LDFLAGS="@APRUTIL_LDFLAGS@" + LDAP_LIBS="@LDADD_ldap@" |