summaryrefslogtreecommitdiff
path: root/dev-libs/apr
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-libs/apr
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-libs/apr')
-rw-r--r--dev-libs/apr/Manifest13
-rw-r--r--dev-libs/apr/apr-1.5.2.ebuild143
-rw-r--r--dev-libs/apr/apr-1.6.2.ebuild146
-rw-r--r--dev-libs/apr/apr-1.6.3-r1.ebuild147
-rw-r--r--dev-libs/apr/apr-1.6.3.ebuild146
-rw-r--r--dev-libs/apr/files/apr-1.5.0-cross-types.patch63
-rw-r--r--dev-libs/apr/files/apr-1.5.0-libtool.patch17
-rw-r--r--dev-libs/apr/files/apr-1.5.0-mint.patch22
-rw-r--r--dev-libs/apr/files/apr-1.5.0-sysroot.patch37
-rw-r--r--dev-libs/apr/files/config.layout.patch25
-rw-r--r--dev-libs/apr/metadata.xml12
11 files changed, 771 insertions, 0 deletions
diff --git a/dev-libs/apr/Manifest b/dev-libs/apr/Manifest
new file mode 100644
index 000000000000..e60296adf0fa
--- /dev/null
+++ b/dev-libs/apr/Manifest
@@ -0,0 +1,13 @@
+AUX apr-1.5.0-cross-types.patch 1969 BLAKE2B 1ded46da99aae4a225eef6c6c4e7ec8b27b61efb41a25176e620cec6c0be3ecb1b95eb0d93a446ca6940bec2bf53b4fa810fa28d49c7f655fa767a2c5366745c SHA512 8d91cff44c2926c5da120a3e7a4e54414c1e77cb1815d6683b490499914ca0934c3a1a1edb3dbd7dfd686e3342675ab64b0f498c21fe138befa6b454b5d5c1d8
+AUX apr-1.5.0-libtool.patch 514 BLAKE2B b9d33d1317293c7614a3f0f753e466c7f8acf0792ee5776c68ec9abcacc74d6c55fbd50a3996b06655635ff10e110fa2a8277eb343251dbf6229f8212f481e41 SHA512 e8c2a7a2b5c8171a0d2c8920e053bd861e4fb2044428cb3f6ffc9ccea05694c20b879411f86b967c4269918b5740b1450ecb0e720d74ea0fe9ac305f58ee88d5
+AUX apr-1.5.0-mint.patch 872 BLAKE2B dda2941cbed87117a8a6c488bd8045894686aef0ba219ff489f67dd03b58fb07a05f9e67c54cdff330c65e579c41c992446a465104661bbacbb2525a5b9518eb SHA512 ba71f17ef9f61a8379139f05ca17eb583ad34cbc3ebf5c4f59d011662db6b5c963da5c466c093c3eb98372299d8f202d927a05b52cc7515270ac52fe44ec6daf
+AUX apr-1.5.0-sysroot.patch 1309 BLAKE2B de3dc13a44a9d5071c249875322b7d6be9ed765176f8232b96a5e5088c5764dff8b810377b214999b59380522fdc9d0577217fe1acff5a7ab4b17461d6daf909 SHA512 48609c522225b47df96039174dafa043f77ce5b91f464b14250dd2b30590d6685c9baa03d4ca34937532c26afea8d208fb78158dfc8026a606ff90543b5c8d5d
+AUX config.layout.patch 745 BLAKE2B 9877db3d76339b70f2bd354d118eff0df4d63bc81e4af9e65169c1c5862c3fa3532cc02df8e084b540e7a81091c3b16d50388c6234cba469b15fff896d0428fc SHA512 3a87e718859c8f95793f828b764d240907d65c21fe2c99143815ab835f8b657154092c4ad496e86d79490bd85ef03d394d3acb57a15186f2f06a518b32d77fdf
+DIST apr-1.5.2.tar.bz2 826885 BLAKE2B 62953c31cd6cb9a80142cf65f791543febffd1716d9e4babd55c8010c6fc6e60ba3c287b21e146c19446185c03407f3990d862a0b9816039c2d1b7158ac90cd3 SHA512 d1156ad16abf07887797777b56c2147c890f16d8445829b3e3b4917950d24c5fd2f8febd439992467a5ea0511da562c0fb4a7cfd8a235ab55882388bfa2b919d
+DIST apr-1.6.2.tar.bz2 853363 BLAKE2B 99ff559a5a974c1cd116dbaa65a03c731ed8cdb4393c395b66daee3d6217f17ff1c895dc1cba498b0244f32b8b00dccc76f2d84a5b3dde053458e7557753e446 SHA512 20f449fde522f186b919b64ce6f90073b267557e17438607d31af917eca7941222dd7a7379d66f1430ff68f7e28fbccd140d24f3ca7aae8a876a550b19de284a
+DIST apr-1.6.3.tar.bz2 854100 BLAKE2B ac3d38ef201d92bb2e50a35b6f41de6120e6196f1412377eae56f013dfebbe7fe8461fcd4e5e82be275bde51253a7f1c5f708e780203382b64fe61637d97226c SHA512 f6b8679ae7fafff793c825c78775c84a646267c441710a50664589850e13148719b4eab48ab6e7c95b7aed085cff831115687434a7b160dcc2faa0eae63ac996
+EBUILD apr-1.5.2.ebuild 4088 BLAKE2B 42d181fe7480bffff9577aff115731ac62e70513ee49fe459db6d82ac62431ac2323c698d139285449defe377c7fd90c586342773fb05722003cd4075807f165 SHA512 1675f275f3c37a3141f73434ec17ba6841f153c6a12edc20997f9cf5da462126cdc77d5ff7a625b0a3c9ef8e08480163c6b004ccd374d8e96f6a2a19df1fc775
+EBUILD apr-1.6.2.ebuild 4079 BLAKE2B 0760c6a464e2ba6006a815d335aeb37a8319b6513252d113c65713417cbad361a892d1da65d63eeff7341881724f5790273b326116927e1c70acac8aa054c0e0 SHA512 b0d0cd2ae97fb8d3622d891385f17a2b2098b55278563880d4062f0014ea1831478cbd9363c898431a3073d7340332c3406e55c08eb075752865b021b63d29c6
+EBUILD apr-1.6.3-r1.ebuild 4125 BLAKE2B 554bcdbfb44ade141ca48850d4c62bda067feb802b03f38d1a8b6d46a8f20fed1cf9e3498c54dee16e18bee1ad62df6687ef4839b1c6f5f92fea783a6d2b63a9 SHA512 8b53c6e0b587f63b75cd31099fdadeb4e410a1d825dd681ad0e3f9553a58c02dd1eb3dca47cacd580a925a46e9273c294d1e40f6a5b748d420b38f3e19e53fda
+EBUILD apr-1.6.3.ebuild 4079 BLAKE2B 0760c6a464e2ba6006a815d335aeb37a8319b6513252d113c65713417cbad361a892d1da65d63eeff7341881724f5790273b326116927e1c70acac8aa054c0e0 SHA512 b0d0cd2ae97fb8d3622d891385f17a2b2098b55278563880d4062f0014ea1831478cbd9363c898431a3073d7340332c3406e55c08eb075752865b021b63d29c6
+MISC metadata.xml 433 BLAKE2B 5c4d90e1cdc1424b0be48c81e249e5c3fa6740998cc37c52a164c25238bc7c20ca6a2c4a4924ccd076aaaa74c7655d95d5526a3d110fc0a10b931d9c41de4060 SHA512 7a1b6a73160b108816332f90e4e540f555e748584925ac3c7bb303ce5b6328abf255fc3f1c2b0e13f3c5d763841e847e400e781764083e3e96bc3809871a0df6
diff --git a/dev-libs/apr/apr-1.5.2.ebuild b/dev-libs/apr/apr-1.5.2.ebuild
new file mode 100644
index 000000000000..2c9101846cca
--- /dev/null
+++ b/dev-libs/apr/apr-1.5.2.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils libtool multilib toolchain-funcs
+
+DESCRIPTION="Apache Portable Runtime Library"
+HOMEPAGE="http://apr.apache.org/"
+SRC_URI="mirror://apache/apr/${P}.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc elibc_FreeBSD older-kernels-compatibility selinux static-libs +urandom"
+
+CDEPEND="elibc_glibc? ( >=sys-apps/util-linux-2.16 )
+ elibc_mintlib? ( >=sys-apps/util-linux-2.18 )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-apache )"
+DEPEND="${CDEPEND}
+ >=sys-devel/libtool-2.4.2
+ doc? ( app-doc/doxygen )"
+
+DOCS=(CHANGES NOTICE README)
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.5.0-mint.patch
+ epatch "${FILESDIR}"/${PN}-1.5.0-libtool.patch
+ epatch "${FILESDIR}"/${PN}-1.5.0-cross-types.patch
+ epatch "${FILESDIR}"/${PN}-1.5.0-sysroot.patch #385775
+
+ epatch_user #449048
+
+ AT_M4DIR="build" eautoreconf
+ elibtoolize
+
+ epatch "${FILESDIR}/config.layout.patch"
+}
+
+src_configure() {
+ local myconf=()
+
+ [[ ${CHOST} == *-mint* ]] && export ac_cv_func_poll=no
+
+ if use older-kernels-compatibility; then
+ local apr_cv_accept4 apr_cv_dup3 apr_cv_epoll_create1 apr_cv_sock_cloexec
+ export apr_cv_accept4="no"
+ export apr_cv_dup3="no"
+ export apr_cv_epoll_create1="no"
+ export apr_cv_sock_cloexec="no"
+ fi
+ if tc-is-cross-compiler; then
+ # The apache project relies heavily on AC_TRY_RUN and doesn't
+ # have any sane cross-compiling fallback logic.
+ export \
+ ac_cv_file__dev_zero="yes" \
+ ac_cv_func_sem_open="yes" \
+ ac_cv_negative_eai="yes" \
+ ac_cv_o_nonblock_inherited="no" \
+ ac_cv_struct_rlimit="yes" \
+ ap_cv_atomic_builtins="yes" \
+ apr_cv_accept4="yes" \
+ apr_cv_dup3="yes" \
+ apr_cv_epoll="yes" \
+ apr_cv_epoll_create1="yes" \
+ apr_cv_gai_addrconfig="yes" \
+ apr_cv_mutex_recursive="yes" \
+ apr_cv_mutex_robust_shared="yes" \
+ apr_cv_process_shared_works="yes" \
+ apr_cv_pthreads_lib="-pthread" \
+ apr_cv_sock_cloexec="yes" \
+ apr_cv_tcp_nodelay_with_cork="yes"
+ fi
+
+ if use urandom; then
+ myconf+=( --with-devrandom=/dev/urandom )
+ elif (( ${CHOST#*-hpux11.} <= 11 )); then
+ : # no /dev/*random on hpux11.11 and before, $PN detects this.
+ else
+ myconf+=( --with-devrandom=/dev/random )
+ fi
+
+ tc-is-static-only && myconf+=( --disable-dso )
+
+ # shl_load does not search runpath, but hpux11 supports dlopen
+ [[ ${CHOST} == *-hpux11* ]] && myconf+=( --enable-dso=dlfcn )
+
+ if [[ ${CHOST} == *-solaris2.10 ]]; then
+ case $(<$([[ ${CHOST} != ${CBUILD} ]] && echo "${EPREFIX}/usr/${CHOST}")/usr/include/atomic.h) in
+ *atomic_cas_ptr*) ;;
+ *)
+ elog "You do not have Solaris Patch ID "$(
+ [[ ${CHOST} == sparc* ]] && echo 118884 || echo 118885
+ )" (Problem 4954703) installed on your host ($(hostname)),"
+ elog "using generic atomic operations instead."
+ myconf+=( --disable-nonportable-atomics )
+ ;;
+ esac
+ fi
+
+ econf \
+ --enable-layout=gentoo \
+ --enable-nonportable-atomics \
+ --enable-posix-shm \
+ --enable-threads \
+ $(use_enable static-libs static) \
+ "${myconf[@]}"
+}
+
+src_compile() {
+ if tc-is-cross-compiler; then
+ # This header is the same across targets, so use the build compiler.
+ emake tools/gen_test_char
+ tc-export_build_env BUILD_CC
+ ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} \
+ tools/gen_test_char.c -o tools/gen_test_char || die
+ fi
+
+ emake
+
+ if use doc; then
+ emake dox
+ fi
+}
+
+src_install() {
+ default
+
+ # Prallel install breaks since apr-1.5.1
+ #make -j1 DESTDIR="${D}" install || die
+
+ prune_libtool_files --all
+
+ if use doc; then
+ dohtml -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.
+ # Even in Prefix, we don't need this on AIX.
+ rm -f "${ED}usr/$(get_libdir)/apr.exp"
+}
diff --git a/dev-libs/apr/apr-1.6.2.ebuild b/dev-libs/apr/apr-1.6.2.ebuild
new file mode 100644
index 000000000000..0c823dc89014
--- /dev/null
+++ b/dev-libs/apr/apr-1.6.2.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools libtool ltprune multilib toolchain-funcs
+
+DESCRIPTION="Apache Portable Runtime 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 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc elibc_FreeBSD older-kernels-compatibility selinux static-libs +urandom"
+
+CDEPEND="elibc_glibc? ( >=sys-apps/util-linux-2.16 )
+ elibc_mintlib? ( >=sys-apps/util-linux-2.18 )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-apache )"
+DEPEND="${CDEPEND}
+ >=sys-devel/libtool-2.4.2
+ doc? ( app-doc/doxygen )"
+
+DOCS=( CHANGES NOTICE README )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.0-mint.patch
+ "${FILESDIR}"/${PN}-1.5.0-libtool.patch
+ "${FILESDIR}"/${PN}-1.5.0-cross-types.patch
+ "${FILESDIR}"/${PN}-1.5.0-sysroot.patch #385775
+)
+
+src_prepare() {
+ default
+
+ AT_M4DIR="build" eautoreconf
+ elibtoolize
+
+ eapply "${FILESDIR}/config.layout.patch"
+}
+
+src_configure() {
+ local myconf=(
+ --enable-layout=gentoo
+ --enable-nonportable-atomics
+ --enable-posix-shm
+ --enable-threads
+ $(use_enable static-libs static)
+ )
+
+ [[ ${CHOST} == *-mint* ]] && export ac_cv_func_poll=no
+
+ if use older-kernels-compatibility; then
+ local apr_cv_accept4 apr_cv_dup3 apr_cv_epoll_create1 apr_cv_sock_cloexec
+ export apr_cv_accept4="no"
+ export apr_cv_dup3="no"
+ export apr_cv_epoll_create1="no"
+ export apr_cv_sock_cloexec="no"
+ fi
+ if tc-is-cross-compiler; then
+ # The apache project relies heavily on AC_TRY_RUN and doesn't
+ # have any sane cross-compiling fallback logic.
+ export \
+ ac_cv_file__dev_zero="yes" \
+ ac_cv_func_sem_open="yes" \
+ ac_cv_negative_eai="yes" \
+ ac_cv_o_nonblock_inherited="no" \
+ ac_cv_struct_rlimit="yes" \
+ ap_cv_atomic_builtins="yes" \
+ apr_cv_accept4="yes" \
+ apr_cv_dup3="yes" \
+ apr_cv_epoll="yes" \
+ apr_cv_epoll_create1="yes" \
+ apr_cv_gai_addrconfig="yes" \
+ apr_cv_mutex_recursive="yes" \
+ apr_cv_mutex_robust_shared="yes" \
+ apr_cv_process_shared_works="yes" \
+ apr_cv_pthreads_lib="-pthread" \
+ apr_cv_sock_cloexec="yes" \
+ apr_cv_tcp_nodelay_with_cork="yes"
+ fi
+
+ if use urandom; then
+ myconf+=( --with-devrandom=/dev/urandom )
+ elif (( ${CHOST#*-hpux11.} <= 11 )); then
+ : # no /dev/*random on hpux11.11 and before, $PN detects this.
+ else
+ myconf+=( --with-devrandom=/dev/random )
+ fi
+
+ tc-is-static-only && myconf+=( --disable-dso )
+
+ # shl_load does not search runpath, but hpux11 supports dlopen
+ [[ ${CHOST} == *-hpux11* ]] && myconf+=( --enable-dso=dlfcn )
+
+ if [[ ${CHOST} == *-solaris2.10 ]]; then
+ case $(<$([[ ${CHOST} != ${CBUILD} ]] && echo "${EPREFIX}/usr/${CHOST}")/usr/include/atomic.h) in
+ *atomic_cas_ptr*) ;;
+ *)
+ elog "You do not have Solaris Patch ID "$(
+ [[ ${CHOST} == sparc* ]] && echo 118884 || echo 118885
+ )" (Problem 4954703) installed on your host ($(hostname)),"
+ elog "using generic atomic operations instead."
+ myconf+=( --disable-nonportable-atomics )
+ ;;
+ esac
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ if tc-is-cross-compiler; then
+ # This header is the same across targets, so use the build compiler.
+ emake tools/gen_test_char
+ tc-export_build_env BUILD_CC
+ ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} \
+ tools/gen_test_char.c -o tools/gen_test_char || die
+ fi
+
+ emake
+
+ if use doc; then
+ emake dox
+ fi
+}
+
+src_install() {
+ default
+
+ # Prallel install breaks since apr-1.5.1
+ #make -j1 DESTDIR="${D}" install || die
+
+ prune_libtool_files --all
+
+ 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.
+ # Even in Prefix, we don't need this on AIX.
+ rm -f "${ED%/}/usr/$(get_libdir)/apr.exp"
+}
diff --git a/dev-libs/apr/apr-1.6.3-r1.ebuild b/dev-libs/apr/apr-1.6.3-r1.ebuild
new file mode 100644
index 000000000000..ba7eb74e48bf
--- /dev/null
+++ b/dev-libs/apr/apr-1.6.3-r1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools libtool ltprune multilib toolchain-funcs
+
+DESCRIPTION="Apache Portable Runtime Library"
+HOMEPAGE="https://apr.apache.org/"
+SRC_URI="mirror://apache/apr/${P}.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="1/${PV%.*}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc elibc_FreeBSD older-kernels-compatibility selinux static-libs +urandom"
+
+CDEPEND="elibc_glibc? ( >=sys-apps/util-linux-2.16 )
+ elibc_mintlib? ( >=sys-apps/util-linux-2.18 )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-apache )"
+DEPEND="${CDEPEND}
+ >=sys-devel/libtool-2.4.2
+ doc? ( app-doc/doxygen )"
+
+DOCS=( CHANGES NOTICE README )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.0-mint.patch
+ "${FILESDIR}"/${PN}-1.5.0-libtool.patch
+ "${FILESDIR}"/${PN}-1.5.0-cross-types.patch
+ "${FILESDIR}"/${PN}-1.5.0-sysroot.patch #385775
+)
+
+src_prepare() {
+ default
+
+ mv configure.in configure.ac || die
+ AT_M4DIR="build" eautoreconf
+ elibtoolize
+
+ eapply "${FILESDIR}/config.layout.patch"
+}
+
+src_configure() {
+ local myconf=(
+ --enable-layout=gentoo
+ --enable-nonportable-atomics
+ --enable-posix-shm
+ --enable-threads
+ $(use_enable static-libs static)
+ )
+
+ [[ ${CHOST} == *-mint* ]] && export ac_cv_func_poll=no
+
+ if use older-kernels-compatibility; then
+ local apr_cv_accept4 apr_cv_dup3 apr_cv_epoll_create1 apr_cv_sock_cloexec
+ export apr_cv_accept4="no"
+ export apr_cv_dup3="no"
+ export apr_cv_epoll_create1="no"
+ export apr_cv_sock_cloexec="no"
+ fi
+ if tc-is-cross-compiler; then
+ # The apache project relies heavily on AC_TRY_RUN and doesn't
+ # have any sane cross-compiling fallback logic.
+ export \
+ ac_cv_file__dev_zero="yes" \
+ ac_cv_func_sem_open="yes" \
+ ac_cv_negative_eai="yes" \
+ ac_cv_o_nonblock_inherited="no" \
+ ac_cv_struct_rlimit="yes" \
+ ap_cv_atomic_builtins="yes" \
+ apr_cv_accept4="yes" \
+ apr_cv_dup3="yes" \
+ apr_cv_epoll="yes" \
+ apr_cv_epoll_create1="yes" \
+ apr_cv_gai_addrconfig="yes" \
+ apr_cv_mutex_recursive="yes" \
+ apr_cv_mutex_robust_shared="yes" \
+ apr_cv_process_shared_works="yes" \
+ apr_cv_pthreads_lib="-pthread" \
+ apr_cv_sock_cloexec="yes" \
+ apr_cv_tcp_nodelay_with_cork="yes"
+ fi
+
+ if use urandom; then
+ myconf+=( --with-devrandom=/dev/urandom )
+ elif (( ${CHOST#*-hpux11.} <= 11 )); then
+ : # no /dev/*random on hpux11.11 and before, $PN detects this.
+ else
+ myconf+=( --with-devrandom=/dev/random )
+ fi
+
+ tc-is-static-only && myconf+=( --disable-dso )
+
+ # shl_load does not search runpath, but hpux11 supports dlopen
+ [[ ${CHOST} == *-hpux11* ]] && myconf+=( --enable-dso=dlfcn )
+
+ if [[ ${CHOST} == *-solaris2.10 ]]; then
+ case $(<$([[ ${CHOST} != ${CBUILD} ]] && echo "${EPREFIX}/usr/${CHOST}")/usr/include/atomic.h) in
+ *atomic_cas_ptr*) ;;
+ *)
+ elog "You do not have Solaris Patch ID "$(
+ [[ ${CHOST} == sparc* ]] && echo 118884 || echo 118885
+ )" (Problem 4954703) installed on your host ($(hostname)),"
+ elog "using generic atomic operations instead."
+ myconf+=( --disable-nonportable-atomics )
+ ;;
+ esac
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ if tc-is-cross-compiler; then
+ # This header is the same across targets, so use the build compiler.
+ emake tools/gen_test_char
+ tc-export_build_env BUILD_CC
+ ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} \
+ tools/gen_test_char.c -o tools/gen_test_char || die
+ fi
+
+ emake
+
+ if use doc; then
+ emake dox
+ fi
+}
+
+src_install() {
+ default
+
+ # Prallel install breaks since apr-1.5.1
+ #make -j1 DESTDIR="${D}" install || die
+
+ prune_libtool_files --all
+
+ 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.
+ # Even in Prefix, we don't need this on AIX.
+ rm -f "${ED%/}/usr/$(get_libdir)/apr.exp"
+}
diff --git a/dev-libs/apr/apr-1.6.3.ebuild b/dev-libs/apr/apr-1.6.3.ebuild
new file mode 100644
index 000000000000..0c823dc89014
--- /dev/null
+++ b/dev-libs/apr/apr-1.6.3.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools libtool ltprune multilib toolchain-funcs
+
+DESCRIPTION="Apache Portable Runtime 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 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc elibc_FreeBSD older-kernels-compatibility selinux static-libs +urandom"
+
+CDEPEND="elibc_glibc? ( >=sys-apps/util-linux-2.16 )
+ elibc_mintlib? ( >=sys-apps/util-linux-2.18 )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-apache )"
+DEPEND="${CDEPEND}
+ >=sys-devel/libtool-2.4.2
+ doc? ( app-doc/doxygen )"
+
+DOCS=( CHANGES NOTICE README )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.5.0-mint.patch
+ "${FILESDIR}"/${PN}-1.5.0-libtool.patch
+ "${FILESDIR}"/${PN}-1.5.0-cross-types.patch
+ "${FILESDIR}"/${PN}-1.5.0-sysroot.patch #385775
+)
+
+src_prepare() {
+ default
+
+ AT_M4DIR="build" eautoreconf
+ elibtoolize
+
+ eapply "${FILESDIR}/config.layout.patch"
+}
+
+src_configure() {
+ local myconf=(
+ --enable-layout=gentoo
+ --enable-nonportable-atomics
+ --enable-posix-shm
+ --enable-threads
+ $(use_enable static-libs static)
+ )
+
+ [[ ${CHOST} == *-mint* ]] && export ac_cv_func_poll=no
+
+ if use older-kernels-compatibility; then
+ local apr_cv_accept4 apr_cv_dup3 apr_cv_epoll_create1 apr_cv_sock_cloexec
+ export apr_cv_accept4="no"
+ export apr_cv_dup3="no"
+ export apr_cv_epoll_create1="no"
+ export apr_cv_sock_cloexec="no"
+ fi
+ if tc-is-cross-compiler; then
+ # The apache project relies heavily on AC_TRY_RUN and doesn't
+ # have any sane cross-compiling fallback logic.
+ export \
+ ac_cv_file__dev_zero="yes" \
+ ac_cv_func_sem_open="yes" \
+ ac_cv_negative_eai="yes" \
+ ac_cv_o_nonblock_inherited="no" \
+ ac_cv_struct_rlimit="yes" \
+ ap_cv_atomic_builtins="yes" \
+ apr_cv_accept4="yes" \
+ apr_cv_dup3="yes" \
+ apr_cv_epoll="yes" \
+ apr_cv_epoll_create1="yes" \
+ apr_cv_gai_addrconfig="yes" \
+ apr_cv_mutex_recursive="yes" \
+ apr_cv_mutex_robust_shared="yes" \
+ apr_cv_process_shared_works="yes" \
+ apr_cv_pthreads_lib="-pthread" \
+ apr_cv_sock_cloexec="yes" \
+ apr_cv_tcp_nodelay_with_cork="yes"
+ fi
+
+ if use urandom; then
+ myconf+=( --with-devrandom=/dev/urandom )
+ elif (( ${CHOST#*-hpux11.} <= 11 )); then
+ : # no /dev/*random on hpux11.11 and before, $PN detects this.
+ else
+ myconf+=( --with-devrandom=/dev/random )
+ fi
+
+ tc-is-static-only && myconf+=( --disable-dso )
+
+ # shl_load does not search runpath, but hpux11 supports dlopen
+ [[ ${CHOST} == *-hpux11* ]] && myconf+=( --enable-dso=dlfcn )
+
+ if [[ ${CHOST} == *-solaris2.10 ]]; then
+ case $(<$([[ ${CHOST} != ${CBUILD} ]] && echo "${EPREFIX}/usr/${CHOST}")/usr/include/atomic.h) in
+ *atomic_cas_ptr*) ;;
+ *)
+ elog "You do not have Solaris Patch ID "$(
+ [[ ${CHOST} == sparc* ]] && echo 118884 || echo 118885
+ )" (Problem 4954703) installed on your host ($(hostname)),"
+ elog "using generic atomic operations instead."
+ myconf+=( --disable-nonportable-atomics )
+ ;;
+ esac
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ if tc-is-cross-compiler; then
+ # This header is the same across targets, so use the build compiler.
+ emake tools/gen_test_char
+ tc-export_build_env BUILD_CC
+ ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} \
+ tools/gen_test_char.c -o tools/gen_test_char || die
+ fi
+
+ emake
+
+ if use doc; then
+ emake dox
+ fi
+}
+
+src_install() {
+ default
+
+ # Prallel install breaks since apr-1.5.1
+ #make -j1 DESTDIR="${D}" install || die
+
+ prune_libtool_files --all
+
+ 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.
+ # Even in Prefix, we don't need this on AIX.
+ rm -f "${ED%/}/usr/$(get_libdir)/apr.exp"
+}
diff --git a/dev-libs/apr/files/apr-1.5.0-cross-types.patch b/dev-libs/apr/files/apr-1.5.0-cross-types.patch
new file mode 100644
index 000000000000..266e5676817f
--- /dev/null
+++ b/dev-libs/apr/files/apr-1.5.0-cross-types.patch
@@ -0,0 +1,63 @@
+use standard AC_CHECK_SIZEOF as it supports non-builtin types and
+supports cross-compiling sanely
+
+https://issues.apache.org/bugzilla/show_bug.cgi?id=56053
+
+--- a/configure.in
++++ b/configure.in
+@@ -1684,7 +1684,7 @@ else
+ socklen_t_value="int"
+ fi
+
+-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], pid_t, 8)
++AC_CHECK_SIZEOF(pid_t)
+
+ if test "$ac_cv_sizeof_pid_t" = "$ac_cv_sizeof_short"; then
+ pid_t_fmt='#define APR_PID_T_FMT "hd"'
+@@ -1753,7 +1753,7 @@ APR_CHECK_TYPES_COMPATIBLE(ssize_t, long, [ssize_t_fmt="ld"])
+ APR_CHECK_TYPES_COMPATIBLE(size_t, unsigned int, [size_t_fmt="u"])
+ APR_CHECK_TYPES_COMPATIBLE(size_t, unsigned long, [size_t_fmt="lu"])
+
+-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], ssize_t, 8)
++AC_CHECK_SIZEOF(ssize_t)
+
+ AC_MSG_CHECKING([which format to use for apr_ssize_t])
+ if test -n "$ssize_t_fmt"; then
+@@ -1770,7 +1770,7 @@ fi
+
+ ssize_t_fmt="#define APR_SSIZE_T_FMT \"$ssize_t_fmt\""
+
+-APR_CHECK_SIZEOF_EXTENDED([#include <stddef.h>], size_t, 8)
++AC_CHECK_SIZEOF(size_t)
+
+ AC_MSG_CHECKING([which format to use for apr_size_t])
+ if test -n "$size_t_fmt"; then
+@@ -1787,7 +1787,7 @@ fi
+
+ size_t_fmt="#define APR_SIZE_T_FMT \"$size_t_fmt\""
+
+-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], off_t, 8)
++AC_CHECK_SIZEOF(off_t)
+
+ if test "${ac_cv_sizeof_off_t}${apr_cv_use_lfs64}" = "4yes"; then
+ # Enable LFS
+@@ -1866,7 +1866,7 @@ case $host in
+ ;;
+ *)
+ ino_t_value=ino_t
+- APR_CHECK_SIZEOF_EXTENDED(AC_INCLUDES_DEFAULT, ino_t, $ac_cv_sizeof_long)
++ AC_CHECK_SIZEOF(ino_t)
+ if test $ac_cv_sizeof_ino_t = 4; then
+ if test $ac_cv_sizeof_long = 4; then
+ ino_t_value="unsigned long"
+@@ -1886,8 +1886,8 @@ else
+ bigendian=0
+ fi
+
+-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>
+-#include <sys/uio.h>],struct iovec,0)
++AC_CHECK_SIZEOF(struct iovec,,[AC_INCLUDES_DEFAULT
++#include <sys/uio.h>])
+ if test "$ac_cv_sizeof_struct_iovec" = "0"; then
+ have_iovec=0
+ else
diff --git a/dev-libs/apr/files/apr-1.5.0-libtool.patch b/dev-libs/apr/files/apr-1.5.0-libtool.patch
new file mode 100644
index 000000000000..5368a2689bdf
--- /dev/null
+++ b/dev-libs/apr/files/apr-1.5.0-libtool.patch
@@ -0,0 +1,17 @@
+generate a local copy of libtool for use in compiling
+
+https://bugs.gentoo.org/374355
+
+--- a/configure.in
++++ b/configure.in
+@@ -260,9 +260,7 @@ case $host in
+ fi
+ else
+ dnl libtoolize requires that the following not be indented
+- dnl should become LT_INIT(win32-dll)
+-AC_LIBTOOL_WIN32_DLL
+-AC_PROG_LIBTOOL
++LT_INIT(win32-dll)
+ # get libtool's setting of shlibpath_var
+ eval `grep "^shlibpath_var=[[A-Z_]]*$" $apr_builddir/libtool`
+ if test "x$shlibpath_var" = "x"; then
diff --git a/dev-libs/apr/files/apr-1.5.0-mint.patch b/dev-libs/apr/files/apr-1.5.0-mint.patch
new file mode 100644
index 000000000000..cfe039e962c6
--- /dev/null
+++ b/dev-libs/apr/files/apr-1.5.0-mint.patch
@@ -0,0 +1,22 @@
+--- apr-1.5.0/build/apr_hints.m4
++++ apr-1.5.0/build/apr_hints.m4
+@@ -45,6 +45,8 @@
+ case "$host" in
+ *mint)
+ APR_ADDTO(CPPFLAGS, [-DMINT -D_GNU_SOURCE])
++ apr_cv_pthreads_cflags="none"
++ apr_cv_pthreads_lib="-lpthread"
+ ;;
+ *MPE/iX*)
+ APR_ADDTO(CPPFLAGS, [-DMPE -D_POSIX_SOURCE -D_SOCKET_SOURCE])
+--- apr-1.5.0/build/apr_threads.m4
++++ apr-1.5.0/build/apr_threads.m4
+@@ -198,7 +198,7 @@
+ AC_DEFUN([APR_CHECK_SIGWAIT_ONE_ARG], [
+ AC_CACHE_CHECK(whether sigwait takes one argument,ac_cv_sigwait_one_arg,[
+ AC_TRY_COMPILE([
+-#if defined(__NETBSD__) || defined(DARWIN)
++#if defined(__NETBSD__) || defined(DARWIN) || defined(MINT)
+ /* When using the unproven-pthreads package, we need to pull in this
+ * header to get a prototype for sigwait(). Else things will fail later
+ * on. XXX Should probably be fixed in the unproven-pthreads package.
diff --git a/dev-libs/apr/files/apr-1.5.0-sysroot.patch b/dev-libs/apr/files/apr-1.5.0-sysroot.patch
new file mode 100644
index 000000000000..54c9d649ef07
--- /dev/null
+++ b/dev-libs/apr/files/apr-1.5.0-sysroot.patch
@@ -0,0 +1,37 @@
+https://bugs.gentoo.org/385775
+
+utilize $SYSROOT to find the right includedir tree
+
+drop the -L/-R paths since we know our libdir is the standard path which
+the compiler already knows how to locate
+
+--- a/apr-config.in
++++ b/apr-config.in
+@@ -28,7 +28,7 @@ libdir="@libdir@"
+ datarootdir="@datadir@"
+ datadir="@datadir@"
+-installbuilddir="@installbuilddir@"
+-includedir="@includedir@"
++installbuilddir="${SYSROOT}@installbuilddir@"
++includedir="${SYSROOT}@includedir@"
+
+ CC="@CC@"
+ CPP="@CPP@"
+@@ -183,7 +183,7 @@ while test $# -gt 0; do
+ --link-ld)
+ if test "$location" = "installed"; then
+ ### avoid using -L if libdir is a "standard" location like /usr/lib
+- flags="$flags -L$libdir -l${APR_LIBNAME}"
++ flags="$flags -l${APR_LIBNAME}"
+ else
+ ### this surely can't work since the library is in .libs?
+ flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"
+@@ -200,7 +200,7 @@ while test $# -gt 0; do
+ ### avoid using -L if libdir is a "standard" location like /usr/lib
+ # Since the user is specifying they are linking with libtool, we
+ # *know* that -R will be recognized by libtool.
+- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}"
++ flags="$flags -l${APR_LIBNAME}"
+ else
+ flags="$flags $LA_FILE"
+ fi
diff --git a/dev-libs/apr/files/config.layout.patch b/dev-libs/apr/files/config.layout.patch
new file mode 100644
index 000000000000..9f650a0abe90
--- /dev/null
+++ b/dev-libs/apr/files/config.layout.patch
@@ -0,0 +1,25 @@
+--- a/config.layout
++++ b/config.layout
+@@ -229,3 +229,22 @@
+ infodir: ${exec_prefix}/share/info
+ libsuffix: -${APR_MAJOR_VERSION}
+ </Layout>
++
++# Gentoo layout
++<Layout gentoo>
++ prefix: /usr
++ exec_prefix: ${prefix}
++ bindir: ${exec_prefix}/bin
++ sbindir: ${exec_prefix}/bin
++ libdir: ${exec_prefix}/lib
++ libexecdir: ${exec_prefix}/modules
++ mandir: ${prefix}/man
++ sysconfdir: ${prefix}/conf
++ datadir: /usr/share/apr-${APR_MAJOR_VERSION}
++ installbuilddir: ${datadir}/build-${APR_MAJOR_VERSION}
++ includedir: ${prefix}/include/apr-${APR_MAJOR_VERSION}
++ localstatedir: ${prefix}
++ libsuffix: -${APR_MAJOR_VERSION}
++</Layout>
++
++
diff --git a/dev-libs/apr/metadata.xml b/dev-libs/apr/metadata.xml
new file mode 100644
index 000000000000..c6e4003aa6f7
--- /dev/null
+++ b/dev-libs/apr/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ </maintainer>
+ <use>
+ <flag name="older-kernels-compatibility">Enable binary compatibility with older kernels</flag>
+ <flag name="urandom">Use /dev/urandom instead of /dev/random</flag>
+ </use>
+</pkgmetadata>