diff options
author | Patrick Lauer <patrick@gentoo.org> | 2015-04-02 07:18:51 +0000 |
---|---|---|
committer | Patrick Lauer <patrick@gentoo.org> | 2015-04-02 07:18:51 +0000 |
commit | e6d8596ccc17d9212483aeb74f14ba2531c3a070 (patch) | |
tree | 2b778e83b6ae475ab72bb5dfa47b2348125a71de /net-libs/iojs | |
parent | Dev channel bump. Fix compile without gconf, bug #544528 by Andrew Waters. Re... (diff) | |
download | gentoo-2-e6d8596ccc17d9212483aeb74f14ba2531c3a070.tar.gz gentoo-2-e6d8596ccc17d9212483aeb74f14ba2531c3a070.tar.bz2 gentoo-2-e6d8596ccc17d9212483aeb74f14ba2531c3a070.zip |
Improvements and optional use of bundled libs by jbergstroem
(Portage version: 2.2.18/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'net-libs/iojs')
-rw-r--r-- | net-libs/iojs/ChangeLog | 8 | ||||
-rw-r--r-- | net-libs/iojs/iojs-1.6.3-r1.ebuild | 111 | ||||
-rw-r--r-- | net-libs/iojs/metadata.xml | 1 |
3 files changed, 119 insertions, 1 deletions
diff --git a/net-libs/iojs/ChangeLog b/net-libs/iojs/ChangeLog index 4ea8c8934dbc..c35b6e932190 100644 --- a/net-libs/iojs/ChangeLog +++ b/net-libs/iojs/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-libs/iojs # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/iojs/ChangeLog,v 1.13 2015/04/02 06:48:25 patrick Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/iojs/ChangeLog,v 1.14 2015/04/02 07:18:51 patrick Exp $ + +*iojs-1.6.3-r1 (02 Apr 2015) + + 02 Apr 2015; Patrick Lauer <patrick@gentoo.org> +iojs-1.6.3-r1.ebuild, + metadata.xml: + Improvements and optional use of bundled libs by jbergstroem *iojs-1.6.3 (02 Apr 2015) diff --git a/net-libs/iojs/iojs-1.6.3-r1.ebuild b/net-libs/iojs/iojs-1.6.3-r1.ebuild new file mode 100644 index 000000000000..712ffdbac47b --- /dev/null +++ b/net-libs/iojs/iojs-1.6.3-r1.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-libs/iojs/iojs-1.6.3-r1.ebuild,v 1.1 2015/04/02 07:18:51 patrick Exp $ + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +MY_PV="v${PV}" +MY_P="${PN}-${MY_PV}" + +inherit python-any-r1 pax-utils toolchain-funcs flag-o-matic + +DESCRIPTION="An npm compatible platform originally based on node.js" +HOMEPAGE="http://iojs.org/" +SRC_URI="http://iojs.org/dist/${MY_PV}/${MY_P}.tar.xz" + +LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86 ~x64-macos" +IUSE="bundled-libs icu +npm snapshot +ssl" + +RDEPEND="icu? ( dev-libs/icu ) + !bundled-libs? ( + >=net-libs/http-parser-2.3 + >=dev-libs/libuv-1.4.2 + >=dev-libs/openssl-1.0.1m[-bindist] + )" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + !!net-libs/nodejs" +S="${WORKDIR}/${MY_P}" + +pkg_pretend() { + if ! test-flag-CXX -std=c++11 ; then + die "Your compiler doesn't support C++11. Use GCC 4.8, Clang 3.3 or newer." + fi +} + +src_prepare() { + # fix compilation on Darwin + # http://code.google.com/p/gyp/issues/detail?id=260 + sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die + + # make sure we use python2.* while using gyp + sed -i -e "s/python/python2/" deps/npm/node_modules/node-gyp/gyp/gyp || die + sed -i -e "s/|| 'python'/|| 'python2'/" deps/npm/node_modules/node-gyp/lib/configure.js || die + + # less verbose install output (stating the same as portage, basically) + sed -i -e "/print/d" tools/install.py || die + + # proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504 + local LIBDIR=$(get_libdir) + sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die + sed -i -e "s/'lib'/'${LIBDIR}'/" lib/module.js || die + sed -i -e "s|\"lib\"|\"${LIBDIR}\"|" deps/npm/lib/npm.js || die + + epatch "${FILESDIR}"/${PN}-1.2.0-pkgconfig.patch + + # Avoid a test that I've only been able to reproduce from emerge. It doesnt + # seem sandbox related either (invoking it from a sandbox works fine). + # The issue is that no stdin handle is openened when asked for one. + # It doesn't really belong upstream , so it'll just be removed until someone + # with more gentoo-knowledge than me (jbergstroem) figures it out. + rm test/parallel/test-stdout-close-unref.js +} + +src_configure() { + tc-export CC CXX PKG_CONFIG + export V=1 + + local myconf=() + local myarch="" + use bundled-libs || myconf+=( --shared-openssl --shared-libuv --shared-http-parser --shared-zlib ) + use npm || myconf+=( --without-npm ) + use icu && myconf+=( --with-intl=system-icu ) + use snapshot && myconf+=( --with-snapshot ) + use ssl || myconf+=( --without-ssl ) + + case ${ARCH} in + x86) myarch="ia32";; + amd64) + case ${ABI} in + x86) myarch="ia32";; + x32) myarch="x32";; + *) myarch="x64";; + esac + ;; + arm) myarch="arm";; + arm64) myarch="arm64";; + *) die "Unrecognized ARCH ${ARCH}";; + esac + + "${PYTHON}" configure \ + --prefix="${EPREFIX}"/usr \ + --dest-cpu=${myarch} \ + --without-dtrace \ + "${myconf[@]}" || die +} + +src_install() { + local LIBDIR="${ED}/usr/$(get_libdir)" + emake install DESTDIR="${ED}" + + use npm && dohtml -r "${LIBDIR}"/node_modules/npm/html/* + rm -rf "${LIBDIR}"/node_modules/npm/{doc,html} + rm -rf "${LIBDIR}"/dtrace + find "${LIBDIR}"/node_modules -type f -name "LICENSE" -delete + + pax-mark -m "${ED}"/usr/bin/iojs +}
\ No newline at end of file diff --git a/net-libs/iojs/metadata.xml b/net-libs/iojs/metadata.xml index 4dbbc90e24fd..d4e6fdc6ff1f 100644 --- a/net-libs/iojs/metadata.xml +++ b/net-libs/iojs/metadata.xml @@ -11,6 +11,7 @@ <name>Patrick Lauer</name> </maintainer> <use> + <flag name='bundled-libs'>Use bundled libs instead of system libs</flag> <flag name='npm'>Enable NPM package manager</flag> <flag name='snapshot'>Enable snapshot creation for faster startup</flag> </use> |