summaryrefslogtreecommitdiff
path: root/net-libs/nodejs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-07-08 15:03:58 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-07-08 15:03:58 +0100
commit814f4cf860e299a046b649eaee5463427984c09c (patch)
tree74c45f097899310e599dad6b8df5b63e0f085bc0 /net-libs/nodejs
parent7f0ccc917c7abe6223784c703d86cd14755691fb (diff)
gentoo resync : 08.07.2021
Diffstat (limited to 'net-libs/nodejs')
-rw-r--r--net-libs/nodejs/Manifest11
-rw-r--r--net-libs/nodejs/nodejs-12.22.1-r1.ebuild246
-rw-r--r--net-libs/nodejs/nodejs-14.17.0.ebuild240
-rw-r--r--net-libs/nodejs/nodejs-14.17.3.ebuild (renamed from net-libs/nodejs/nodejs-14.17.2.ebuild)0
-rw-r--r--net-libs/nodejs/nodejs-16.4.2.ebuild (renamed from net-libs/nodejs/nodejs-16.4.1.ebuild)0
5 files changed, 4 insertions, 493 deletions
diff --git a/net-libs/nodejs/Manifest b/net-libs/nodejs/Manifest
index 791963bc4220..4117f84c39fe 100644
--- a/net-libs/nodejs/Manifest
+++ b/net-libs/nodejs/Manifest
@@ -11,15 +11,12 @@ AUX nodejs-99999999-llhttp.patch 506 BLAKE2B eea449910b97dfc320247f20bf20467f6c5
DIST node-v12.22.1.tar.xz 23650180 BLAKE2B 90b0a8ab3842483fea0c776e0245e63539a986c18f55abd8c7cd22ec399ccde22fa5b008d3e07c0f07713b5a45a1ee2a0bc370c04408800db2ee59cd92fcb5be SHA512 eaead633611bda04ab9be200aeddf3b4004b8104e9c6af246023b8008003dd3a7103e1508ea690443e59c6591521b04a2d71c7344343f2a20d1c935ef51c66a0
DIST node-v12.22.2.tar.xz 23665228 BLAKE2B 2213029c3a819981bab8b50d3e5d1a2f4c05bee797cf0e5f28d8bf621ac394b14dcfa63e682a00b21b023579155f2f373d21ff75e2fb2f25af484a02362cdd29 SHA512 6722498b51b7240d08068687e015920189a04ce3a19669089f96a15eafd14876db3dc49372674177f0d78bebc31eb873e22a07947a8e156ca5d3e240a42b8cc6
DIST node-v14.16.1.tar.xz 33297064 BLAKE2B 0927434c63cd248e90a4002b50c7a0fd68a5527a4cd7424b451840ddf0c403ba452979b195e598cc3b323e24233248a74a1274519ce8cd3a2f4e71dc7a8f3dcb SHA512 d4f5fbab69592ae555613b2186090b85a458d2211b6035989aee2617bfd0f6768ca767ec45ce12756a9c452d00af7237edee3b1ae526049e9fcd01f8f67680c0
-DIST node-v14.17.0.tar.xz 33484212 BLAKE2B 0ad045b7e0b96f564f42cef703338fece2167cb8bfe32840b765b137e01491a43a9c31ce290a3379ffa834ddfe4e2e1f42f95d4d0014240151b06313e0339383 SHA512 7a7683523904580462077c8bf3ee9640f1b674c7df55655049ca50ca3cfdb2973b13088f2b65e4eccf4df2641cd9c86c9716bcd160a5d5863a969cb1e88de093
-DIST node-v14.17.2.tar.xz 33591952 BLAKE2B 4bda55df738a0cbff706be29324971cf8b1d2e0eeed2bcabed72aed52b06ce375c49428b5edfa425aa6523ac5c00850229f3e6ae9e5de842ab2d86507b1d64ab SHA512 c974c6948a2f78951f23b007e03b141f69026096c470b66fa905a05f78942617d92e2aa5e3d51686c1b13814e754073724f3b40e4732dd6bb7f2c95ec00a7602
-DIST node-v16.4.1.tar.xz 33583984 BLAKE2B 24dbe2c9a07212a2911b55932fc6e5dd0d83f2d5a07ac6a16dfe2359c0cbaf87d5b52ac12b4be7cb77fe63c61f79f598235c7ba43693b4dd7d71bb83c478ee73 SHA512 ce01440a737f063fff84a3f05c54e85d8f85694dfea69c45cda4de2f0ab1e8e778f406b3ea989665b1af218d1a6c33a8e25019e986d345f5dccfc913a52deffe
-EBUILD nodejs-12.22.1-r1.ebuild 7045 BLAKE2B e9dde41d247bb9f8c072b0aabe3f04ab263ef1ea3b6bb14057087847a5642556d1c0f9d46257422850446ad21b847ffb1505e3651aa78096a9e7b40733d55faa SHA512 ece228de136e6041b996a8d9ed0099ddad524309c8e00738233476f72463fff9e306aa3211c4a914e3599f8951579a05fdbeb412693401dcd97852d638f5b426
+DIST node-v14.17.3.tar.xz 33585080 BLAKE2B 37267c9da2d773dbbe95f7378f5b0c2b0dc397b17850be325f9fec637c6745dede4ca4136ba4bf109d72d8982ee985f1e077cc706165f1be2e3dc3053edfe229 SHA512 c6096715299f155b96df873976da91e854da7e99cde635cdb65d5c962abc5283dac86b8ddce4f5a9f7498f9793ff08943645b5e5b0b23395dfe035f7295218bb
+DIST node-v16.4.2.tar.xz 33575848 BLAKE2B 9543912af397714f482672426ee62298f48fe035e8e2951957eb7eb18ccf28587821c6d11375fa0361610b44a8be5ce4917522f7850ecbfe7a671379ac1564c8 SHA512 3520e378badbcc5ad2bf158e500ce598833564740ac02031bc5b12938ce57b0bd068b76360067d5914078356372563ead6db01e56a501f3ebf894ce1f2d43ba6
EBUILD nodejs-12.22.1.ebuild 6412 BLAKE2B 7e5671b07a93b739c8b3a84730f0a873dc18c6746fe25a112ef8efc6bcc44c5c68a4df3eb16cea05cbe0ef786857a4b417c463ae3469d3d09c1d1bb1ae5e1725 SHA512 b38fef7e77ac63f589d52b4836483aaa36ec36597f130e83334b3a59a9bc7e7c98fa3d2ada868472db556240b355ebf4415b656823adc60b5f1965a010e97a4a
EBUILD nodejs-12.22.2.ebuild 7045 BLAKE2B e9dde41d247bb9f8c072b0aabe3f04ab263ef1ea3b6bb14057087847a5642556d1c0f9d46257422850446ad21b847ffb1505e3651aa78096a9e7b40733d55faa SHA512 ece228de136e6041b996a8d9ed0099ddad524309c8e00738233476f72463fff9e306aa3211c4a914e3599f8951579a05fdbeb412693401dcd97852d638f5b426
EBUILD nodejs-14.16.1.ebuild 6109 BLAKE2B 424c91ecf24cfc9777aa2302a6c0a842429482fbf57a7bc8570721e7ba64da3d4611023144dd3747cb438a4512f07bf6ef8f8089eaa17b09ab9efd02cc3ab140 SHA512 36b29089855c5de94bd109100de3fe9ffadea6148d3d8f893542b67a09f3db1652a1e5bc134b64116c880a2c313418b4bfc369912f5c6e1444400af3a814acd6
-EBUILD nodejs-14.17.0.ebuild 7083 BLAKE2B ba0217877c72fbbaddcee000dc8b26a4b84961e619e2301a6d3db10a3dd00eab73c38ca87028a7ed5ccde9aa4ad4923c8477459e891b9b26c9cf0bd3d75b7667 SHA512 beab17b5202435e43f2fa5ef35e8adafac64b713c6a1004650eb6aad7b0d4870f54dbb96088a8d9949b7272e3d38f946813af83587ef04abb24b168c950c0244
-EBUILD nodejs-14.17.2.ebuild 7039 BLAKE2B c7da8b757fb4d9005d5f4fdc56f796c1942b437a2328b2754c2d3348511746cf6f8dc821aa51a4a72b2370169ba7675e61d1bd30560fdfd5aa905ce26283b0b9 SHA512 ed81d9c85b32c9ca09791415bac534eae905936ff9bb9f96bc6ec4a9d7506ef22fb368f27d865aa2cf6452508e9eabced88f2d659be3242c1da5ed4ffe8513f9
-EBUILD nodejs-16.4.1.ebuild 6557 BLAKE2B 2cdad96f1bdba316385661d349b07791863ec9049743e8b9eef509aa7aa9eb41bad55d6f3bba8d2011a2ec3a3c3349b7c12cbb3aa9f90cac5fb43a061782d022 SHA512 db8c7d0615cefc6a03a08861a5d121ad73bc07364ba7e1ad4889fa08dd542f9d686751ab0936fd032aaf7db6e557a4f56d2145ff91d07477509ebfdef1bd644b
+EBUILD nodejs-14.17.3.ebuild 7039 BLAKE2B c7da8b757fb4d9005d5f4fdc56f796c1942b437a2328b2754c2d3348511746cf6f8dc821aa51a4a72b2370169ba7675e61d1bd30560fdfd5aa905ce26283b0b9 SHA512 ed81d9c85b32c9ca09791415bac534eae905936ff9bb9f96bc6ec4a9d7506ef22fb368f27d865aa2cf6452508e9eabced88f2d659be3242c1da5ed4ffe8513f9
+EBUILD nodejs-16.4.2.ebuild 6557 BLAKE2B 2cdad96f1bdba316385661d349b07791863ec9049743e8b9eef509aa7aa9eb41bad55d6f3bba8d2011a2ec3a3c3349b7c12cbb3aa9f90cac5fb43a061782d022 SHA512 db8c7d0615cefc6a03a08861a5d121ad73bc07364ba7e1ad4889fa08dd542f9d686751ab0936fd032aaf7db6e557a4f56d2145ff91d07477509ebfdef1bd644b
EBUILD nodejs-99999999.ebuild 6483 BLAKE2B d6f89474114f81e20edeafc824f96cb0ce23d9523439274ac51024e5632a03aa2d74878731149fea994d1a6474aff7936fd3247904d8d7db6cc29d96c3bad7ee SHA512 bbe34c8746cbc2c70cbe36f1da08ee32009f058ce2fde2b35095c1ed3582d67cfa10672b3901cf38180058d2452a6761605017ac84b63f993c42da0d731b9851
MISC metadata.xml 1000 BLAKE2B 2dd8788da6451360d25beeca97fe03a52761cf0478ddd03e4680e805b0f31309fb16e44c65f1ca7475f197e4f2f53b14a0a07d08d1324387191e0389d124e6a0 SHA512 a2dc0a100769ba541ac469df0ea74c20b057620fedfaeaf87516d62fb0eea00d1a42ec39f14713e37a44079a076a2770497e81ff0e9b987c70f234c6458e114c
diff --git a/net-libs/nodejs/nodejs-12.22.1-r1.ebuild b/net-libs/nodejs/nodejs-12.22.1-r1.ebuild
deleted file mode 100644
index 9c4fe05c005f..000000000000
--- a/net-libs/nodejs/nodejs-12.22.1-r1.ebuild
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..10} )
-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/"
-LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
-
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/nodejs/node"
- SLOT="0"
-else
- SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
- SLOT="0/$(ver_cut 1)"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x64-macos"
- S="${WORKDIR}/node-v${PV}"
-fi
-
-IUSE="cpu_flags_x86_sse2 debug doc icu inspector lto +npm +snapshot +ssl +system-ssl systemtap test"
-REQUIRED_USE="
- inspector? ( icu ssl )
- npm? ( ssl )
- system-ssl? ( ssl )
-"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-arch/brotli-1.0.9
- >=dev-libs/libuv-1.39.0:=
- >=net-dns/c-ares-1.16.0
- >=net-libs/http-parser-2.9.3:=
- >=net-libs/nghttp2-1.40.0
- sys-libs/zlib
- icu? ( >=dev-libs/icu-64.2:= )
- system-ssl? ( >=dev-libs/openssl-1.1.1:0= )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- sys-apps/coreutils
- virtual/pkgconfig
- systemtap? ( dev-util/systemtap )
- test? ( net-misc/curl )
-"
-DEPEND="
- ${RDEPEND}
-"
-PATCHES=(
- "${FILESDIR}"/${PN}-10.3.0-global-npm-config.patch
- "${FILESDIR}"/${PN}-12.20.1-fix_ppc64_crashes.patch
- "${FILESDIR}"/${PN}-12.22.1-jinja_collections_abc.patch
- "${FILESDIR}"/${PN}-12.22.1-uvwasi_shared_libuv.patch
- "${FILESDIR}"/${PN}-12.22.1-v8_icu69.patch
- "${FILESDIR}"/${PN}-99999999-llhttp.patch
-)
-
-pkg_pretend() {
- (use x86 && ! use cpu_flags_x86_sse2) && \
- die "Your CPU doesn't support the required SSE2 instruction."
-
- if [[ ${MERGE_TYPE} != "binary" ]]; then
- if use lto; then
- if tc-is-gcc; then
- if [[ $(gcc-major-version) -ge 11 ]]; then
- # Bug #787158
- die "LTO builds of ${PN} using gcc-11+ currently fail tests and produce runtime errors. Either switch to gcc-10 or unset USE=lto for this ebuild"
- fi
- else
- # configure.py will abort on this later if we do not
- die "${PN} only supports LTO for gcc"
- fi
- fi
- fi
-}
-
-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
-
- # Known-to-fail test of a deprecated, legacy HTTP parser. Just don't bother.
- rm -f test/parallel/test-http-transfer-encoding-smuggling-legacy.js
-
- # 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
-
- default
-}
-
-src_configure() {
- xdg_environment_reset
-
- # LTO compiler flags are handled by configure.py itself
- filter-flags '-flto*'
-
- local myconf=(
- --shared-brotli
- --shared-cares
- --shared-http-parser
- --shared-libuv
- --shared-nghttp2
- --shared-zlib
- )
- use debug && myconf+=( --debug )
- use lto && myconf+=( --enable-lto )
- 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 )
- if use ssl; then
- use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
- else
- myconf+=( --without-ssl )
- fi
-
- 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 mksnapshot
- pax-mark m "out/${BUILDTYPE}/mksnapshot"
- 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="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
- "${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 -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
- rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man}
-
- 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() {
- # parallel/test-fs-mkdir is known to fail with FEATURES=usersandbox
- if has usersandbox ${FEATURES}; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- out/${BUILDTYPE}/cctest || die
- "${PYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -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-14.17.0.ebuild b/net-libs/nodejs/nodejs-14.17.0.ebuild
deleted file mode 100644
index c27716a6b0b5..000000000000
--- a/net-libs/nodejs/nodejs-14.17.0.ebuild
+++ /dev/null
@@ -1,240 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..10} )
-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/"
-LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
-
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/nodejs/node"
- SLOT="0"
-else
- SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
- SLOT="0/$(ver_cut 1)"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x64-macos"
- S="${WORKDIR}/node-v${PV}"
-fi
-
-IUSE="cpu_flags_x86_sse2 debug doc +icu inspector lto +npm pax-kernel +snapshot +ssl system-icu +system-ssl systemtap test"
-REQUIRED_USE="inspector? ( icu ssl )
- npm? ( ssl )
- system-icu? ( icu )
- system-ssl? ( ssl )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=app-arch/brotli-1.0.9
- >=dev-libs/libuv-1.40.0:=
- >=net-dns/c-ares-1.16.1
- >=net-libs/nghttp2-1.41.0
- sys-libs/zlib
- system-icu? ( >=dev-libs/icu-67:= )
- system-ssl? ( >=dev-libs/openssl-1.1.1:0= )"
-BDEPEND="${PYTHON_DEPS}
- sys-apps/coreutils
- virtual/pkgconfig
- 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
- "${FILESDIR}"/${PN}-12.22.1-jinja_collections_abc.patch
- "${FILESDIR}"/${PN}-12.22.1-uvwasi_shared_libuv.patch
- "${FILESDIR}"/${PN}-14.15.0-fix_ppc64_crashes.patch
- "${FILESDIR}"/${PN}-14.16.1-v8_icu69.patch
-)
-
-pkg_pretend() {
- (use x86 && ! use cpu_flags_x86_sse2) && \
- die "Your CPU doesn't support the required SSE2 instruction."
-
- if [[ ${MERGE_TYPE} != "binary" ]]; then
- if use lto; then
- if tc-is-gcc; then
- if [[ $(gcc-major-version) -ge 11 ]]; then
- # Bug #787158
- die "LTO builds of ${PN} using gcc-11+ currently fail tests and produce runtime errors. Either switch to gcc-10 or unset USE=lto for this ebuild"
- fi
- else
- # configure.py will abort on this later if we do not
- die "${PN} only supports LTO for gcc"
- fi
- fi
- fi
-}
-
-src_prepare() {
- tc-export AR 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
-
- # 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.8.0-paxmarking.patch )
-
- # All this test does is check if the npm CLI produces warnings of any sort,
- # failing if it does. Overkill, much? Especially given one possible warning
- # is that there is a newer version of npm available upstream (yes, it does
- # use the network if available), thus making it a real possibility for this
- # test to begin failing one day even though it was fine before.
- rm -f test/parallel/test-release-npm.js
-
- default
-}
-
-src_configure() {
- xdg_environment_reset
-
- # LTO compiler flags are handled by configure.py itself
- filter-flags '-flto*'
-
- local myconf=(
- --shared-brotli
- --shared-cares
- --shared-libuv
- --shared-nghttp2
- --shared-zlib
- )
- use debug && myconf+=( --debug )
- use lto && myconf+=( --enable-lto )
- if use system-icu; then
- myconf+=( --with-intl=system-icu )
- elif use icu; then
- myconf+=( --with-intl=full-icu )
- else
- myconf+=( --with-intl=none )
- fi
- use inspector || myconf+=( --without-inspector )
- use npm || myconf+=( --without-npm )
- use snapshot || myconf+=( --without-node-snapshot )
- if use ssl; then
- use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
- else
- myconf+=( --without-ssl )
- fi
-
- 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="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
- "${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 -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
- rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man}
-
- 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() {
- # parallel/test-fs-mkdir is known to fail with FEATURES=usersandbox
- if has usersandbox ${FEATURES}; then
- ewarn "You are emerging ${P} with 'usersandbox' enabled." \
- "Expect some test failures or emerge with 'FEATURES=-usersandbox'!"
- fi
-
- out/${BUILDTYPE}/cctest || die
- "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
-}
diff --git a/net-libs/nodejs/nodejs-14.17.2.ebuild b/net-libs/nodejs/nodejs-14.17.3.ebuild
index a6c178ef153a..a6c178ef153a 100644
--- a/net-libs/nodejs/nodejs-14.17.2.ebuild
+++ b/net-libs/nodejs/nodejs-14.17.3.ebuild
diff --git a/net-libs/nodejs/nodejs-16.4.1.ebuild b/net-libs/nodejs/nodejs-16.4.2.ebuild
index 15a3869fc671..15a3869fc671 100644
--- a/net-libs/nodejs/nodejs-16.4.1.ebuild
+++ b/net-libs/nodejs/nodejs-16.4.2.ebuild