From da969ac5c81986e0ec58a49bc387dd3e6057b85e Mon Sep 17 00:00:00 2001 From: Sergey Morozov Date: Sun, 22 Feb 2015 21:43:54 +0300 Subject: [PATCH] Add dev-lang/spidermonkey/spidermonkey-31.2.0_rc0 from mozilla overlay --- dev-lang/spidermonkey/Manifest | 1 + .../spidermonkey-31.2.0_rc0.ebuild | 138 ++++++++++++++++++ 2 files changed, 139 insertions(+) create mode 100644 dev-lang/spidermonkey/Manifest create mode 100644 dev-lang/spidermonkey/spidermonkey-31.2.0_rc0.ebuild diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest new file mode 100644 index 0000000..307145a --- /dev/null +++ b/dev-lang/spidermonkey/Manifest @@ -0,0 +1 @@ +DIST mozjs-31.2.0.rc0.tar.bz2 21410352 SHA256 85d7079ede6828277f26581cdf3f5773f4205df6312f768e1434ce9ec3911621 SHA512 6a2025f0c419e56b89876a3543aabc459cdcf915a4cf4aedc55d89fc59d469d23aee2d505a930442e887705f0d62762e2218b312c5d56741cdb5aa54433cb71b WHIRLPOOL d76d98ad3aabd41877f833634f42a79cee76f4e8bd72ff95042addae3b765d83d64fcfe95586498d5df4754b3defc86bb54a619fee6eb63600fbd8b55cd794cc diff --git a/dev-lang/spidermonkey/spidermonkey-31.2.0_rc0.ebuild b/dev-lang/spidermonkey/spidermonkey-31.2.0_rc0.ebuild new file mode 100644 index 0000000..61a1c37 --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-31.2.0_rc0.ebuild @@ -0,0 +1,138 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/spidermonkey/spidermonkey-24.2.0-r1.ebuild,v 1.1 2014/03/08 14:38:51 anarchy Exp $ + +EAPI="5" +WANT_AUTOCONF="2.1" +PYTHON_COMPAT=( python2_{6,7} ) +PYTHON_REQ_USE="threads" +inherit autotools eutils toolchain-funcs multilib python-any-r1 versionator pax-utils + +MY_PN="mozjs" +MY_PV="${PV/_alpha/a}" +MY_PV="${PV/_beta/b}" +MY_P="${MY_PN}-${MY_PV/_/.}" +DESCRIPTION="Stand-alone JavaScript C library" +HOMEPAGE="http://www.mozilla.org/js/spidermonkey/" +#SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${MY_P}.tar.bz2" +SRC_URI="http://people.mozilla.org/~sstangl/${MY_P}.tar.bz2" + +LICENSE="NPL-1.1" +SLOT="31" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="debug +jit icu minimal static-libs +system-icu test" + +RESTRICT="ia64? ( test )" +REQUIRED_USE="debug? ( jit )" + +S="${WORKDIR}/${MY_P%.rc*}" +BUILDDIR="${WORKDIR}/jsbuild" + +RDEPEND=">=dev-libs/nspr-4.9.4 + virtual/libffi + >=sys-libs/zlib-1.1.4 + system-icu? ( >=dev-libs/icu-1.51:= )" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + app-arch/zip + virtual/pkgconfig" + +pkg_setup(){ + if [[ ${MERGE_TYPE} != "binary" ]]; then + python-any-r1_pkg_setup + export LC_ALL="C" + fi +} + +src_configure() { + mkdir "${BUILDDIR}" && cd "${BUILDDIR}" || die + + local myopts="" + if use icu; then # make sure system-icu flag only affects icu-enabled build + myopts+="$(use_with system-icu)" + else + myopts+="--without-system-icu" + fi + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" \ + AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \ + LD="$(tc-getLD)" \ + ECONF_SOURCE="${S}/js/src" \ + econf ${myopts} \ + --disable-trace-malloc \ + --enable-jemalloc \ + --enable-readline \ + --enable-threadsafe \ + --with-system-nspr \ + --enable-system-ffi \ + --disable-optimize \ + $(use_with icu intl-api) \ + $(use_enable debug) \ + $(use_enable jit ion) \ + $(use_enable jit yarr-jit) \ + $(use_enable static-libs static) \ + $(use_enable test tests) +} + +src_compile() { + cd "${BUILDDIR}" || die + if tc-is-cross-compiler; then + make CFLAGS="" CXXFLAGS="" \ + CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) \ + AR=$(tc-getBUILD_AR) RANLIB=$(tc-getBUILD_RANLIB) \ + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \ + HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \ + MOZ_PGO_OPTIMIZE_FLAGS="" \ + jscpucfg host_jsoplengen host_jskwgen || die + make CFLAGS="" CXXFLAGS="" \ + CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) \ + AR=$(tc-getBUILD_AR) RANLIB=$(tc-getBUILD_RANLIB) \ + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" HOST_OPTIMIZE_FLAGS="" \ + -C config nsinstall || die + mv {,native-}jscpucfg || die + mv {,native-}host_jskwgen || die + mv {,native-}host_jsoplengen || die + mv config/{,native-}nsinstall || die + sed -e 's@./jscpucfg@./native-jscpucfg@' \ + -e 's@./host_jskwgen@./native-host_jskwgen@' \ + -e 's@./host_jsoplengen@./native-host_jsoplengen@' \ + -i Makefile || die + sed -e 's@/nsinstall@/native-nsinstall@' -i config/config.mk || die + rm -f config/host_nsinstall.o \ + config/host_pathsub.o \ + host_jskwgen.o \ + host_jsoplengen.o || die + fi + emake \ + MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \ + HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \ + MOZ_PGO_OPTIMIZE_FLAGS="" +} + +src_test() { + cd "${BUILDDIR}/js/src/jsapi-tests" || die + emake check + cd "${BUILDDIR}" || die + emake check-jit-test +} + +src_install() { + cd "${BUILDDIR}" || die + emake DESTDIR="${D}" install + mv "${ED}"/usr/bin/js "${ED}"/usr/bin/js${SLOT} + mv "${ED}"/usr/bin/js-config "${ED}"/usr/bin/js${SLOT}-config + + if ! use minimal; then + if use jit; then + pax-mark m "${ED}/usr/bin/js${SLOT}" + fi + else + rm -f "${ED}/usr/bin/js${SLOT}" + fi + + if ! use static-libs; then + # We can't actually disable building of static libraries + # They're used by the tests and in a few other places + find "${D}" -iname '*.a' -delete || die + fi +}