diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-01-07 06:41:06 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-01-07 06:41:06 +0000 |
commit | d69399c7befdd98cda62d6a1788ae2aa7f104c5e (patch) | |
tree | eac7184f4cfe7d67580c1d0a0d9942a91e6cb4ee /net-libs | |
parent | e4d9d6796d5018e338f0b27a3bc97716195bf0b8 (diff) |
gentoo auto-resync : 07:01:2025 - 06:41:06
Diffstat (limited to 'net-libs')
22 files changed, 341 insertions, 1353 deletions
diff --git a/net-libs/Manifest.gz b/net-libs/Manifest.gz Binary files differindex 0cd74517aa18..03d6328ebeaf 100644 --- a/net-libs/Manifest.gz +++ b/net-libs/Manifest.gz diff --git a/net-libs/kdsoap-ws-discovery-client/Manifest b/net-libs/kdsoap-ws-discovery-client/Manifest index 955938fb421e..495db2f451a8 100644 --- a/net-libs/kdsoap-ws-discovery-client/Manifest +++ b/net-libs/kdsoap-ws-discovery-client/Manifest @@ -1,4 +1,4 @@ AUX kdsoap-ws-discovery-client-0.2_pre20200317-no-install-docs.patch 467 BLAKE2B 1b972ba3ae3a6831d49c1c2986fae4ff75fa051964b1c39399b413d724c7c93fef6bc9e740a7e0f10860b64e228f1f18ad1f4836e887aec67d0b2addf7205892 SHA512 2370c1571dcee014b258f388a8a6401a331afc4a2ca0e3491e112ad686bc822cb780b155a1f74e4a8dbe315a65207cc22e088f2471ba621b645cc8e043829903 DIST kdsoap-ws-discovery-client-0.4.0.tar.xz 30692 BLAKE2B f8d65a23731c9f56c75bdf678842b815512d5e15a28b3e37acc4d02cf0b10ec2d11876ff751dfd93321c7d3af3e422bec563ed6abd33c514f5537dbec9e39b46 SHA512 485e0319d986743183e82dd3a7576f0fc473122867e5e820a57f63b2fa2fde0721d8a7ee30d4399c01b11b51634db452174841a887b6685db9ab33e310866dda -EBUILD kdsoap-ws-discovery-client-0.4.0.ebuild 1088 BLAKE2B 5672b62846f75420687afb72383f3c16bfc87aa3d0d520df7afa5d549b223cb08859b8aeefbba3c28a48f98dae2186da3dd610059fd1c8efb67b75fdd4f41cdc SHA512 11435e3d2fe78424d92eaeec80e176f6676a827aa11232df33ff9ca632ad6d21cd0fe3b9764533025619881ab26af51fdbbf724434c81e6044aa815ef5969af5 +EBUILD kdsoap-ws-discovery-client-0.4.0.ebuild 1091 BLAKE2B 63fad979d9dcf77d14115e898b82d618f9c2a0ab4ebf5f7c4f2d0fb51f0aa96d7fe947c157b3e2b529a541df519276468be9c09de2203342b7457632f91e9619 SHA512 07dba968d0c060fd0567a977d8986dc923660fe3498d67d8137200fe9238ad4aed3d2024d5f9689cd98656177d79ed74ddc647b0bace5393806c3dfd9114bc02 MISC metadata.xml 355 BLAKE2B 837ce719b98553c8995bcf17d26eb6e6adb4679690029677487e14ae2026c4ad40ca1431a7133d026de65a27a74494b6be51dfa60e1e88dd06e3c86a55276a3d SHA512 138c43e593a78fa0983dd4d5abc1a32f50a33ef34f24adc45d64eb040eb30934325af7912f070348b4bd41cb1575f76740637100915f5baf1a45fc8bdcdf1972 diff --git a/net-libs/kdsoap-ws-discovery-client/kdsoap-ws-discovery-client-0.4.0.ebuild b/net-libs/kdsoap-ws-discovery-client/kdsoap-ws-discovery-client-0.4.0.ebuild index f0b31770d1f2..189b863a58f9 100644 --- a/net-libs/kdsoap-ws-discovery-client/kdsoap-ws-discovery-client-0.4.0.ebuild +++ b/net-libs/kdsoap-ws-discovery-client/kdsoap-ws-discovery-client-0.4.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -24,7 +24,7 @@ RESTRICT="test" RDEPEND=" dev-qt/qtbase:6[network] - >=net-libs/kdsoap-2.2.0[qt6] + >=net-libs/kdsoap-2.2.0[qt6(+)] " DEPEND="${RDEPEND} test? ( dev-qt/qtbase:6[xml] ) diff --git a/net-libs/kdsoap/Manifest b/net-libs/kdsoap/Manifest index 1ebff3f80f78..1aa27ba0f17b 100644 --- a/net-libs/kdsoap/Manifest +++ b/net-libs/kdsoap/Manifest @@ -1,3 +1,3 @@ DIST kdsoap-2.2.0.tar.gz 11918875 BLAKE2B 0cce6af5ee08948d8029a2302174e0faa9cc06a7c813cb914a5395078a27b23d3c10ccc63f50831ecbd8f8958cb2eb5620b460d78cd6e63480e17580a331a8f9 SHA512 6ed5cd6a0d02a9faf6881facbd28391c553b3671512153ecd058ab53bfbe9d3f0afa3704d580e66010ddf6a3de7e578a632339f8c1ae7529c28f9d5fd7d1eb5f -EBUILD kdsoap-2.2.0.ebuild 1459 BLAKE2B 264ef3571c1a928f28ae66a084ff04a5c2eb144fe0d240c63fe218ec98cdd1142c4f7c58eb830b62ecec5bc43948f3fbddcc8a82cfec3856da807a3f081fa973 SHA512 6c0d029fb4d8fecfb2fe802a6130a494765543f9c6d4379d93f10680a260873c3d1ceb986ba97ff00defdc8d1e963993997ccafa6a1e176b6dc80e7bc9daf4ff +EBUILD kdsoap-2.2.0-r1.ebuild 937 BLAKE2B bf4bcb00b37b8c55e85bbefac1c297d232b6f6a4cafdaf566a28ba3b018e87a5b591f79128763223737d8372a91a2de41fa314e38db64e76e1a73dbe3264a449 SHA512 e7f4345f856307bfeeedd01ebde30a7e8d2674c5b5c5622d65959fd66604d1fff6730f03eebf370e1e10ba11fa093ab4a15217db90f43180ebe96417ad580821 MISC metadata.xml 326 BLAKE2B c8d9770121ebd17e883891e2e101ddbe7ba0bd8c26b0fd6f3cd68069ad59f25e5407fff8c40781063c3d93902b29342e8f1e57b493194cf9d8bd08886deb7c26 SHA512 871bc07a24982421a397b0d53f51ecfc98a606bc276d98f20d6408e769c678dd39c925b86d5b393964937da97be2d4e3d6ff8a8a6df4848493a56aaacd999254 diff --git a/net-libs/kdsoap/kdsoap-2.2.0-r1.ebuild b/net-libs/kdsoap/kdsoap-2.2.0-r1.ebuild new file mode 100644 index 000000000000..6b821df016e8 --- /dev/null +++ b/net-libs/kdsoap/kdsoap-2.2.0-r1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} != *9999* ]]; then + SRC_URI="https://github.com/KDAB/KDSoap/releases/download/${P}/${P}.tar.gz" + KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" +else + EGIT_REPO_URI="https://github.com/KDAB/KDSoap.git" + EGIT_SUBMODULES=( kdwsdl2cpp/libkode -autogen ) + inherit git-r3 +fi +inherit cmake + +DESCRIPTION="Qt-based client-side and server-side SOAP component" +HOMEPAGE="https://www.kdab.com/development-resources/qt-tools/kd-soap/" + +LICENSE="GPL-3 AGPL-3" +SLOT="0/2" + +RDEPEND="dev-qt/qtbase:6[network,xml]" +DEPEND="${RDEPEND} + dev-libs/boost +" + +src_prepare() { + cmake_src_prepare + sed -e "/install.*INSTALL_DOC_DIR/d" -i CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=( + -DKDSoap_DOCS=OFF + -DKDSoap_EXAMPLES=OFF # no install targets + -DKDSoap_QT6=ON + -DKDSoap_STATIC=OFF + ) + cmake_src_configure +} diff --git a/net-libs/kdsoap/kdsoap-2.2.0.ebuild b/net-libs/kdsoap/kdsoap-2.2.0.ebuild deleted file mode 100644 index 5c5c5c7672a8..000000000000 --- a/net-libs/kdsoap/kdsoap-2.2.0.ebuild +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -if [[ ${PV} != *9999* ]]; then - SRC_URI="https://github.com/KDAB/KDSoap/releases/download/${P}/${P}.tar.gz" - KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" -else - EGIT_REPO_URI="https://github.com/KDAB/KDSoap.git" - EGIT_SUBMODULES=( kdwsdl2cpp/libkode -autogen ) - inherit git-r3 -fi -inherit cmake multibuild - -DESCRIPTION="Qt-based client-side and server-side SOAP component" -HOMEPAGE="https://www.kdab.com/development-resources/qt-tools/kd-soap/" - -LICENSE="GPL-3 AGPL-3" -SLOT="0/2" -IUSE="+qt5 qt6" -REQUIRED_USE="|| ( qt5 qt6 )" - -RDEPEND=" - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtnetwork:5 - dev-qt/qtxml:5 - ) - qt6? ( dev-qt/qtbase:6[network,xml] )" -DEPEND="${RDEPEND} - dev-libs/boost -" - -pkg_setup() { - MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) ) -} - -src_prepare() { - cmake_src_prepare - sed -e "/install.*INSTALL_DOC_DIR/d" -i CMakeLists.txt || die -} - -src_configure() { - my_src_configure() { - local mycmakeargs=( - -DKDSoap_DOCS=OFF - -DKDSoap_EXAMPLES=OFF # no install targets - -DKDSoap_STATIC=OFF - ) - - if [[ ${MULTIBUILD_VARIANT} == qt6 ]]; then - mycmakeargs+=( -DKDSoap_QT6=ON ) - else - mycmakeargs+=( -DKDSoap_QT6=OFF ) - fi - cmake_src_configure - } - - multibuild_foreach_variant my_src_configure -} - -src_compile() { - multibuild_foreach_variant cmake_src_compile -} - -src_install() { - multibuild_foreach_variant cmake_src_install -} diff --git a/net-libs/llhttp/Manifest b/net-libs/llhttp/Manifest index e1a96e6266e3..c1cd793d3fe7 100644 --- a/net-libs/llhttp/Manifest +++ b/net-libs/llhttp/Manifest @@ -1,3 +1,3 @@ DIST llhttp-release-v9.2.1.tar.gz 37786 BLAKE2B d9379b974344173b7a2c766950ae2f684ecc1ea44c15a8c9b36c97cbf7550acac016ec4059c2ccebbd46e54b790270dae733350acb86cafbc52abb788610b69e SHA512 7e6f5427b4b6d778ecefff892db78894ef4fd22a79e9c1f2c24d38d603d885755bdc8b0e8202b47c8bc209d3caf45a7293214617390a7a9c33bffbaab59fe5da -EBUILD llhttp-9.2.1.ebuild 609 BLAKE2B 91751734f4f415d751c58e429297f5cf576318fcd14393f8eb50e58bcc7ec924d93e14354efc4a95f4ffd572edf22e6d0a6d4bc6fc5a9f01bed867d2160a668b SHA512 44d062cf28f4da5a192c980f625a1cad2106bc53c742fef6a5669531337f63e9e95957ffb4921c0ded3ac46875c650c334a71aa89517544cb462c412644fc19f +EBUILD llhttp-9.2.1.ebuild 616 BLAKE2B 9ad54751243b59bcfacb741024b3d48c1961f37110c445a33df78271e93db33a777de1ba2717dc39b033204cc614c5f37b0f0706f98af924cceaba7366967760 SHA512 5d7527e89a94856eb7476dc8d7fde167552f176e41c9b84a77cd15b6f88c62a95bdf89608e51e4515ca8bba4ac1c3db2ab993f39dbbeef4efaefc15f8985bfcc MISC metadata.xml 326 BLAKE2B eaf859349a7916cea0a72b0c8a72950d50219ccd101919b684c787684e1fa9a9e3c9e10035c9ade110366acd9295897798505f3c6a7123cb702bc1a02a81ca8f SHA512 72786ea9292675e83094d60c2a5e75da186c7b39b0b65d73d37f540fbeb050516b34ab5d2bbfb762339cee234b0ad23813d702e215b8c8d55f679e37230f3605 diff --git a/net-libs/llhttp/llhttp-9.2.1.ebuild b/net-libs/llhttp/llhttp-9.2.1.ebuild index 0ab4d5f78636..7a9a49b0b578 100644 --- a/net-libs/llhttp/llhttp-9.2.1.ebuild +++ b/net-libs/llhttp/llhttp-9.2.1.ebuild @@ -18,4 +18,4 @@ S=${WORKDIR}/${MY_P} LICENSE="MIT" SLOT="0/$(ver_cut 1-2)" -KEYWORDS="amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" diff --git a/net-libs/mbedtls/Manifest b/net-libs/mbedtls/Manifest index bb4ef40706b6..6777b11a8d4a 100644 --- a/net-libs/mbedtls/Manifest +++ b/net-libs/mbedtls/Manifest @@ -1,7 +1,9 @@ -DIST mbedtls-2.28.8.tar.bz2 3343796 BLAKE2B 1efde6698662873c40df9733bae902db4e009f3dd26a937e05707ca1a208b71675df0737b44b5895a60cfbf42f18f92dae88cba62f32b55733947b9c0481880e SHA512 c8e91ec50ab2caf1f33e907279dc30fca2a8cd97e6e531be857149589e52aeffb95b445b2a9fa674886f0071f446381da3bb8107f7e850f3390128b069ac9ea7 +AUX mbedtls-3.6.2-add-version-suffix-for-all-installable-targets.patch 3878 BLAKE2B 3388a13d57cfeb7b8edc360ba6aa1f666f119ec7ff52810af3f10ac2e1995bb7899ea0175a11f0162c1b46587457f3fdfe4f8ee4f7765cf32508dbfd87db15aa SHA512 6611e57fefd6d4deb57530fa4dbade10effadd17ca5f95359c69d18056d5c56d6d013927e6338d928d10cc8d882a3de529f1c68f37869e9343fd57f6e85a1f9d +AUX mbedtls-3.6.2-add-version-suffix-for-pkg-config-files.patch 3025 BLAKE2B c6cafa26e0613cd286d81c34d97aa041cc873898d3064063ce9eb5d4e2cd2370c23a02a62bd105c32d9cbaa9086fbc4fce5dfff361e77a7a4f30936ab27814fb SHA512 92e282d85b1244645d82d13a7cfb6196a7fe2035a5f3a5bffbcd4b07349aacc15c44f6b37ba3c94721ea6e8be26f7fba4eb624a46da78dadb016aabc4881aba4 +AUX mbedtls-3.6.2-allow-install-headers-to-different-location.patch 3786 BLAKE2B 10be2d1f3bdc55b5b817bf94dced8c087713dcf5b89cdb675033027bbdba6e46a356d49ac8aa18ac3282bea808193d13ebc60d99f6c651f280f3c82da9bfd8ce SHA512 15d5abf92d347404825ff05b939546c551acafb6ddcbb341c5d62d8fd91b89d17fcb702c79b8de261fb583f35f6cffc42c0dcf1722d375d65a56d069633ffb2c +AUX mbedtls-3.6.2-exclude-static-3dparty.patch 590 BLAKE2B a8e51e823f94663c025ece074f7afd89f0d1394111b21be320c78a0667d74cde08496da425323e209e1d3538229dd8c0668aa3e42db9d954cfd4feaa6c5ecc13 SHA512 4ff687509526131f5d1eaacc15a8763866f5568fef46afb1dc0d3920568c2ecda20fa40aee76dddc2d120fd343f8bd282f068dabd15347ae464974815f206c4f DIST mbedtls-2.28.9.tar.bz2 3357068 BLAKE2B 14b845f826c3a1953ca3ab82d2f557d8fe6f1a2f57b31134c89933571a87ab9027de50f8f094d4086509d60e38d4c82ac67180f848aa6d06f3ce9f390c8ed63c SHA512 305f97c0b0ba7d57639532a24600234d8f849a4a5795773673b31cc1fdcd1cd56aea42bec2ff87439296e1528dcc2bed5e2a29fbdbf7edad4f5c4da232079d99 DIST mbedtls-3.6.2.tar.bz2 4979769 BLAKE2B dbf34ca3cffca7a9bdb10191bd58971583ae3f2cdef3e350ccda08eae2e7b52f5fd4d1aff5582ee120b6e35e6843d7dd323ba7da5f1428c16130e5ed7c0d689e SHA512 7ab3b1ec179681949e1b0d171e04f75a605ae9ed8177cf3f6f27c401efca4aff930437ecc425c9a994d36f50ddd6f0f0dd7feeb42251128ac875b4c57fe3811b -EBUILD mbedtls-2.28.8-r1.ebuild 2980 BLAKE2B dd7a9f676873de5331eb5ba05eaab78db29dc5b6f160296e31aaba08589703c8f593df323ca32ff47fb3a979e9983a26aae16dfe90fe69780c51c0bb19898ad6 SHA512 5f0eaf264c8dc4a857964a00dcf8abcb90b2f288f98f61efa558bdc33b6a2579a0e6bf9c53fb803cc72ee70cff4870fe8bb2c7a4018f2a836f3d46de1d495c9f EBUILD mbedtls-2.28.9-r1.ebuild 2977 BLAKE2B 7cff1791e89944adb555305436b61a335698ba87b096b9f3a252e2dd0a3fc001577d19e359e36273bf158e36d6c256de1010323e62fe9403ea7d7189e07e9bc7 SHA512 b866cd79a56cfb851a2a3a9de508bcb1f23cc27400a2ed9633ebe4dfb471b8c5e4917fd6c3597eb4a0a5d1b1eb92522d2801614d634a926c3049f4df553e86ea -EBUILD mbedtls-3.6.2-r1.ebuild 2692 BLAKE2B f97652d35818ae78f9d429e253ecd57815ef633090a5d55061761608cf55220df8c1cc07ce9d36d79e0033f65516c13b6e8a150075c012940849deeed62e9346 SHA512 0df1ad4a169e18051d7e2b35b0813854715256dbd24a8accd2e4daa5c285bc3ee878673eeb5b7373e04fd3fbbadd939286719748788d8eec874d9b12451712fe +EBUILD mbedtls-3.6.2-r100.ebuild 3028 BLAKE2B 6748fa1b8ed0a77af3bce470b58abea95b30a6a8ea06adda6f45de73d44e900bcd4928a8fd6dc819f951c0f4d169eefa0705fd32a5f1c26196655e0f080906e0 SHA512 64eacb202f1fbe2ac0250a1c0a28d6fa985fe2026235812d29dab4c18afdf89a0ed73ce5bdbb1439100afb9c171946029d1dcd8ef05bc0493a8106ca5050d47c MISC metadata.xml 1058 BLAKE2B 6b3d24de59849c4fe1a629007300b3bc85aa9e7808e54f91a257c5d9de5eaf7b0567ad248aa928ea6b30a8977ff2d70410721bb03a7839c3f97d7d1c5f416e13 SHA512 8f8a6fef48532d23d10efc7a2334606840ae80d46373a423ab1898950e23487587c8babca2aacfbe7fa5dd4d1327d42e171ad01235f813541acfce27a0fa968b diff --git a/net-libs/mbedtls/files/mbedtls-3.6.2-add-version-suffix-for-all-installable-targets.patch b/net-libs/mbedtls/files/mbedtls-3.6.2-add-version-suffix-for-all-installable-targets.patch new file mode 100644 index 000000000000..3aeea6060da7 --- /dev/null +++ b/net-libs/mbedtls/files/mbedtls-3.6.2-add-version-suffix-for-all-installable-targets.patch @@ -0,0 +1,79 @@ +https://github.com/Mbed-TLS/mbedtls/pull/9876 +From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> +Date: Sun, 1 Dec 2024 00:49:15 +0300 +Subject: Add version suffix for all installable targets + +Convert main library targets to slottable versions. This allows to +install major versions of MbedTLS simultaneously. + +Dependent packages should use `find_package(MbedTLS 3 [REQUIRED])` and +`MbedTLS::<component>` in order to use requested libraries. +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -478,7 +478,7 @@ if(NOT DISABLE_PACKAGE_CONFIG_AND_INSTALL) + install( + FILES "${CMAKE_CURRENT_BINARY_DIR}/cmake/MbedTLSConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/cmake/MbedTLSConfigVersion.cmake" +- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/MbedTLS") ++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/MbedTLS-${PROJECT_VERSION_MAJOR}") + + export( + EXPORT MbedTLSTargets +@@ -488,7 +488,7 @@ if(NOT DISABLE_PACKAGE_CONFIG_AND_INSTALL) + install( + EXPORT MbedTLSTargets + NAMESPACE MbedTLS:: +- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/MbedTLS" ++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/MbedTLS-${PROJECT_VERSION_MAJOR}" + FILE "MbedTLSTargets.cmake") + + if(CMAKE_VERSION VERSION_GREATER 3.15 OR CMAKE_VERSION VERSION_EQUAL 3.15) +--- a/library/CMakeLists.txt ++++ b/library/CMakeLists.txt +@@ -277,7 +277,7 @@ set(everest_target "${MBEDTLS_TARGET_PREFIX}everest") + + if(USE_STATIC_MBEDTLS_LIBRARY) + add_library(${mbedcrypto_static_target} STATIC ${src_crypto}) +- set_target_properties(${mbedcrypto_static_target} PROPERTIES OUTPUT_NAME mbedcrypto) ++ set_target_properties(${mbedcrypto_static_target} PROPERTIES OUTPUT_NAME mbedcrypto${PROJECT_VERSION_MAJOR}) + target_link_libraries(${mbedcrypto_static_target} PUBLIC ${libs}) + + if(TARGET ${everest_target}) +@@ -289,11 +289,11 @@ if(USE_STATIC_MBEDTLS_LIBRARY) + endif() + + add_library(${mbedx509_static_target} STATIC ${src_x509}) +- set_target_properties(${mbedx509_static_target} PROPERTIES OUTPUT_NAME mbedx509) ++ set_target_properties(${mbedx509_static_target} PROPERTIES OUTPUT_NAME mbedx509${PROJECT_VERSION_MAJOR}) + target_link_libraries(${mbedx509_static_target} PUBLIC ${libs} ${mbedcrypto_static_target}) + + add_library(${mbedtls_static_target} STATIC ${src_tls}) +- set_target_properties(${mbedtls_static_target} PROPERTIES OUTPUT_NAME mbedtls) ++ set_target_properties(${mbedtls_static_target} PROPERTIES OUTPUT_NAME mbedtls${PROJECT_VERSION_MAJOR}) + target_link_libraries(${mbedtls_static_target} PUBLIC ${libs} ${mbedx509_static_target}) + endif(USE_STATIC_MBEDTLS_LIBRARY) + +@@ -301,6 +301,7 @@ if(USE_SHARED_MBEDTLS_LIBRARY) + set(CMAKE_LIBRARY_PATH ${CMAKE_CURRENT_BINARY_DIR}) + add_library(${mbedcrypto_target} SHARED ${src_crypto}) + set_target_properties(${mbedcrypto_target} PROPERTIES VERSION 3.6.2 SOVERSION 16) ++ set_target_properties(${mbedcrypto_target} PROPERTIES OUTPUT_NAME mbedcrypto${PROJECT_VERSION_MAJOR}) + target_link_libraries(${mbedcrypto_target} PUBLIC ${libs}) + + if(TARGET ${everest_target}) +@@ -313,10 +314,12 @@ if(USE_SHARED_MBEDTLS_LIBRARY) + + add_library(${mbedx509_target} SHARED ${src_x509}) + set_target_properties(${mbedx509_target} PROPERTIES VERSION 3.6.2 SOVERSION 7) ++ set_target_properties(${mbedx509_target} PROPERTIES OUTPUT_NAME mbedx509${PROJECT_VERSION_MAJOR}) + target_link_libraries(${mbedx509_target} PUBLIC ${libs} ${mbedcrypto_target}) + + add_library(${mbedtls_target} SHARED ${src_tls}) + set_target_properties(${mbedtls_target} PROPERTIES VERSION 3.6.2 SOVERSION 21) ++ set_target_properties(${mbedtls_target} PROPERTIES OUTPUT_NAME mbedtls${PROJECT_VERSION_MAJOR}) + target_link_libraries(${mbedtls_target} PUBLIC ${libs} ${mbedx509_target}) + endif(USE_SHARED_MBEDTLS_LIBRARY) + +-- +2.45.2 + diff --git a/net-libs/mbedtls/files/mbedtls-3.6.2-add-version-suffix-for-pkg-config-files.patch b/net-libs/mbedtls/files/mbedtls-3.6.2-add-version-suffix-for-pkg-config-files.patch new file mode 100644 index 000000000000..4e3858b327cd --- /dev/null +++ b/net-libs/mbedtls/files/mbedtls-3.6.2-add-version-suffix-for-pkg-config-files.patch @@ -0,0 +1,71 @@ +https://github.com/Mbed-TLS/mbedtls/pull/9876 +From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> +Date: Sun, 1 Dec 2024 00:54:10 +0300 +Subject: Add version suffix for pkg-config files + +Convert main library targets to slottable versions. This allows to +install major versions of MbedTLS simultaneously. + +Dependent packages should use +`pkg-config --libs --cflags (mbedtls3|mbedx5093|mbedx5093)` in order to use +requested libraries. +--- a/pkgconfig/CMakeLists.txt ++++ b/pkgconfig/CMakeLists.txt +@@ -8,18 +8,18 @@ if(NOT DISABLE_PACKAGE_CONFIG_AND_INSTALL) + set(PKGCONFIG_PROJECT_DESCRIPTION "Mbed TLS is a C library that implements cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems.") + set(PKGCONFIG_PROJECT_HOMEPAGE_URL "https://www.trustedfirmware.org/projects/mbed-tls/") + +- configure_file(mbedcrypto.pc.in mbedcrypto.pc @ONLY) ++ configure_file(mbedcrypto.pc.in mbedcrypto${PROJECT_VERSION_MAJOR}.pc @ONLY) + install(FILES +- ${CMAKE_CURRENT_BINARY_DIR}/mbedcrypto.pc ++ ${CMAKE_CURRENT_BINARY_DIR}/mbedcrypto${PROJECT_VERSION_MAJOR}.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + +- configure_file(mbedtls.pc.in mbedtls.pc @ONLY) ++ configure_file(mbedtls.pc.in mbedtls${PROJECT_VERSION_MAJOR}.pc @ONLY) + install(FILES +- ${CMAKE_CURRENT_BINARY_DIR}/mbedtls.pc ++ ${CMAKE_CURRENT_BINARY_DIR}/mbedtls${PROJECT_VERSION_MAJOR}.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + +- configure_file(mbedx509.pc.in mbedx509.pc @ONLY) ++ configure_file(mbedx509.pc.in mbedx509${PROJECT_VERSION_MAJOR}.pc @ONLY) + install(FILES +- ${CMAKE_CURRENT_BINARY_DIR}/mbedx509.pc ++ ${CMAKE_CURRENT_BINARY_DIR}/mbedx509${PROJECT_VERSION_MAJOR}.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + endif() +--- a/pkgconfig/mbedcrypto.pc.in ++++ b/pkgconfig/mbedcrypto.pc.in +@@ -7,4 +7,4 @@ Description: @PKGCONFIG_PROJECT_DESCRIPTION@ + URL: @PKGCONFIG_PROJECT_HOMEPAGE_URL@ + Version: @PROJECT_VERSION@ + Cflags: -I"${includedir}" +-Libs: -L"${libdir}" -lmbedcrypto ++Libs: -L"${libdir}" -lmbedcrypto@PROJECT_VERSION_MAJOR@ +--- a/pkgconfig/mbedtls.pc.in ++++ b/pkgconfig/mbedtls.pc.in +@@ -6,6 +6,6 @@ Name: @PROJECT_NAME@ + Description: @PKGCONFIG_PROJECT_DESCRIPTION@ + URL: @PKGCONFIG_PROJECT_HOMEPAGE_URL@ + Version: @PROJECT_VERSION@ +-Requires.private: mbedcrypto mbedx509 ++Requires.private: mbedcrypto@PROJECT_VERSION_MAJOR@ mbedx509@PROJECT_VERSION_MAJOR@ + Cflags: -I"${includedir}" +-Libs: -L"${libdir}" -lmbedtls ++Libs: -L"${libdir}" -lmbedtls@PROJECT_VERSION_MAJOR@ +--- a/pkgconfig/mbedx509.pc.in ++++ b/pkgconfig/mbedx509.pc.in +@@ -6,6 +6,6 @@ Name: @PROJECT_NAME@ + Description: @PKGCONFIG_PROJECT_DESCRIPTION@ + URL: @PKGCONFIG_PROJECT_HOMEPAGE_URL@ + Version: @PROJECT_VERSION@ +-Requires.private: mbedcrypto ++Requires.private: mbedcrypto@PROJECT_VERSION_MAJOR@ + Cflags: -I"${includedir}" +-Libs: -L"${libdir}" -lmbedx509 ++Libs: -L"${libdir}" -lmbedx509@PROJECT_VERSION_MAJOR@ +-- +2.45.2 + diff --git a/net-libs/mbedtls/files/mbedtls-3.6.2-allow-install-headers-to-different-location.patch b/net-libs/mbedtls/files/mbedtls-3.6.2-allow-install-headers-to-different-location.patch new file mode 100644 index 000000000000..2b3ae9fb6999 --- /dev/null +++ b/net-libs/mbedtls/files/mbedtls-3.6.2-allow-install-headers-to-different-location.patch @@ -0,0 +1,105 @@ +https://github.com/Mbed-TLS/mbedtls/pull/9876 +From 6a0c205d86a96772b82c4d7e7dfce5ea362c7870 Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> +Date: Sat, 30 Nov 2024 02:17:17 +0300 +Subject: Allow install headers to different location + +Use standard `CMAKE_INSTALL_INCLUDEDIR` and `CMAKE_INSTALL_LIBDIR` +location to define headers and library installation. This variable can be +redefined on configuration phase to allow install headers and libraries to +different location (like `include/mbedtls3`, #8723). + +Additionally removing explicit permission rules as they may broke proper +permissions for system installation (like remove executable bit from +libraries). By default CMake sets permissions correctly on all files and +directories. + +See #8723 for rationale. +--- a/3rdparty/everest/CMakeLists.txt ++++ b/3rdparty/everest/CMakeLists.txt +@@ -27,16 +27,16 @@ if(MBEDTLS_USER_CONFIG_FILE) + endif() + + if(INSTALL_MBEDTLS_HEADERS) +- + install(DIRECTORY include/everest +- DESTINATION include +- FILE_PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +- DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + FILES_MATCHING PATTERN "*.h") + + endif(INSTALL_MBEDTLS_HEADERS) + + install(TARGETS ${everest_target} + EXPORT MbedTLSTargets +- DESTINATION ${CMAKE_INSTALL_LIBDIR} +- PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ++ INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ++) +--- a/3rdparty/p256-m/CMakeLists.txt ++++ b/3rdparty/p256-m/CMakeLists.txt +@@ -25,16 +25,16 @@ if(MBEDTLS_USER_CONFIG_FILE) + endif() + + if(INSTALL_MBEDTLS_HEADERS) +- +- install(DIRECTORY :${CMAKE_CURRENT_SOURCE_DIR} +- DESTINATION include +- FILE_PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +- DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE ++ install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + FILES_MATCHING PATTERN "*.h") + + endif(INSTALL_MBEDTLS_HEADERS) + + install(TARGETS ${p256m_target} +-EXPORT MbedTLSTargets +-DESTINATION ${CMAKE_INSTALL_LIBDIR} +-PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) ++ EXPORT MbedTLSTargets ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ++ INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ++) +--- a/include/CMakeLists.txt ++++ b/include/CMakeLists.txt +@@ -1,16 +1,15 @@ + option(INSTALL_MBEDTLS_HEADERS "Install Mbed TLS headers." ON) + + if(INSTALL_MBEDTLS_HEADERS) +- + file(GLOB headers "mbedtls/*.h") + file(GLOB psa_headers "psa/*.h") + + install(FILES ${headers} +- DESTINATION include/mbedtls ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/mbedtls + PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) + + install(FILES ${psa_headers} +- DESTINATION include/psa ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/psa + PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) + + endif(INSTALL_MBEDTLS_HEADERS) +--- a/library/CMakeLists.txt ++++ b/library/CMakeLists.txt +@@ -348,7 +348,8 @@ foreach(target IN LISTS target_libraries) + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +- PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) ++ INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ++ ) + endforeach(target) + + set(lib_target "${MBEDTLS_TARGET_PREFIX}lib") +-- +2.45.2 + diff --git a/net-libs/mbedtls/files/mbedtls-3.6.2-exclude-static-3dparty.patch b/net-libs/mbedtls/files/mbedtls-3.6.2-exclude-static-3dparty.patch new file mode 100644 index 000000000000..1df749854419 --- /dev/null +++ b/net-libs/mbedtls/files/mbedtls-3.6.2-exclude-static-3dparty.patch @@ -0,0 +1,22 @@ +https://github.com/Mbed-TLS/mbedtls/pull/8284#issuecomment-2030088495 +From: "Azamat H. Hackimov" <azamat.hackimov@gmail.com> +Date: Sun, 1 Dec 2024 20:56:50 +0300 +Subject: Exclude 3rd party code from building + +Third party code is required only for limited features that not enabled by default. + +See: https://github.com/Mbed-TLS/mbedtls/pull/8284#issuecomment-2030088495 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -325,8 +325,6 @@ add_subdirectory(framework) + + add_subdirectory(include) + +-add_subdirectory(3rdparty) +- + add_subdirectory(library) + + add_subdirectory(pkgconfig) +-- +2.45.2 + diff --git a/net-libs/mbedtls/mbedtls-2.28.8-r1.ebuild b/net-libs/mbedtls/mbedtls-2.28.8-r1.ebuild deleted file mode 100644 index 748942d2e93f..000000000000 --- a/net-libs/mbedtls/mbedtls-2.28.8-r1.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) - -inherit cmake flag-o-matic multilib-minimal python-any-r1 - -DESCRIPTION="Cryptographic library for embedded systems" -HOMEPAGE="https://www.trustedfirmware.org/projects/mbed-tls/" -SRC_URI="https://github.com/Mbed-TLS/mbedtls/releases/download/v${PV}/${P}.tar.bz2" - -LICENSE="|| ( Apache-2.0 GPL-2+ )" -SLOT="0/7.14.1" # ffmpeg subslot naming: SONAME tuple of {libmbedcrypto.so,libmbedtls.so,libmbedx509.so} -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="cmac cpu_flags_x86_sse2 doc havege programs static-libs test threads zlib" -RESTRICT="!test? ( test )" - -RDEPEND=" - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - ${PYTHON_DEPS} - doc? ( - app-text/doxygen - media-gfx/graphviz - ) - test? ( dev-lang/perl ) -" - -enable_mbedtls_option() { - local myopt="$@" - # check that config.h syntax is the same at version bump - sed -i \ - -e "s://#define ${myopt}:#define ${myopt}:" \ - include/mbedtls/config.h || die -} - -src_prepare() { - use cmac && enable_mbedtls_option MBEDTLS_CMAC_C - use cpu_flags_x86_sse2 && enable_mbedtls_option MBEDTLS_HAVE_SSE2 - use zlib && enable_mbedtls_option MBEDTLS_ZLIB_SUPPORT - use havege && enable_mbedtls_option MBEDTLS_HAVEGE_C - use threads && enable_mbedtls_option MBEDTLS_THREADING_C - use threads && enable_mbedtls_option MBEDTLS_THREADING_PTHREAD - - cmake_src_prepare -} - -src_configure() { - # Workaround for https://github.com/Mbed-TLS/mbedtls/issues/9814 (bug #946544) - append-flags $(test-flags-CC -fzero-init-padding-bits=unions) - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local mycmakeargs=( - -DENABLE_PROGRAMS=$(multilib_native_usex programs) - -DENABLE_TESTING=$(usex test) - -DENABLE_ZLIB_SUPPORT=$(usex zlib) - -DINSTALL_MBEDTLS_HEADERS=ON - -DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)" - -DLINK_WITH_PTHREAD=$(usex threads) - -DMBEDTLS_FATAL_WARNINGS=OFF # Don't use -Werror, #744946 - -DUSE_SHARED_MBEDTLS_LIBRARY=ON - -DUSE_STATIC_MBEDTLS_LIBRARY=$(usex static-libs) - ) - - cmake_src_configure -} - -multilib_src_compile() { - cmake_src_compile - use doc && multilib_is_native_abi && emake -C "${S}" apidoc -} - -multilib_src_test() { - # Disable parallel run, bug #718390 - # https://github.com/Mbed-TLS/mbedtls/issues/4980 - LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${BUILD_DIR}/library" \ - cmake_src_test -j1 -} - -multilib_src_install() { - cmake_src_install -} - -multilib_src_install_all() { - use doc && HTML_DOCS=( apidoc ) - - einstalldocs - - if use programs ; then - # avoid file collisions with sys-apps/coreutils - local p e - for p in "${ED}"/usr/bin/* ; do - if [[ -x "${p}" && ! -d "${p}" ]] ; then - mv "${p}" "${ED}"/usr/bin/mbedtls_${p##*/} || die - fi - done - for e in aes hash pkey ssl test ; do - docinto "${e}" - dodoc programs/"${e}"/*.c - dodoc programs/"${e}"/*.txt - done - fi -} diff --git a/net-libs/mbedtls/mbedtls-3.6.2-r1.ebuild b/net-libs/mbedtls/mbedtls-3.6.2-r100.ebuild index 89dea0151ff0..1b2705f0524e 100644 --- a/net-libs/mbedtls/mbedtls-3.6.2-r1.ebuild +++ b/net-libs/mbedtls/mbedtls-3.6.2-r100.ebuild @@ -12,11 +12,12 @@ HOMEPAGE="https://www.trustedfirmware.org/projects/mbed-tls/" SRC_URI="https://github.com/Mbed-TLS/mbedtls/releases/download/${P}/${P}.tar.bz2" LICENSE="|| ( Apache-2.0 GPL-2+ )" -SLOT="0/16.21.7" # ffmpeg subslot naming: SONAME tuple of {libmbedcrypto.so,libmbedtls.so,libmbedx509.so} +SLOT="3/16.21.7" # ffmpeg subslot naming: SONAME tuple of {libmbedcrypto.so,libmbedtls.so,libmbedx509.so} KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="cpu_flags_x86_sse2 doc programs static-libs test threads" RESTRICT="!test? ( test )" +RDEPEND="!>net-libs/mbedtls-3:0" BDEPEND=" ${PYTHON_DEPS} doc? ( @@ -26,6 +27,13 @@ BDEPEND=" test? ( dev-lang/perl ) " +PATCHES=( + "${FILESDIR}/mbedtls-3.6.2-allow-install-headers-to-different-location.patch" + "${FILESDIR}/mbedtls-3.6.2-add-version-suffix-for-all-installable-targets.patch" + "${FILESDIR}/mbedtls-3.6.2-add-version-suffix-for-pkg-config-files.patch" + "${FILESDIR}/mbedtls-3.6.2-exclude-static-3dparty.patch" +) + enable_mbedtls_option() { local myopt="$@" # check that config.h syntax is the same at version bump @@ -45,7 +53,6 @@ src_prepare() { src_configure() { # Workaround for https://github.com/Mbed-TLS/mbedtls/issues/9814 (bug #946544) append-flags $(test-flags-CC -fzero-init-padding-bits=unions) - multilib-minimal_src_configure } @@ -54,7 +61,7 @@ multilib_src_configure() { -DENABLE_PROGRAMS=$(multilib_native_usex programs) -DENABLE_TESTING=$(usex test) -DINSTALL_MBEDTLS_HEADERS=ON - -DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)" + -DCMAKE_INSTALL_INCLUDEDIR="include/mbedtls3" -DLINK_WITH_PTHREAD=$(usex threads) -DMBEDTLS_FATAL_WARNINGS=OFF # Don't use -Werror, #744946 -DUSE_SHARED_MBEDTLS_LIBRARY=ON diff --git a/net-libs/msgraph/Manifest b/net-libs/msgraph/Manifest index af50ac9ad919..1d8f40e26ac7 100644 --- a/net-libs/msgraph/Manifest +++ b/net-libs/msgraph/Manifest @@ -1,3 +1,3 @@ DIST msgraph-0.2.3.tar.xz 95904 BLAKE2B 5c0476511784861e1a6e3f3cb4ecaa50ad494b484b8b60f9305aae95539e8d4e9c0e491298d5d1df0031f28a9c472eb6f197acf02a69625e904c4095263b831a SHA512 23a9c24dde6125a7e6fc8a9db61248423a78e2e50a95880a59662d5824fc3f171b2354ab6ae66c77c75fd1737b1d4b19b7a35f8c6fe9ba393c5b116f3c56128f -EBUILD msgraph-0.2.3.ebuild 1072 BLAKE2B 734df5a279eddf7f5a6eb8659b0411e96f955af8a66d024ff09815d0902940d0cb0b179a5e97010f6d798cec9c1dbdacfa4559da047d8dd6f79a22bdbde178a0 SHA512 cf8f17b66d3444b9f779827bfc0dd8c43caf0f3881cda2e962d7fdff9fd8ce428e3c6b46829031b9d98d4fbcd032746ac7dea6e46180bc752d3bd223ada14755 +EBUILD msgraph-0.2.3.ebuild 1079 BLAKE2B fcbefcb9cb2a2c26745db0f0a8fc050b504dd9bc6daef6ff8c23c68a96d0228382524c2178c68cb88fb5cd962f4dd3da188dfc00ac1acdec47344f45adc96f09 SHA512 aa5728afd4cb15c1db4c6cd942af9daf82b2afc95a132e3eb16cb3cfb539afcdf4923ffb4d1cc8e62a89586669fa707ce9e50fd1b1182205f2687c877a55b9d0 MISC metadata.xml 348 BLAKE2B 96a74107d88bee480e104b6a5ba1c60a1f3534a472464d64951aef3b0df4b492b9e55729cb107513433955024d7c5cefdd5a18c376b635730b02eb136a95d133 SHA512 3ee07de0faeb8e726f240919f83ff8e3e6dfb18c186e5d40e581890a222fa4b434d01f831b8207d34ee8631439896d2021b50ec37591c6b7b5001caaa6d14a20 diff --git a/net-libs/msgraph/msgraph-0.2.3.ebuild b/net-libs/msgraph/msgraph-0.2.3.ebuild index f8d84f7c0d8b..b904efdb790b 100644 --- a/net-libs/msgraph/msgraph-0.2.3.ebuild +++ b/net-libs/msgraph/msgraph-0.2.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -10,7 +10,7 @@ HOMEPAGE="https://gitlab.gnome.org/GNOME/msgraph" LICENSE="LGPL-2+" SLOT="0/1" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" IUSE="debug gtk-doc +introspection man test" REQUIRED_USE="gtk-doc? ( introspection )" diff --git a/net-libs/nodejs/Manifest b/net-libs/nodejs/Manifest index a5646c4bf1d9..7b09206c472e 100644 --- a/net-libs/nodejs/Manifest +++ b/net-libs/nodejs/Manifest @@ -6,24 +6,17 @@ DIST node-v18.20.4.tar.xz 40445740 BLAKE2B 0675f2aba1d9a9cd9aeb665ecb3a0f61b9caf DIST node-v18.20.5.tar.xz 40624172 BLAKE2B 3691e655016704adb625cbf6bda7c79775a3184c4081a70874573807cde9ecc646dd6a572bad7872138f9a95ee2756f0ed5ecabe796bcd2f5dcd612d79ec8b2f SHA512 d2215d26ac3bca00ea5eb16976e943375e8d98cef9b2674f9842aa73afb3c269afd0a17104961f6f13e653ab13da1f647669b76a8446a5b82c9db6a743cd5e7f DIST node-v20.15.1.tar.xz 41880412 BLAKE2B f113856db03a3306d50a659e21d11f585e9e78b85ce7ad9926cc778837f905c618ac762faf56e03caaa862ab0a38c5f34770cd2bfb0854d79650ee9d9b9e2bfe SHA512 2a2935490c4c629f47cc67819094904a1b91eaf0b75cbb8ebe92f5eb34b0929230932fa456bf1bec00213155ea8b6337b2e02e946fc18606543c8c71082615b9 DIST node-v20.17.0.tar.xz 41751520 BLAKE2B 157cf4c3326fcd2f1324c0898018c88327df05c717acfa8d96728e1ebf378ea04e46da56b93e89041a49b5ee4b7e6070373401a2bc2e9163eec3b0dffb6ff4d3 SHA512 3f21c9b5b292143d25a9d51e24d8f9b366429872b3d905d705fb2293e4f4b11e8861650535425d498b999974971a8dec7bf9f9c398af03170caa84bdc63b94da -DIST node-v20.18.0.tar.xz 41937144 BLAKE2B 072d6c43f45054eaad8e747330726791e2fcb992cdb3437894d6804b0b9a1c4dc4e68b5321d91abcd8d3e0a13e7eaf2a63f953903098aae1e54db0d639441c6e SHA512 e7d43bb7324df59362591c4d3f2c91a870bec17c4024666ae92e2a3ffc0711b82d05b91a21802a0b252ad7469f8da430f7d427b2d8291d91107dd8589ea91f66 DIST node-v20.18.1.tar.xz 41962272 BLAKE2B 9c66153e22dd924182304190358402e7bf850a165433bb8ce46cafae715904d9ba987e96f0e373778d0b6a9b3cf6dcf92866f39043c184e97825ce7c2319da33 SHA512 7b421ced5d96aa90af9d96e5a3f84d5b6967db9f107740da7cfe4980b7e9f74a00aedac6db28f42f670da536abb957298069c7498e1d744f6212e75defb5305b -DIST node-v22.10.0.tar.xz 47009048 BLAKE2B 5a18a4d6b850f34b3e983384c04b4c214aeef41236f5901d0db396c91faa32f946f03ca807ca6e55576c10698653044416b82d01e6595934a3f5d3d85706728f SHA512 4554b77611a8ee83e026ad9eb69cc9521ecf6c7805dd674929a9810c38e42616de4795d12cabee58632eea8de452031b4b3bba318ac27dece0e16aa3edb5d2c2 DIST node-v22.12.0.tar.xz 47625776 BLAKE2B 12df19e32d3af0dd953b31ee6c136edd45ef7bcec2ca9b0d5ada24337d71b5c075595f31862238f781cd4679cc5e1d55ac1d6cfd84ea7e767b55b84d4c5c7475 SHA512 1d906ffa0c187d5c405b1bb0db6a01fcc9eb94ceb0a18e013129d81201d5ea68a57a7ac954383a5fd36f78fcd9f43cfd1cda1eaf0a2dd2fe0e988d752511d8f7 DIST node-v22.4.1.tar.xz 46125104 BLAKE2B 7e54a7e01f821d752abbec03212c5be838b2e12fdb10c50cfe05b0ec25ddbe71eaa3187ba25d99efb258ab14d31927216e6816aacdfa29efdb1dc70a06e9b135 SHA512 840423e9738cad9f6024e9b51b683893eab16487ba18183251a189b5d4acf9b4168e9245623092705b014bff2058174127d5d7ecb31c1a8b324961074cb8ca54 DIST node-v22.7.0.tar.xz 46875872 BLAKE2B f0dcd07d3040ddc0df335b51da82bce8a963ce7848892cda5f593b7fa954a61d0b789f0f70d6b2d4ca80716fcabf70268ac94297c2acd3886ac8172eb5fdf6df SHA512 6d5b751a03b68beec3f046697a806918571b04799a0c5fbb0374026729cc2e88fb1787bef6235c19e0bfda4e7545a618bf375410553c7d9e1eb149c6d43c0c3b -DIST node-v22.8.0.tar.xz 46899840 BLAKE2B 04dc53ad42c6a913335ecd9b5bfd5bf2f2a8d3429f28d5eba59ebde62fd76be5dea90f12212bfa9dfaa6698000da6bfec08cb1f0e1e3d3b9e8af70cab005268e SHA512 c2942c65dc9909b1f412489a54d16afae7be46a5c2a8bd292cde75e4c56ec763ccee6572fd72774c3f9d94796cfff6edbd9e93976893873cc182548225ac162a EBUILD nodejs-18.20.4.ebuild 7507 BLAKE2B 6e919faef6743e9ff1f96dd249207c080a0006ed6569956d9c17d25c050c394c9a327a1b0e1b9da58d04131d201fd004987227b56ba12e42c7ff21abcd721856 SHA512 8af99c94533729c968a6a76cadc10c5a7a9bb724b1433857f3c984a7ab1ba5604ea95229326e6eb8c71dc1692ed22f7a31f26364dc9375132a456a3c96c40f0d EBUILD nodejs-18.20.5.ebuild 7538 BLAKE2B 2d7604d461cdbe90e3fa7f7c9f0fe045306d4ebecaf9406805e58503a8485b61f125cfc7c9ef4dd93ea9bae4eb843ba698791fb4ff06e4b00f450412ceecb515 SHA512 cdecdb866252b17e3a26edea5250430f74fe1459e8343fe43ba5d1504e141ad7dc0a4448dbd5604f8fb62740c5debc8cf9d974950cf750f091351cc92f80b36e EBUILD nodejs-20.15.1.ebuild 7686 BLAKE2B 3b1894f6883937b1008aad7e19fea971b0be60ba6f6a754f999d30444538ad35b2b9ad6384d2fda1a75e9a37cabefff07a25f1e66a2e5f8dbfc70df48b094a7a SHA512 564a4259e66762149296570adbf50b6aef998ecdf1e7ef3146c6d993b2cd4807ad3c2aac27f93944f0cb54a882545be7e88fe903c48c81bc4b9eb88ed6c11d70 EBUILD nodejs-20.17.0.ebuild 7834 BLAKE2B 1a8c89db2e4061e0a68bf7530b81aaffd793732104325628ba12a85b5bba0c24b99beeefa33d3e44ef3defdd60c82e575552168ec5f87bd3c2510212ed75aeb5 SHA512 03a3779fdab76eb9541185f363a5684cfaed77d57c145daf042fce68819474ce2d1c50c6b6ff61b68f46a55e6d35a454c63503f951fd07fb5187e22d8b388b53 -EBUILD nodejs-20.18.0.ebuild 8165 BLAKE2B 2723d1bdeabbc8bc72af7ec9c11cc1583a1a3b012d3f81a23c5470b8598259217ea90a8591712f123ae6258f2c2d4d15547621f1095dba49ef41cb8a19dcf407 SHA512 9b33b0744cbff2fc0ad68dd5d272a0970e3c39ce226ec09b546100bfe7f5e2cf83cfb25650d3572f723997a37ea53c8613b8c0ce777f103eb06ca2f8440c5d86 EBUILD nodejs-20.18.1.ebuild 8163 BLAKE2B b5b0d9bb09f5a6aa1644bbbd02f076157c7d0b8995e68e21be1bf45e3dd27453683b435af963e68cd4646a5bfeb128690f36a9e840e826204b43b182f354f87c SHA512 84e1ec0dcfe019b7aa286d07ffa3362a250a9a449058ffa8206c160082b634f12f832e47e29d0d4c9e24637987821a155d61b28a86b6b6c1a5fa1a0dd9b8ec2a -EBUILD nodejs-22.10.0.ebuild 8696 BLAKE2B 972c0b5e456c6a654cd91c5f7fd8db0dba7d10348c16fec01f53c1f0d84a99ab676cf25951e66a3f150ea8cacdf4ee00db503711a7c97de490a314459f3125c4 SHA512 cc150b924fc4f1dac86b6c9ac7f2c2ec2c49248f5cd21d5de37553e96678eb0b318e40d1423becee7fa79679708555e7939cbe980c5595e0cd23a366db94a3b2 EBUILD nodejs-22.12.0-r1.ebuild 8695 BLAKE2B 898b5151bfd2fb2546803ffb30b4b51bd7af230a9cf4b682a6d7e68625b6f05faba0fcf533302603b1b671b9b8467e04901e4a8f3594cd42d92607cbf78ef3ab SHA512 4ccd84708c10d7ac37e30462d66f811cdd36af3fd4807cf40fe3d7dbf4add30a49a48e57fc2be5eebe5b010a3bf1e409366a8f7089da792d44c4a24a5d40fb5c -EBUILD nodejs-22.12.0.ebuild 8696 BLAKE2B 972c0b5e456c6a654cd91c5f7fd8db0dba7d10348c16fec01f53c1f0d84a99ab676cf25951e66a3f150ea8cacdf4ee00db503711a7c97de490a314459f3125c4 SHA512 cc150b924fc4f1dac86b6c9ac7f2c2ec2c49248f5cd21d5de37553e96678eb0b318e40d1423becee7fa79679708555e7939cbe980c5595e0cd23a366db94a3b2 EBUILD nodejs-22.4.1-r1.ebuild 8589 BLAKE2B 4c06dded4d861d1184a9169f59aef42e4ad9d775dfd15dafae0d8c91205088a3d686f8bdc556046cfc4f0823076a036d9ddff591d1b142b8ec86bea0eabff1fd SHA512 9d3e4cbd98189c7182f774a662774747c0ed9b1e509a3041080f528441bb4e1f0591c549b8a8649a72335add2fced4236dc7aca75982a4a7dd821f180ba68301 EBUILD nodejs-22.7.0.ebuild 8672 BLAKE2B 53cb924b169a4621e9b86896d34a20e2436115fb51760c334beb567404763532c941fa7bb6ed467827df8b68680bbe244048ac1fce1bee884a997a19718855a7 SHA512 c9cf331248a244e8c35dd69d82d6ea2c0b928410fc78afba23a28f8cf8d66dbcbee36d2e3d2f5d97bde5af0d486651c0dec93168df970e2037ab2e267038d5db -EBUILD nodejs-22.8.0.ebuild 8676 BLAKE2B 78b791e80633c9e55746105ba8187145e0379798b941d9fa6b1e7277058027ec5710c1131eaf104d422eb7fd8329779ae85b3ca45346d68951c97a7293f86710 SHA512 ea2fe21133b2258271a360261a35e1e05d2d65b160da340479739a0fc9f9c6bf019b95018f655c0312dddbd6c768877f7abefeb45022858f8cba7de22d86d413 EBUILD nodejs-99999999.ebuild 8696 BLAKE2B 972c0b5e456c6a654cd91c5f7fd8db0dba7d10348c16fec01f53c1f0d84a99ab676cf25951e66a3f150ea8cacdf4ee00db503711a7c97de490a314459f3125c4 SHA512 cc150b924fc4f1dac86b6c9ac7f2c2ec2c49248f5cd21d5de37553e96678eb0b318e40d1423becee7fa79679708555e7939cbe980c5595e0cd23a366db94a3b2 MISC metadata.xml 983 BLAKE2B 61908ba329bb50767f9a366c75acbedfb59da75a3e9966923af3fd4c686960115bfa53564e9dff19c1e5c3085a79ab5f5ca9a631da77ec4700fa2b663623d96e SHA512 471ee30d82ac553f975fe1e1e68ffcc79e8c709274ed6794a1c9fd2acee301734d36b6e607cc7b2cd386ed1e4621eb4a725efe440cb76d4dd6a2af4b76cdbd45 diff --git a/net-libs/nodejs/nodejs-20.18.0.ebuild b/net-libs/nodejs/nodejs-20.18.0.ebuild deleted file mode 100644 index a06c32bdae99..000000000000 --- a/net-libs/nodejs/nodejs-20.18.0.ebuild +++ /dev/null @@ -1,273 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CONFIG_CHECK="~ADVISE_SYSCALLS" -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+)" - -inherit bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils 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 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" - S="${WORKDIR}/node-v${PV}" -fi - -IUSE="corepack cpu_flags_x86_sse2 debug doc +icu inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test" -REQUIRED_USE="inspector? ( icu ssl ) - npm? ( ssl ) - system-icu? ( icu ) - system-ssl? ( ssl ) - x86? ( cpu_flags_x86_sse2 )" - -RESTRICT="!test? ( test )" - -RDEPEND=">=app-arch/brotli-1.0.9:= - >=dev-libs/libuv-1.46.0:= - >=net-dns/c-ares-1.18.1:= - >=net-libs/nghttp2-1.41.0:= - >=net-libs/ngtcp2-1.1.0:= - sys-libs/zlib - corepack? ( !sys-apps/yarn ) - system-icu? ( >=dev-libs/icu-73:= ) - system-ssl? ( >=dev-libs/openssl-1.1.1:0= ) - sys-devel/gcc:*" -BDEPEND="${PYTHON_DEPS} - app-alternatives/ninja - sys-apps/coreutils - virtual/pkgconfig - test? ( net-misc/curl ) - pax-kernel? ( sys-apps/elfix )" -DEPEND="${RDEPEND}" - -# These are measured on a loong machine with -ggdb on, and only checked -# if debugging flags are present in CFLAGS. -# -# The final link consumed a little more than 7GiB alone, so 8GiB is the lower -# limit for memory usage. Disk usage was 19.1GiB for the build directory and -# 1.2GiB for the installed image, so we leave some room for architectures with -# fatter binaries and set the disk requirement to 22GiB. -CHECKREQS_MEMORY="8G" -CHECKREQS_DISK_BUILD="22G" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - if is-flagq "-g*" && ! is-flagq "-g*0" ; then - einfo "Checking for sufficient disk space and memory to build ${PN} with debugging CFLAGS" - check-reqs_pkg_pretend - fi - fi -} - -pkg_setup() { - python-any-r1_pkg_setup - linux-info_pkg_setup -} - -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 - - # 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}-20.6.0-paxmarking.patch ) - - default -} - -src_configure() { - xdg_environment_reset - - # LTO compiler flags are handled by configure.py itself - filter-lto - # nodejs unconditionally links to libatomic #869992 - # specifically it requires __atomic_is_lock_free which - # is not yet implemented by llvm-runtimes/compiler-rt (see - # https://reviews.llvm.org/D85044?id=287068), therefore - # we depend on gcc and force using libgcc as the support lib - tc-is-clang && append-ldflags "--rtlib=libgcc --unwindlib=libgcc" - - local myconf=( - --ninja - --shared-brotli - --shared-cares - --shared-libuv - --shared-nghttp2 - --shared-ngtcp2 - --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 corepack || myconf+=( --without-corepack ) - 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 "${ARCH}:${ABI}" in - *:amd64) myarch="x64";; - *:arm) myarch="arm";; - *:arm64) myarch="arm64";; - loong:lp64*) myarch="loong64";; - riscv:lp64*) myarch="riscv64";; - *: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} \ - "${myconf[@]}" || die -} - -src_compile() { - export NINJA_ARGS=" $(get_NINJAOPTS) " - emake -Onone -} - -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 - keepdir /etc/npm - echo "NPM_CONFIG_GLOBALCONFIG=${EPREFIX}/etc/npm/npmrc" > "${T}"/50npm - doenvd "${T}"/50npm - - # Install bash completion for `npm` - 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 - - # 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 - - use corepack && - "${D}"/usr/bin/corepack enable --install-directory "${D}"/usr/bin - - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die -} - -src_test() { - local drop_tests=( - test/parallel/test-dns.js - test/parallel/test-dns-resolveany-bad-ancount.js - test/parallel/test-dns-setserver-when-querying.js - test/parallel/test-fs-mkdir.js - test/parallel/test-fs-read-stream.js - test/parallel/test-fs-utimes-y2K38.js - test/parallel/test-fs-watch-recursive-add-file.js - test/parallel/test-inspector-emit-protocol-event.js - test/parallel/test-inspector-network-domain.js - test/parallel/test-process-euid-egid.js - test/parallel/test-process-get-builtin.mjs - test/parallel/test-process-initgroups.js - test/parallel/test-process-setgroups.js - test/parallel/test-process-uid-gid.js - test/parallel/test-release-npm.js - test/parallel/test-socket-write-after-fin-error.js - test/parallel/test-strace-openat-openssl.js - test/parallel/test-tls-cert-regression.js - test/parallel/test-tls-client-getephemeralkeyinfo.js - test/parallel/test-tls-getcipher.js - test/parallel/test-tls-set-ciphers.js - test/parallel/test-tls-junk-closes-server.js - test/sequential/test-util-debug.js - ) - use inspector || drop_tests+=( test/sequential/test-watch-mode.mjs ) - [[ "$(nice)" -gt 10 ]] && drop_tests+=( "test/parallel/test-os.js" ) - rm -f "${drop_tests[@]}" || die "disabling tests failed" - - out/${BUILDTYPE}/cctest || die - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die -} - -pkg_postinst() { - if use npm; then - ewarn "remember to run: source /etc/profile if you plan to use nodejs" - ewarn " in your current shell" - fi -} diff --git a/net-libs/nodejs/nodejs-22.10.0.ebuild b/net-libs/nodejs/nodejs-22.10.0.ebuild deleted file mode 100644 index e1343e263acb..000000000000 --- a/net-libs/nodejs/nodejs-22.10.0.ebuild +++ /dev/null @@ -1,293 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CONFIG_CHECK="~ADVISE_SYSCALLS" -PYTHON_COMPAT=( python3_{10..13} ) -PYTHON_REQ_USE="threads(+)" - -inherit bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils 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 npm? ( Artistic-2 )" - -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 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" - S="${WORKDIR}/node-v${PV}" -fi - -IUSE="corepack cpu_flags_x86_sse2 debug doc +icu inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test" -REQUIRED_USE="inspector? ( icu ssl ) - npm? ( ssl ) - system-icu? ( icu ) - system-ssl? ( ssl ) - x86? ( cpu_flags_x86_sse2 )" - -RESTRICT="!test? ( test )" - -RDEPEND=">=app-arch/brotli-1.0.9:= - dev-db/sqlite:3 - >=dev-libs/libuv-1.46.0:= - >=dev-libs/simdjson-3.9.1:= - >=net-dns/c-ares-1.18.1:= - >=net-libs/nghttp2-1.61.0:= - sys-libs/zlib - corepack? ( !sys-apps/yarn ) - system-icu? ( >=dev-libs/icu-73:= ) - system-ssl? ( - >=net-libs/ngtcp2-1.3.0:= - >=dev-libs/openssl-1.1.1:0= - ) - !system-ssl? ( >=net-libs/ngtcp2-1.3.0:=[-gnutls] ) - sys-devel/gcc:*" -BDEPEND="${PYTHON_DEPS} - app-alternatives/ninja - sys-apps/coreutils - virtual/pkgconfig - test? ( net-misc/curl ) - pax-kernel? ( sys-apps/elfix )" -DEPEND="${RDEPEND}" - -# These are measured on a loong machine with -ggdb on, and only checked -# if debugging flags are present in CFLAGS. -# -# The final link consumed a little more than 7GiB alone, so 8GiB is the lower -# limit for memory usage. Disk usage was 19.1GiB for the build directory and -# 1.2GiB for the installed image, so we leave some room for architectures with -# fatter binaries and set the disk requirement to 22GiB. -CHECKREQS_MEMORY="8G" -CHECKREQS_DISK_BUILD="22G" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - if is-flagq "-g*" && ! is-flagq "-g*0" ; then - einfo "Checking for sufficient disk space and memory to build ${PN} with debugging CFLAGS" - check-reqs_pkg_pretend - fi - fi -} - -pkg_setup() { - python-any-r1_pkg_setup - linux-info_pkg_setup -} - -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 - - # 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}-20.6.0-paxmarking.patch ) - - # bug 931256 - use riscv && PATCHES+=( "${FILESDIR}"/${PN}-22.2.0-riscv.patch ) - - default -} - -src_configure() { - xdg_environment_reset - - # LTO compiler flags are handled by configure.py itself - filter-lto - # GCC with -ftree-vectorize miscompiles node's exception handling code - # causing it to fail to catch exceptions sometimes - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116057 - tc-is-gcc && append-cxxflags -fno-tree-vectorize - # https://bugs.gentoo.org/931514 - use arm64 && append-flags $(test-flags-CXX -mbranch-protection=none) - # nodejs unconditionally links to libatomic #869992 - # specifically it requires __atomic_is_lock_free which - # is not yet implemented by llvm-runtimes/compiler-rt (see - # https://reviews.llvm.org/D85044?id=287068), therefore - # we depend on gcc and force using libgcc as the support lib - tc-is-clang && append-ldflags "--rtlib=libgcc --unwindlib=libgcc" - - local myconf=( - --ninja - # ada is not packaged yet - # https://github.com/ada-url/ada - # --shared-ada - --shared-brotli - --shared-cares - --shared-libuv - --shared-nghttp2 - --shared-ngtcp2 - --shared-simdjson - # sindutf is not packaged yet - # https://github.com/simdutf/simdutf - # --shared-simdutf - --shared-sqlite - --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 corepack || myconf+=( --without-corepack ) - 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 "${ARCH}:${ABI}" in - *:amd64) myarch="x64";; - *:arm) myarch="arm";; - *:arm64) myarch="arm64";; - loong:lp64*) myarch="loong64";; - riscv:lp64*) myarch="riscv64";; - *: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} \ - "${myconf[@]}" || die -} - -src_compile() { - export NINJA_ARGS=" $(get_NINJAOPTS)" - emake -Onone -} - -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 - keepdir /etc/npm - echo "NPM_CONFIG_GLOBALCONFIG=${EPREFIX}/etc/npm/npmrc" > "${T}"/50npm - doenvd "${T}"/50npm - - # Install bash completion for `npm` - 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 - - # 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 - - use corepack && - "${D}"/usr/bin/corepack enable --install-directory "${D}"/usr/bin - - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die -} - -src_test() { - local drop_tests=( - test/parallel/test-dns.js - test/parallel/test-dns-resolveany-bad-ancount.js - test/parallel/test-dns-setserver-when-querying.js - test/parallel/test-fs-mkdir.js - test/parallel/test-fs-read-stream.js - test/parallel/test-fs-utimes-y2K38.js - test/parallel/test-fs-watch-recursive-add-file.js - test/parallel/test-process-euid-egid.js - test/parallel/test-process-get-builtin.mjs - test/parallel/test-process-initgroups.js - test/parallel/test-process-setgroups.js - test/parallel/test-process-uid-gid.js - test/parallel/test-release-npm.js - test/parallel/test-socket-write-after-fin-error.js - test/parallel/test-strace-openat-openssl.js - test/sequential/test-util-debug.js - ) - [[ "$(nice)" -gt 10 ]] && drop_tests+=( "test/parallel/test-os.js" ) - use inspector || - drop_tests+=( - test/parallel/test-inspector-emit-protocol-event.js - test/parallel/test-inspector-network-domain.js - test/sequential/test-watch-mode.mjs - ) - rm -f "${drop_tests[@]}" || die "disabling tests failed" - - out/${BUILDTYPE}/cctest || die - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die -} - -pkg_postinst() { - if use npm; then - ewarn "remember to run: source /etc/profile if you plan to use nodejs" - ewarn " in your current shell" - fi -} diff --git a/net-libs/nodejs/nodejs-22.12.0.ebuild b/net-libs/nodejs/nodejs-22.12.0.ebuild deleted file mode 100644 index e1343e263acb..000000000000 --- a/net-libs/nodejs/nodejs-22.12.0.ebuild +++ /dev/null @@ -1,293 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CONFIG_CHECK="~ADVISE_SYSCALLS" -PYTHON_COMPAT=( python3_{10..13} ) -PYTHON_REQ_USE="threads(+)" - -inherit bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils 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 npm? ( Artistic-2 )" - -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 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" - S="${WORKDIR}/node-v${PV}" -fi - -IUSE="corepack cpu_flags_x86_sse2 debug doc +icu inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test" -REQUIRED_USE="inspector? ( icu ssl ) - npm? ( ssl ) - system-icu? ( icu ) - system-ssl? ( ssl ) - x86? ( cpu_flags_x86_sse2 )" - -RESTRICT="!test? ( test )" - -RDEPEND=">=app-arch/brotli-1.0.9:= - dev-db/sqlite:3 - >=dev-libs/libuv-1.46.0:= - >=dev-libs/simdjson-3.9.1:= - >=net-dns/c-ares-1.18.1:= - >=net-libs/nghttp2-1.61.0:= - sys-libs/zlib - corepack? ( !sys-apps/yarn ) - system-icu? ( >=dev-libs/icu-73:= ) - system-ssl? ( - >=net-libs/ngtcp2-1.3.0:= - >=dev-libs/openssl-1.1.1:0= - ) - !system-ssl? ( >=net-libs/ngtcp2-1.3.0:=[-gnutls] ) - sys-devel/gcc:*" -BDEPEND="${PYTHON_DEPS} - app-alternatives/ninja - sys-apps/coreutils - virtual/pkgconfig - test? ( net-misc/curl ) - pax-kernel? ( sys-apps/elfix )" -DEPEND="${RDEPEND}" - -# These are measured on a loong machine with -ggdb on, and only checked -# if debugging flags are present in CFLAGS. -# -# The final link consumed a little more than 7GiB alone, so 8GiB is the lower -# limit for memory usage. Disk usage was 19.1GiB for the build directory and -# 1.2GiB for the installed image, so we leave some room for architectures with -# fatter binaries and set the disk requirement to 22GiB. -CHECKREQS_MEMORY="8G" -CHECKREQS_DISK_BUILD="22G" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - if is-flagq "-g*" && ! is-flagq "-g*0" ; then - einfo "Checking for sufficient disk space and memory to build ${PN} with debugging CFLAGS" - check-reqs_pkg_pretend - fi - fi -} - -pkg_setup() { - python-any-r1_pkg_setup - linux-info_pkg_setup -} - -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 - - # 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}-20.6.0-paxmarking.patch ) - - # bug 931256 - use riscv && PATCHES+=( "${FILESDIR}"/${PN}-22.2.0-riscv.patch ) - - default -} - -src_configure() { - xdg_environment_reset - - # LTO compiler flags are handled by configure.py itself - filter-lto - # GCC with -ftree-vectorize miscompiles node's exception handling code - # causing it to fail to catch exceptions sometimes - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116057 - tc-is-gcc && append-cxxflags -fno-tree-vectorize - # https://bugs.gentoo.org/931514 - use arm64 && append-flags $(test-flags-CXX -mbranch-protection=none) - # nodejs unconditionally links to libatomic #869992 - # specifically it requires __atomic_is_lock_free which - # is not yet implemented by llvm-runtimes/compiler-rt (see - # https://reviews.llvm.org/D85044?id=287068), therefore - # we depend on gcc and force using libgcc as the support lib - tc-is-clang && append-ldflags "--rtlib=libgcc --unwindlib=libgcc" - - local myconf=( - --ninja - # ada is not packaged yet - # https://github.com/ada-url/ada - # --shared-ada - --shared-brotli - --shared-cares - --shared-libuv - --shared-nghttp2 - --shared-ngtcp2 - --shared-simdjson - # sindutf is not packaged yet - # https://github.com/simdutf/simdutf - # --shared-simdutf - --shared-sqlite - --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 corepack || myconf+=( --without-corepack ) - 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 "${ARCH}:${ABI}" in - *:amd64) myarch="x64";; - *:arm) myarch="arm";; - *:arm64) myarch="arm64";; - loong:lp64*) myarch="loong64";; - riscv:lp64*) myarch="riscv64";; - *: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} \ - "${myconf[@]}" || die -} - -src_compile() { - export NINJA_ARGS=" $(get_NINJAOPTS)" - emake -Onone -} - -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 - keepdir /etc/npm - echo "NPM_CONFIG_GLOBALCONFIG=${EPREFIX}/etc/npm/npmrc" > "${T}"/50npm - doenvd "${T}"/50npm - - # Install bash completion for `npm` - 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 - - # 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 - - use corepack && - "${D}"/usr/bin/corepack enable --install-directory "${D}"/usr/bin - - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die -} - -src_test() { - local drop_tests=( - test/parallel/test-dns.js - test/parallel/test-dns-resolveany-bad-ancount.js - test/parallel/test-dns-setserver-when-querying.js - test/parallel/test-fs-mkdir.js - test/parallel/test-fs-read-stream.js - test/parallel/test-fs-utimes-y2K38.js - test/parallel/test-fs-watch-recursive-add-file.js - test/parallel/test-process-euid-egid.js - test/parallel/test-process-get-builtin.mjs - test/parallel/test-process-initgroups.js - test/parallel/test-process-setgroups.js - test/parallel/test-process-uid-gid.js - test/parallel/test-release-npm.js - test/parallel/test-socket-write-after-fin-error.js - test/parallel/test-strace-openat-openssl.js - test/sequential/test-util-debug.js - ) - [[ "$(nice)" -gt 10 ]] && drop_tests+=( "test/parallel/test-os.js" ) - use inspector || - drop_tests+=( - test/parallel/test-inspector-emit-protocol-event.js - test/parallel/test-inspector-network-domain.js - test/sequential/test-watch-mode.mjs - ) - rm -f "${drop_tests[@]}" || die "disabling tests failed" - - out/${BUILDTYPE}/cctest || die - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die -} - -pkg_postinst() { - if use npm; then - ewarn "remember to run: source /etc/profile if you plan to use nodejs" - ewarn " in your current shell" - fi -} diff --git a/net-libs/nodejs/nodejs-22.8.0.ebuild b/net-libs/nodejs/nodejs-22.8.0.ebuild deleted file mode 100644 index 783214a446b3..000000000000 --- a/net-libs/nodejs/nodejs-22.8.0.ebuild +++ /dev/null @@ -1,293 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CONFIG_CHECK="~ADVISE_SYSCALLS" -PYTHON_COMPAT=( python3_{10..13} ) -PYTHON_REQ_USE="threads(+)" - -inherit bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils 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 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" - S="${WORKDIR}/node-v${PV}" -fi - -IUSE="corepack cpu_flags_x86_sse2 debug doc +icu inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test" -REQUIRED_USE="inspector? ( icu ssl ) - npm? ( ssl ) - system-icu? ( icu ) - system-ssl? ( ssl ) - x86? ( cpu_flags_x86_sse2 )" - -RESTRICT="!test? ( test )" - -RDEPEND=">=app-arch/brotli-1.0.9:= - dev-db/sqlite:3 - >=dev-libs/libuv-1.46.0:= - >=dev-libs/simdjson-3.9.1:= - >=net-dns/c-ares-1.18.1:= - >=net-libs/nghttp2-1.61.0:= - sys-libs/zlib - corepack? ( !sys-apps/yarn ) - system-icu? ( >=dev-libs/icu-73:= ) - system-ssl? ( - >=net-libs/ngtcp2-1.3.0:= - >=dev-libs/openssl-1.1.1:0= - ) - !system-ssl? ( >=net-libs/ngtcp2-1.3.0:=[-gnutls] ) - sys-devel/gcc:*" -BDEPEND="${PYTHON_DEPS} - app-alternatives/ninja - sys-apps/coreutils - virtual/pkgconfig - test? ( net-misc/curl ) - pax-kernel? ( sys-apps/elfix )" -DEPEND="${RDEPEND}" - -# These are measured on a loong machine with -ggdb on, and only checked -# if debugging flags are present in CFLAGS. -# -# The final link consumed a little more than 7GiB alone, so 8GiB is the lower -# limit for memory usage. Disk usage was 19.1GiB for the build directory and -# 1.2GiB for the installed image, so we leave some room for architectures with -# fatter binaries and set the disk requirement to 22GiB. -CHECKREQS_MEMORY="8G" -CHECKREQS_DISK_BUILD="22G" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != "binary" ]]; then - if is-flagq "-g*" && ! is-flagq "-g*0" ; then - einfo "Checking for sufficient disk space and memory to build ${PN} with debugging CFLAGS" - check-reqs_pkg_pretend - fi - fi -} - -pkg_setup() { - python-any-r1_pkg_setup - linux-info_pkg_setup -} - -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 - - # 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}-20.6.0-paxmarking.patch ) - - # bug 931256 - use riscv && PATCHES+=( "${FILESDIR}"/${PN}-22.2.0-riscv.patch ) - - default -} - -src_configure() { - xdg_environment_reset - - # LTO compiler flags are handled by configure.py itself - filter-lto - # GCC with -ftree-vectorize miscompiles node's exception handling code - # causing it to fail to catch exceptions sometimes - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116057 - tc-is-gcc && append-cxxflags -fno-tree-vectorize - # https://bugs.gentoo.org/931514 - use arm64 && append-flags $(test-flags-CXX -mbranch-protection=none) - # nodejs unconditionally links to libatomic #869992 - # specifically it requires __atomic_is_lock_free which - # is not yet implemented by llvm-runtimes/compiler-rt (see - # https://reviews.llvm.org/D85044?id=287068), therefore - # we depend on gcc and force using libgcc as the support lib - tc-is-clang && append-ldflags "--rtlib=libgcc --unwindlib=libgcc" - - local myconf=( - --ninja - # ada is not packaged yet - # https://github.com/ada-url/ada - # --shared-ada - --shared-brotli - --shared-cares - --shared-libuv - --shared-nghttp2 - --shared-ngtcp2 - --shared-simdjson - # sindutf is not packaged yet - # https://github.com/simdutf/simdutf - # --shared-simdutf - --shared-sqlite - --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 corepack || myconf+=( --without-corepack ) - 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 "${ARCH}:${ABI}" in - *:amd64) myarch="x64";; - *:arm) myarch="arm";; - *:arm64) myarch="arm64";; - loong:lp64*) myarch="loong64";; - riscv:lp64*) myarch="riscv64";; - *: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} \ - "${myconf[@]}" || die -} - -src_compile() { - export NINJA_ARGS=" $(get_NINJAOPTS)" - emake -Onone -} - -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 - keepdir /etc/npm - echo "NPM_CONFIG_GLOBALCONFIG=${EPREFIX}/etc/npm/npmrc" > "${T}"/50npm - doenvd "${T}"/50npm - - # Install bash completion for `npm` - 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 - - # 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 - - use corepack && - "${D}"/usr/bin/corepack enable --install-directory "${D}"/usr/bin - - mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die -} - -src_test() { - local drop_tests=( - test/parallel/test-dns.js - test/parallel/test-dns-resolveany-bad-ancount.js - test/parallel/test-dns-setserver-when-querying.js - test/parallel/test-fs-mkdir.js - test/parallel/test-fs-read-stream.js - test/parallel/test-fs-utimes-y2K38.js - test/parallel/test-fs-watch-recursive-add-file.js - test/parallel/test-process-euid-egid.js - test/parallel/test-process-get-builtin.mjs - test/parallel/test-process-initgroups.js - test/parallel/test-process-setgroups.js - test/parallel/test-process-uid-gid.js - test/parallel/test-release-npm.js - test/parallel/test-socket-write-after-fin-error.js - test/parallel/test-strace-openat-openssl.js - test/sequential/test-util-debug.js - ) - [[ "$(nice)" -gt 10 ]] && drop_tests+=( "test/parallel/test-os.js" ) - use inspector || - drop_tests+=( - test/parallel/test-inspector-emit-protocol-event.js - test/parallel/test-inspector-network-domain.js - test/sequential/test-watch-mode.mjs - ) - rm -f "${drop_tests[@]}" || die "disabling tests failed" - - out/${BUILDTYPE}/cctest || die - "${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die -} - -pkg_postinst() { - if use npm; then - ewarn "remember to run: source /etc/profile if you plan to use nodejs" - ewarn " in your current shell" - fi -} |