aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory M. Tuner <gmt@be-evil.net>2014-03-17 02:05:25 -0700
committerGregory M. Tuner <gmt@be-evil.net>2014-03-17 02:05:25 -0700
commitd025b7e1df14277f4a12075bc38a8e28cb405e91 (patch)
treed6a20e90de31e562a0b9d3e35fe62568ac2da09f /dev-libs
parenteclass/mysql-{v2,cmake-multilib}: merge upstream (diff)
downloadgmt-d025b7e1df14277f4a12075bc38a8e28cb405e91.tar.gz
gmt-d025b7e1df14277f4a12075bc38a8e28cb405e91.tar.bz2
gmt-d025b7e1df14277f4a12075bc38a8e28cb405e91.zip
dev-libs/nspr: revbump/merge, style
Mostly rote revbump/merge with a few style updates. Perhaps this is old or I had a rare lapse in my usual rigidly consistent coding style and approach in this ebuild (j/k, that's self-deprcating sarcasm) -- anyhow this ebuild does some kinda unusual fancypants ehook stuff, and a couple of those fancypants things don't seem to serve any useful purpose but to just be confusing and dumb. So I got rid of the most egregious violators -- even so I wish this and upstream were not so far apart.... Signed-off-by: Gregory M. Tuner <gmt@be-evil.net>
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/nspr/Manifest2
-rw-r--r--dev-libs/nspr/nspr-4.10.3-r1.ebuild118
2 files changed, 120 insertions, 0 deletions
diff --git a/dev-libs/nspr/Manifest b/dev-libs/nspr/Manifest
index 7acf44e..913b9c2 100644
--- a/dev-libs/nspr/Manifest
+++ b/dev-libs/nspr/Manifest
@@ -7,6 +7,8 @@ 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.2.tar.gz 1103130 SHA256 4d09ee67a6fb57d3c646098b0ac7fd1e31be1c2c2ca57cd2ad28b42e6d3cf400 SHA512 bb45c7a23c1bc38433520bfa71309085c25e65d004a3012c60e66c4f31fb6fdc45406cbd6228a5fdd89dfb02cd9badb5a3961186c32898aa456b04f0b6f53698 WHIRLPOOL 0cf2916c4cb595ee3ccd88da636a6599e2c3b5c51193608bbd2acfa9b3bcad89a7135af1f4cf42644495e17fc03c67a8b22719c0efb4faf8aacf1dcd0d0d9511
+DIST nspr-4.10.3.tar.gz 1104478 SHA256 f25779b1a665dab0090b9c977dc6c29a63320f442956ed78629b66b405cb01e5 SHA512 f8f940e5536f29d9a686b023f3c418b40e24a785b6e4130f9d1f373fb7f1bb5879f52e8c2f1338ac742ff9225fea1a29a394b96cedc9f05b3bd4600885c63dec WHIRLPOOL 7fdc8d357e0b45e46d4a9b365bd38691144554a641827fa1ae4fb714f504ec16ad7fcabc27297019d020d3fe8d5207a18d053fb027c91603633c905b8516d50f
EBUILD nspr-4.10.2-r1.ebuild 3668 SHA256 0a2c678e9c1e70bd413e903639fa364ca6be734dd11317adf151a316005982fd SHA512 c0a2f744b4465aba679ade5d2b44df628bff8d1ebaaed2a3a12c219347ac28c9e7af25be950e22d03248a23a86bd0221bb3c74d3704cf13831756b3027e106d9 WHIRLPOOL 860a16c3105294c46259b5b9b8151ec6b98a30abbd615ea90536d63bd2cdf6e4db653906bba7886d5d417e750e71ade20e143b077729f209c18416cd8220b517
+EBUILD nspr-4.10.3-r1.ebuild 3644 SHA256 135f9feeecd044d4e24bbd1b971df1534eee525cbda3c2ce23def615d8baeb78 SHA512 ffc169a2205d867b2e9ba41384ef7ae3472e2c52f7904ddd9f5b360dc8fe71ab623b6842f590e8f0dffe64fb883fadf70ac828ecefe18502d59dc9e6d5c38acb WHIRLPOOL 637c8082e627433dccd5a4720db5366e4005c466f7ade4696a22673bfb1f6c30847f6cc87e17ef235e28d9f36b5006d47247d369a3955f19f6492751ee5f3eea
MISC ChangeLog 31304 SHA256 fa8dde98742a8143f8c1a7c33868baa90e8f66b247e32a137525d1b68ada90a6 SHA512 a3fa506706f3174017fe717da81b393c5912dc7d6098f42f46a012b27f5a7c3d85e9877200a3c612d747c3c83a7f834609ccea491a521c2f3dc3612dc9531cc8 WHIRLPOOL 10d546122ca703a183bf31b60010b0fcf42d6bd8fd8ca63184f2cd1950c755875141c20e05599c64e029ad5c1ed9921a7227827cd2d3c2724a665c85df5b1c55
MISC metadata.xml 160 SHA256 0cc5126362a12cee42ec1197c528a804cf36859329dd2c6d9225726831d14b8b SHA512 ed6f709d55351c1b69f2b43ada124fcc2f8969f8c3867073bb0c68aa502f16247cbcd78734a891e4d1a509d334f6805e5267d2088cd03f3408a636ad9aedc2bb WHIRLPOOL e6bf1791838158287debcc3160dd075dcdf88bc1b33060aefe4687b4451108e55b6f8021fc36f07ab85c4e37a4225444cc2804cf40bd61ba49726bbf12fa4e38
diff --git a/dev-libs/nspr/nspr-4.10.3-r1.ebuild b/dev-libs/nspr/nspr-4.10.3-r1.ebuild
new file mode 100644
index 0000000..07a0897
--- /dev/null
+++ b/dev-libs/nspr/nspr-4.10.3-r1.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+WANT_AUTOCONF="2.1"
+
+inherit autotools-multilib autotools eutils multilib toolchain-funcs versionator ehooker
+
+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="~amd64"
+IUSE="debug"
+
+DEPEND="abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20131008-r1
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+
+# We must run eautoconf to regenerate configure
+AUTOTOOLS_AUTORECONF=yes
+MULTILIB_WRAPPED_EXECUTABLES=(@/usr/bin/nspr-config)
+
+src_prepare() {
+ mkdir build inst
+ cd "${S}"/nspr/
+ epatch "${FILESDIR}"/${PN}-4.6.1-lang.patch
+ epatch "${FILESDIR}"/${PN}-4.7.0-prtime.patch
+ epatch "${FILESDIR}"/${PN}-4.7.1-solaris.patch
+ epatch "${FILESDIR}"/${PN}-4.7.4-solaris.patch
+ # epatch "${FILESDIR}"/${PN}-4.8.3-aix-gcc.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
+
+ autotools-multilib_src_prepare
+
+ # 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
+
+ epatch_user
+}
+
+ehook autotools-multilib-global-pre_src_configure global_pre_configure
+global_pre_configure() {
+ ECONF_SOURCE="${S}"/nspr
+ export LC_ALL=C
+
+ # 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}
+
+ [[ ${CBUILD} != ${CHOST} ]] \
+ && export CROSS_COMPILE=1 \
+ || unset CROSS_COMPILE
+
+ myeconfargs+=(
+ $(use_enable debug)
+ $(use_enable !debug optimize)
+ )
+}
+
+ehook autotools-multilib-per-abi-pre_src_configure abi_pre_configure
+abi_pre_configure() {
+ abi_pre_configure2() {
+ echo > "${T}"/test-${ABI}.c
+ ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test-${ABI}.c -o "${T}"/test-${ABI}.o || die
+ case $(file "${T}"/test-${ABI}.o) in
+ *32-bit*x86-64*|*64-bit*|*ppc64*|*x86_64*) myeconfargs+=(--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
+
+ # Ancient autoconf needs help finding the right tools.
+ export ac_cv_path_AR="${AR}"
+ }
+
+ myeconfargs+=(--libdir="${EPREFIX}/usr/@GET_LIBDIR@")
+ MULTILIB_TC_EXPORT_VARS="AR CC CXX RANLIB" multilib_tc_export abi_pre_configure2
+ return 0
+}
+
+ehook autotools-multilib-per-abi-post_src_configure abi_post_configure
+abi_post_configure() {
+ unset ac_cv_path_AR
+}
+
+ehook autotools-multilib-global-pre_src_install global_pre_install
+global_pre_install() {
+ # Their build system is royally confusing, as usual
+ MINOR_VERSION=${MIN_PV} # Used for .so version
+}
+
+ehook autotools-multilib-per-abi-post_src_install abi_post_install
+abi_post_install() {
+ cd "${ED}"usr/$(get_libdir)
+ einfo "removing static libraries as upstream has requested!"
+ rm -f *.a || die "failed to remove static libraries."
+ # install nspr-config
+ dobin "${BUILD_DIR}"/config/nspr-config
+}
+
+ehook autotools-multilib-global-post_src_install post_install
+post_install() {
+ # Remove stupid files in /usr/bin
+ rm -f "${ED}"/usr/bin/prerr.properties || die "failed to cleanup unneeded files"
+}