Gentoo Archives: gentoo-commits

From: William Hubbs <williamh@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/nodejs/
Date: Sun, 31 Jul 2022 18:20:24
Message-Id: 1659291567.1c23eefc28408b24a0c543519d81c07e46c64464.williamh@gentoo
1 commit: 1c23eefc28408b24a0c543519d81c07e46c64464
2 Author: William Hubbs <williamh <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jul 31 18:19:12 2022 +0000
4 Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 31 18:19:27 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c23eefc
7
8 net-libs/nodejs: drop 14.19.3, 16.15.1, 18.3.0, 18.4.0
9
10 Bug: https://bugs.gentoo.org/857111
11 Signed-off-by: William Hubbs <williamh <AT> gentoo.org>
12
13 net-libs/nodejs/Manifest | 4 -
14 net-libs/nodejs/nodejs-14.19.3.ebuild | 227 ----------------------------------
15 net-libs/nodejs/nodejs-16.15.1.ebuild | 219 --------------------------------
16 net-libs/nodejs/nodejs-18.3.0.ebuild | 219 --------------------------------
17 net-libs/nodejs/nodejs-18.4.0.ebuild | 219 --------------------------------
18 5 files changed, 888 deletions(-)
19
20 diff --git a/net-libs/nodejs/Manifest b/net-libs/nodejs/Manifest
21 index 2e518e037825..e237277d352a 100644
22 --- a/net-libs/nodejs/Manifest
23 +++ b/net-libs/nodejs/Manifest
24 @@ -1,7 +1,3 @@
25 -DIST node-v14.19.3.tar.xz 34483792 BLAKE2B 24b598b4c613ad63f8a2ffa15b2ad5663eef68e75842fac4ef988b43f8e6f9c1a242c9b352c411661dc7d1c9f6800426e12934fc4e7788061a8b9f918491a9b7 SHA512 0d03d9efee23664faf368a6ab42fa7d653033aebda1f2730c80692577825e31ff5522f1a940933245050a6f9af4ee64b6d65fc890e3d2ecfced327a909b63b6f
26 DIST node-v14.20.0.tar.xz 34487684 BLAKE2B a3b8af94d2bb0e52f36ead91a5cd96a4a35a67f07b87e43da5ff598d693fd8b3b47c05dbb6c6b738aefa55b056eccedbcf782225a2abf49110b3371a544952bd SHA512 400eb247c1d37ca64f4d643ab1852d2e1415ee190cf726b1e9b058386a1ebd6d7a9f40092afff228ec7980f37a78978252c1ef115aee47ec5b90c065f136b10f
27 -DIST node-v16.15.1.tar.xz 34618208 BLAKE2B 6bba1dcc01cf18710e75b998d90b2b1f75476052c85e730a1309a6fecf2994530ce65b45e53ff0cee17bfe07728d4f3eb166f460337cc74f3c7975aee858a6cf SHA512 18c05876f0afe6fd402a11824d1987ddadcb103d3ac16d5b500371536a5d53632c9cbf651b6f4a8d69b69e8bda2575beb7b68675c67fd6cd53e205acfba11038
28 DIST node-v16.16.0.tar.xz 35039712 BLAKE2B e4cf7debda3d32b515d60d11ac7ebd788fdab0ebc782a096571cd4b502dddfb9c63c9a3625198c6c545f95092ffcb247e94ee96e33d8a79a7c5e24c56039c229 SHA512 828bfee4f3789b02fec512a7d9785bf02650401c61b2d3ff80d8a3876420927fb9c8d0c2d66e45e1e8370c47cb81140d434747588322c4fedca7fd9e42b84ac3
29 -DIST node-v18.3.0.tar.xz 36941104 BLAKE2B 947d38aa8637f01421fcf5261832b2fd3f53a5f38868fd03b6c9213c2ba3bdff214be12585a60c4cf88dd9390673e068eb08da07d7da28443a9c56cd024186fc SHA512 c793459c38d72d65d5caaa7fbab37269fe6031766609ab2fd7c921b205d314b1ddebc40738b292669bbbaf166a97328f64af7a0a1aaac111903a42cf98057afd
30 -DIST node-v18.4.0.tar.xz 37109064 BLAKE2B d222ad41eef88a2fed13b0591b8c24037f8425c1e788d6ed00e033e28fa88162de6fcf25d094188952a7866e2f488c1ea635a80162c8b01d42c31f1d56406137 SHA512 c00d90cf5cfa8cd5629ed0b7810c436c962e50bd78313789457fd4003900808a190769db9d41e9a22186c6d2cda232bd362d432089eb8990913f7786140e2813
31 DIST node-v18.6.0.tar.xz 37189620 BLAKE2B 15a8a874f39db7de576d3ba81fddcb8072cb170ebb12308d2ade2efb9c8200c561671f453371a16db82d4c0f02522a28f6ae01216d11be40df94b53b184828b3 SHA512 d682e25a71ffbef90e2cb3c55e22dbd548952c4de24d48c47206afd270fd17c7bda95b3241840bf6a470f28d2389f3c6fddbb812ad17cf1d36262ff25fcda859
32
33 diff --git a/net-libs/nodejs/nodejs-14.19.3.ebuild b/net-libs/nodejs/nodejs-14.19.3.ebuild
34 deleted file mode 100644
35 index e86978056ae4..000000000000
36 --- a/net-libs/nodejs/nodejs-14.19.3.ebuild
37 +++ /dev/null
38 @@ -1,227 +0,0 @@
39 -# Copyright 1999-2022 Gentoo Authors
40 -# Distributed under the terms of the GNU General Public License v2
41 -
42 -EAPI=7
43 -
44 -PYTHON_COMPAT=( python3_{8..10} )
45 -PYTHON_REQ_USE="threads(+)"
46 -
47 -inherit bash-completion-r1 flag-o-matic pax-utils python-any-r1 toolchain-funcs xdg-utils
48 -
49 -DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
50 -HOMEPAGE="https://nodejs.org/"
51 -LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
52 -
53 -if [[ ${PV} == *9999 ]]; then
54 - inherit git-r3
55 - EGIT_REPO_URI="https://github.com/nodejs/node"
56 - SLOT="0"
57 -else
58 - SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
59 - SLOT="0/$(ver_cut 1)"
60 - KEYWORDS="amd64 arm arm64 ppc64 -riscv x86 ~amd64-linux ~x64-macos"
61 - S="${WORKDIR}/node-v${PV}"
62 -fi
63 -
64 -IUSE="cpu_flags_x86_sse2 debug doc +icu inspector lto +npm pax-kernel +snapshot +ssl +system-icu +system-ssl systemtap test"
65 -REQUIRED_USE="inspector? ( icu ssl )
66 - npm? ( ssl )
67 - system-icu? ( icu )
68 - system-ssl? ( ssl )"
69 -
70 -RESTRICT="!test? ( test )"
71 -
72 -RDEPEND=">=app-arch/brotli-1.0.9:=
73 - >=dev-libs/libuv-1.40.0:=
74 - >=net-dns/c-ares-1.17.2:=
75 - >=net-libs/nghttp2-1.41.0:=
76 - sys-libs/zlib
77 - system-icu? ( >=dev-libs/icu-67:= )
78 - system-ssl? (
79 - >=dev-libs/openssl-1.1.1:0=
80 - <dev-libs/openssl-3.0.0_beta1:0=
81 - )"
82 -BDEPEND="${PYTHON_DEPS}
83 - sys-apps/coreutils
84 - virtual/pkgconfig
85 - systemtap? ( dev-util/systemtap )
86 - test? ( net-misc/curl )
87 - pax-kernel? ( sys-apps/elfix )"
88 -DEPEND="${RDEPEND}"
89 -
90 -PATCHES=(
91 - "${FILESDIR}"/${PN}-12.22.5-shared_c-ares_nameser_h.patch
92 - "${FILESDIR}"/${PN}-14.15.0-fix_ppc64_crashes.patch
93 - "${FILESDIR}"/${PN}-14.19.0-global-npm-config.patch
94 -)
95 -
96 -pkg_pretend() {
97 - (use x86 && ! use cpu_flags_x86_sse2) && \
98 - die "Your CPU doesn't support the required SSE2 instruction."
99 -}
100 -
101 -src_prepare() {
102 - tc-export AR CC CXX PKG_CONFIG
103 - export V=1
104 - export BUILDTYPE=Release
105 -
106 - # fix compilation on Darwin
107 - # https://code.google.com/p/gyp/issues/detail?id=260
108 - sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die
109 -
110 - # less verbose install output (stating the same as portage, basically)
111 - sed -i -e "/print/d" tools/install.py || die
112 -
113 - # proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504
114 - local LIBDIR=$(get_libdir)
115 - sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die
116 - sed -i -e "s/'lib'/'${LIBDIR}'/" deps/npm/lib/npm.js || die
117 -
118 - # Avoid writing a depfile, not useful
119 - sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
120 -
121 - sed -i -e "/'-O3'/d" common.gypi node.gypi || die
122 -
123 - # debug builds. change install path, remove optimisations and override buildtype
124 - if use debug; then
125 - sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
126 - BUILDTYPE=Debug
127 - fi
128 -
129 - # We need to disable mprotect on two files when it builds Bug 694100.
130 - use pax-kernel && PATCHES+=( "${FILESDIR}"/${PN}-13.8.0-paxmarking.patch )
131 -
132 - # All this test does is check if the npm CLI produces warnings of any sort,
133 - # failing if it does. Overkill, much? Especially given one possible warning
134 - # is that there is a newer version of npm available upstream (yes, it does
135 - # use the network if available), thus making it a real possibility for this
136 - # test to begin failing one day even though it was fine before.
137 - rm -f test/parallel/test-release-npm.js
138 -
139 - default
140 -}
141 -
142 -src_configure() {
143 - xdg_environment_reset
144 -
145 - # LTO compiler flags are handled by configure.py itself
146 - filter-flags '-flto*'
147 -
148 - local myconf=(
149 - --shared-brotli
150 - --shared-cares
151 - --shared-libuv
152 - --shared-nghttp2
153 - --shared-zlib
154 - )
155 - use debug && myconf+=( --debug )
156 - use lto && myconf+=( --enable-lto )
157 - if use system-icu; then
158 - myconf+=( --with-intl=system-icu )
159 - elif use icu; then
160 - myconf+=( --with-intl=full-icu )
161 - else
162 - myconf+=( --with-intl=none )
163 - fi
164 - use inspector || myconf+=( --without-inspector )
165 - use npm || myconf+=( --without-npm )
166 - use snapshot || myconf+=( --without-node-snapshot )
167 - if use ssl; then
168 - use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
169 - else
170 - myconf+=( --without-ssl )
171 - fi
172 -
173 - local myarch=""
174 - case ${ABI} in
175 - amd64) myarch="x64";;
176 - arm) myarch="arm";;
177 - arm64) myarch="arm64";;
178 - ppc64) myarch="ppc64";;
179 - x32) myarch="x32";;
180 - x86) myarch="ia32";;
181 - *) myarch="${ABI}";;
182 - esac
183 -
184 - GYP_DEFINES="linux_use_gold_flags=0
185 - linux_use_bundled_binutils=0
186 - linux_use_bundled_gold=0" \
187 - "${EPYTHON}" configure.py \
188 - --prefix="${EPREFIX}"/usr \
189 - --dest-cpu=${myarch} \
190 - $(use_with systemtap dtrace) \
191 - "${myconf[@]}" || die
192 -}
193 -
194 -src_compile() {
195 - emake -C out
196 -}
197 -
198 -src_install() {
199 - local LIBDIR="${ED}/usr/$(get_libdir)"
200 - default
201 -
202 - pax-mark -m "${ED}"/usr/bin/node
203 -
204 - # set up a symlink structure that node-gyp expects..
205 - dodir /usr/include/node/deps/{v8,uv}
206 - dosym . /usr/include/node/src
207 - for var in deps/{uv,v8}/include; do
208 - dosym ../.. /usr/include/node/${var}
209 - done
210 -
211 - if use doc; then
212 - docinto html
213 - dodoc -r "${S}"/doc/*
214 - fi
215 -
216 - if use npm; then
217 - dodir /etc/npm
218 -
219 - # Install bash completion for `npm`
220 - # We need to temporarily replace default config path since
221 - # npm otherwise tries to write outside of the sandbox
222 - local npm_config="usr/$(get_libdir)/node_modules/npm/lib/config/core.js"
223 - sed -i -e "s|'/etc'|'${ED}/etc'|g" "${ED}/${npm_config}" || die
224 - local tmp_npm_completion_file="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
225 - "${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
226 - newbashcomp "${tmp_npm_completion_file}" npm
227 - sed -i -e "s|'${ED}/etc'|'/etc'|g" "${ED}/${npm_config}" || die
228 -
229 - # Move man pages
230 - doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
231 -
232 - # Clean up
233 - rm -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
234 - rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man}
235 -
236 - local find_exp="-or -name"
237 - local find_name=()
238 - for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
239 - ".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
240 - "*.md" "*.markdown" "*.bat" "*.cmd"; do
241 - find_name+=( ${find_exp} "${match}" )
242 - done
243 -
244 - # Remove various development and/or inappropriate files and
245 - # useless docs of dependend packages.
246 - find "${LIBDIR}"/node_modules \
247 - \( -type d -name examples \) -or \( -type f \( \
248 - -iname "LICEN?E*" \
249 - "${find_name[@]}" \
250 - \) \) -exec rm -rf "{}" \;
251 - fi
252 -
253 - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
254 -}
255 -
256 -src_test() {
257 - if has usersandbox ${FEATURES}; then
258 - rm -f "${S}"/test/parallel/test-fs-mkdir.js
259 - ewarn "You are emerging ${PN} with 'usersandbox' enabled. Excluding tests known to fail in this mode." \
260 - "For full test coverage, emerge =${CATEGORY}/${PF} with 'FEATURES=-usersandbox'."
261 - fi
262 -
263 - out/${BUILDTYPE}/cctest || die
264 - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
265 -}
266
267 diff --git a/net-libs/nodejs/nodejs-16.15.1.ebuild b/net-libs/nodejs/nodejs-16.15.1.ebuild
268 deleted file mode 100644
269 index 26d1ffb649f4..000000000000
270 --- a/net-libs/nodejs/nodejs-16.15.1.ebuild
271 +++ /dev/null
272 @@ -1,219 +0,0 @@
273 -# Copyright 1999-2022 Gentoo Authors
274 -# Distributed under the terms of the GNU General Public License v2
275 -
276 -EAPI=8
277 -
278 -PYTHON_COMPAT=( python3_{8..10} )
279 -PYTHON_REQ_USE="threads(+)"
280 -
281 -inherit bash-completion-r1 flag-o-matic pax-utils python-any-r1 toolchain-funcs xdg-utils
282 -
283 -DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
284 -HOMEPAGE="https://nodejs.org/"
285 -LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
286 -
287 -if [[ ${PV} == *9999 ]]; then
288 - inherit git-r3
289 - EGIT_REPO_URI="https://github.com/nodejs/node"
290 - SLOT="0"
291 -else
292 - SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
293 - SLOT="0/$(ver_cut 1)"
294 - KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
295 - S="${WORKDIR}/node-v${PV}"
296 -fi
297 -
298 -IUSE="cpu_flags_x86_sse2 debug doc +icu inspector lto +npm pax-kernel +snapshot +ssl +system-icu +system-ssl systemtap test"
299 -REQUIRED_USE="inspector? ( icu ssl )
300 - npm? ( ssl )
301 - system-icu? ( icu )
302 - system-ssl? ( ssl )"
303 -
304 -RESTRICT="!test? ( test )"
305 -
306 -RDEPEND=">=app-arch/brotli-1.0.9:=
307 - >=dev-libs/libuv-1.40.0:=
308 - >=net-dns/c-ares-1.17.2:=
309 - >=net-libs/nghttp2-1.41.0:=
310 - sys-libs/zlib
311 - system-icu? ( >=dev-libs/icu-67:= )
312 - system-ssl? ( >=dev-libs/openssl-1.1.1:0= )"
313 -BDEPEND="${PYTHON_DEPS}
314 - sys-apps/coreutils
315 - virtual/pkgconfig
316 - systemtap? ( dev-util/systemtap )
317 - test? ( net-misc/curl )
318 - pax-kernel? ( sys-apps/elfix )"
319 -DEPEND="${RDEPEND}"
320 -
321 -PATCHES=(
322 - "${FILESDIR}"/${PN}-12.22.5-shared_c-ares_nameser_h.patch
323 - "${FILESDIR}"/${PN}-15.2.0-global-npm-config.patch
324 -)
325 -
326 -pkg_pretend() {
327 - (use x86 && ! use cpu_flags_x86_sse2) && \
328 - die "Your CPU doesn't support the required SSE2 instruction."
329 -}
330 -
331 -src_prepare() {
332 - tc-export AR CC CXX PKG_CONFIG
333 - export V=1
334 - export BUILDTYPE=Release
335 -
336 - # fix compilation on Darwin
337 - # https://code.google.com/p/gyp/issues/detail?id=260
338 - sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die
339 -
340 - # less verbose install output (stating the same as portage, basically)
341 - sed -i -e "/print/d" tools/install.py || die
342 -
343 - # proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504
344 - local LIBDIR=$(get_libdir)
345 - sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die
346 - sed -i -e "s/'lib'/'${LIBDIR}'/" deps/npm/lib/npm.js || die
347 -
348 - # Avoid writing a depfile, not useful
349 - sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
350 -
351 - sed -i -e "/'-O3'/d" common.gypi node.gypi || die
352 -
353 - # debug builds. change install path, remove optimisations and override buildtype
354 - if use debug; then
355 - sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
356 - BUILDTYPE=Debug
357 - fi
358 -
359 - # We need to disable mprotect on two files when it builds Bug 694100.
360 - use pax-kernel && PATCHES+=( "${FILESDIR}"/${PN}-16.4.2-paxmarking.patch )
361 -
362 - # All this test does is check if the npm CLI produces warnings of any sort,
363 - # failing if it does. Overkill, much? Especially given one possible warning
364 - # is that there is a newer version of npm available upstream (yes, it does
365 - # use the network if available), thus making it a real possibility for this
366 - # test to begin failing one day even though it was fine before.
367 - rm -f test/parallel/test-release-npm.js
368 -
369 - default
370 -}
371 -
372 -src_configure() {
373 - xdg_environment_reset
374 -
375 - # LTO compiler flags are handled by configure.py itself
376 - filter-flags '-flto*'
377 -
378 - local myconf=(
379 - --shared-brotli
380 - --shared-cares
381 - --shared-libuv
382 - --shared-nghttp2
383 - --shared-zlib
384 - )
385 - use debug && myconf+=( --debug )
386 - use lto && myconf+=( --enable-lto )
387 - if use system-icu; then
388 - myconf+=( --with-intl=system-icu )
389 - elif use icu; then
390 - myconf+=( --with-intl=full-icu )
391 - else
392 - myconf+=( --with-intl=none )
393 - fi
394 - use inspector || myconf+=( --without-inspector )
395 - use npm || myconf+=( --without-npm )
396 - use snapshot || myconf+=( --without-node-snapshot )
397 - if use ssl; then
398 - use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
399 - else
400 - myconf+=( --without-ssl )
401 - fi
402 -
403 - local myarch=""
404 - case ${ABI} in
405 - amd64) myarch="x64";;
406 - arm) myarch="arm";;
407 - arm64) myarch="arm64";;
408 - lp64*) myarch="riscv64";;
409 - ppc64) myarch="ppc64";;
410 - x32) myarch="x32";;
411 - x86) myarch="ia32";;
412 - *) myarch="${ABI}";;
413 - esac
414 -
415 - GYP_DEFINES="linux_use_gold_flags=0
416 - linux_use_bundled_binutils=0
417 - linux_use_bundled_gold=0" \
418 - "${EPYTHON}" configure.py \
419 - --prefix="${EPREFIX}"/usr \
420 - --dest-cpu=${myarch} \
421 - $(use_with systemtap dtrace) \
422 - "${myconf[@]}" || die
423 -}
424 -
425 -src_compile() {
426 - emake -C out
427 -}
428 -
429 -src_install() {
430 - local LIBDIR="${ED}/usr/$(get_libdir)"
431 - default
432 -
433 - pax-mark -m "${ED}"/usr/bin/node
434 -
435 - # set up a symlink structure that node-gyp expects..
436 - dodir /usr/include/node/deps/{v8,uv}
437 - dosym . /usr/include/node/src
438 - for var in deps/{uv,v8}/include; do
439 - dosym ../.. /usr/include/node/${var}
440 - done
441 -
442 - if use doc; then
443 - docinto html
444 - dodoc -r "${S}"/doc/*
445 - fi
446 -
447 - if use npm; then
448 - keepdir /etc/npm
449 -
450 - # Install bash completion for `npm`
451 - local tmp_npm_completion_file="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
452 - "${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
453 - newbashcomp "${tmp_npm_completion_file}" npm
454 -
455 - # Move man pages
456 - doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
457 -
458 - # Clean up
459 - rm -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
460 - rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man}
461 -
462 - local find_exp="-or -name"
463 - local find_name=()
464 - for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
465 - ".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
466 - "*.md" "*.markdown" "*.bat" "*.cmd"; do
467 - find_name+=( ${find_exp} "${match}" )
468 - done
469 -
470 - # Remove various development and/or inappropriate files and
471 - # useless docs of dependend packages.
472 - find "${LIBDIR}"/node_modules \
473 - \( -type d -name examples \) -or \( -type f \( \
474 - -iname "LICEN?E*" \
475 - "${find_name[@]}" \
476 - \) \) -exec rm -rf "{}" \;
477 - fi
478 -
479 - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
480 -}
481 -
482 -src_test() {
483 - if has usersandbox ${FEATURES}; then
484 - rm -f "${S}"/test/parallel/test-fs-mkdir.js
485 - ewarn "You are emerging ${PN} with 'usersandbox' enabled. Excluding tests known to fail in this mode." \
486 - "For full test coverage, emerge =${CATEGORY}/${PF} with 'FEATURES=-usersandbox'."
487 - fi
488 -
489 - out/${BUILDTYPE}/cctest || die
490 - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
491 -}
492
493 diff --git a/net-libs/nodejs/nodejs-18.3.0.ebuild b/net-libs/nodejs/nodejs-18.3.0.ebuild
494 deleted file mode 100644
495 index 5ab2bfa29de9..000000000000
496 --- a/net-libs/nodejs/nodejs-18.3.0.ebuild
497 +++ /dev/null
498 @@ -1,219 +0,0 @@
499 -# Copyright 1999-2022 Gentoo Authors
500 -# Distributed under the terms of the GNU General Public License v2
501 -
502 -EAPI=8
503 -
504 -PYTHON_COMPAT=( python3_{8..10} )
505 -PYTHON_REQ_USE="threads(+)"
506 -
507 -inherit bash-completion-r1 flag-o-matic pax-utils python-any-r1 toolchain-funcs xdg-utils
508 -
509 -DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
510 -HOMEPAGE="https://nodejs.org/"
511 -LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
512 -
513 -if [[ ${PV} == *9999 ]]; then
514 - inherit git-r3
515 - EGIT_REPO_URI="https://github.com/nodejs/node"
516 - SLOT="0"
517 -else
518 - SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
519 - SLOT="0/$(ver_cut 1)"
520 - KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
521 - S="${WORKDIR}/node-v${PV}"
522 -fi
523 -
524 -IUSE="cpu_flags_x86_sse2 debug doc +icu inspector lto +npm pax-kernel +snapshot +ssl +system-icu +system-ssl systemtap test"
525 -REQUIRED_USE="inspector? ( icu ssl )
526 - npm? ( ssl )
527 - system-icu? ( icu )
528 - system-ssl? ( ssl )"
529 -
530 -RESTRICT="!test? ( test )"
531 -
532 -RDEPEND=">=app-arch/brotli-1.0.9:=
533 - >=dev-libs/libuv-1.40.0:=
534 - >=net-dns/c-ares-1.17.2:=
535 - >=net-libs/nghttp2-1.41.0:=
536 - sys-libs/zlib
537 - system-icu? ( >=dev-libs/icu-67:= )
538 - system-ssl? ( >=dev-libs/openssl-1.1.1:0= )"
539 -BDEPEND="${PYTHON_DEPS}
540 - sys-apps/coreutils
541 - virtual/pkgconfig
542 - systemtap? ( dev-util/systemtap )
543 - test? ( net-misc/curl )
544 - pax-kernel? ( sys-apps/elfix )"
545 -DEPEND="${RDEPEND}"
546 -
547 -PATCHES=(
548 - "${FILESDIR}"/${PN}-12.22.5-shared_c-ares_nameser_h.patch
549 - "${FILESDIR}"/${PN}-15.2.0-global-npm-config.patch
550 -)
551 -
552 -pkg_pretend() {
553 - (use x86 && ! use cpu_flags_x86_sse2) && \
554 - die "Your CPU doesn't support the required SSE2 instruction."
555 -}
556 -
557 -src_prepare() {
558 - tc-export AR CC CXX PKG_CONFIG
559 - export V=1
560 - export BUILDTYPE=Release
561 -
562 - # fix compilation on Darwin
563 - # https://code.google.com/p/gyp/issues/detail?id=260
564 - sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die
565 -
566 - # less verbose install output (stating the same as portage, basically)
567 - sed -i -e "/print/d" tools/install.py || die
568 -
569 - # proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504
570 - local LIBDIR=$(get_libdir)
571 - sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die
572 - sed -i -e "s/'lib'/'${LIBDIR}'/" deps/npm/lib/npm.js || die
573 -
574 - # Avoid writing a depfile, not useful
575 - sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
576 -
577 - sed -i -e "/'-O3'/d" common.gypi node.gypi || die
578 -
579 - # debug builds. change install path, remove optimisations and override buildtype
580 - if use debug; then
581 - sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
582 - BUILDTYPE=Debug
583 - fi
584 -
585 - # We need to disable mprotect on two files when it builds Bug 694100.
586 - use pax-kernel && PATCHES+=( "${FILESDIR}"/${PN}-18.3.0-paxmarking.patch )
587 -
588 - # All this test does is check if the npm CLI produces warnings of any sort,
589 - # failing if it does. Overkill, much? Especially given one possible warning
590 - # is that there is a newer version of npm available upstream (yes, it does
591 - # use the network if available), thus making it a real possibility for this
592 - # test to begin failing one day even though it was fine before.
593 - rm -f test/parallel/test-release-npm.js
594 -
595 - default
596 -}
597 -
598 -src_configure() {
599 - xdg_environment_reset
600 -
601 - # LTO compiler flags are handled by configure.py itself
602 - filter-flags '-flto*'
603 -
604 - local myconf=(
605 - --shared-brotli
606 - --shared-cares
607 - --shared-libuv
608 - --shared-nghttp2
609 - --shared-zlib
610 - )
611 - use debug && myconf+=( --debug )
612 - use lto && myconf+=( --enable-lto )
613 - if use system-icu; then
614 - myconf+=( --with-intl=system-icu )
615 - elif use icu; then
616 - myconf+=( --with-intl=full-icu )
617 - else
618 - myconf+=( --with-intl=none )
619 - fi
620 - use inspector || myconf+=( --without-inspector )
621 - use npm || myconf+=( --without-npm )
622 - use snapshot || myconf+=( --without-node-snapshot )
623 - if use ssl; then
624 - use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
625 - else
626 - myconf+=( --without-ssl )
627 - fi
628 -
629 - local myarch=""
630 - case ${ABI} in
631 - amd64) myarch="x64";;
632 - arm) myarch="arm";;
633 - arm64) myarch="arm64";;
634 - lp64*) myarch="riscv64";;
635 - ppc64) myarch="ppc64";;
636 - x32) myarch="x32";;
637 - x86) myarch="ia32";;
638 - *) myarch="${ABI}";;
639 - esac
640 -
641 - GYP_DEFINES="linux_use_gold_flags=0
642 - linux_use_bundled_binutils=0
643 - linux_use_bundled_gold=0" \
644 - "${EPYTHON}" configure.py \
645 - --prefix="${EPREFIX}"/usr \
646 - --dest-cpu=${myarch} \
647 - $(use_with systemtap dtrace) \
648 - "${myconf[@]}" || die
649 -}
650 -
651 -src_compile() {
652 - emake -C out
653 -}
654 -
655 -src_install() {
656 - local LIBDIR="${ED}/usr/$(get_libdir)"
657 - default
658 -
659 - pax-mark -m "${ED}"/usr/bin/node
660 -
661 - # set up a symlink structure that node-gyp expects..
662 - dodir /usr/include/node/deps/{v8,uv}
663 - dosym . /usr/include/node/src
664 - for var in deps/{uv,v8}/include; do
665 - dosym ../.. /usr/include/node/${var}
666 - done
667 -
668 - if use doc; then
669 - docinto html
670 - dodoc -r "${S}"/doc/*
671 - fi
672 -
673 - if use npm; then
674 - keepdir /etc/npm
675 -
676 - # Install bash completion for `npm`
677 - local tmp_npm_completion_file="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
678 - "${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
679 - newbashcomp "${tmp_npm_completion_file}" npm
680 -
681 - # Move man pages
682 - doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
683 -
684 - # Clean up
685 - rm -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
686 - rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man}
687 -
688 - local find_exp="-or -name"
689 - local find_name=()
690 - for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
691 - ".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
692 - "*.md" "*.markdown" "*.bat" "*.cmd"; do
693 - find_name+=( ${find_exp} "${match}" )
694 - done
695 -
696 - # Remove various development and/or inappropriate files and
697 - # useless docs of dependend packages.
698 - find "${LIBDIR}"/node_modules \
699 - \( -type d -name examples \) -or \( -type f \( \
700 - -iname "LICEN?E*" \
701 - "${find_name[@]}" \
702 - \) \) -exec rm -rf "{}" \;
703 - fi
704 -
705 - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
706 -}
707 -
708 -src_test() {
709 - if has usersandbox ${FEATURES}; then
710 - rm -f "${S}"/test/parallel/test-fs-mkdir.js
711 - ewarn "You are emerging ${PN} with 'usersandbox' enabled. Excluding tests known to fail in this mode." \
712 - "For full test coverage, emerge =${CATEGORY}/${PF} with 'FEATURES=-usersandbox'."
713 - fi
714 -
715 - out/${BUILDTYPE}/cctest || die
716 - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
717 -}
718
719 diff --git a/net-libs/nodejs/nodejs-18.4.0.ebuild b/net-libs/nodejs/nodejs-18.4.0.ebuild
720 deleted file mode 100644
721 index ab8116548114..000000000000
722 --- a/net-libs/nodejs/nodejs-18.4.0.ebuild
723 +++ /dev/null
724 @@ -1,219 +0,0 @@
725 -# Copyright 1999-2022 Gentoo Authors
726 -# Distributed under the terms of the GNU General Public License v2
727 -
728 -EAPI=8
729 -
730 -PYTHON_COMPAT=( python3_{8..10} )
731 -PYTHON_REQ_USE="threads(+)"
732 -
733 -inherit bash-completion-r1 flag-o-matic pax-utils python-any-r1 toolchain-funcs xdg-utils
734 -
735 -DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
736 -HOMEPAGE="https://nodejs.org/"
737 -LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT"
738 -
739 -if [[ ${PV} == *9999 ]]; then
740 - inherit git-r3
741 - EGIT_REPO_URI="https://github.com/nodejs/node"
742 - SLOT="0"
743 -else
744 - SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
745 - SLOT="0/$(ver_cut 1)"
746 - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
747 - S="${WORKDIR}/node-v${PV}"
748 -fi
749 -
750 -IUSE="cpu_flags_x86_sse2 debug doc +icu inspector lto +npm pax-kernel +snapshot +ssl +system-icu +system-ssl systemtap test"
751 -REQUIRED_USE="inspector? ( icu ssl )
752 - npm? ( ssl )
753 - system-icu? ( icu )
754 - system-ssl? ( ssl )"
755 -
756 -RESTRICT="!test? ( test )"
757 -
758 -RDEPEND=">=app-arch/brotli-1.0.9:=
759 - >=dev-libs/libuv-1.40.0:=
760 - >=net-dns/c-ares-1.17.2:=
761 - >=net-libs/nghttp2-1.41.0:=
762 - sys-libs/zlib
763 - system-icu? ( >=dev-libs/icu-67:= )
764 - system-ssl? ( >=dev-libs/openssl-1.1.1:0= )"
765 -BDEPEND="${PYTHON_DEPS}
766 - sys-apps/coreutils
767 - virtual/pkgconfig
768 - systemtap? ( dev-util/systemtap )
769 - test? ( net-misc/curl )
770 - pax-kernel? ( sys-apps/elfix )"
771 -DEPEND="${RDEPEND}"
772 -
773 -PATCHES=(
774 - "${FILESDIR}"/${PN}-12.22.5-shared_c-ares_nameser_h.patch
775 - "${FILESDIR}"/${PN}-15.2.0-global-npm-config.patch
776 -)
777 -
778 -pkg_pretend() {
779 - (use x86 && ! use cpu_flags_x86_sse2) && \
780 - die "Your CPU doesn't support the required SSE2 instruction."
781 -}
782 -
783 -src_prepare() {
784 - tc-export AR CC CXX PKG_CONFIG
785 - export V=1
786 - export BUILDTYPE=Release
787 -
788 - # fix compilation on Darwin
789 - # https://code.google.com/p/gyp/issues/detail?id=260
790 - sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die
791 -
792 - # less verbose install output (stating the same as portage, basically)
793 - sed -i -e "/print/d" tools/install.py || die
794 -
795 - # proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504
796 - local LIBDIR=$(get_libdir)
797 - sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die
798 - sed -i -e "s/'lib'/'${LIBDIR}'/" deps/npm/lib/npm.js || die
799 -
800 - # Avoid writing a depfile, not useful
801 - sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
802 -
803 - sed -i -e "/'-O3'/d" common.gypi node.gypi || die
804 -
805 - # debug builds. change install path, remove optimisations and override buildtype
806 - if use debug; then
807 - sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
808 - BUILDTYPE=Debug
809 - fi
810 -
811 - # We need to disable mprotect on two files when it builds Bug 694100.
812 - use pax-kernel && PATCHES+=( "${FILESDIR}"/${PN}-18.3.0-paxmarking.patch )
813 -
814 - # All this test does is check if the npm CLI produces warnings of any sort,
815 - # failing if it does. Overkill, much? Especially given one possible warning
816 - # is that there is a newer version of npm available upstream (yes, it does
817 - # use the network if available), thus making it a real possibility for this
818 - # test to begin failing one day even though it was fine before.
819 - rm -f test/parallel/test-release-npm.js
820 -
821 - default
822 -}
823 -
824 -src_configure() {
825 - xdg_environment_reset
826 -
827 - # LTO compiler flags are handled by configure.py itself
828 - filter-flags '-flto*'
829 -
830 - local myconf=(
831 - --shared-brotli
832 - --shared-cares
833 - --shared-libuv
834 - --shared-nghttp2
835 - --shared-zlib
836 - )
837 - use debug && myconf+=( --debug )
838 - use lto && myconf+=( --enable-lto )
839 - if use system-icu; then
840 - myconf+=( --with-intl=system-icu )
841 - elif use icu; then
842 - myconf+=( --with-intl=full-icu )
843 - else
844 - myconf+=( --with-intl=none )
845 - fi
846 - use inspector || myconf+=( --without-inspector )
847 - use npm || myconf+=( --without-npm )
848 - use snapshot || myconf+=( --without-node-snapshot )
849 - if use ssl; then
850 - use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
851 - else
852 - myconf+=( --without-ssl )
853 - fi
854 -
855 - local myarch=""
856 - case ${ABI} in
857 - amd64) myarch="x64";;
858 - arm) myarch="arm";;
859 - arm64) myarch="arm64";;
860 - lp64*) myarch="riscv64";;
861 - ppc64) myarch="ppc64";;
862 - x32) myarch="x32";;
863 - x86) myarch="ia32";;
864 - *) myarch="${ABI}";;
865 - esac
866 -
867 - GYP_DEFINES="linux_use_gold_flags=0
868 - linux_use_bundled_binutils=0
869 - linux_use_bundled_gold=0" \
870 - "${EPYTHON}" configure.py \
871 - --prefix="${EPREFIX}"/usr \
872 - --dest-cpu=${myarch} \
873 - $(use_with systemtap dtrace) \
874 - "${myconf[@]}" || die
875 -}
876 -
877 -src_compile() {
878 - emake -C out
879 -}
880 -
881 -src_install() {
882 - local LIBDIR="${ED}/usr/$(get_libdir)"
883 - default
884 -
885 - pax-mark -m "${ED}"/usr/bin/node
886 -
887 - # set up a symlink structure that node-gyp expects..
888 - dodir /usr/include/node/deps/{v8,uv}
889 - dosym . /usr/include/node/src
890 - for var in deps/{uv,v8}/include; do
891 - dosym ../.. /usr/include/node/${var}
892 - done
893 -
894 - if use doc; then
895 - docinto html
896 - dodoc -r "${S}"/doc/*
897 - fi
898 -
899 - if use npm; then
900 - keepdir /etc/npm
901 -
902 - # Install bash completion for `npm`
903 - local tmp_npm_completion_file="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
904 - "${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
905 - newbashcomp "${tmp_npm_completion_file}" npm
906 -
907 - # Move man pages
908 - doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
909 -
910 - # Clean up
911 - rm -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
912 - rm -rf "${LIBDIR}"/node_modules/npm/{doc,html,man}
913 -
914 - local find_exp="-or -name"
915 - local find_name=()
916 - for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
917 - ".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
918 - "*.md" "*.markdown" "*.bat" "*.cmd"; do
919 - find_name+=( ${find_exp} "${match}" )
920 - done
921 -
922 - # Remove various development and/or inappropriate files and
923 - # useless docs of dependend packages.
924 - find "${LIBDIR}"/node_modules \
925 - \( -type d -name examples \) -or \( -type f \( \
926 - -iname "LICEN?E*" \
927 - "${find_name[@]}" \
928 - \) \) -exec rm -rf "{}" \;
929 - fi
930 -
931 - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
932 -}
933 -
934 -src_test() {
935 - if has usersandbox ${FEATURES}; then
936 - rm -f "${S}"/test/parallel/test-fs-mkdir.js
937 - ewarn "You are emerging ${PN} with 'usersandbox' enabled. Excluding tests known to fail in this mode." \
938 - "For full test coverage, emerge =${CATEGORY}/${PF} with 'FEATURES=-usersandbox'."
939 - fi
940 -
941 - out/${BUILDTYPE}/cctest || die
942 - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
943 -}