Skip to content

Commit

Permalink
dev-libs/apr: Bump to version 1.6.5
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.49, Repoman-2.3.10
  • Loading branch information
Lars Wendler committed Sep 15, 2018
1 parent b2a74e8 commit a90820c
Show file tree
Hide file tree
Showing 2 changed files with 157 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-libs/apr/Manifest
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
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
DIST apr-1.6.5.tar.bz2 855393 BLAKE2B ee01a841aaf5e98175c77e406baebcd82a2148bb8220f2cfac00d91dff38525606bb0f66ecb549eb6edf1fece53cb4eec4876423a864f09ce42bd0d999dc77e6 SHA512 d3511e320457b5531f565813e626e7941f6b82864852db6aa03dd298a65dbccdcdc4bd580f5314f8be45d268388edab25efe88cf8340b7d2897a4dbe9d0a41fc
156 changes: 156 additions & 0 deletions dev-libs/apr/apr-1.6.5.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

inherit autotools libtool 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 ~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
"${FILESDIR}"/${PN}-1.6.3-skip-known-failing-tests.patch
)

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)
--with-installbuilddir=/usr/share/${PN}/build
)

[[ ${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_test() {
# Building tests in parallel is broken
emake -j1 check
}

src_install() {
default

# Prallel install breaks since apr-1.5.1
#make -j1 DESTDIR="${D}" install || die

if ! use static-libs; then
find "${ED%/}" -name '*.la' -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.
# Even in Prefix, we don't need this on AIX.
rm -f "${ED%/}/usr/$(get_libdir)/apr.exp"
}

0 comments on commit a90820c

Please sign in to comment.