Gentoo Archives: gentoo-musl

From: Felix Janda <felix.janda@××××××.de>
To: gentoo-musl@l.g.o
Subject: [gentoo-musl] [PATCH 2/2] dev-libs/nspr: Add unstable version 4.10.9
Date: Sat, 05 Sep 2015 11:31:24
Message-Id: 20150905112738.GB13020@nyan
1 ---
2 dev-libs/nspr/Manifest | 2 +
3 dev-libs/nspr/nspr-4.10.9-r99.ebuild | 122 +++++++++++++++++++++++++++++++++++
4 2 files changed, 124 insertions(+)
5 create mode 100644 dev-libs/nspr/nspr-4.10.9-r99.ebuild
6
7 diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest
8 index 7c0f1b9..39a34a8 100644
9 --- a/dev-libs/nspr/Manifest
10 +++ b/dev-libs/nspr/Manifest
11 @@ -6,5 +6,7 @@ AUX nspr-4.8.4-darwin-install_name.patch 1102 SHA256 ca17efc9a60f4372b5da9c29ddf
12 AUX nspr-4.8.9-link-flags.patch 995 SHA256 f986c69ff6250f54eb291339ab5503e73cc5cc68af4c3c3ed5a25812bf47b610 SHA512 3c20019b5a378bc0cec1925c2324fc1b72bd1427e9262065952632c406bc6a8f9303fc55aabad472713f5e8656973db5c503dd9072ea01283a6f671dcd26b049 WHIRLPOOL 695310cfd54140b2c333f0b6556d8c049441b246a006cc885d2149a6d73d8d6223964d47d5af87c949ab2693fd320c4ecf67fd120b09862972a39df0cc00c7ca
13 AUX nspr-4.9.5_nspr_config.patch 445 SHA256 7414eaac7630ba3aa9f3c44b439471abb195c96796f78cf5ddfd4e10c68389e8 SHA512 3d3dc60b4bb4a6b469e992239ca7e5702949880bbe3e603691bf7cab199a80e6b9fd89aa3184c26d99185b43785f6f2f7a9a16e061080e13ca02146dd2f172bf WHIRLPOOL d807bc98ca6f47d943f0b6f9a4d33dee387eddf9ae4a9d6a8863697d96c82ae1560d871b76c866b6a85b4eb1d31e9e9f1ce59caa4f66c02bd68a913f822d5a16
14 DIST nspr-4.10.8.tar.gz 1131130 SHA256 507ea57c525c0c524dae4857a642b4ef5c9d795518754c7f83422d22fe544a15 SHA512 f14e3bd46cd1dee9d7163adbf3b09a450ea8c6c65499c5b6696eba7e85b6b12d3f90561a1dfe0dc0dc5fe1b14758b4191e546d9f0e29a66f33c69dd6ed6f50d9 WHIRLPOOL 67be897d54e2446d563cfe505047b23880025bd3f1ea5492964f8d286f56776e41a8e63bd9d197d3115efae0d63bd0c7005fb9fc56abdfce0702c27e6a9e872c
15 +DIST nspr-4.10.9.tar.gz 1134015 SHA256 4112ff6ad91d32696ca0c6c3d4abef6367b5dc0127fa172fcb3c3ab81bb2d881 SHA512 2a4d6126a6c6d44cd77d55b543939fdac8d43841f32213e44400b57bfee02d1b3beaa10159d13adb140cdad6788aa01adccebf8f8dab9ab391961cf499b7a207 WHIRLPOOL 207a1d90e0b056d022aa659a79fe0ec193ba7d1964646d1970445ff9eb4afd4904c1f80d40b1c22cd00867a92adfa52e48254e1a9e9105f04a36db208c5eaa7e
16 EBUILD nspr-4.10.8-r99.ebuild 3833 SHA256 a65bb3ddb3f164155588a032e761364add95db58e233fe3b1e8a3791cda736a0 SHA512 8fc3989d9bdef095dcf6cc786f27351f38565597f3ec09a03e6ba88dfe2d9cfae015057ed683a51e5e730ab692f8d56024bb2957043ee649f93b44b8ca77c4b9 WHIRLPOOL cf25879b36ed141b13a48bfdce900b970ea8256c97db22e06b992ad1b137818014a74c9f2757fe10c082cb0add92c55704e4c35ca9b81d01bd883c0b6afae06f
17 +EBUILD nspr-4.10.9-r99.ebuild 3952 SHA256 365a5294042504743021e0fc62b282f9bc6d84d9d98f5a48aefb8cdcdf4ae824 SHA512 fade5558c89d472ed487846b8c1cd78d071586c58892892a60445a20b0f090ee43e78a66ba202b63936a6d0881a6b88e435a79994666fc34ea3d55775b3e16ac WHIRLPOOL 41b4ba41c1024540270eab9f8f0a5e520e73fa409ef17b0d912a4a1771732905536f6344e69178a6d27c996fa87915fcd74119253e45516b0bf0458fa7f1b251
18 MISC metadata.xml 160 SHA256 0cc5126362a12cee42ec1197c528a804cf36859329dd2c6d9225726831d14b8b SHA512 ed6f709d55351c1b69f2b43ada124fcc2f8969f8c3867073bb0c68aa502f16247cbcd78734a891e4d1a509d334f6805e5267d2088cd03f3408a636ad9aedc2bb WHIRLPOOL e6bf1791838158287debcc3160dd075dcdf88bc1b33060aefe4687b4451108e55b6f8021fc36f07ab85c4e37a4225444cc2804cf40bd61ba49726bbf12fa4e38
19 diff --git a/dev-libs/nspr/nspr-4.10.9-r99.ebuild b/dev-libs/nspr/nspr-4.10.9-r99.ebuild
20 new file mode 100644
21 index 0000000..8eb347e
22 --- /dev/null
23 +++ b/dev-libs/nspr/nspr-4.10.9-r99.ebuild
24 @@ -0,0 +1,122 @@
25 +# Copyright 1999-2015 Gentoo Foundation
26 +# Distributed under the terms of the GNU General Public License v2
27 +# $Id$
28 +
29 +EAPI=5
30 +WANT_AUTOCONF="2.5"
31 +
32 +inherit autotools eutils multilib toolchain-funcs versionator multilib-minimal
33 +
34 +MIN_PV="$(get_version_component_range 2)"
35 +
36 +DESCRIPTION="Netscape Portable Runtime"
37 +HOMEPAGE="http://www.mozilla.org/projects/nspr/"
38 +SRC_URI="http://archive.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/${P}.tar.gz"
39 +
40 +LICENSE="|| ( MPL-2.0 GPL-2 LGPL-2.1 )"
41 +SLOT="0"
42 +KEYWORDS="~amd64 ~arm ~mips ~ppc ~x86"
43 +IUSE="debug"
44 +
45 +RDEPEND="
46 + abi_x86_32? (
47 + !<=app-emulation/emul-linux-x86-baselibs-20140508-r12
48 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
49 + )"
50 +
51 +MULTILIB_CHOST_TOOLS=(
52 + /usr/bin/nspr-config
53 +)
54 +
55 +src_prepare() {
56 + cd "${S}"/nspr || die
57 + epatch "${FILESDIR}"/${PN}-4.7.0-prtime.patch
58 + epatch "${FILESDIR}"/${PN}-4.7.1-solaris.patch
59 + epatch "${FILESDIR}"/${PN}-4.10.6-solaris.patch
60 + epatch "${FILESDIR}"/${PN}-4.8.4-darwin-install_name.patch
61 + epatch "${FILESDIR}"/${PN}-4.8.9-link-flags.patch
62 + # We do not need to pass -L$libdir via nspr-config --libs
63 + epatch "${FILESDIR}"/${PN}-4.9.5_nspr_config.patch
64 +
65 + epatch "${FILESDIR}"/${PN}-4.10.6-no-getprotobyname_r.patch
66 +
67 + # rename configure.in to configure.ac for new autotools compatibility
68 + if [[ -e "${S}"/nspr/configure.in ]] ; then
69 + einfo "Renaming configure.in to configure.ac"
70 + mv "${S}"/nspr/configure.{in,ac} || die
71 + fi
72 + # We must run eautoconf to regenerate configure
73 + eautoconf
74 +
75 + # make sure it won't find Perl out of Prefix
76 + sed -i -e "s/perl5//g" "${S}"/nspr/configure || die
77 +
78 + # Respect LDFLAGS
79 + sed -i -e 's/\$(MKSHLIB) \$(OBJS)/\$(MKSHLIB) \$(LDFLAGS) \$(OBJS)/g' \
80 + "${S}"/nspr/config/rules.mk || die
81 +}
82 +
83 +multilib_src_configure() {
84 + # We use the standard BUILD_xxx but nspr uses HOST_xxx
85 + tc-export_build_env BUILD_CC
86 + export HOST_CC=${BUILD_CC} HOST_CFLAGS=${BUILD_CFLAGS} HOST_LDFLAGS=${BUILD_LDFLAGS}
87 + tc-export AR CC CXX RANLIB
88 + [[ ${CBUILD} != ${CHOST} ]] \
89 + && export CROSS_COMPILE=1 \
90 + || unset CROSS_COMPILE
91 +
92 + local myconf=()
93 +
94 + # The configure has some fancy --enable-{{n,x}32,64bit} switches
95 + # that trigger some code conditional to platform & arch. This really
96 + # matters for the few common arches (x86, ppc) but we pass a little
97 + # more of them to be future-proof.
98 +
99 + # use ABI first, this will work for most cases
100 + case "${ABI}" in
101 + alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86) ;;
102 + n32) myconf+=( --enable-n32 );;
103 + x32) myconf+=( --enable-x32 );;
104 + s390x|*64) myconf+=( --enable-64bit );;
105 + default) # no abi actually set, fall back to old check
106 + einfo "Running a short build test to determine 64bit'ness"
107 + echo > "${T}"/test.c || die
108 + ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die
109 + case $(file "${T}"/test.o) in
110 + *32-bit*x86-64*) myconf+=( --enable-x32 );;
111 + *64-bit*|*ppc64*|*x86_64*) myconf+=( --enable-64bit );;
112 + *32-bit*|*ppc*|*i386*) ;;
113 + *) die "Failed to detect whether your arch is 64bits or 32bits, disable distcc if you're using it, please";;
114 + esac ;;
115 + *) ;;
116 + esac
117 +
118 + # Ancient autoconf needs help finding the right tools.
119 + LC_ALL="C" ECONF_SOURCE="${S}/nspr" \
120 + ac_cv_path_AR="${AR}" \
121 + econf \
122 + --libdir="${EPREFIX}/usr/$(get_libdir)" \
123 + $(use_enable debug) \
124 + $(use_enable !debug optimize) \
125 + "${myconf[@]}"
126 +}
127 +
128 +multilib_src_install() {
129 + # Their build system is royally confusing, as usual
130 + MINOR_VERSION=${MIN_PV} # Used for .so version
131 + emake DESTDIR="${D}" install
132 +
133 + einfo "removing static libraries as upstream has requested!"
134 + rm -f "${ED}"/usr/$(get_libdir)/*.a || die "failed to remove static libraries."
135 +
136 + # install nspr-config
137 + dobin config/nspr-config
138 +
139 + # Remove stupid files in /usr/bin
140 + rm "${ED}"/usr/bin/prerr.properties || die
141 +
142 + # This is used only to generate prerr.c and prerr.h at build time.
143 + # No other projects use it, and we don't want to depend on perl.
144 + # Talked to upstream and they agreed w/punting.
145 + rm "${ED}"/usr/bin/compile-et.pl || die
146 +}
147 --
148 2.4.6