From 818b1f87b7bb7e7562ca899bcf4c9ac87eedd391 Mon Sep 17 00:00:00 2001 From: layman Date: Sat, 21 Mar 2015 09:19:31 -0400 Subject: [PATCH] dev-libs/nspr: bump for musl --- dev-libs/nspr/Manifest | 2 + dev-libs/nspr/nspr-4.10.7-r99.ebuild | 117 +++++++++++++++++++++++++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 dev-libs/nspr/nspr-4.10.7-r99.ebuild diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest index 2e0a720..82bf628 100644 --- a/dev-libs/nspr/Manifest +++ b/dev-libs/nspr/Manifest @@ -6,5 +6,7 @@ AUX nspr-4.8.4-darwin-install_name.patch 1102 SHA256 ca17efc9a60f4372b5da9c29ddf AUX nspr-4.8.9-link-flags.patch 995 SHA256 f986c69ff6250f54eb291339ab5503e73cc5cc68af4c3c3ed5a25812bf47b610 SHA512 3c20019b5a378bc0cec1925c2324fc1b72bd1427e9262065952632c406bc6a8f9303fc55aabad472713f5e8656973db5c503dd9072ea01283a6f671dcd26b049 WHIRLPOOL 695310cfd54140b2c333f0b6556d8c049441b246a006cc885d2149a6d73d8d6223964d47d5af87c949ab2693fd320c4ecf67fd120b09862972a39df0cc00c7ca AUX nspr-4.9.5_nspr_config.patch 445 SHA256 7414eaac7630ba3aa9f3c44b439471abb195c96796f78cf5ddfd4e10c68389e8 SHA512 3d3dc60b4bb4a6b469e992239ca7e5702949880bbe3e603691bf7cab199a80e6b9fd89aa3184c26d99185b43785f6f2f7a9a16e061080e13ca02146dd2f172bf WHIRLPOOL d807bc98ca6f47d943f0b6f9a4d33dee387eddf9ae4a9d6a8863697d96c82ae1560d871b76c866b6a85b4eb1d31e9e9f1ce59caa4f66c02bd68a913f822d5a16 DIST nspr-4.10.6.tar.gz 1131328 SHA256 df69ac8b0126f11907792384468adf42712b1d6db9772f4aa20c6d471594644a SHA512 a527a7123b4291903ac69899a82ea7e82a1945550b37f59199140a80d917540fb280172adeabf0fa09420debfd0d39c89c417166cd0a50e1eb6f1929a2a7460d WHIRLPOOL 6f7f422f50343f177896d9243a9ae89878823e92ffd3511131546a32b3cf481c9af34f5fef43c8a7c1d5974fc0959e1fa06ddd67133034563e06128e50a6f1f2 +DIST nspr-4.10.7.tar.gz 1131171 SHA256 389af5cfa863ea9bc6de7b30c15f8a4f9bddd8002f8c6fdc8b33caef43893938 SHA512 bc845b3983ed280dc691e81e08b94b34b8c175e18d455f9e1558a862045df29a3e5c7df291dff7caa0f9d4a9c7e5dd7eb316018f09b9ed444e91502d5a46013e WHIRLPOOL 7bdb1b0d52d2f14403cf93251ad7f6437d59532f50f5b41da9b3ec66f00f1875d624175301920b2f1a251fa27dd4953e15d4da20c131cd5b7b2d049606850869 EBUILD nspr-4.10.6-r99.ebuild 3651 SHA256 1f472f6ac45e1a54ec19dc611a35c6137a1f90c6150bc550d6efd01672887aa3 SHA512 3f273242477cc73f8e9bd5383de4eacb1717ecc6fb426bcbd419588aba9a6eccbd5becca5eb0701e8b3102453942261ce62351d1ef9fae15f1e6e502c53785d4 WHIRLPOOL 9d02deca69c64093d1752bcd1c0cf4da33efd745c1cd5853d2d9899fb9a1b66936572dec9c2902beb5ffe5e941d1b2fc689a7c1cdeb8bff4abc3ffe36fff15f0 +EBUILD nspr-4.10.7-r99.ebuild 4009 SHA256 f41aa51883a595619c47e2a1389198ea9737895eafbe45e7b114f4ed0457966c SHA512 7c7e6d98bf8f63c1e7d6f52951d0636f5ea27c20d245d34366d78974eed5217e819a8c07578565666a36b62053bcdbe748e4076fa1025b3a71ffe733e200b407 WHIRLPOOL 112f1abd47fb1f6db2f16ad136fe31f45f222a9bc10817b0ef440b33432fe0cb3c3504544c1643206e3e167c468ba12628969f4c615869193ed7b08ebc5f802b MISC metadata.xml 160 SHA256 0cc5126362a12cee42ec1197c528a804cf36859329dd2c6d9225726831d14b8b SHA512 ed6f709d55351c1b69f2b43ada124fcc2f8969f8c3867073bb0c68aa502f16247cbcd78734a891e4d1a509d334f6805e5267d2088cd03f3408a636ad9aedc2bb WHIRLPOOL e6bf1791838158287debcc3160dd075dcdf88bc1b33060aefe4687b4451108e55b6f8021fc36f07ab85c4e37a4225444cc2804cf40bd61ba49726bbf12fa4e38 diff --git a/dev-libs/nspr/nspr-4.10.7-r99.ebuild b/dev-libs/nspr/nspr-4.10.7-r99.ebuild new file mode 100644 index 0000000..d8f0386 --- /dev/null +++ b/dev-libs/nspr/nspr-4.10.7-r99.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/nspr-4.10.7-r1.ebuild,v 1.3 2014/12/10 19:34:49 ago Exp $ + +EAPI=5 +WANT_AUTOCONF="2.5" + +inherit autotools eutils multilib toolchain-funcs versionator multilib-minimal + +MIN_PV="$(get_version_component_range 2)" + +DESCRIPTION="Netscape Portable Runtime" +HOMEPAGE="http://www.mozilla.org/projects/nspr/" +SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/${P}.tar.gz" + +LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="debug" + +RDEPEND=" + abi_x86_32? ( + !<=app-emulation/emul-linux-x86-baselibs-20140508-r12 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] + )" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/nspr-config +) + +src_prepare() { + cd "${S}"/nspr || die + epatch "${FILESDIR}"/${PN}-4.7.0-prtime.patch + epatch "${FILESDIR}"/${PN}-4.7.1-solaris.patch + epatch "${FILESDIR}"/${PN}-4.10.6-solaris.patch + epatch "${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch + epatch "${FILESDIR}"/${PN}-4.8.9-link-flags.patch + # We do not need to pass -L$libdir via nspr-config --libs + epatch "${FILESDIR}"/${PN}-4.9.5_nspr_config.patch + + epatch "${FILESDIR}"/${PN}-4.10.6-no-getprotobyname_r.patch + + # We must run eautoconf to regenerate configure + eautoconf + + # make sure it won't find Perl out of Prefix + sed -i -e "s/perl5//g" "${S}"/nspr/configure || die + + # Respect LDFLAGS + sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \ + "${S}"/nspr/config/rules.mk || die +} + +multilib_src_configure() { + # We use the standard BUILD_xxx but nspr uses HOST_xxx + tc-export_build_env BUILD_CC + export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS} + tc-export AR CC CXX RANLIB + [[ ${CBUILD} != ${CHOST} ]] \ + && export CROSS_COMPILE=1 \ + || unset CROSS_COMPILE + + local myconf=() + + # The configure has some fancy --enable-{{n,x}32,64bit} switches + # that trigger some code conditional to platform & arch. This really + # matters for the few common arches (x86, ppc) but we pass a little + # more of them to be future-proof. + + # use ABI first, this will work for most cases + case "${ABI}" in + alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;; + n32) myconf+=( --enable-n32 );; + x32) myconf+=( --enable-x32 );; + s390x|*64) myconf+=( --enable-64bit );; + default) # no abi actually set, fall back to old check + einfo "Running a short build test to determine 64bit'ness" + echo > "${T}"/test.c || die + ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die + case $(file "${T}"/test.o) in + *32-bit*x86-64*) myconf+=( --enable-x32 );; + *64-bit*|*ppc64*|*x86_64*) myconf+=( --enable-64bit );; + *32-bit*|*ppc*|*i386*) ;; + *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";; + esac ;; + *) ;; + esac + + # Ancient autoconf needs help finding the right tools. + LC_ALL="C" ECONF_SOURCE="${S}/nspr" \ + ac_cv_path_AR="${AR}" \ + econf \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + $(use_enable debug) \ + $(use_enable !debug optimize) \ + "${myconf[@]}" +} + +multilib_src_install() { + # Their build system is royally confusing, as usual + MINOR_VERSION=${MIN_PV} # Used for .so version + emake DESTDIR="${D}" install + + einfo "removing static libraries as upstream has requested!" + rm -f "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries." + + # install nspr-config + dobin config/nspr-config + + # Remove stupid files in /usr/bin + rm "${ED}"/usr/bin/prerr.properties || die + + # This is used only to generate prerr.c and prerr.h at build time. + # No other projects use it, and we don't want to depend on perl. + # Talked to upstream and they agreed w/punting. + rm "${ED}"/usr/bin/compile-et.pl || die +} -- 2.0.5