From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-libs/apr/Manifest | 13 +++ dev-libs/apr/apr-1.5.2.ebuild | 143 ++++++++++++++++++++++++ dev-libs/apr/apr-1.6.2.ebuild | 146 ++++++++++++++++++++++++ dev-libs/apr/apr-1.6.3-r1.ebuild | 147 +++++++++++++++++++++++++ dev-libs/apr/apr-1.6.3.ebuild | 146 ++++++++++++++++++++++++ dev-libs/apr/files/apr-1.5.0-cross-types.patch | 63 +++++++++++ dev-libs/apr/files/apr-1.5.0-libtool.patch | 17 +++ dev-libs/apr/files/apr-1.5.0-mint.patch | 22 ++++ dev-libs/apr/files/apr-1.5.0-sysroot.patch | 37 +++++++ dev-libs/apr/files/config.layout.patch | 25 +++++ dev-libs/apr/metadata.xml | 12 ++ 11 files changed, 771 insertions(+) create mode 100644 dev-libs/apr/Manifest create mode 100644 dev-libs/apr/apr-1.5.2.ebuild create mode 100644 dev-libs/apr/apr-1.6.2.ebuild create mode 100644 dev-libs/apr/apr-1.6.3-r1.ebuild create mode 100644 dev-libs/apr/apr-1.6.3.ebuild create mode 100644 dev-libs/apr/files/apr-1.5.0-cross-types.patch create mode 100644 dev-libs/apr/files/apr-1.5.0-libtool.patch create mode 100644 dev-libs/apr/files/apr-1.5.0-mint.patch create mode 100644 dev-libs/apr/files/apr-1.5.0-sysroot.patch create mode 100644 dev-libs/apr/files/config.layout.patch create mode 100644 dev-libs/apr/metadata.xml (limited to 'dev-libs/apr') 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 ], 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 ], 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 ], 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 ], 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 +-#include ],struct iovec,0) ++AC_CHECK_SIZEOF(struct iovec,,[AC_INCLUDES_DEFAULT ++#include ]) + 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} + ++ ++# Gentoo layout ++ ++ 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} ++ ++ ++ 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 @@ + + + + + polynomial-c@gentoo.org + Lars Wendler + + + Enable binary compatibility with older kernels + Use /dev/urandom instead of /dev/random + + -- cgit v1.2.3