diff options
author | eroen <eroen@occam.eroen.eu> | 2012-10-26 13:55:42 +0200 |
---|---|---|
committer | eroen <eroen@occam.eroen.eu> | 2012-10-26 13:55:42 +0200 |
commit | bc5ae95c59a3ec7b0e893f88bb54ece55ed71f62 (patch) | |
tree | e9f9c0f8356f007091d1416e5c527c17b2e7c103 /dev-lang | |
parent | virtualbox does not build with -flto (diff) | |
download | eroen-bc5ae95c59a3ec7b0e893f88bb54ece55ed71f62.tar.gz eroen-bc5ae95c59a3ec7b0e893f88bb54ece55ed71f62.tar.bz2 eroen-bc5ae95c59a3ec7b0e893f88bb54ece55ed71f62.zip |
imported from portage tree
Diffstat (limited to 'dev-lang')
7 files changed, 288 insertions, 0 deletions
diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest new file mode 100644 index 0000000..61dc4fd --- /dev/null +++ b/dev-lang/spidermonkey/Manifest @@ -0,0 +1,7 @@ +AUX spidermonkey-1.8.5-arm_resprect_cflags-1.patch 2227 SHA256 1e726aa83d26d20454bbfdfe2a5529ac5b07076dd13a9d6faac6341193c85f37 SHA512 374278b503bc04aaf9b5db08d28529f5943960b74f4f0b55c46b3bf820f3bd55cc52f46aaf502649745d2455e2a27c867fdc93e46662f4ee1eba91d2b6737a49 WHIRLPOOL f8f2acfae508157ad820f7d8a0f3190cfaadcf3ae76df7d6bbf7aaad02d3f908a2bf60e603f2c591310e25de25e3c9f3543619d68e179d4c937ed81f0acd4c13 +AUX spidermonkey-1.8.5-fix-install-symlinks.patch 484 SHA256 4c66d490b6ff22086252ad871242d6d87de2e3fec59b91099864c7881cffd823 SHA512 738f59260900e2dee42a3a8347c5afa09cc99e0e7f267c7af80b29a115818c61dce6912d5ff98c1bbcaea816c4d8579383eb7f6a848ba5d4b9275ec6baa2f01d WHIRLPOOL 210390d31e93c7a96fb61951b93221dbd34a1572476dbbf91e0ae3bcfd06d10194205411c49c47ea7d8fa6f898d0c96366c5b6fd3927d12d787524b674d85b81 +AUX spidermonkey-1.8.5-fix-ppc64.patch 1669 SHA256 ffae38a7e5db0895e10be924e1bd084e57640c7a184cd8f1b1a90e9533202470 SHA512 0352665ae138e15aabc8b40561ac6d5328b7a1c497f9591ebe57ffacb05a0ba52c677b8174829c5328cb79ea271b519287bfb99bd418efefc3409d18a198b7d9 WHIRLPOOL 699b3d0a75d660fba0a6095b19db84504238b2c3f9f0bcddf1d6628c8a51a70301c2a3eb54712c2e7719ca5bd4184562d64fac22760e870e453ea2feb5456870 +AUX spidermonkey-1.8.7-freebsd-pthreads.patch 175 SHA256 0cc365e8c43c2eeae316382db53f287852b1419851c3ddb412dc60bc22be126f SHA512 43daf55711910fba2927d8e80fa6d786252fcaf3ba31bf2b471b4ebb987ec94a006618b9a423363afb016fa35affdf974c4e4a12dc0070dbfaebab1aa65badc7 WHIRLPOOL bf985a328fd7e5ae0dc8406171b0738b5d55001a9067b5592318c614cf664843432e38228199f7de28043c8199a0e807c117ec7f5aecf3452be7f84098295e08 +DIST js185-1.0.0.tar.gz 6164605 SHA256 5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687 SHA512 2af7122a7c7007fd7b6668776fe1222515a810b3e43bbf0f76b8f94e1ef406ffd3fb5ccec393021b00274c05b38a77235bc8d6886994c56762fcaf0aa7cf6718 WHIRLPOOL 58b372713275874d3ae3c6b58c12c56bf8d17d024d591e321538bcdd8e615332e41655954368ce86b90e970209e3fd650c39d931000880f5ec22cb044b5d7a4e +EBUILD spidermonkey-1.8.5-r2.ebuild 3565 SHA256 3ea4a646d0d88a071a01482019caab86e2a526cc7f4c1a0f8e1b1ef7012212fc SHA512 afaa2cccdbfb368de5d5b9342255d8aa0be2369e9504bf39978c7ab3289c70d1e964d1352033208b38611f7a3bda6caf537d62a93d32943e9b5098c779a5b36b WHIRLPOOL a5ba905e12597cb95fcfd668b1f2403f754c1f25001191c5487e4c64134701774781f09352976bd369e2042ae5fb79b4390a3a4b356279b1a7a4356653833247 +MISC metadata.xml 337 SHA256 198d1a23238f7b069df2def08e41451d40c225f8a93a2005ed83166f8fae7d35 SHA512 8f7d13e732629734cdcf5db9b8d4279820517c68b80f3ab840f1dfa6117d38eae70feb6894f1f51e76b33cfc058a39a3ecb6ec3fa33199c7a1bc64bc1897bf89 WHIRLPOOL 8ea694f3e700dc58c787f1c9c91621ed83cf06785172045bd4d2d436fb8e7153ea2631db9e7113a59d765fc67fa32aba5275809cad1d96ed2154fc65da0c803d diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-arm_resprect_cflags-1.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-arm_resprect_cflags-1.patch new file mode 100644 index 0000000..7c9dd84 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-arm_resprect_cflags-1.patch @@ -0,0 +1,58 @@ +--- a/js/src/configure.in ++++ b/js/src/configure.in +@@ -3550,7 +3550,7 @@ AC_MSG_CHECKING(for ARM NEON support in + _SAVE_CFLAGS="$CFLAGS" + if test "$GNU_CC"; then + # gcc needs -mfpu=neon to recognize NEON instructions +- CFLAGS="$CFLAGS -mfpu=neon -mfloat-abi=softfp" ++ CFLAGS="$CFLAGS -mfpu=neon" + fi + AC_TRY_COMPILE([], + [asm("vadd.i8 d0, d0, d0");], +@@ -4687,9 +4687,9 @@ if test -n "$MOZ_THUMB2"; then + if test "$GNU_CC"; then + AC_DEFINE(MOZ_THUMB2) + AC_DEFINE(MOZ_ARM_ARCH) +- CFLAGS="$CFLAGS -march=armv7-a -mthumb -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" +- CXXFLAGS="$CXXFLAGS -march=armv7-a -mthumb -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" +- ASFLAGS="$ASFLAGS -march=armv7-a -mthumb -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" ++ CFLAGS="$CFLAGS -march=armv7-a -mthumb $MOZ_ARM_VFP_FLAGS" ++ CXXFLAGS="$CXXFLAGS -march=armv7-a -mthumb $MOZ_ARM_VFP_FLAGS" ++ ASFLAGS="$ASFLAGS -march=armv7-a -mthumb $MOZ_ARM_VFP_FLAGS" + else + AC_MSG_ERROR([--enable-thumb2 is not supported for non-GNU toolchains]) + fi +@@ -4703,9 +4703,9 @@ elif test "$MOZ_ARM_ARCH" = "armv7"; the + arm*) + if test "$GNU_CC"; then + AC_DEFINE(MOZ_ARM_ARCH) +- CFLAGS="$CFLAGS -march=armv7-a -marm -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" +- CXXFLAGS="$CXXFLAGS -march=armv7-a -marm -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" +- ASFLAGS="$ASFLAGS -march=armv7-a -marm -mfloat-abi=softfp $MOZ_ARM_VFP_FLAGS" ++ CFLAGS="$CFLAGS -march=armv7-a -marm $MOZ_ARM_VFP_FLAGS" ++ CXXFLAGS="$CXXFLAGS -march=armv7-a -marm $MOZ_ARM_VFP_FLAGS" ++ ASFLAGS="$ASFLAGS -march=armv7-a -marm $MOZ_ARM_VFP_FLAGS" + else + AC_MSG_ERROR([--with-cpu-arch=armv7 is not supported for non-GNU toolchains]) + fi +--- a/js/src/Makefile.in ++++ b/js/src/Makefile.in +@@ -354,7 +354,7 @@ ASFILES += TrampolineSUNWX86.s + endif + endif + endif +-ifeq (arm, $(TARGET_CPU)) ++ifeq (arm, $(findstring arm,$(TARGET_CPU))) + #CPPSRCS += only_on_arm.cpp + endif + # +@@ -436,7 +436,7 @@ else + #CPPSRCS += only_on_x86.cpp + endif + endif +-ifeq (arm, $(TARGET_CPU)) ++ifeq (arm, $(findstring arm,$(TARGET_CPU))) + #CPPSRCS += only_on_arm.cpp + endif + # + diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-install-symlinks.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-install-symlinks.patch new file mode 100644 index 0000000..c867e45 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-install-symlinks.patch @@ -0,0 +1,15 @@ +https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 + +--- js/src/Makefile.in ++++ js/src/Makefile.in +@@ -888,8 +888,8 @@ + ifeq (,$(HOST_BIN_SUFFIX)) + mv -f $(SHLIB_ANY_VER) $(SHLIB_EXACT_VER) + @[ ! -h $(SHLIB_ABI_VER) ] || rm -f $(SHLIB_ABI_VER) +- ln -s $(SHLIB_EXACT_VER) $(SHLIB_ABI_VER) +- ln -s $(SHLIB_ABI_VER) $(SHLIB_ANY_VER) ++ ln -s $(notdir $(SHLIB_EXACT_VER)) $(SHLIB_ABI_VER) ++ ln -s $(notdir $(SHLIB_ABI_VER)) $(SHLIB_ANY_VER) + endif + endif + ifneq (,$(IMPORT_LIBRARY)) diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-ppc64.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-ppc64.patch new file mode 100644 index 0000000..3927c87 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.8.5-fix-ppc64.patch @@ -0,0 +1,61 @@ +# HG changeset patch +# User Mike Hommey <mh+mozilla@glandium.org> +# Date 1303461188 -7200 +# Node ID 59771590e9203d48ef8cbcd7eaf2f8ae45dbb1c1 +# Parent c4b82ec27d6d6e1c02ef0abb3b6e805bfdd092ec +Bug 638056 - Avoid "The cacheFlush support is missing on this platform" error on exotic platforms. r=cdleary + +diff --git a/js/src/Makefile.in b/js/src/Makefile.in +--- a/js/src/Makefile.in ++++ b/js/src/Makefile.in +@@ -383,17 +383,17 @@ CPPSRCS += checks.cc \ + platform.cc \ + utils.cc \ + $(NONE) + + # + # END enclude sources for V8 dtoa + ############################################# + +-ifeq (,$(filter-out powerpc sparc,$(TARGET_CPU))) ++ifeq (,$(filter arm% %86 x86_64,$(TARGET_CPU))) + + VPATH += $(srcdir)/assembler \ + $(srcdir)/assembler/wtf \ + $(srcdir)/yarr/pcre \ + $(NULL) + + CPPSRCS += pcre_compile.cpp \ + pcre_exec.cpp \ + +# HG changeset patch +# User Luke Wagner <lw@mozilla.com> +# Date 1299520258 28800 +# Node ID 68203913d04cf5be53fd16278816183d5670ba5c +# Parent 27e5814815491ebb68e474e453aff6c2ea908c43 +Bug 618485 - Add missing 64-bit big-endian jsval_layout field (r=luke) + +diff --git a/js/src/jsval.h b/js/src/jsval.h +--- a/js/src/jsval.h ++++ b/js/src/jsval.h +@@ -342,16 +342,17 @@ typedef union jsval_layout + JSValueTag tag : 17; + uint64 payload47 : 47; + } debugView; + struct { + union { + int32 i32; + uint32 u32; + JSWhyMagic why; ++ jsuword word; + } payload; + } s; + double asDouble; + void *asPtr; + } jsval_layout; + # endif /* JS_BITS_PER_WORD */ + #endif /* defined(IS_LITTLE_ENDIAN) */ + + + + diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.8.7-freebsd-pthreads.patch b/dev-lang/spidermonkey/files/spidermonkey-1.8.7-freebsd-pthreads.patch new file mode 100644 index 0000000..4324df0 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.8.7-freebsd-pthreads.patch @@ -0,0 +1,11 @@ +--- a/js/src/config/system-headers ++++ b/js/src/config/system-headers +@@ -595,6 +595,7 @@ proto/exec.h + psap.h + Pt.h + pthread.h ++pthread_np.h + pwd.h + Python.h + QDOffscreen.h + diff --git a/dev-lang/spidermonkey/metadata.xml b/dev-lang/spidermonkey/metadata.xml new file mode 100644 index 0000000..e1b7ee1 --- /dev/null +++ b/dev-lang/spidermonkey/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>mozilla</herd> + <longdescription lang="en"> + Stand-alone JavaScript C library + </longdescription> + <use> + <flag name='threadsafe'>Build a threadsafe version of spidermonkey</flag> + </use> +</pkgmetadata> + diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild new file mode 100644 index 0000000..ba400c4 --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild,v 1.1 2012/10/23 19:07:07 axs Exp $ + +EAPI="5" +WANT_AUTOCONF="2.1" +inherit autotools eutils toolchain-funcs multilib python versionator pax-utils + +MY_PN="js" +TARBALL_PV="$(replace_all_version_separators '' $(get_version_component_range 1-3))" +MY_P="${MY_PN}-${PV}" +TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0" +DESCRIPTION="Stand-alone JavaScript C library" +HOMEPAGE="http://www.mozilla.org/js/spidermonkey/" +SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${TARBALL_P}.tar.gz" + +LICENSE="NPL-1.1" +SLOT="0/mozjs185" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="debug minimal static-libs test" + +S="${WORKDIR}/${MY_P}" +BUILDDIR="${S}/js/src" + +RDEPEND=">=dev-libs/nspr-4.7.0" +DEPEND="${RDEPEND} + app-arch/zip + =dev-lang/python-2*[threads] + virtual/pkgconfig" + +pkg_setup(){ + python_set_active_version 2 + python_pkg_setup + export LC_ALL="C" +} + +src_prepare() { + # https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 + epatch "${FILESDIR}/${P}-fix-install-symlinks.patch" + # https://bugzilla.mozilla.org/show_bug.cgi?id=638056#c9 + epatch "${FILESDIR}/${P}-fix-ppc64.patch" + # https://bugs.gentoo.org/show_bug.cgi?id=400727 + epatch "${FILESDIR}/${P}-arm_resprect_cflags-1.patch" + # https://bugs.gentoo.org/show_bug.cgi?id=438746 + epatch "${FILESDIR}"/${PN}-1.8.7-freebsd-pthreads.patch + + epatch_user + + if [[ ${CHOST} == *-freebsd* ]]; then + # Don't try to be smart, this does not work in cross-compile anyway + ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die + fi + + cd "${BUILDDIR}" || die + eautoconf +} + +src_configure() { + cd "${BUILDDIR}" || die + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" \ + AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \ + LD="$(tc-getLD)" PYTHON="$(PYTHON)" \ + econf \ + ${myopts} \ + --enable-jemalloc \ + --enable-readline \ + --enable-threadsafe \ + --with-system-nspr \ + $(use_enable debug) \ + $(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) \ + 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) \ + -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 +} + +src_test() { + cd "${BUILDDIR}/jsapi-tests" || die + emake check +} + +src_install() { + cd "${BUILDDIR}" || die + emake DESTDIR="${D}" install + # bug 437520 , exclude js shell for small systems + if ! use minimal ; then + dobin shell/js + pax-mark m "${ED}/usr/bin/js" + fi + dodoc ../../README + dohtml README.html + + 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 +} |