summaryrefslogtreecommitdiff
path: root/net-libs/nodejs
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/nodejs')
-rw-r--r--net-libs/nodejs/Manifest8
-rw-r--r--net-libs/nodejs/nodejs-12.14.1-r1.ebuild (renamed from net-libs/nodejs/nodejs-12.14.1.ebuild)2
-rw-r--r--net-libs/nodejs/nodejs-13.6.0-r1.ebuild (renamed from net-libs/nodejs/nodejs-13.6.0.ebuild)2
-rw-r--r--net-libs/nodejs/nodejs-13.7.0-r1.ebuild204
-rw-r--r--net-libs/nodejs/nodejs-99999999.ebuild2
5 files changed, 211 insertions, 7 deletions
diff --git a/net-libs/nodejs/Manifest b/net-libs/nodejs/Manifest
index ef935c7e6a6a..323462bca1c3 100644
--- a/net-libs/nodejs/Manifest
+++ b/net-libs/nodejs/Manifest
@@ -12,10 +12,10 @@ DIST node-v8.17.0.tar.xz 19013844 BLAKE2B 2f35f61ccc2d67132441dace8b59df6565e5df
EBUILD nodejs-10.18.0.ebuild 6276 BLAKE2B 24f1dd3c3af4fec3b456f899744b13b0c9451e55a159db5f56f4fe6a4062942798cd94f0b47b01fa933e51ea2fc91482cf2624e04c43dbd53cecc7bdeb573b57 SHA512 f9a3ca0b9eed22383069c2f4de9a0779ce8a0027bd268f1b8ca41d5d2a55e5010ec45c7d3a990ffbec5acc36d81dced37b30d80bf2b0316828eeeec3ce7827d1
EBUILD nodejs-10.18.1.ebuild 6279 BLAKE2B a620b05278a18edf70fb786e6840238a38b780469479cd9c8fb18deb8c0d89202c0e1ae324b04362538ba1059d6e049e1b7da52f02592a82edf94cc53991e100 SHA512 b243a92aff7c7b3c93321a910c180ae2b26cef726ff96232edfa87352ae38d16ad9fec439428233070df72ba5cfde6a5560a4c798b67b417866b2285af211342
EBUILD nodejs-12.14.0.ebuild 6116 BLAKE2B bcf44cabcf2c5463d1bfb4697212272eec662c41f181b3500ae27aeea17684fc3a5131f6a7e9f3a3a38bf7417c4190f5f3293b691a54899ece793d0c3ff1840e SHA512 6857bd8e8e26e642a133cef54e0df170b6c59a31b46dd68757d6be889c5e360ddbe93f8966eec63d7c91e3cf10a2d71e05b4b07abf001a93380309cdae55dad4
-EBUILD nodejs-12.14.1.ebuild 6119 BLAKE2B 10f8e3c7ef7db2c00fdecc6305bd4928a26a4283613878e8486a18e497c310174033a3f1df31289b6aaa3a2b027f0cbce5568ace197716f9188744fe1a07d773 SHA512 132399c18b562103ac953e2d8fbf6a2045fd9de8902b454774e2d14794ce2818601e09b29bac4abb0fa546108c32d6fa73928375bb78c627cac91468947e1d43
-EBUILD nodejs-13.6.0.ebuild 6140 BLAKE2B 4bad792ead15e0999b02dfe46690cf57ce3fc8fd13f3b6986d26f3046bd22ddbea49eb3a85138a0b0c71d17a8d396dd9e4ff646abd14ef2a62e8c93d95127003 SHA512 8c8a81c2d700105026ba30dd6703aa265554843db7fa9b0673b2641d3a1d6cdb9e1f5904e4dd9558f45ca51a188bc6847cf9bb6f474d92c11e7e2918669db671
-EBUILD nodejs-13.7.0.ebuild 6140 BLAKE2B a4fdc2f755d5c38362f33e622c7a014fd1f8b643cafd940ba76af862511e36987103195d8dc29e40f259fbb3aa76ee6102d5726ffd7134584958734c2fac749c SHA512 a6b075dd8c4b767848227005c743d8b3a0781db476fc7c50a1e106039ec9a219d0ed26f213d15c02e1609d7e3eab256081040206b2f334d905425fd10eaf3887
+EBUILD nodejs-12.14.1-r1.ebuild 6127 BLAKE2B 032f5d5427fc431eed654aed03872f48d243b2017672742db9f540809bd44a3b9c7933ae365159ac0459413080f2327fb2d44c7c86436b3f5f49ac00efb0ea8b SHA512 1ae825a848cffe5111390338084b225f1a353771888dd45698560487fc79e19d77c674cb9862efdba2a15617693134377bfa1403ed60e0eea5dee3bc274f82fc
+EBUILD nodejs-13.6.0-r1.ebuild 6148 BLAKE2B 74293a23b70ce6c9665540550d036f81b2e2cffbc6b5ed78d2042aece3e9d7b11e53b68096e26611456380594a1face29ae4165c9890a1fe0ecaf66d588309f1 SHA512 a3c2f91a9312d24517f3403f2eb1c0d7330a92370e7748a8180798faaf45ce93a783615c9b862be281cec256a8883f5f90cd122ca85c26561ffd4470360f55de
+EBUILD nodejs-13.7.0-r1.ebuild 6148 BLAKE2B 2848363d047918da656f60fa4072d40b6bb0bd9b6f1cdad0245bcfe081d124f2d4827255a168bf5346b781d504b63e2aa158c0a24fdfdd9cf5d788ea120d0027 SHA512 e67c8f1a1d72b72b3536196a9c05d6b5377b37aafac37faff6d1f68e201dcd937c0a2ba56ca6b71df1c5093d4ec73555d18d829bc3761cc947e02214bcbc1cdd
EBUILD nodejs-8.12.0.ebuild 6352 BLAKE2B 15a9b98d89d83fb5959b3b2582cea6a430e9dad5ac6033d7ea32647122ed8cf6a093f7dd90abb93f8585c7c1506d2c801bd439651a447b366fbe75a43259fa55 SHA512 df0848a3e96a62d6191ff0dbcf7ce55eb8da34913c39960e8eb02eb2b3c6d6f6d2202e884c77612b93048c85e6079cc95469c17e8357690936ea92eba400ba7c
EBUILD nodejs-8.17.0.ebuild 6474 BLAKE2B c7748e57d37a828a52127ba285b1b27b472063badf6784fc42616ca5a88a5151bc95162158d34715018db433d8b9e4875f20a7640b1f5b373012d3eb61b5c0eb SHA512 5ca66326a80139455dbe9f2ccb77e588a50142da005c51261f0223b06b4b52d61693f08ce9d22479b8801c5e219a38267e844f3de5a913fad334ebe1dc55cc3c
-EBUILD nodejs-99999999.ebuild 6056 BLAKE2B d9858cbc6b73f4e4875451374e14fba3379351bea97e027011325abbb0f3906d9adeb9eb5742bdb4a14bc136c5cf2bc408776f84e3b0a50419a8d4af80afc1a2 SHA512 4b453c14f159c732fbadb0ffdca80048e05c8a86c0fe8fe3854dee7ee5257190cb1050bea735947e5982aef28b81e5ec6ea20724270c4dc72c6d32e68c9e2bb9
+EBUILD nodejs-99999999.ebuild 6064 BLAKE2B 558a1e4ce81339c8e4ef99bb25b03bb45468817d5cc07dc18c64c3a9c58431c778189bf28b4514cc120166cb6cbf034edaa6efd2a66467b67d2ac7cfbfa643bd SHA512 cf87da1dba9131ad0390c3a8f4e6ef5e8b566631bb2e944ba817f4878b919cd930ad9db217c4d0cf9c0a15ed384632ebf2507c54846edc96fa405986fe28bb42
MISC metadata.xml 549 BLAKE2B 89d9231225010c703e933104cc5beea0706d4e865c61c6cb4f95194d2e0b0e4445800eae8c1074c5c313ace3cf3de2a71a05eed880f055b477023dff9729ab2e SHA512 e34ee9c52b2793f6dddb1f82f538598b5085a4bfea37e30047bd3e9bfabce52e3b826b8a2fe8e0e0842a288e14d8f3c229815e287354bdb121ba3e86018303c4
diff --git a/net-libs/nodejs/nodejs-12.14.1.ebuild b/net-libs/nodejs/nodejs-12.14.1-r1.ebuild
index a9a42fa11ba4..b8a749a17459 100644
--- a/net-libs/nodejs/nodejs-12.14.1.ebuild
+++ b/net-libs/nodejs/nodejs-12.14.1-r1.ebuild
@@ -105,7 +105,7 @@ src_configure() {
use icu && myconf+=( --with-intl=system-icu ) || myconf+=( --with-intl=none )
use inspector || myconf+=( --without-inspector )
use npm || myconf+=( --without-npm )
- use snapshot && myconf+=( --with-snapshot )
+ use snapshot || myconf+=( --without-node-snapshot )
use ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store ) || myconf+=( --without-ssl )
local myarch=""
diff --git a/net-libs/nodejs/nodejs-13.6.0.ebuild b/net-libs/nodejs/nodejs-13.6.0-r1.ebuild
index 3f434606d2fe..640cc3cc0b12 100644
--- a/net-libs/nodejs/nodejs-13.6.0.ebuild
+++ b/net-libs/nodejs/nodejs-13.6.0-r1.ebuild
@@ -103,7 +103,7 @@ src_configure() {
use icu && myconf+=( --with-intl=system-icu ) || myconf+=( --with-intl=none )
use inspector || myconf+=( --without-inspector )
use npm || myconf+=( --without-npm )
- use snapshot && myconf+=( --with-snapshot )
+ use snapshot || myconf+=( --without-node-snapshot )
use ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store ) || myconf+=( --without-ssl )
local myarch=""
diff --git a/net-libs/nodejs/nodejs-13.7.0-r1.ebuild b/net-libs/nodejs/nodejs-13.7.0-r1.ebuild
new file mode 100644
index 000000000000..35f1444b8a49
--- /dev/null
+++ b/net-libs/nodejs/nodejs-13.7.0-r1.ebuild
@@ -0,0 +1,204 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+PYTHON_REQ_USE="threads(+)"
+inherit bash-completion-r1 flag-o-matic pax-utils python-any-r1 toolchain-funcs xdg-utils
+
+DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
+HOMEPAGE="https://nodejs.org/"
+SRC_URI="
+ https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz
+"
+
+LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x64-macos"
+IUSE="cpu_flags_x86_sse2 debug doc icu inspector +npm pax_kernel +snapshot +ssl systemtap test"
+REQUIRED_USE="
+ inspector? ( icu ssl )
+ npm? ( ssl )
+"
+
+RDEPEND="
+ >=dev-libs/libuv-1.34.1:=
+ >=net-dns/c-ares-1.15.0
+ >=net-libs/nghttp2-1.40.0
+ sys-libs/zlib
+ icu? ( >=dev-libs/icu-64.2:= )
+ ssl? ( >=dev-libs/openssl-1.1.1:0= )
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ systemtap? ( dev-util/systemtap )
+ test? ( net-misc/curl )
+ pax_kernel? ( sys-apps/elfix )
+"
+DEPEND="
+ ${RDEPEND}
+"
+PATCHES=(
+ "${FILESDIR}"/${PN}-10.3.0-global-npm-config.patch
+)
+RESTRICT="test"
+S="${WORKDIR}/node-v${PV}"
+
+pkg_pretend() {
+ (use x86 && ! use cpu_flags_x86_sse2) && \
+ die "Your CPU doesn't support the required SSE2 instruction."
+
+ ( [[ ${MERGE_TYPE} != "binary" ]] && ! test-flag-CXX -std=c++11 ) && \
+ die "Your compiler doesn't support C++11. Use GCC 4.8, Clang 3.3 or newer."
+}
+
+src_prepare() {
+ tc-export CC CXX PKG_CONFIG
+ export V=1
+ export BUILDTYPE=Release
+
+ # fix compilation on Darwin
+ # https://code.google.com/p/gyp/issues/detail?id=260
+ sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || 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}'/" deps/npm/lib/npm.js || die
+
+ # Avoid writing a depfile, not useful
+ sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
+
+ sed -i -e "/'-O3'/d" common.gypi node.gypi || die
+
+ # 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 || die
+
+ # debug builds. change install path, remove optimisations and override buildtype
+ if use debug; then
+ sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
+ BUILDTYPE=Debug
+ fi
+
+ # We need to disable mprotect on two files when it builds Bug 694100.
+ use pax_kernel && PATCHES+=( "${FILESDIR}"/${PN}-13.2.0-paxmarking.patch )
+
+ default
+}
+
+src_configure() {
+ xdg_environment_reset
+
+ local myconf=(
+ --shared-cares --shared-libuv --shared-nghttp2 --shared-zlib
+ )
+ use debug && myconf+=( --debug )
+ use icu && myconf+=( --with-intl=system-icu ) || myconf+=( --with-intl=none )
+ use inspector || myconf+=( --without-inspector )
+ use npm || myconf+=( --without-npm )
+ use snapshot || myconf+=( --without-node-snapshot )
+ use ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store ) || myconf+=( --without-ssl )
+
+ local myarch=""
+ case ${ABI} in
+ amd64) myarch="x64";;
+ arm) myarch="arm";;
+ arm64) myarch="arm64";;
+ ppc64) myarch="ppc64";;
+ x32) myarch="x32";;
+ x86) myarch="ia32";;
+ *) myarch="${ABI}";;
+ esac
+
+ GYP_DEFINES="linux_use_gold_flags=0
+ linux_use_bundled_binutils=0
+ linux_use_bundled_gold=0" \
+ "${EPYTHON}" configure.py \
+ --prefix="${EPREFIX}"/usr \
+ --dest-cpu=${myarch} \
+ $(use_with systemtap dtrace) \
+ "${myconf[@]}" || die
+}
+
+src_compile() {
+ emake -C out
+}
+
+src_install() {
+ local LIBDIR="${ED}/usr/$(get_libdir)"
+ default
+
+ pax-mark -m "${ED}"/usr/bin/node
+
+ # set up a symlink structure that node-gyp expects..
+ dodir /usr/include/node/deps/{v8,uv}
+ dosym . /usr/include/node/src
+ for var in deps/{uv,v8}/include; do
+ dosym ../.. /usr/include/node/${var}
+ done
+
+ if use doc; then
+ docinto html
+ dodoc -r "${S}"/doc/*
+ fi
+
+ if use npm; then
+ dodir /etc/npm
+
+ # Install bash completion for `npm`
+ # We need to temporarily replace default config path since
+ # npm otherwise tries to write outside of the sandbox
+ local npm_config="usr/$(get_libdir)/node_modules/npm/lib/config/core.js"
+ sed -i -e "s|'/etc'|'${ED}/etc'|g" "${ED}/${npm_config}" || die
+ local tmp_npm_completion_file="$(emktemp)"
+ "${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
+ newbashcomp "${tmp_npm_completion_file}" npm
+ sed -i -e "s|'${ED}/etc'|'/etc'|g" "${ED}/${npm_config}" || die
+
+ # Move man pages
+ doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
+
+ # Clean up
+ rm "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile} || die
+ rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man} || die
+
+ local find_exp="-or -name"
+ local find_name=()
+ for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
+ ".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
+ "*.md" "*.markdown" "*.bat" "*.cmd"; do
+ find_name+=( ${find_exp} "${match}" )
+ done
+
+ # Remove various development and/or inappropriate files and
+ # useless docs of dependend packages.
+ find "${LIBDIR}"/node_modules \
+ \( -type d -name examples \) -or \( -type f \( \
+ -iname "LICEN?E*" \
+ "${find_name[@]}" \
+ \) \) -exec rm -rf "{}" \;
+ fi
+
+ mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
+}
+
+src_test() {
+ out/${BUILDTYPE}/cctest || die
+ "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} -J message parallel sequential || die
+}
+
+pkg_postinst() {
+ elog "The global npm config lives in /etc/npm. This deviates slightly"
+ elog "from upstream which otherwise would have it live in /usr/etc/."
+ elog ""
+ elog "Protip: When using node-gyp to install native modules, you can"
+ elog "avoid having to download extras by doing the following:"
+ elog "$ node-gyp --nodedir /usr/include/node <command>"
+}
diff --git a/net-libs/nodejs/nodejs-99999999.ebuild b/net-libs/nodejs/nodejs-99999999.ebuild
index 5c9388651ded..aad8df6897f2 100644
--- a/net-libs/nodejs/nodejs-99999999.ebuild
+++ b/net-libs/nodejs/nodejs-99999999.ebuild
@@ -100,7 +100,7 @@ src_configure() {
use icu && myconf+=( --with-intl=system-icu ) || myconf+=( --with-intl=none )
use inspector || myconf+=( --without-inspector )
use npm || myconf+=( --without-npm )
- use snapshot && myconf+=( --with-snapshot )
+ use snapshot || myconf+=( --without-node-snapshot )
use ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store ) || myconf+=( --without-ssl )
local myarch=""