public inbox for gentoo-musl@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-musl] [PATCH 2/2] dev-libs/nspr: Add unstable version 4.10.9
@ 2015-09-05 11:27 Felix Janda
  0 siblings, 0 replies; only message in thread
From: Felix Janda @ 2015-09-05 11:27 UTC (permalink / raw
  To: gentoo-musl

---
 dev-libs/nspr/Manifest               |   2 +
 dev-libs/nspr/nspr-4.10.9-r99.ebuild | 122 +++++++++++++++++++++++++++++++++++
 2 files changed, 124 insertions(+)
 create mode 100644 dev-libs/nspr/nspr-4.10.9-r99.ebuild

diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest
index 7c0f1b9..39a34a8 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.8.tar.gz 1131130 SHA256 507ea57c525c0c524dae4857a642b4ef5c9d795518754c7f83422d22fe544a15 SHA512 f14e3bd46cd1dee9d7163adbf3b09a450ea8c6c65499c5b6696eba7e85b6b12d3f90561a1dfe0dc0dc5fe1b14758b4191e546d9f0e29a66f33c69dd6ed6f50d9 WHIRLPOOL 67be897d54e2446d563cfe505047b23880025bd3f1ea5492964f8d286f56776e41a8e63bd9d197d3115efae0d63bd0c7005fb9fc56abdfce0702c27e6a9e872c
+DIST nspr-4.10.9.tar.gz 1134015 SHA256 4112ff6ad91d32696ca0c6c3d4abef6367b5dc0127fa172fcb3c3ab81bb2d881 SHA512 2a4d6126a6c6d44cd77d55b543939fdac8d43841f32213e44400b57bfee02d1b3beaa10159d13adb140cdad6788aa01adccebf8f8dab9ab391961cf499b7a207 WHIRLPOOL 207a1d90e0b056d022aa659a79fe0ec193ba7d1964646d1970445ff9eb4afd4904c1f80d40b1c22cd00867a92adfa52e48254e1a9e9105f04a36db208c5eaa7e
 EBUILD nspr-4.10.8-r99.ebuild 3833 SHA256 a65bb3ddb3f164155588a032e761364add95db58e233fe3b1e8a3791cda736a0 SHA512 8fc3989d9bdef095dcf6cc786f27351f38565597f3ec09a03e6ba88dfe2d9cfae015057ed683a51e5e730ab692f8d56024bb2957043ee649f93b44b8ca77c4b9 WHIRLPOOL cf25879b36ed141b13a48bfdce900b970ea8256c97db22e06b992ad1b137818014a74c9f2757fe10c082cb0add92c55704e4c35ca9b81d01bd883c0b6afae06f
+EBUILD nspr-4.10.9-r99.ebuild 3952 SHA256 365a5294042504743021e0fc62b282f9bc6d84d9d98f5a48aefb8cdcdf4ae824 SHA512 fade5558c89d472ed487846b8c1cd78d071586c58892892a60445a20b0f090ee43e78a66ba202b63936a6d0881a6b88e435a79994666fc34ea3d55775b3e16ac WHIRLPOOL 41b4ba41c1024540270eab9f8f0a5e520e73fa409ef17b0d912a4a1771732905536f6344e69178a6d27c996fa87915fcd74119253e45516b0bf0458fa7f1b251
 MISC metadata.xml 160 SHA256 0cc5126362a12cee42ec1197c528a804cf36859329dd2c6d9225726831d14b8b SHA512 ed6f709d55351c1b69f2b43ada124fcc2f8969f8c3867073bb0c68aa502f16247cbcd78734a891e4d1a509d334f6805e5267d2088cd03f3408a636ad9aedc2bb WHIRLPOOL e6bf1791838158287debcc3160dd075dcdf88bc1b33060aefe4687b4451108e55b6f8021fc36f07ab85c4e37a4225444cc2804cf40bd61ba49726bbf12fa4e38
diff --git a/dev-libs/nspr/nspr-4.10.9-r99.ebuild b/dev-libs/nspr/nspr-4.10.9-r99.ebuild
new file mode 100644
index 0000000..8eb347e
--- /dev/null
+++ b/dev-libs/nspr/nspr-4.10.9-r99.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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="http://archive.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="~amd64 ~arm ~mips ~ppc ~x86"
+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
+
+	# rename configure.in to configure.ac for new autotools compatibility
+	if [[ -e "${S}"/nspr/configure.in ]] ; then
+		einfo "Renaming configure.in to configure.ac"
+		mv "${S}"/nspr/configure.{in,ac} || die
+	fi
+	# 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.4.6


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2015-09-05 11:31 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-05 11:27 [gentoo-musl] [PATCH 2/2] dev-libs/nspr: Add unstable version 4.10.9 Felix Janda

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox