diff options
author | 2013-06-19 01:13:53 +0000 | |
---|---|---|
committer | 2013-06-19 01:13:53 +0000 | |
commit | f34a6e34a349ac3848ab2e42f97292be028c4c93 (patch) | |
tree | 5699bf28befc72d5f674129bb6173fd7e721ea21 /dev-libs/nspr/nspr-4.10.ebuild | |
parent | Add to tree from kde overlay, apply minor fixes. (diff) | |
download | gentoo-2-f34a6e34a349ac3848ab2e42f97292be028c4c93.tar.gz gentoo-2-f34a6e34a349ac3848ab2e42f97292be028c4c93.tar.bz2 gentoo-2-f34a6e34a349ac3848ab2e42f97292be028c4c93.zip |
Misc bug fixes, http://tinyurl.com/lvrhnoh
(Portage version: 2.1.12.6/cvs/Linux x86_64, signed Manifest commit with key 0xB4D088B4)
Diffstat (limited to 'dev-libs/nspr/nspr-4.10.ebuild')
-rw-r--r-- | dev-libs/nspr/nspr-4.10.ebuild | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/dev-libs/nspr/nspr-4.10.ebuild b/dev-libs/nspr/nspr-4.10.ebuild new file mode 100644 index 000000000000..bc4c799e61c0 --- /dev/null +++ b/dev-libs/nspr/nspr-4.10.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/nspr/nspr-4.10.ebuild,v 1.1 2013/06/19 01:13:53 anarchy Exp $ + +EAPI=3 +WANT_AUTOCONF="2.1" + +inherit autotools eutils multilib toolchain-funcs versionator + +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 ~hppa ~ia64 ~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" + +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 + + # 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 +} + +src_configure() { + cd "${S}"/build + + # 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 + echo > "${T}"/test.c + ${CC} ${CFLAGS} ${CPPFLAGS} -c "${T}"/test.c -o "${T}"/test.o || die + case $(file "${T}"/test.o) in + *32-bit*x86-64*|*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 + + # Ancient autoconf needs help finding the right tools. + LC_ALL="C" ECONF_SOURCE="../nspr" \ + ac_cv_path_AR="${AR}" \ + econf \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + $(use_enable debug) \ + $(use_enable !debug optimize) \ + ${myconf} +} + +src_compile() { + cd "${S}"/build + emake || die "failed to build" +} + +src_install() { + # Their build system is royally confusing, as usual + MINOR_VERSION=${MIN_PV} # Used for .so version + cd "${S}"/build + emake DESTDIR="${D}" install || die "emake install failed" + + 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 "${S}"/build/config/nspr-config || die "failed to install nspr-config" + + # Remove stupid files in /usr/bin + rm -f "${ED}"/usr/bin/prerr.properties || die "failed to cleanup unneeded files" +} |