diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-04-06 01:34:40 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-04-06 01:34:40 +0100 |
commit | 288d9455931660abb6dfa534a78d45c7fb901477 (patch) | |
tree | 20b4b716c5a7231089588a039dbdc60d93ee0980 /dev-util | |
parent | 8bcae5a5a332db9dc28c20b7a5f28337d8335254 (diff) |
gentoo auto-resync : 06:04:2025 - 01:34:40
Diffstat (limited to 'dev-util')
32 files changed, 1439 insertions, 28 deletions
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz Binary files differindex 63a4a8315097..2910e3a89d52 100644 --- a/dev-util/Manifest.gz +++ b/dev-util/Manifest.gz diff --git a/dev-util/android-studio/Manifest b/dev-util/android-studio/Manifest index b1aac407d4dd..af02640042a3 100644 --- a/dev-util/android-studio/Manifest +++ b/dev-util/android-studio/Manifest @@ -1,5 +1,5 @@ -DIST android-studio-2024.2.1.12-linux.tar.gz 1255741216 BLAKE2B 2e24c94a14370c60547569ad6ec95d1017957696adb4d71a29fefb063413d2be08c03f15ac354e4535fcbfb44c06d9fb1b8d8ef5d4129ad2caa55f636cf94993 SHA512 98f4d8c184d0184fa81dc267fc3bd7e7cc74edff9bf26a45fbe7c2a9b7bb9c25f94b86f17e0f2b94d8519d9b351cb9fdc0d07e90adfabf2afc1bbd13c3822ee8 DIST android-studio-2024.2.2.14-linux.tar.gz 1268721586 BLAKE2B 3d1f51b1f77ac9f5142ec6c16fae3f4de6512920a0fdc0c78f9cb7ce4f16d8b3b2c79e4878cec768e22e2554b880930d2167b61997c06281d7c9c69661607537 SHA512 ae7d50906574bec2eb21473b94788d859670e009e453514976ce22838b497537f25c1676892657211edc99ac279885fc3aa27b890ac6ff799eea95f6c154f5a5 -EBUILD android-studio-2024.2.1.12-r1.ebuild 5116 BLAKE2B 94da363303ace9009ef3352c40f783aa17d982920cdcae5e985a63ee0af2eb38f36c9e6162f5cf2d39c28608f92281a331259b7f64d46f3f1615cddf65141f45 SHA512 44ab4e6185ac07630b283c5659ad9136a856810c9c86f7d3e0cfda70c2cd065a271043fdc2bd86418e461dde516dbb7da5b4fede1489f804a5142a35049a34c3 +DIST android-studio-2024.3.1.14-linux.tar.gz 1354531339 BLAKE2B c7096d2fb95998f8de6fcc000671da5856ad072091452e99042c41f44de55da3e9d3b99051c6cb35e69f42ab169636bb18b456de260f0b10241bb9dbbdf83917 SHA512 f2fc78f19e2e9a0a8bee5d2bcec5d66ee38ece64544d577dec18c714c74bf57ad082f5550bc268f57f58544cffd92d615b44634b995ca25baccf21edf7ba94ab EBUILD android-studio-2024.2.2.14.ebuild 5120 BLAKE2B 3214bd7e9376feb01aed5f888c163cc30332d532a94287652920cca1d677901c0a186ccbc5f3004c4af0346c880e3f0e684c38bb89fc02f81747c2ddb66b43f7 SHA512 7c00feca189ac7cded09807c8345190139504e9513027d227e6e3eabdf1c364b7ea281c687ddbbdff216280bb5153cb10d405cb579717b022e3da2e8312bc45e +EBUILD android-studio-2024.3.1.14.ebuild 5124 BLAKE2B 14ddd18d6ad8d2fa4bdb85608cef13e12c782f1d20a069dff46c3e8386066dcb2e4f6ba1fcb75e78b63346fe0246be031ddffc6748e7267a1648b5655a585132 SHA512 4ff145f6fa9f0cada064b8bc836bb5088644ec9d2587c76d106d302bbfc0943ada4d1b7f0faa23719bfa1d8f0a96cab3133638c2afcbc4b42bda89f31efb7c19 MISC metadata.xml 298 BLAKE2B 8f13e01e8c5a24c9af764e8882e2d5677ebf485cad143f35720ede0d491f2c09fd009ce48433cd33f863fb618d6413eac97e07a6d3526f5c8e679d9e51995908 SHA512 2c9d3c5d14e2499fac58df1d3cb2844172833f371fe4d557791efc0848b879191bca36aa772792cea6edd8f6e3be83452a188c0db043906a46c87af0dcacd4e2 diff --git a/dev-util/android-studio/android-studio-2024.2.1.12-r1.ebuild b/dev-util/android-studio/android-studio-2024.3.1.14.ebuild index be76556bc302..a61fd9c23efe 100644 --- a/dev-util/android-studio/android-studio-2024.2.1.12-r1.ebuild +++ b/dev-util/android-studio/android-studio-2024.3.1.14.ebuild @@ -95,7 +95,7 @@ src_install() { insinto "${dir}" doins -r * - fperms 755 "${dir}"/bin/{fsnotifier,format.sh,game-tools.sh,inspect.sh,ltedit.sh,profiler.sh,studio.sh,studio_safe.sh} + fperms 755 "${dir}"/bin/{fsnotifier,format.sh,game-tools.sh,inspect.sh,ltedit.sh,profiler.sh,studio,studio.sh,studio_safe.sh} fperms -R 755 "${dir}"/bin/{helpers,lldb} fperms -R 755 "${dir}"/jbr/bin fperms 755 "${dir}"/jbr/lib/{jexec,jspawnhelper} @@ -106,11 +106,11 @@ src_install() { fperms -R 755 "${dir}"/plugins/android/resources/trace_processor_daemon fperms -R 755 "${dir}"/plugins/android/resources/transport/{arm64-v8a,armeabi-v7a,x86,x86_64} fperms -R 755 "${dir}"/plugins/android-ndk/resources/lldb/{android,bin,lib,shared} - fperms 755 "${dir}"/plugins/c-clangd-plugin/bin/clang/linux/x64/clangd + fperms 755 "${dir}"/plugins/c-clangd-plugin/bin/clang/linux/x64/bin/clangd fperms -R 755 "${dir}"/plugins/terminal/shell-integrations/{,fish} newicon "bin/studio.png" "${PN}.png" - make_wrapper ${PN} ${dir}/bin/studio.sh + make_wrapper ${PN} ${dir}/bin/studio make_desktop_entry ${PN} "Android Studio" ${PN} "Development;IDE" "StartupWMClass=jetbrains-studio" # https://developer.android.com/studio/command-line/variables diff --git a/dev-util/android-tools/Manifest b/dev-util/android-tools/Manifest index 2e6a547f7336..90eca30d3d5d 100644 --- a/dev-util/android-tools/Manifest +++ b/dev-util/android-tools/Manifest @@ -7,6 +7,6 @@ DIST android-tools-35.0.1.tar.xz 21460424 BLAKE2B e87a4ad13e5b8030069c87cbbe47f3 DIST android-tools-35.0.2.tar.xz 18847376 BLAKE2B 5db4d32e4d9acca5f98f0fa76d02f2cbb9c8ad23f7138deb57aa78bcfb02e8e1998dd5649e2a7f77df99f4f4c0b47440c8f6b84d2a001ae8ec2f4840e01535a8 SHA512 391ce4d638b274d7bbae24a3df8de8b5812a982570f29b2aef37d12a3ba7ed6f66b5c0b7f908759e0b0da30d152b5319af0fef16c54bdc3b9f4074fb22f80d10 EBUILD android-tools-33.0.3-r1.ebuild 2436 BLAKE2B 792138db6c8b3429787098d558f033235344f60b0e202fc2df4c0667fd558ec6cf616e2874886583cea635c8fb126ebf231777e3f68f088e43025bc58e9468ce SHA512 1773ef3a6ab054dcb59de6686e0acaa72bfd6d8cae2cd8e1ea23885d2e8bbaaef94c735be1f04513100a15427b856208d68c6b468b9679c95cd3e38b38bb00fe EBUILD android-tools-34.0.5.ebuild 3095 BLAKE2B 5a647166599a3df4e500d3aaeb544c642c023bab18b48deeaf785a1d9f886deedf35ac390d5b33e01643a36c8a1a69160c8da026f29ac0136730e4853418bde0 SHA512 1612935e3d1b7639a680e57f90674df99061e00c25baa7ff965ed51cd1f884df7aad7aa95eca743ddcd82b95643db08ebd09d166c10edd047bc6b0bb60a7cdc8 -EBUILD android-tools-35.0.1.ebuild 3098 BLAKE2B 88d96292931e71d7a06611510db4ecf76601a0c8d461210e72718323e8446865ca51bfb04e5f4a8ee8a37391dcfcce15d2f149bd7ffc4813ca3caeb96486380b SHA512 d3332ba6929710543ff7ba33f900dd55766b7fe4fad6f48d3d237a13a6bd9aecdea45e0f1de05dea51dfbfe4ee0803a11257bf445c06286df3b488ccd5b886d5 -EBUILD android-tools-35.0.2.ebuild 3102 BLAKE2B f206d436df45a2dce218d6a03a8bd00aac26a25bdb3147836412c9de457bde110554b6cc24b0b2682f4bc61b15701509cd38bdf4f62f8fe9895e0a894a84cbcc SHA512 783aad0e534813388fba72f8f3cef350ce02c4b9e845203c5f33bbc7dfe9a06e9f96547afeb3ceb07ad7b85b6e05221e04c849b216fb26dea801ead6dde8cc20 +EBUILD android-tools-35.0.1.ebuild 3094 BLAKE2B 6308ee61fc90c12ebddd3574886466f30442557f4b5700f41b99f0326ab2e0d00fd5e9397be5bbec15de9b41c378230a51f694251a0c3f0c1e12445e64fe0b65 SHA512 5d673389b1afa4eaba14eee82c5273fb4c97fe8bf715bf74f7627058e2a6dbe284bd67966de0a688a3bcde29b2cfa20f0f83cc26735819661f3fcc7c116abcf5 +EBUILD android-tools-35.0.2.ebuild 3098 BLAKE2B ae18984a91fe3ea424c838f229b127c5942b692530d2b2ae48f945528da139ea16894ba12cb907673bce280d6130c1fb83754bace9338478064b2ea5d00f97f5 SHA512 2dc23a4f98f8d15ef37976f01723d7b0e9f8a78267ee9f30fc5a4b40b99173613e8de65b415e5df88a36cd5904624393b9c8c817ed706246ae1801dbc5a26bfe MISC metadata.xml 666 BLAKE2B 826f37b3e3c762165b6dce866f9e244ff6c6312a7d7f061f55bedf6a53ec08276afcce53ebd0a3d8d7e5ab95065436c3ab559d0d1cc40ee5d66d958bb7bd36b0 SHA512 aa6da78d3bd0a5efa99629c20ecdd407235f9055af8d1891ef606d3fbc14e1054987239a50edc2ba1a74c97cbf81ce044ca6ab89a1c11a36500979103fe74437 diff --git a/dev-util/android-tools/android-tools-35.0.1.ebuild b/dev-util/android-tools/android-tools-35.0.1.ebuild index fae684ed1190..c5c3ba5874e8 100644 --- a/dev-util/android-tools/android-tools-35.0.1.ebuild +++ b/dev-util/android-tools/android-tools-35.0.1.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 @@ -30,7 +30,7 @@ DEPEND=" app-arch/zstd:= dev-cpp/abseil-cpp:= dev-libs/libpcre2:= - >=dev-libs/protobuf-3.0.0:= + <dev-libs/protobuf-30:= sys-libs/zlib:= virtual/libusb:1= " diff --git a/dev-util/android-tools/android-tools-35.0.2.ebuild b/dev-util/android-tools/android-tools-35.0.2.ebuild index d94ed30fb455..f91737b5d15e 100644 --- a/dev-util/android-tools/android-tools-35.0.2.ebuild +++ b/dev-util/android-tools/android-tools-35.0.2.ebuild @@ -30,7 +30,7 @@ DEPEND=" app-arch/zstd:= dev-cpp/abseil-cpp:= dev-libs/libpcre2:= - >=dev-libs/protobuf-3.0.0:= + <dev-libs/protobuf-30:= sys-libs/zlib:= >=dev-libs/libusb-1.0.28 dev-libs/libfmt:= diff --git a/dev-util/cargo-nextest/Manifest b/dev-util/cargo-nextest/Manifest index 482ce3064728..122170f3b5f2 100644 --- a/dev-util/cargo-nextest/Manifest +++ b/dev-util/cargo-nextest/Manifest @@ -5,6 +5,6 @@ DIST nextest-cargo-nextest-0.9.91-crates.tar.xz 36442200 BLAKE2B d40a9a0628d0bac DIST nextest-cargo-nextest-0.9.92-crates.tar.xz 34464492 BLAKE2B 8dc753632717a6bf146a9fdbc6a017f09eba89cbbcda070f079199c1cfc5e16881ac28dbeb350757e24c5c17b07bbcdbaf1d98021cad402cda7547cdc62d12a6 SHA512 1a155924aac6905cdcca1133442c8a7caccaf55893479616699063af2ff5cb2448ec220808cbeb1b277f0d9e94648d6513d4b2e534e9844eea4a2b4957a70a8a DIST nextest-cargo-nextest-0.9.93-crates.tar.xz 34507952 BLAKE2B 8bf9edc3d09391d55bd557cf7a92ebfe3a35e109234b76ff533253d05dbd972b95ed1a73200a2dddc72565f4eac5c470436dc9d4e64a910960b489b6c15a2b78 SHA512 036f8c7b0afd8d3f6ee143ca33e1255520ebac0aaf8e1d2b863d00221bb7da1ae7ad2f6627b10bb37208b2932c636df53924e1558e11f77fea362c7b159fb4c0 EBUILD cargo-nextest-0.9.91.ebuild 926 BLAKE2B 0fea836ec332cfe9feb48e579690c0e5ef358cb5481fd3d3fbc14a5218dc26757f847ec9b70194a78e195abbe05af6d2b5ad83c6b9123d0d88937bde3d30de15 SHA512 effc1c41ba4cff5b47170447d298a2eba14bfe0dbe05eb7e963c2e6bda5fe0e2f81a3873c7ab89e1e57b2ff94e7fb5cd08689376cc256afc9d8f6350b89acf59 -EBUILD cargo-nextest-0.9.92.ebuild 927 BLAKE2B e857fea8b84ef301b23db2eb9ee516a4542cf6d76256737b1a7e44482f1d57670c2b624de35f1e4854bc9b589fc82b1b0fc6f4b917da126279b719cb1b2bacc5 SHA512 95b85e0d1b01e4c74dc62a651a474ad3fbeb13ba98e75300db3d572cdb8c17bccad03245b14c877f712ed3d0e0c23fb6c22299967357250dd3d143d94a1604f5 +EBUILD cargo-nextest-0.9.92.ebuild 926 BLAKE2B 0fea836ec332cfe9feb48e579690c0e5ef358cb5481fd3d3fbc14a5218dc26757f847ec9b70194a78e195abbe05af6d2b5ad83c6b9123d0d88937bde3d30de15 SHA512 effc1c41ba4cff5b47170447d298a2eba14bfe0dbe05eb7e963c2e6bda5fe0e2f81a3873c7ab89e1e57b2ff94e7fb5cd08689376cc256afc9d8f6350b89acf59 EBUILD cargo-nextest-0.9.93.ebuild 926 BLAKE2B a7202649aa1a80844737d910a246cdd80808a8dfd74786118c62d845d555213028521d1ab7e7fea78665594c5cee368842dd8c78f1d4b27e08c9388d8240a172 SHA512 8d509261cf14fc4f8ab1291c7359df1d003112b122b8291518886ba64e525f4a3f6fc7216a22e81a4ec7d44ed9d86fb0c2c0053e2571246e4e0b8dc7269d6451 MISC metadata.xml 542 BLAKE2B 45864f9bbdbbffd30979af7f8e47729b3f8ba9167df169f3c76a807ef75bd62e7f75585c39a9e8aa29e87429481e6f42a7af201c3282d77c24cd6e1b7b99dd3d SHA512 54f48cd5cfd1da8ce05407e2bb549814d49770fdda57a29f58f796ae40dca01a93bdca893716532cbfa81c860ea47674cd3fb0bcc7f7af5818537701cdb1227a diff --git a/dev-util/cargo-nextest/cargo-nextest-0.9.92.ebuild b/dev-util/cargo-nextest/cargo-nextest-0.9.92.ebuild index 9abe42042029..eb123caaaa97 100644 --- a/dev-util/cargo-nextest/cargo-nextest-0.9.92.ebuild +++ b/dev-util/cargo-nextest/cargo-nextest-0.9.92.ebuild @@ -26,7 +26,7 @@ LICENSE+=" MPL-2.0 Unicode-3.0 " SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~x86" BDEPEND="virtual/pkgconfig" DEPEND=" diff --git a/dev-util/diffuse/Manifest b/dev-util/diffuse/Manifest index 3b39e091180a..b89c56d25484 100644 --- a/dev-util/diffuse/Manifest +++ b/dev-util/diffuse/Manifest @@ -1,3 +1,4 @@ DIST diffuse-0.9.0.tar.gz 1193105 BLAKE2B 934d38722e0bd9f83a915c681521c1699e0a2efefdcbbb3e23c3f9635467fb31d9f364a72b0e7c78ca65bf9fe154e5ebbeecdbfe1a4b412149a3b0f3a511d6e9 SHA512 9a9ed6047531eaf80fed867bc2feba081f183ee7e5e5c940b0cb912af6d17c7c22df48b7aa76c3f17d4fafeff1bade45216d26ef689fef33b3680bdc70ed80ac +EBUILD diffuse-0.9.0-r1.ebuild 1444 BLAKE2B c4fcb6bc15eeead8da93413586e60d5e85f49bbffe8201dab87192176784b63c1af1ee9fc0d1e7751a7dbc99cb9c5840a093582a2a6bc0f7e23089a624a6fc68 SHA512 58b6718fcc14a4d23d98aecb43782ba36c8af5e63ca98574b1cd3d008a5eaefb76dc321c376085f0a94efa6c94d35f628b8cd0096079a99bb4c6388506d3d438 EBUILD diffuse-0.9.0.ebuild 1442 BLAKE2B d59b7856cc1a3bec8dbe9b22c05f2cece52a49e70603f5264b0cb285b08ff0b47e5e56c4a0d2e872425fbd3d3d5e975c7724c61fbe92dda5f1fb08b5c8031785 SHA512 87deb293cb0ef9832bf71f515cea4fe222fe4d3540439c38143ff25d78d1427e8520a22746c4899388eedf5998302fa9f572a41b4741c4e578679ae44ca3bb1f MISC metadata.xml 331 BLAKE2B 0d7237b2c8c4914f4888a983908157e5d9de1190566738fd6dc7e55e9695bbf3438344e617e447f03b7398d0f96605e8abedb73f6c03689c714e004592c268a0 SHA512 29c7e053de0a4dd2350c8e50d3049a7f27f5eb7bf054f947fab9840963a6c0572b07d408faeda415671250e36a3546263d99443f06c61e312c95af9988a194b7 diff --git a/dev-util/diffuse/diffuse-0.9.0-r1.ebuild b/dev-util/diffuse/diffuse-0.9.0-r1.ebuild new file mode 100644 index 000000000000..eb99f4081429 --- /dev/null +++ b/dev-util/diffuse/diffuse-0.9.0-r1.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{9..13} ) +PLOCALES="cs de es fr it ja ka ko nl pl pt pt_BR ru sv th tr zh_CN zh_TW" +inherit meson plocale python-r1 xdg + +DESCRIPTION="A graphical tool to compare and merge text files" +HOMEPAGE="http://diffuse.sourceforge.net/ https://github.com/MightyCreak/diffuse/" +SRC_URI="https://github.com/MightyCreak/diffuse/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DEPEND="${PYTHON_DEPS}" +RDEPEND="${DEPEND} + $(python_gen_cond_dep ' + dev-python/pygobject:3[${PYTHON_USEDEP},cairo] + ') + x11-libs/gtk+:3[introspection] + !sci-chemistry/tinker" +# file collision, bug #279018 + +src_prepare() { + default + plocale_find_changes po '' '.po' + + rm_locale() { + rm -f po/${1}.po + rm -rf data/usr/share/man/${1} + rm -rf data/usr/share/gnome/help/${PN}/$1 + rm -f data/usr/share/omf/${PN}/${PN}-$1.omf + sed -e "/^${1}/d" -i po/LINGUAS + } + + plocale_for_each_disabled_locale rm_locale +} + +src_install() { + meson_src_install + rm "${D}"/usr/bin/${PN} || die "rm ${PN} failed" + python_foreach_impl python_doscript ../${P}-build/src/${PN}/${PN} + mkdir "${D}"/usr/share/metainfo || die "mkdir metainfo failed" + mv "${D}"/usr/share/appdata/* "${D}"/usr/share/metainfo/ \ + || die "mv appdata -> metainfo failed" + dodoc AUTHORS CHANGELOG.md README.md +} diff --git a/dev-util/nsight-compute/Manifest b/dev-util/nsight-compute/Manifest new file mode 100644 index 000000000000..91fa73467619 --- /dev/null +++ b/dev-util/nsight-compute/Manifest @@ -0,0 +1,5 @@ +DIST nsight-compute-armserver-2025.1.1.2-35528883.run 159558687 BLAKE2B c331393081a26c2d66d5f2f022f3aa422a453802d7d54d48bb39033d7d7fb902a2ee0347608baf10091b56383c1fab689493882356f7dae232b8bad691c1cbe0 SHA512 092d2f20738570ae01f3942d472879f5f13cb9d864532314b432cfa81205976d114cd55c69d207b290abb917195b26068c27bc4c1440ff0bd0fd3b2c636c9cb8 +DIST nsight-compute-linux-2025.1.1.2-35528883.run 433112184 BLAKE2B d657aa7b8e3b075ef25e04318ff34c0eeac2bd60b881524d922aee8aa955e01ece740b3c2b5b4cfb993046999894610ecf1fc2443f36bfefa6b6882baf5328a2 SHA512 bd42323f3e22713386db4a29e422ef4ae1322d030b5705ba50b52b04a532e3e19f7b9af6731a3b47ec023460bb09b286bc2752a8838d6f2d8077ce43970f3670 +DIST nvidia-nsight-compute-icon-gbp-shaded-128.20231126.png 17468 BLAKE2B 2150f8c31ad12945614d07c33aafce838b381e40025ed72b77cbd2bcc42e532d82a9159f7ce9b51b2f8b8cddd49433c8ba9bebffb8c29b77560a476df8632025 SHA512 1e5a08b4b02ea7f1a3eb1dc4fe340fbe887eff70b663c61f5a3ffedef0ed7f6c6478ac70e05d90b11c070959529cfcdd899735409e92f5d4fedc6785f993db2b +EBUILD nsight-compute-2025.1.1.2.ebuild 3602 BLAKE2B e242bf38ee58dd77677688424df7bc9ce9c9fae8c06555b30d33a62b314317089c5fcebd70aa24727f74a18a565ed96adbbc38ce7d187f3004b14cdefab34d55 SHA512 91e411f467d91a2d84fef32199be747b095025fa6ad44fb0da08b4fcc29476bca6a95c845dfe7d6726983d30caba7a8e4f13d49b5efe3e0c7c22b73e9d94e0b1 +MISC metadata.xml 729 BLAKE2B 4851ac14a8289ff60174ed244354bdd3336813fa9465bb7a3813afb887b058f331da73a052cf11410248cb4de8204adff1eced90a99e64090a314783a555076d SHA512 8ddbf05c70dc28a4c9b8ee2b80d412521169cbe6716479743dd2610d63d31034de43be011f60598aaa40079d8a34843f22c2662290b5ccb57bc47ef5a17f1c3d diff --git a/dev-util/nsight-compute/metadata.xml b/dev-util/nsight-compute/metadata.xml new file mode 100644 index 000000000000..5e448bd62925 --- /dev/null +++ b/dev-util/nsight-compute/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>negril.nx+gentoo@gmail.com</email> + <name>Paul Zander</name> + </maintainer> + <maintainer type="project"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription> + NVIDIA Nsight™ Systems is a system-wide performance analysis tool designed to visualize an application’s algorithms, identify the largest opportunities to optimize, and tune to scale efficiently across any quantity or size of CPUs and GPUs, from large servers to our smallest systems-on-a-chip (SoCs). + </longdescription> +</pkgmetadata> diff --git a/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild b/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild new file mode 100644 index 000000000000..7efa373cda03 --- /dev/null +++ b/dev-util/nsight-compute/nsight-compute-2025.1.1.2.ebuild @@ -0,0 +1,146 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop unpacker + +DESCRIPTION="performance analysis tool designed to visualize an application’s algorithms" +HOMEPAGE="https://developer.nvidia.com/nsight-systems" + +MY_PV=$(ver_cut 1-3) +MY_PV=${MY_PV//./_} + +PV_BUILD="35528883" +SRC_URI=" + amd64? ( + https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/${PN}-linux-${PV}-${PV_BUILD}.run + ) + arm64? ( + https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/${PN}-armserver-${PV}-${PV_BUILD}.run + ) + mirror+https://developer.download.nvidia.com/images/nvidia-nsight-compute-icon-gbp-shaded-128.png + -> nvidia-nsight-compute-icon-gbp-shaded-128.20231126.png +" +S="${WORKDIR}/pkg" + +LICENSE="NVIDIA-r2" +SLOT="${PV}" +KEYWORDS="~amd64 ~arm64" + +RESTRICT="bindist mirror strip test" + +RDEPEND=" + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + dev-qt/qtdeclarative:6 + dev-qt/qtpositioning:6 + dev-qt/qtwayland:6 + dev-qt/qtwebchannel:6 + dev-qt/qtwebengine:6 + media-libs/fontconfig + media-libs/libglvnd + media-libs/tiff-compat:4 + sys-apps/dbus + sys-cluster/rdma-core + x11-drivers/nvidia-drivers + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/libdrm + x11-libs/libxcb:= + x11-libs/libxkbcommon + x11-libs/libxkbfile + x11-libs/libxshmfence + x11-libs/xcb-util-cursor + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm +" +BDEPEND=" + dev-util/patchelf +" + +QA_PREBUILT="/opt/nvidia/${PN}/$(ver_cut 1-2)" + +src_prepare() { + if [[ -n "${EPREFIX}" ]]; then + sed -e "s#=/#=${EPREFIX}/#g" -i usr/share/applications/*.desktop || die + fi + + pushd host/linux-desktop-* >/dev/null || die + + readarray -t rpath_bins < <(find . -maxdepth 1 -name '*.bin') + for rpath_bin in "${rpath_bins[@]}"; do + ebegin "fixing rpath for ${rpath_bin}" + patchelf --set-rpath '$ORIGIN' "${rpath_bin}" || die + eend $? + + # OpenGLVersionChecker stumbles on "OpenGL ES profile version string" so disable the check + sed \ + -e "s/NV_AGORA_PATH/NV_AGORA_PATH_/g" \ + -e "4i export QT_PLUGIN_PATH=\"\${NV_AGORA_PATH_}/Plugins\"" \ + -e "s/AGORA_USE_MESA_FALLBACK=true/AGORA_USE_MESA_FALLBACK=false/" \ + -i "$(basename "${rpath_bin}" .bin)" \ + || die + done + + popd &>/dev/null || die + + eapply_user +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + local dir + dir="/opt/nvidia/${PN}/$(ver_cut 1-2)" + + dodir "${dir}" + mv ./* "${ED}${dir}" || die + + local arch_dir="$(find "${ED}${dir}/host" -mindepth 1 -maxdepth 1 -name 'linux-*' -exec basename {} \;)" + if [[ -z "${arch_dir}" ]]; then + die "failed to find arch dir" + fi + if [[ "$(echo "${arch_dir}" | wc -l )" -gt 1 ]]; then + echo ${arch_dir} + die "found $(echo "${arch_dir}" | wc -l )" + fi + + cp \ + "${DISTDIR}/nvidia-nsight-compute-icon-gbp-shaded-128.20231126.png" \ + "${ED}${dir}/host/${arch_dir}/ncu-ui.png" \ + || die + + newmenu - "${P}.desktop" <<-EOF || die + [Desktop Entry] + Type=Application + Name=NVIDIA Nsight Compute ${PV} + GenericName=NVIDIA Nsight Compute + Icon=${EPREFIX}${dir}/host/${arch_dir}/ncu-ui.png + Exec=env WAYLAND_DISPLAY= ${EPREFIX}${dir}/host/${arch_dir}/ncu-ui + TryExec=${EPREFIX}${dir}/host/${arch_dir}/ncu-ui + Keywords=cuda;gpu;nvidia;nsight; + X-AppInstall-Keywords=cuda;gpu;nvidia;nsight; + X-GNOME-Keywords=cuda;gpu;nvidia;nsight; + Terminal=false + Categories=Development;Profiling;ParallelComputing + EOF +} diff --git a/dev-util/nsight-graphics/Manifest b/dev-util/nsight-graphics/Manifest new file mode 100644 index 000000000000..9b16323b8867 --- /dev/null +++ b/dev-util/nsight-graphics/Manifest @@ -0,0 +1,4 @@ +DIST NVIDIA_Nsight_Graphics_2025.2.0.25073.run 316645004 BLAKE2B 6ab8e7914a2dc881775e121c8222936ceb57711a6a8b62b58fa5260529b6dd298c2fc1b8ac85abf01b752986444b365b6baf111ecd9081470c606a729a41da64 SHA512 c295512e7871b80dc03fc9f597073fe8b0decbc0c2cbc9e97877a112c4479a5a00c9329d85edba298864f1ab874f2535d8ec96feae0720802240f0d958e30de2 +DIST nvidia-nsight-graphics-icon-gbp-shaded-128.20231126.png 17306 BLAKE2B c00c18ff9a67437dfd5a4575ce1cb27804ae973f87c11ff2c8870753091dd132dc17b8ce897fb2d8139e4e047187d38ea84ca53aa4c14def096d0cb60364d936 SHA512 81d9682fb9b190698418fd110d02f6f32776a9b013600152b3241b9811194a7ec18bb3d8e823b1f3f857e7ff12a4b3a1801b8cd886f7677f4adf451440e52639 +EBUILD nsight-graphics-2025.2.0.ebuild 2929 BLAKE2B d1574ff72c5dcf9d231947b3c0be9976dcc9b579b14ffe4f2038f63b511512a5f395b3563a3a2f7d149824c4a7f450c91a4d317f7d317ed5e1aa7821ff3d4af9 SHA512 314c7b5d4e176bde9af980c9d864c00a32c90fcfa250ec7c080198a28ac2406acaeb1289cfb36be13377bd1984bc5d1a1e99d78d32701550a4cd4645d8f740ba +MISC metadata.xml 624 BLAKE2B d722dbd3ed89f05073938d4a4860269a04485dadb8f56b128c6b42fd663b082543ddd85d423a7709ba6489fbe370fca2b64d8b69b920d29c0fea289c0d9ec103 SHA512 c1efb1953dd7fb8e71cf3ba594631ccd7783ec51492b7fc7ad6a941257e01c3dd40c5591af85bbe108f6dfad3bce6852dbc6764e4612e4d079d5c31d48b59bf3 diff --git a/dev-util/nsight-graphics/metadata.xml b/dev-util/nsight-graphics/metadata.xml new file mode 100644 index 000000000000..f5a408ba3651 --- /dev/null +++ b/dev-util/nsight-graphics/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>negril.nx+gentoo@gmail.com</email> + <name>Paul Zander</name> + </maintainer> + <maintainer type="project"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription> + NVIDIA Nsight™ Graphics is a standalone developer tool with ray-tracing support that enables you to debug, profile, and export frames built with Direct3D, Vulkan, OpenGL, OpenVR, and the Oculus SDK. + </longdescription> +</pkgmetadata> diff --git a/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild b/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild new file mode 100644 index 000000000000..36bad1006898 --- /dev/null +++ b/dev-util/nsight-graphics/nsight-graphics-2025.2.0.ebuild @@ -0,0 +1,124 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop unpacker + +DESCRIPTION="standalone developer tool with ray-tracing support" +HOMEPAGE="https://developer.nvidia.com/nsight-graphics" + +MY_PV="$(ver_rs 1-3 '_')" +PV_BUILD="25073" + +SRC_URI=" + https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/linux/NVIDIA_Nsight_Graphics_${PV}.${PV_BUILD}.run + mirror+https://developer.download.nvidia.com/images/nvidia-nsight-graphics-icon-gbp-shaded-128.png + -> nvidia-nsight-graphics-icon-gbp-shaded-128.20231126.png +" + +S="${WORKDIR}/pkg" + +LICENSE="NVIDIA-r2" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64" + +RESTRICT="bindist mirror strip test" + +RDEPEND=" + dev-libs/glib:2 + dev-libs/wayland + dev-qt/qtdeclarative:6 + dev-qt/qtpositioning:6 + dev-qt/qtwayland:6 + dev-qt/qtwebchannel:6 + dev-qt/qtwebengine:6 + media-libs/fontconfig + media-libs/libglvnd + media-libs/tiff-compat:4 + sys-apps/dbus + sys-apps/util-linux + x11-drivers/nvidia-drivers + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/xcb-util-cursor + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm +" + +BDEPEND=" + dev-util/patchelf +" + +QA_PREBUILT="/opt/nvidia/${PN}/$(ver_cut 1-2)" + +src_prepare() { + rm EULA.txt || die + + pushd host/linux-desktop-nomad-* >/dev/null || die + + readarray -t rpath_bins < <(find . -maxdepth 1 -name '*.bin') + for rpath_bin in "${rpath_bins[@]}"; do + ebegin "fixing rpath for ${rpath_bin}" + patchelf --set-rpath '$ORIGIN' "${rpath_bin}" || die + eend $? + + sed \ + -e "s/NV_AGORA_PATH/NV_AGORA_PATH_/g" \ + -e "4i export QT_PLUGIN_PATH=\"\${NV_AGORA_PATH_}/Plugins\"" \ + -i "$(basename "${rpath_bin}" .bin)" \ + || die + done + + popd &>/dev/null || die + + eapply_user +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + local dir + dir="/opt/nvidia/${PN}/$(ver_cut 1-2)" + + dodir "${dir}" + mv ./* "${ED}${dir}" || die + + local arch_dir="$(find "${ED}${dir}/host" -mindepth 1 -maxdepth 1 -name 'linux-*' -exec basename {} \;)" + if [[ -z "${arch_dir}" ]]; then + die "failed to find arch dir" + fi + if [[ "$(echo "${arch_dir}" | wc -l )" -gt 1 ]]; then + echo ${arch_dir} + die "found $(echo "${arch_dir}" | wc -l )" + fi + + cp \ + "${DISTDIR}/nvidia-nsight-graphics-icon-gbp-shaded-128.20231126.png" \ + "${ED}${dir}/host/${arch_dir}/ngfx-ui.png" \ + || die + + newmenu - "${P}.desktop" <<-EOF || die + [Desktop Entry] + Type=Application + Name=NVIDIA Nsight Graphics ${PV} + GenericName=NVIDIA Nsight Graphics + Icon=${EPREFIX}${dir}/host/${arch_dir}/ngfx-ui.png + Exec=env WAYLAND_DISPLAY= ${EPREFIX}${dir}/host/${arch_dir}/ngfx-ui + TryExec=${EPREFIX}${dir}/host/${arch_dir}/ngfx-ui + Keywords=cuda;gpu;nvidia;nsight; + X-AppInstall-Keywords=cuda;gpu;nvidia;nsight; + X-GNOME-Keywords=cuda;gpu;nvidia;nsight; + Terminal=false + Categories=Development;Profiling;ParallelComputing + EOF +} diff --git a/dev-util/nsight-systems/Manifest b/dev-util/nsight-systems/Manifest new file mode 100644 index 000000000000..d299c7fdf651 --- /dev/null +++ b/dev-util/nsight-systems/Manifest @@ -0,0 +1,4 @@ +DIST nsight-systems-2025.2.1_2025.2.1.130-1_amd64.deb 428406244 BLAKE2B d7831f8adbef228d9ca7308b5466dfacc064560885980e59e5d6d25df64a6cc901bb9c58ffbe2734a9c57fd249f6809d52b7a8f3ed10516a398d8cbdc4b2d214 SHA512 74d407e12f560ff2fdb8c09d91733fa78bea8470ba181253ad9946f1e770a5f5e7a15c6d27e41d133e6d670b83e527b1fd7249d1d066f7dfecd17962371e4ea3 +DIST nsight-systems-2025.2.1_2025.2.1.130-1_arm64.deb 401367200 BLAKE2B 714bff59f4779cf5b86e002bf6cd6fca24ac5f5b9cd5a5626499cd78c88e6b4ad70445869c2045b9d31e3c2c36efe253f49f9843548a75744ba074cd863e4681 SHA512 881d2f9278206187297936c875b75344302268a32514149a2e246cc7eb0c68cbcd1cc1e8dee44a305abafd8cfabe90875e296ef99450db1a58336499945b775e +EBUILD nsight-systems-2025.2.1.ebuild 2366 BLAKE2B 42f441e98303cfd6e23afd7af3a668f8c24a658c3c713547c9435ba8d29e96d41f7b10ac44038d6c673c6b89819bd4e3ecbc6e4707b2f2d20d2993ea5a93218d SHA512 967c860055a11901dce33346c357a96df886873b0aa69a6c6fdf7527bdb4dc638af3bf3d18baf117b8e3971a3517a762b84ab8a6f968a81743a6bc708b0dcaf1 +MISC metadata.xml 729 BLAKE2B 4851ac14a8289ff60174ed244354bdd3336813fa9465bb7a3813afb887b058f331da73a052cf11410248cb4de8204adff1eced90a99e64090a314783a555076d SHA512 8ddbf05c70dc28a4c9b8ee2b80d412521169cbe6716479743dd2610d63d31034de43be011f60598aaa40079d8a34843f22c2662290b5ccb57bc47ef5a17f1c3d diff --git a/dev-util/nsight-systems/metadata.xml b/dev-util/nsight-systems/metadata.xml new file mode 100644 index 000000000000..5e448bd62925 --- /dev/null +++ b/dev-util/nsight-systems/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>negril.nx+gentoo@gmail.com</email> + <name>Paul Zander</name> + </maintainer> + <maintainer type="project"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription> + NVIDIA Nsight™ Systems is a system-wide performance analysis tool designed to visualize an application’s algorithms, identify the largest opportunities to optimize, and tune to scale efficiently across any quantity or size of CPUs and GPUs, from large servers to our smallest systems-on-a-chip (SoCs). + </longdescription> +</pkgmetadata> diff --git a/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild b/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild new file mode 100644 index 000000000000..283c2aec821b --- /dev/null +++ b/dev-util/nsight-systems/nsight-systems-2025.2.1.ebuild @@ -0,0 +1,117 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit unpacker + +DESCRIPTION="performance analysis tool designed to visualize an application’s algorithms" +HOMEPAGE="https://developer.nvidia.com/nsight-systems" + +MY_PV=$(ver_cut 1-2) +MY_PV=${MY_PV//./_} + +PV_BUILD="130-1" + +SRC_URI=" + amd64? ( + https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/${PN}-${PV}_${PV}.${PV_BUILD}_amd64.deb + ) + arm64? ( + https://developer.nvidia.com/downloads/assets/tools/secure/${PN}/${MY_PV}/${PN}-${PV}_${PV}.${PV_BUILD}_arm64.deb + ) +" +S="${WORKDIR}" + +LICENSE="NVIDIA-r2" +SLOT="${PV}" +KEYWORDS="~amd64 ~arm64" + +RESTRICT="bindist mirror strip test" + +RDEPEND=" + app-crypt/mit-krb5 + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + dev-libs/wayland + dev-qt/qtwayland:6 + media-libs/fontconfig + media-libs/freetype + media-libs/gst-plugins-base:1.0 + media-libs/gstreamer:1.0 + media-libs/libglvnd + media-libs/tiff-compat:4 + sys-apps/dbus + sys-cluster/rdma-core + x11-drivers/nvidia-drivers + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/libxkbfile + x11-libs/libxshmfence + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm + arm64? ( + media-libs/gst-plugins-bad:1.0 + ) +" +BDEPEND=" + dev-util/patchelf +" + +QA_PREBUILT="/opt/nvidia/${PN}/$(ver_cut 1-2)" + +src_prepare() { + if use amd64; then + sed \ + -e "/Terminal/s/=No/=false/" \ + -e "/Categories/s/Application;//" \ + -i usr/share/applications/*.desktop || die + + if [[ -n "${EPREFIX}" ]]; then + sed -e "s#=/#=${EPREFIX}/#g" -i usr/share/applications/*.desktop || die + fi + fi + + readarray -t rpath_libs < <( + find "${S}/opt/nvidia/${PN}/${PV}/host-linux-"* \ + -name 'libparquet*.so*.0.0' -o \ + -name 'libarrow*.so*.0.0' -o \ + -name 'libssh.so'|| die + ) + for rpath_lib in "${rpath_libs[@]}"; do + # ebegin "fixing rpath for ${rpath_lib}" + patchelf --set-rpath '$ORIGIN' "${rpath_lib}" || die + # eend $? + done + + eapply_user +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + rm -r usr/local || die + mv ./* "${ED}" || die + + # TODO install desktop file for arm64 +} diff --git a/dev-util/nvidia-cuda-toolkit/Manifest b/dev-util/nvidia-cuda-toolkit/Manifest index 828f271c243d..7d57b5a72242 100644 --- a/dev-util/nvidia-cuda-toolkit/Manifest +++ b/dev-util/nvidia-cuda-toolkit/Manifest @@ -6,12 +6,18 @@ DIST cuda_12.3.2_545.23.08_linux.run 4368514070 BLAKE2B bfb6239b7669636e2ef42492 DIST cuda_12.4.1_550.54.15_linux.run 4454730420 BLAKE2B 643513a673e72aeab2e0268c4f91b504132aee378e5e483c46803ed9b1b109274e23bce0cd1022de1220e81dbfb0442c9d84370ad9c6a17e14fe2aaff23ccf13 SHA512 340fab9aad2f3e03fb773c2ec1d4f2c3b1428b350c2072b02263f68f3c521b7ec42086ae7b5e66594a0b91862cc165d8519e4c92e428268bc1e98adcfe106d42 DIST cuda_12.5.1_555.42.06_linux.run 4311634770 BLAKE2B 3546faeb24687dd11ad0a61a4f02cfbd97119d9e3cd3e24ea294b81ed488de7dfef03607c69d7b5a8087db10cf794205936add7cfa8ccda207e3aca315be48df SHA512 604843e09717c2af0873b2d5a2e242ff1b99122d515b6a7a29e70c55ab605524744359781f5b642059550b4def57877597111914965efe7d3a1a1387c9dbb1a0 DIST cuda_12.6.1_560.35.03_linux.run 4345714567 BLAKE2B 147c7f03e0d9ade4c603d93920d0cd6bb1706efc268797ae870b5244feaa8159393015f96e920c6255e93d8040dd5b046075804cfa7c5da18a645800d65b8c3d SHA512 514ec89f847457c3ba78cd0dc22c25aebf2a19a6bbd5a8d071f31519d1007889cde6ba888a01596434216a8a88bfba21059cdc8e3fa9397133c93d2a9f0c015e +DIST cuda_12.6.3_560.35.05_linux.run 4446722669 BLAKE2B 9ff67a3fca58af6fcb259a5b114b3babd842290d0ba5d7761ea30d8c7b33d293f86d32f19c252d12bb49e0ff10da9bf62f3c34cc87f0589bab0e134575852bba SHA512 a93d9d812d3a3f5823622e2274d1d6dbe17a298b33463fdf9f6d211d38766eab76608f9d545e312b2be2b86b3c59fcd92c37c54b38b0e8206191563d00546d62 +DIST cuda_12.6.3_560.35.05_linux_sbsa.run 3760696924 BLAKE2B 06d2ce57911fd73dd64db8bb864b85f0f52a1f21382ac79e681cf4e55302ae57b700cf7a0943fee9924ff6024f056021acec50e3d90c9ee853c0d61121686603 SHA512 ad20647c8dd72937ba74c31c6e04b75d717c16a851972ba2da78cfe11453586702b28a1383f589e4c67825588c29924f87abae9cde964c41a59cf5fe43e7c632 DIST cuda_12.8.0_570.86.10_linux.run 5412604598 BLAKE2B 21ea184fd428ea638934788847e023213c38c1079d489d04bbd1ca277d1c285d57a7ac9c02020cbd73970e703daeec9e806831cf54a427cff90fc036c4da7705 SHA512 7939552d38c39b184946df455233eb9ffe91051656b3091b0414b2acc2939bc35dd92724b584e507976c3b4cd51f489abee2e2d0da27bfebaf8999c3f2c2bb2e DIST cuda_12.8.0_570.86.10_linux_sbsa.run 4636253689 BLAKE2B 53df0ee05a9563bf9db1b813a75d4a81c391cf67c24bc0b9fadf74809ebf1534cbf5762317e2f04e4e7482adf97612d8d3f16d78146abe715a9dc4b8654a1bbf SHA512 bcd91a914d09e72a2f2320d9912a3928a491c8d7062f65d027bc172630944bc0fc319ef2ded10e3c4ade564cf2a4f9a166698dca1d493632ee7ef7ff5d7f1ad5 +DIST cuda_12.8.1_570.124.06_linux.run 5382238770 BLAKE2B 6dff4eb32e97f960bdb2bd57d0dbf0920a9f85c19c26199adcac64eb9d30d7b6f6e2691c7a7a0b5b8249c7860cc685931080a3775c804f6e4e3294c43380e94f SHA512 2ac14ba054bf01924e1953053850f679ebdbc2b9150715398365464eae9d686cde2b82abb8f385b74e4eafa8d68421a9ea216c7647c08956ccba8b2299b50a6e +DIST cuda_12.8.1_570.124.06_linux_sbsa.run 4606631442 BLAKE2B 142c3a231f2a621c4d6a74059b72125baca83d2653ba95c726e3e3c12cf8a0a6b75ced7c0bdaa98450c3d2c2224e88886598191b594ac69be52ba5765bb30592 SHA512 108a75e0ca098b0fd514b3380d42b4752669201dcd68c41f2c1ecf9f29c216ac5937fa33d60e11be06e8a2ad8ae73aa49e6685a363ea77af943e1a1b936b8349 EBUILD nvidia-cuda-toolkit-11.8.0-r4.ebuild 8044 BLAKE2B 54995f4f2a8a1998539a6798ff2a68bbfed1943c3e6da27eff58458853db006e105bb39e5bb1935b11971539dcc63fb552ce0b280860ba46ce04f04e98890568 SHA512 df7eb92e74e80302e0fd966ba1c2a97a38f97e3e6bba4bb0a1a389e1336c13d3c9a3603f7079a597d2ae723f7088e83ff708e8ef5d2ba503de0469bf25e1c1c8 EBUILD nvidia-cuda-toolkit-12.3.2.ebuild 9504 BLAKE2B 6abf260006cfd3471665526df049d3f80d956f6a849e8e73c0914aa32faf86ff68d659aa8fcc5a4e95eb6890bf271a2d40edec67aeadd5154444d66e8d337c5e SHA512 3660334d48205d952fd73e688742d700db4b9594920d42d289c581d10af34af516fd8920993650dafacb983492ae72d6b4f3b0ce51d3301d66d6450b34c0c7a9 EBUILD nvidia-cuda-toolkit-12.4.1.ebuild 9515 BLAKE2B 2fdc866adfe7f552349bcce9b62c2a56186ef859efcc455d4e829f12f71a63cc1ef74eae08a9dc6bbb508aa398679e74a9668353dc3166109157b312fcb0c291 SHA512 58c85d9ee76f180039fd0ccf7e377a4f22bc2d9b92451a54909ddecc4e177c07fc95bb29cfc74b28c9472a64a4c167319be0bcccd6c536296d2105cd88775770 EBUILD nvidia-cuda-toolkit-12.5.1.ebuild 9535 BLAKE2B ea6b46070159a18d8f541af47d648a79b75f7f964d689418220e4eaf87c56fc000eb39fed84637c161aa5f18e5f7e03f0615cbec6670517fd2efefd83139a0a4 SHA512 47bca7b76aad3842f37d8da4fbbdf646a1ca2cc93bc7ae870d8e164a05f735974ca28d69a99a6d0ffcd331e5134025b3819360f27c65dc6c27338756bfc74ba8 EBUILD nvidia-cuda-toolkit-12.6.1-r1.ebuild 9685 BLAKE2B dbbfe46f57fc1a42a91d8a5b1e72651adb9d204abb05512945dd9af691872f4285c69918918a131adcfb749e7832c31bf8738321f8909a4656824c2727e899d2 SHA512 519dcf9c06f7a11a6405dac69b003e6b37d1d32007f3231038d3254c9901815a25cbdceb3401adfb783be77c683ce53acd76ea3722bb4b2c66d5e9265399967c -EBUILD nvidia-cuda-toolkit-12.8.0-r2.ebuild 10531 BLAKE2B e348807f8ed3e64e17f94c5f099e1fe07c69af2a05e29cfd70a99b2dd0983c01869be38d848a94754226dc0fde3ad72ccd1b3d4a9ebd2bd3940ad48acaeecd20 SHA512 33fc3c60e95cc377557f4617a7879cfaf057e9632886b00d0896a8e89eda822cfb252b967e6f2d03eacb16774d607c8e2676846b7ed055d2e6f86ec63136e54c +EBUILD nvidia-cuda-toolkit-12.6.3.ebuild 10705 BLAKE2B de7a58e3ed3282b5be0073afb608d92a9c04e52e011b94563f059d55495fb569857ecf49a1d8f8209efe81793113b32ba5ed031222643c14d9077c9b15c9904f SHA512 d25dedaf0c9af415bc0e086a1e660165f273788c6da3f9e73b4137693c5018f7c80444fca2635dab6d4a5c3cbe35c6e200fe74a6c6d87d6082b187a4751a54ae +EBUILD nvidia-cuda-toolkit-12.8.0-r3.ebuild 10705 BLAKE2B 90819b43617387117d9500e4d9e73d9d2dec5473fbc5094cdbd0eccde3eb6929e982e2d485ed23fe16e3497a5599c3be9ecf8f37ef3c49250747b047880ebf25 SHA512 3e1e20c2e31faef5d46139cf043ecd51b4545d0ad984b62807ae13c0ed3885779c1e40b75bf71c77a5226c6bd6334720005424ace375c216169168eec6b8a422 +EBUILD nvidia-cuda-toolkit-12.8.1.ebuild 10706 BLAKE2B fb89bdd0e58da9b62791621ddf2523c40158142de9b2a6bcb6b4e71b915001ada11a05037a90f6f822ae661dc5f992560129f83565de5f134e6e8d66de218a57 SHA512 9cd18de7e4f7519ceafcf34b72ce21813b2b1794d1f3d2b42ca86635fb035af3312bb196065256133499367a608bac0799b4d063bf06947d04a5174049143d65 MISC metadata.xml 761 BLAKE2B a6ae653c6206cbc05349297499b6dde91bce6d543e10bd5ea915cfe9729dfa6f1eb954ae09c2e4d3997f51315ae090b38606c21b5099e750596ea66fdd93e817 SHA512 9133517d805201d25b651e48abed90394c88ef33a2571ab20b3b19d365f85a90478486c7c087c9150d7d9f6e4026873c5236c64ed649fd3bfc8f9b81479dcc59 diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild new file mode 100644 index 000000000000..76f257949e61 --- /dev/null +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild @@ -0,0 +1,380 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# shellcheck disable=SC2317 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit check-reqs toolchain-funcs +inherit python-r1 + +DRIVER_PV="560.35.05" +GCC_MAX_VER="13" +CLANG_MAX_VER="18" + +DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)" +HOMEPAGE="https://developer.nvidia.com/cuda-zone" +SRC_URI=" + amd64? ( + https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run + ) + arm64? ( + https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux_sbsa.run + ) +" +S="${WORKDIR}" + +LICENSE="NVIDIA-CUDA" + +SLOT="0/${PV}" # UNSLOTTED +# SLOT="${PV}" # SLOTTED + +KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux" +IUSE="debugger examples profiler rdma sanitizer" +RESTRICT="bindist mirror strip test" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the +# actual required minimum driver version are different. +RDEPEND=" + || ( + <sys-devel/gcc-$(( GCC_MAX_VER + 1 ))_pre[cxx] + <llvm-core/clang-$(( CLANG_MAX_VER + 1 ))_pre + ) + sys-process/numactl + debugger? ( + ${PYTHON_DEPS} + ) + examples? ( + media-libs/freeglut + media-libs/glu + ) + rdma? ( sys-cluster/rdma-core ) +" +BDEPEND=" + $(python_gen_any_dep ' + dev-python/defusedxml[${PYTHON_USEDEP}] + ') +" + +# CUDA_PATH="/opt/cuda-${PV}" #950207 +CUDA_PATH="/opt/cuda" +QA_PREBUILT="${CUDA_PATH#/}/*" + +python_check_deps() { + python_has_version "dev-python/defusedxml[${PYTHON_USEDEP}]" +} + +cuda-toolkit_check_reqs() { + if use amd64; then + export CHECKREQS_DISK_BUILD="4908M" + elif use arm64; then + export CHECKREQS_DISK_BUILD="4852M" + fi + + "check-reqs_pkg_${EBUILD_PHASE}" +} + +cuda_verify() { + if has_version "sys-apps/grep[pcre]"; then + local DRIVER_PV_info + DRIVER_PV_info="$(bash "${DISTDIR}/${A}" --info | grep -oP "cuda_${PV}.*run" | cut -d '_' -f 3)" + + if [[ "${DRIVER_PV}" != "${DRIVER_PV_info}" ]]; then + die "check DRIVER_PV is ${DRIVER_PV} and should be ${DRIVER_PV_info}" + fi + fi + + # rest only works in with unpacked sources + [[ "${EBUILD_PHASE}" != prepare ]] && return + + # run self checks + local compiler_versions GCC_HAS_VER CLANG_HAS_VER + compiler_versions="$( + grep -oP "unsupported (GNU|clang) version.*(gcc versions later than|clang version must be less than) [0-9]*" \ + "${S}"/builds/cuda_nvcc/targets/*/include/crt/host_config.h + )" + + GCC_HAS_VER="$( echo "${compiler_versions}" | grep gcc | grep -oP "(?<=than )[0-9]*")" + if [[ "${GCC_MAX_VER}" -ne "${GCC_HAS_VER}" ]]; then + eqawarn "check GCC_MAX_VER is ${GCC_MAX_VER} and should be ${GCC_HAS_VER}" + fi + + CLANG_HAS_VER="$(( $(echo "${compiler_versions}" | grep clang | grep -oP "(?<=than )[0-9]*") - 1 ))" + if [[ "${CLANG_MAX_VER}" -ne "${CLANG_HAS_VER}" ]]; then + eqawarn "check CLANG_MAX_VER is ${CLANG_MAX_VER} and should be ${CLANG_HAS_VER}" + fi +} + +pkg_pretend() { + cuda-toolkit_check_reqs +} + +pkg_setup() { + cuda-toolkit_check_reqs + + if [[ "${MERGE_TYPE}" == binary ]]; then + return + fi + + # we need python for manifest parsing and to determine the supported python versions for cuda-gdb + python_setup + + if use amd64; then + narch=x86_64 + elif use arm64; then + narch=sbsa + else + die "unknown arch ${ARCH}" + fi + + export narch +} + +src_unpack() { + cuda_verify + + local exclude=( + "cuda-installer" + "*-uninstaller" + "NVIDIA-Linux-${narch}-${DRIVER_PV}.run" + "builds/cuda_documentation" + "builds/cuda_nsight" + "builds/cuda_nvvp" + "builds/nsight_compute" + "builds/nsight_systems" + "builds/nvidia_fs" + ) + + bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}") || die "failed to extract ${A}" +} + +src_prepare() { + pushd "builds/cuda_nvcc/targets/${narch}-linux" >/dev/null || die + eapply -p5 "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch" + popd >/dev/null || die + + default +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + local -x SKIP_COMPONENTS=( + "Kernel_Objects" + "Visual_Tools" + "Documentation" # obsolete + "cuda-gdb-src" # not used + ) + + ! use debugger && SKIP_COMPONENTS+=( "cuda-gdb" ) + ! use examples && SKIP_COMPONENTS+=( "Demo_Suite" ) + ! use profiler && SKIP_COMPONENTS+=( "cuda-cupti" "cuda-profiler-api" "nvprof" ) + ! use sanitizer && SKIP_COMPONENTS+=( "compute-sanitizer" ) + + dodir "${CUDA_PATH}" + into "${CUDA_PATH}" + + dofile() { + debug-print-function "${FUNCNAME[0]}" "$@" + + if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then + die "${FUNCNAME[0]} must receive one or two arguments" + fi + + local _DESTDIR + _DESTDIR="$(dirname "${CUDA_PATH}/${1%/}")${2:+/${2%/}}" + mkdir -p "${ED}${_DESTDIR}" || die "mkdir ${_DESTDIR} failed" + + local dir + dir="$(dirname "${1}")" + + if test -z "$(find "${dir}" -maxdepth 1 -name "$(basename "$1")" -print -quit)"; then + if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then + return + fi + if [[ "$1" == "targets/x86_64-linux/lib/stubs/libcusolverMg*" ]] || + [[ "$1" == "targets/x86_64-linux/lib/libcusparse.so.*" ]]; then + return + fi + return + fi + + if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then + # skip noisy warnings + if [[ "$(basename "${1}")" == "include" ]] || + [[ "$(basename "${1}")" == "lib64" ]]; then + return + fi + eqawarn "${ED}${_DESTDIR}/$(basename "${1}") exists" + return + fi + + eval mv -i "${1}" "${ED}${_DESTDIR}" || die "mv failed ${PWD} / ${1} -> ${ED} ${_DESTDIR}" + } + + dopcfile() { + [[ $# -eq 0 ]] && return + + dodir "${CUDA_PATH}/pkgconfig" + cat > "${ED}${CUDA_PATH}/pkgconfig/${1}-${2}.pc" <<-EOF || die "dopcfile" + cudaroot=${EPREFIX}${CUDA_PATH} + libdir=\${cudaroot}/targets/${narch}-linux/lib${4} + includedir=\${cudaroot}/targets/${narch}-linux/include + + Name: ${1} + Description: ${3} + Version: ${2} + Libs: -L\${libdir} -l${1} + Cflags: -I\${includedir} + EOF + } + + pushd builds >/dev/null || die + fix_executable_bit=( + cuda_cupti/extras/CUPTI/samples/pc_sampling_utility/pc_sampling_utility_helper.h + cuda_cupti/extras/CUPTI/samples/pc_sampling_continuous/libpc_sampling_continuous.pl + + libcufile/gds/tools/run_gdsio.cfg + ) + + if use amd64; then + fix_executable_bit+=( + cuda_opencl/targets/*/include/CL/cl.hpp + + libcufile/targets/*/lib/libcufile_rdma_static.a + libcufile/targets/*/lib/libcufile_static.a + ) + fi + chmod -x "${fix_executable_bit[@]}" || die "failed chmod" + popd >/dev/null || die + + ebegin "parsing manifest" "${S}/manifests/cuda_"*.xml # {{{ + + "${EPYTHON}" "${FILESDIR}/parse_manifest.py" "${S}/manifests/cuda_"*".xml" &> "${T}/install.sh" \ + || die "failed to parse manifest" + # shellcheck disable=SC1091 + source "${T}/install.sh" || die "failed to source install script" + + eend $? # }}} + + if use debugger; then + if [[ -d "${ED}/${CUDA_PATH}/extras/Debugger/lib64" ]]; then + rmdir "${ED}/${CUDA_PATH}/extras/Debugger/lib64" || die "remove debugger lib64" + fi + + find "${ED}/${CUDA_PATH}/bin" -maxdepth 1 -name "cuda-gdb-*-tui" -print0 | while read -rd $'\0' tui_name; do + impl="$(basename "${tui_name}" | cut -d '-' -f 3 | tr '.' '_')" + + if ! has "${impl}" "${PYTHON_COMPAT[@]}" || ! use "python_targets_${impl}"; then + rm "${tui_name}" || die "tui-name rm ${tui_name}" + sed -e "/$(basename "${tui_name}")\"/d" -i "${ED}/${CUDA_PATH}/bin/cuda-gdb" || die "tui_name sed" + fi + done + fi + + # remove rdma libs (unless USE=rdma) + if ! use rdma; then + rm "${ED}/${CUDA_PATH}/targets/${narch}-linux/lib/libcufile_rdma"* || die "failed to remove rdma files" + fi + + # Add include and lib symlinks + dosym "targets/${narch}-linux/include" "${CUDA_PATH}/include" + dosym "targets/${narch}-linux/lib" "${CUDA_PATH}/lib64" + + find "${ED}/${CUDA_PATH}" -empty -delete || die + + local ldpathextradirs pathextradirs + + use debugger && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/Debugger/lib64" + use profiler && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/CUPTI/lib64" + + local revord=$(( 999999 - $(printf "%02d%02d%02d" "$(ver_cut 1)" "$(ver_cut 2)" "$(ver_cut 3)") )) + newenvd - "99cuda${revord}" <<-EOF + PATH=${EPREFIX}${CUDA_PATH}/bin${pathextradirs} + PKG_CONFIG_PATH=${EPREFIX}${CUDA_PATH}/pkgconfig + LDPATH=${EPREFIX}${CUDA_PATH}/lib64:${EPREFIX}${CUDA_PATH}/nvvm/lib64${ldpathextradirs} + EOF + + # CUDA prepackages libraries, don't revdep-build on them + insinto /etc/revdep-rebuild + newins - "80${PN}${revord}" <<-EOF + SEARCH_DIRS_MASK="${EPREFIX}${CUDA_PATH}" + EOF + + # https://bugs.gentoo.org/926116 + insinto /etc/sandbox.d + newins - "80${PN}" <<-EOF + SANDBOX_PREDICT="/proc/self/task" + EOF + + # TODO drop and replace with runtime detection similar to what python does {{{ + # ATTENTION: change requires revbump, see link below for supported GCC # versions + # https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements + local cuda_supported_gcc=( 8.5 9.5 10 11 12 13 "${GCC_MAX_VER}" ) + + sed \ + -e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc[*]}:g" \ + "${FILESDIR}"/cuda-config.in > "${ED}/${CUDA_PATH}/bin/cuda-config" || die + fperms +x "${CUDA_PATH}/bin/cuda-config" + # }}} + + # skip til cudnn has been changed #950207 + # if [[ "${SLOT}" != "${PV}" ]]; then + # dosym "${CUDA_PATH}" "${CUDA_PATH%"-${PV}"}" + # fi + + fowners -R root:root "${CUDA_PATH}" +} + +pkg_postinst_check() { + if tc-is-gcc && + ver_test "$(gcc-major-version)" -gt "${GCC_MAX_VER}"; then + ewarn + ewarn "gcc > ${GCC_MAX_VER} will not work with CUDA" + ewarn + ewarn "Append --ccbin= pointing to a gcc bindir to the nvcc compiler flags (NVCCFLAGS)" + ewarn "or set NVCC_CCBIN to the same bindir." + ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")\"" + ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")" + ewarn + fi + + if tc-is-clang && + ver_test "$(clang-major-version)" -gt "${CLANG_MAX_VER}"; then + ewarn + ewarn "clang > ${CLANG_MAX_VER} will not work with CUDA" + ewarn + ewarn "Append --ccbin= pointing to a clang bindir to the nvcc compiler flags (NVCCFLAGS)" + ewarn "or set NVCC_CCBIN to the same bindir." + ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")\"" + ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")" + ewarn + fi +} + +pkg_postinst() { + if [[ ${MERGE_TYPE} != binary ]]; then + pkg_postinst_check + fi + + if use profiler; then + einfo + einfo "nvidia-drivers restricts access to performance counters." + einfo "You'll need to run profiling tools (nvprof) " + einfo "using sudo (needs cap SYS_ADMIN) or add the following line to " + einfo "a modprobe configuration file " + einfo "(e.g. /etc/modprobe.d/nvidia-prof.conf): " + einfo + einfo "options nvidia NVreg_RestrictProfilingToAdminUsers=0" + einfo + fi +} diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r2.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r3.ebuild index 687c48f30537..8ff3420a3741 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r2.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.0-r3.ebuild @@ -63,10 +63,6 @@ BDEPEND=" CUDA_PATH="/opt/cuda" QA_PREBUILT="${CUDA_PATH#/}/*" -PATCHES=( - "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch" -) - python_check_deps() { python_has_version "dev-python/defusedxml[${PYTHON_USEDEP}]" } @@ -119,6 +115,10 @@ pkg_pretend() { pkg_setup() { cuda-toolkit_check_reqs + if [[ "${MERGE_TYPE}" == binary ]]; then + return + fi + # we need python for manifest parsing and to determine the supported python versions for cuda-gdb python_setup @@ -151,6 +151,14 @@ src_unpack() { bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}") || die "failed to extract ${A}" } +src_prepare() { + pushd "builds/cuda_nvcc/targets/${narch}-linux" >/dev/null || die + eapply -p5 "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch" + popd >/dev/null || die + + default +} + src_configure() { : } diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild new file mode 100644 index 000000000000..23b0993b2eb8 --- /dev/null +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild @@ -0,0 +1,380 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# shellcheck disable=SC2317 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit check-reqs toolchain-funcs +inherit python-r1 + +DRIVER_PV="570.124.06" +GCC_MAX_VER="14" +CLANG_MAX_VER="19" + +DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)" +HOMEPAGE="https://developer.nvidia.com/cuda-zone" +SRC_URI=" + amd64? ( + https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run + ) + arm64? ( + https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux_sbsa.run + ) +" +S="${WORKDIR}" + +LICENSE="NVIDIA-CUDA" + +SLOT="0/${PV}" # UNSLOTTED +# SLOT="${PV}" # SLOTTED + +KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux" +IUSE="debugger examples profiler rdma sanitizer" +RESTRICT="bindist mirror strip test" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the +# actual required minimum driver version are different. +RDEPEND=" + || ( + <sys-devel/gcc-$(( GCC_MAX_VER + 1 ))_pre[cxx] + <llvm-core/clang-$(( CLANG_MAX_VER + 1 ))_pre + ) + sys-process/numactl + debugger? ( + ${PYTHON_DEPS} + ) + examples? ( + media-libs/freeglut + media-libs/glu + ) + rdma? ( sys-cluster/rdma-core ) +" +BDEPEND=" + $(python_gen_any_dep ' + dev-python/defusedxml[${PYTHON_USEDEP}] + ') +" + +# CUDA_PATH="/opt/cuda-${PV}" #950207 +CUDA_PATH="/opt/cuda" +QA_PREBUILT="${CUDA_PATH#/}/*" + +python_check_deps() { + python_has_version "dev-python/defusedxml[${PYTHON_USEDEP}]" +} + +cuda-toolkit_check_reqs() { + if use amd64; then + export CHECKREQS_DISK_BUILD="6608M" + elif use arm64; then + export CHECKREQS_DISK_BUILD="6354M" + fi + + "check-reqs_pkg_${EBUILD_PHASE}" +} + +cuda_verify() { + if has_version "sys-apps/grep[pcre]"; then + local DRIVER_PV_info + DRIVER_PV_info="$(bash "${DISTDIR}/${A}" --info | grep -oP "cuda_${PV}.*run" | cut -d '_' -f 3)" + + if [[ "${DRIVER_PV}" != "${DRIVER_PV_info}" ]]; then + die "check DRIVER_PV is ${DRIVER_PV} and should be ${DRIVER_PV_info}" + fi + fi + + # rest only works in with unpacked sources + [[ "${EBUILD_PHASE}" != prepare ]] && return + + # run self checks + local compiler_versions GCC_HAS_VER CLANG_HAS_VER + compiler_versions="$( + grep -oP "unsupported (GNU|clang) version.*(gcc versions later than|clang version must be less than) [0-9]*" \ + "${S}"/builds/cuda_nvcc/targets/*/include/crt/host_config.h + )" + + GCC_HAS_VER="$( echo "${compiler_versions}" | grep gcc | grep -oP "(?<=than )[0-9]*")" + if [[ "${GCC_MAX_VER}" -ne "${GCC_HAS_VER}" ]]; then + eqawarn "check GCC_MAX_VER is ${GCC_MAX_VER} and should be ${GCC_HAS_VER}" + fi + + CLANG_HAS_VER="$(( $(echo "${compiler_versions}" | grep clang | grep -oP "(?<=than )[0-9]*") - 1 ))" + if [[ "${CLANG_MAX_VER}" -ne "${CLANG_HAS_VER}" ]]; then + eqawarn "check CLANG_MAX_VER is ${CLANG_MAX_VER} and should be ${CLANG_HAS_VER}" + fi +} + +pkg_pretend() { + cuda-toolkit_check_reqs +} + +pkg_setup() { + cuda-toolkit_check_reqs + + if [[ "${MERGE_TYPE}" == binary ]]; then + return + fi + + # we need python for manifest parsing and to determine the supported python versions for cuda-gdb + python_setup + + if use amd64; then + narch=x86_64 + elif use arm64; then + narch=sbsa + else + die "unknown arch ${ARCH}" + fi + + export narch +} + +src_unpack() { + cuda_verify + + local exclude=( + "cuda-installer" + "*-uninstaller" + "NVIDIA-Linux-${narch}-${DRIVER_PV}.run" + "builds/cuda_documentation" + "builds/cuda_nsight" + "builds/cuda_nvvp" + "builds/nsight_compute" + "builds/nsight_systems" + "builds/nvidia_fs" + ) + + bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}") || die "failed to extract ${A}" +} + +src_prepare() { + pushd "builds/cuda_nvcc/targets/${narch}-linux" >/dev/null || die + eapply -p5 "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch" + popd >/dev/null || die + + default +} + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + local -x SKIP_COMPONENTS=( + "Kernel_Objects" + "Visual_Tools" + "Documentation" # obsolete + "cuda-gdb-src" # not used + ) + + ! use debugger && SKIP_COMPONENTS+=( "cuda-gdb" ) + ! use examples && SKIP_COMPONENTS+=( "Demo_Suite" ) + ! use profiler && SKIP_COMPONENTS+=( "cuda-cupti" "cuda-profiler-api" "nvprof" ) + ! use sanitizer && SKIP_COMPONENTS+=( "compute-sanitizer" ) + + dodir "${CUDA_PATH}" + into "${CUDA_PATH}" + + dofile() { + debug-print-function "${FUNCNAME[0]}" "$@" + + if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then + die "${FUNCNAME[0]} must receive one or two arguments" + fi + + local _DESTDIR + _DESTDIR="$(dirname "${CUDA_PATH}/${1%/}")${2:+/${2%/}}" + mkdir -p "${ED}${_DESTDIR}" || die "mkdir ${_DESTDIR} failed" + + local dir + dir="$(dirname "${1}")" + + if test -z "$(find "${dir}" -maxdepth 1 -name "$(basename "$1")" -print -quit)"; then + if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then + return + fi + if [[ "$1" == "targets/x86_64-linux/lib/stubs/libcusolverMg*" ]] || + [[ "$1" == "targets/x86_64-linux/lib/libcusparse.so.*" ]]; then + return + fi + return + fi + + if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then + # skip noisy warnings + if [[ "$(basename "${1}")" == "include" ]] || + [[ "$(basename "${1}")" == "lib64" ]]; then + return + fi + eqawarn "${ED}${_DESTDIR}/$(basename "${1}") exists" + return + fi + + eval mv -i "${1}" "${ED}${_DESTDIR}" || die "mv failed ${PWD} / ${1} -> ${ED} ${_DESTDIR}" + } + + dopcfile() { + [[ $# -eq 0 ]] && return + + dodir "${CUDA_PATH}/pkgconfig" + cat > "${ED}${CUDA_PATH}/pkgconfig/${1}-${2}.pc" <<-EOF || die "dopcfile" + cudaroot=${EPREFIX}${CUDA_PATH} + libdir=\${cudaroot}/targets/${narch}-linux/lib${4} + includedir=\${cudaroot}/targets/${narch}-linux/include + + Name: ${1} + Description: ${3} + Version: ${2} + Libs: -L\${libdir} -l${1} + Cflags: -I\${includedir} + EOF + } + + pushd builds >/dev/null || die + fix_executable_bit=( + cuda_cupti/extras/CUPTI/samples/pc_sampling_utility/pc_sampling_utility_helper.h + cuda_cupti/extras/CUPTI/samples/pc_sampling_continuous/libpc_sampling_continuous.pl + + libcufile/gds/tools/run_gdsio.cfg + ) + + if use amd64; then + fix_executable_bit+=( + cuda_opencl/targets/*/include/CL/cl.hpp + + libcufile/targets/*/lib/libcufile_rdma_static.a + libcufile/targets/*/lib/libcufile_static.a + ) + fi + chmod -x "${fix_executable_bit[@]}" || die "failed chmod" + popd >/dev/null || die + + ebegin "parsing manifest" "${S}/manifests/cuda_"*.xml # {{{ + + "${EPYTHON}" "${FILESDIR}/parse_manifest.py" "${S}/manifests/cuda_"*".xml" &> "${T}/install.sh" \ + || die "failed to parse manifest" + # shellcheck disable=SC1091 + source "${T}/install.sh" || die "failed to source install script" + + eend $? # }}} + + if use debugger; then + if [[ -d "${ED}/${CUDA_PATH}/extras/Debugger/lib64" ]]; then + rmdir "${ED}/${CUDA_PATH}/extras/Debugger/lib64" || die "remove debugger lib64" + fi + + find "${ED}/${CUDA_PATH}/bin" -maxdepth 1 -name "cuda-gdb-*-tui" -print0 | while read -rd $'\0' tui_name; do + impl="$(basename "${tui_name}" | cut -d '-' -f 3 | tr '.' '_')" + + if ! has "${impl}" "${PYTHON_COMPAT[@]}" || ! use "python_targets_${impl}"; then + rm "${tui_name}" || die "tui-name rm ${tui_name}" + sed -e "/$(basename "${tui_name}")\"/d" -i "${ED}/${CUDA_PATH}/bin/cuda-gdb" || die "tui_name sed" + fi + done + fi + + # remove rdma libs (unless USE=rdma) + if ! use rdma; then + rm "${ED}/${CUDA_PATH}/targets/${narch}-linux/lib/libcufile_rdma"* || die "failed to remove rdma files" + fi + + # Add include and lib symlinks + dosym "targets/${narch}-linux/include" "${CUDA_PATH}/include" + dosym "targets/${narch}-linux/lib" "${CUDA_PATH}/lib64" + + find "${ED}/${CUDA_PATH}" -empty -delete || die + + local ldpathextradirs pathextradirs + + use debugger && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/Debugger/lib64" + use profiler && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/CUPTI/lib64" + + local revord=$(( 999999 - $(printf "%02d%02d%02d" "$(ver_cut 1)" "$(ver_cut 2)" "$(ver_cut 3)") )) + newenvd - "99cuda${revord}" <<-EOF + PATH=${EPREFIX}${CUDA_PATH}/bin${pathextradirs} + PKG_CONFIG_PATH=${EPREFIX}${CUDA_PATH}/pkgconfig + LDPATH=${EPREFIX}${CUDA_PATH}/lib64:${EPREFIX}${CUDA_PATH}/nvvm/lib64${ldpathextradirs} + EOF + + # CUDA prepackages libraries, don't revdep-build on them + insinto /etc/revdep-rebuild + newins - "80${PN}${revord}" <<-EOF + SEARCH_DIRS_MASK="${EPREFIX}${CUDA_PATH}" + EOF + + # https://bugs.gentoo.org/926116 + insinto /etc/sandbox.d + newins - "80${PN}" <<-EOF + SANDBOX_PREDICT="/proc/self/task" + EOF + + # TODO drop and replace with runtime detection similar to what python does {{{ + # ATTENTION: change requires revbump, see link below for supported GCC # versions + # https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements + local cuda_supported_gcc=( 8.5 9.5 10 11 12 13 "${GCC_MAX_VER}" ) + + sed \ + -e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc[*]}:g" \ + "${FILESDIR}"/cuda-config.in > "${ED}/${CUDA_PATH}/bin/cuda-config" || die + fperms +x "${CUDA_PATH}/bin/cuda-config" + # }}} + + # skip til cudnn has been changed #950207 + # if [[ "${SLOT}" != "${PV}" ]]; then + # dosym "${CUDA_PATH}" "${CUDA_PATH%"-${PV}"}" + # fi + + fowners -R root:root "${CUDA_PATH}" +} + +pkg_postinst_check() { + if tc-is-gcc && + ver_test "$(gcc-major-version)" -gt "${GCC_MAX_VER}"; then + ewarn + ewarn "gcc > ${GCC_MAX_VER} will not work with CUDA" + ewarn + ewarn "Append --ccbin= pointing to a gcc bindir to the nvcc compiler flags (NVCCFLAGS)" + ewarn "or set NVCC_CCBIN to the same bindir." + ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")\"" + ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")" + ewarn + fi + + if tc-is-clang && + ver_test "$(clang-major-version)" -gt "${CLANG_MAX_VER}"; then + ewarn + ewarn "clang > ${CLANG_MAX_VER} will not work with CUDA" + ewarn + ewarn "Append --ccbin= pointing to a clang bindir to the nvcc compiler flags (NVCCFLAGS)" + ewarn "or set NVCC_CCBIN to the same bindir." + ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")\"" + ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")" + ewarn + fi +} + +pkg_postinst() { + if [[ ${MERGE_TYPE} != binary ]]; then + pkg_postinst_check + fi + + if use profiler; then + einfo + einfo "nvidia-drivers restricts access to performance counters." + einfo "You'll need to run profiling tools (nvprof) " + einfo "using sudo (needs cap SYS_ADMIN) or add the following line to " + einfo "a modprobe configuration file " + einfo "(e.g. /etc/modprobe.d/nvidia-prof.conf): " + einfo + einfo "options nvidia NVreg_RestrictProfilingToAdminUsers=0" + einfo + fi +} diff --git a/dev-util/perf/Manifest b/dev-util/perf/Manifest index dca4b6bdcf8c..9adcf3053a5a 100644 --- a/dev-util/perf/Manifest +++ b/dev-util/perf/Manifest @@ -1,4 +1,5 @@ AUX perf-6.11.7-annotate.patch 583 BLAKE2B 31fddd43a96409b303d6b516d942a7392a33f105a1b49d97ccdd8b9f46a2170348f668222aaab9fe404e4851fedd429797e2286c64e8bc11ff7e954a367f1331 SHA512 b99c8e7d609cf5dccc67772b5f307c6dc890c74e63060f615602a99c519c951fe075d645ad74919ebf09fb7272a30a06098252a0e5c68a8c8fd0a6c89440ca52 +AUX perf-6.14-lto.patch 773 BLAKE2B 30c82cd977a89350d8ca99a189c547ef45fe4dbacec3858ba1132090272e6da1d4e741951e2c3411fe5acddf81adf8e35d08629529aec38aac72b7312463dec6 SHA512 06957dd3b13cbbf7a5cc40b676e8ed69a7e93d7f2555b3ee14f3c5e4a2b6fe5811c1e15d391a449b19d87ec6f9efad1aa4481da3aca64b0174aee173cf315550 AUX perf-6.4-libtracefs.patch 780 BLAKE2B dc97e42f1d3ece03722441b5a2c1f87ab9871ca92b9cf9f57b2e44627fddfcedaf6d7f64ddf74fd103c23aa0db71c4d147f7841743eb5c5a466c9bbb150597ea SHA512 da1b69c190491dd926ba1e98a43965a5ffd543df4134e6a10d187ab544695617fcffede3190bce4cbef13b897d113dee743f67a98ff249a486f8de2d49e62f9f AUX perf-6.7-expr.patch 1257 BLAKE2B 1ff41975d84f835a343d2b2f9f049edd817bf80ca576879c7f819608506341b5d19147cf3ecd67a731ab6ecf9a45ce494a8a665aa1bff86cc14f3967a6dd12a0 SHA512 8f1a5a8412464f7623b10da562552b2ac17ca8e70eb4507a3751493662e64066828f2b7a73f1bc7546f463d8d21919f59622b978a6bacafed6a93f232a15ff0b DIST linux-6.11.tar.xz 146900704 BLAKE2B e7750c0878d71a56a0ce52d4c4c912199dad5bf5e2e8f872585a6494afbb37cbd852e612a6858936d2dc9b7776a3933818f540db408d57e90d18ea5249bba7ab SHA512 329c1f94008742e3f0c2ce7e591a16316d1b2cb9ea4596d4f45604097e07b7aa2f64afa40630a07f321a858455c77aa32ba57b271932ddcf4dc27863f9081cea @@ -11,6 +12,6 @@ DIST patch-6.13.5.xz 459896 BLAKE2B 08f3dc28f8f9cbf561570dc74b1a7070be07f966c442 EBUILD perf-6.11.7-r1.ebuild 9502 BLAKE2B 4dc13e56044b9ed2f41efb34ebb8bf43f12019ed16820a85e5369474ab337d4dbadda412e157775e66dedb6ab59b3a37bf9191150e9cad6127f84a0e1536ee21 SHA512 f000d56467fa314ac4eceee86b67726c44724c2bcbc318606a9662411f9e46461143737966e6e290f5f7340c3f77e2eb5d05f3e1bbadec003f9ec9c6e510c021 EBUILD perf-6.12-r1.ebuild 9593 BLAKE2B e8a8174e2c077e84169913fc054c8108e651f14c80cfa3ac1cd48d4e0d8973f9263d0e95062e79ddceb6bcef2bd6c37bda755a54d575374209b05331879462c0 SHA512 89d1afc37642c22563dbe0c00979c059e05ff457c26adce37fb7ae3b7387ee434dc0add58c6feb1cbf5a9d55ff1eb89248b684f5423c14bef6ce63d72dc45754 EBUILD perf-6.13.5.ebuild 9547 BLAKE2B af952b8995e1ccdb096b18a679a2d34ee148dc613d4fa65ea01c20b462c3d74955c6076f47fd52c199d252f3677773fc564bb278aa9e280570c3105d8bd8cd93 SHA512 0d0e760901b0427583d35117e2374e2f12e748c66aeac38561d95fa4d2dc967ac59f03371506f19a1370597a1cfcc5b4826400ee12dd49aba022ea3cf129dda2 -EBUILD perf-6.14.ebuild 9547 BLAKE2B 45b7cf22fa75ed2c4c4c003d524d49e8583db0fb366a7db53312c22f51315d2c344a06fca1ce309428f9b4360af9a3750c5f4943c64a32448f6214e5928dd4d9 SHA512 1a9ee84b97049ccf3df90689970eff977dc50e04904b70229f62f4beb1e7f07fab682c18267d33e53ffd351f1382dae0cf6807272d5b071379894bae2a685d57 +EBUILD perf-6.14.ebuild 9544 BLAKE2B 380f7d403b7a66bf7d253fdc5df062512cb2214fe89a00283c7a711f6ec4651359f492f525e9d1c83ba3b8cc758c5fdc4b5037dc91f9169c0cb71b8f3bc83bf7 SHA512 3095606903986bba44f2264e2b95eeb9bbe7f08e2b6499d9a01ded183c38a8f8f25e2dc818d43b78fec234268db5ea8d9c8c4466a3f292a9875d3d29ba7aa1ed EBUILD perf-6.7.ebuild 9089 BLAKE2B 3f8b6c6c4a4863ebced6de386010d714c21ee7581542bf8d420b7c9c7c28df6a94af0071bb89c688e4580bdf53fddb4fc94d3c690389bb92cc596c2538e795a3 SHA512 76c8ce49dce36c3ca7211db34496889a89def34ce55d9bd79e03d17475ad02081f23fb22882c32a785fcb37d05104b51b43251bde9ffeca65b1d7c3065fe1074 -MISC metadata.xml 1664 BLAKE2B fd151376545e542f591d4a0b06f7a3e51a5e3844a613035fabbeb770a58781ed29cd5d7614560d0f7473b2dec3636e1ca0f736259091371baad96d1bc2ef5d8f SHA512 96d8b853e38317bb526d5d5888b04e706df8dcc37c2ef26a3b047b861f86e33406071d8cebc287fbd09e6e33a2b5e72872b41c3ceb247392adc310f8389c1a26 +MISC metadata.xml 1740 BLAKE2B abdb516345558a23b4b493ccac937fa8952ae3c5fce30a7f3faad3ac6d502c2d74e94224bfa3aaac08fbe7eb971cb7e9039ff795510757a660611e94e8660076 SHA512 0d0b476a6c105d3cc9ea6a483f70b8b6a22d86b738f5d72fe839b7f102a93eb50f73db244585ecf20a1ff716429caa112f99c4fc4a9747520894f661ae6456e0 diff --git a/dev-util/perf/files/perf-6.14-lto.patch b/dev-util/perf/files/perf-6.14-lto.patch new file mode 100644 index 000000000000..e5e54fd00b22 --- /dev/null +++ b/dev-util/perf/files/perf-6.14-lto.patch @@ -0,0 +1,17 @@ + +Adapted to v6.14 from patch submitted upstream: +https://lore.kernel.org/all/20250321082038.27901-2-holger@applied-asynchrony.com/ + +Bug: https://bugs.gentoo.org/951151 + +--- a/tools/perf/Makefile.config ++++ b/tools/perf/Makefile.config +@@ -820,7 +820,7 @@ else + PERL_EMBED_LIBADD = $(call grep-libs,$(PERL_EMBED_LDOPTS)) + PERL_EMBED_CCOPTS = $(shell perl -MExtUtils::Embed -e ccopts 2>/dev/null) + PERL_EMBED_CCOPTS := $(filter-out -specs=%,$(PERL_EMBED_CCOPTS)) +- PERL_EMBED_CCOPTS := $(filter-out -flto=auto -ffat-lto-objects, $(PERL_EMBED_CCOPTS)) ++ PERL_EMBED_CCOPTS := $(filter-out -flto=% -ffat-lto-objects, $(PERL_EMBED_CCOPTS)) + PERL_EMBED_LDOPTS := $(filter-out -specs=%,$(PERL_EMBED_LDOPTS)) + FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS) + diff --git a/dev-util/perf/metadata.xml b/dev-util/perf/metadata.xml index 2a4e4eada619..caa72e325443 100644 --- a/dev-util/perf/metadata.xml +++ b/dev-util/perf/metadata.xml @@ -27,7 +27,7 @@ <flag name="libpfm">Enable <pkg>dev-libs/libpfm</pkg> support</flag> <flag name="libtraceevent">Enable <pkg>dev-libs/libtraceevent</pkg> support</flag> <flag name="libtracefs">Enable <pkg>dev-libs/libtracefs</pkg> support</flag> - <flag name="numa">Enable NUMA support</flag> + <flag name="numa">Enable NUMA support using <pkg>sys-process/numactl</pkg> (NUMA kernel support is also required)</flag> <flag name="perl"> Add support for Perl as a scripting language for perf tools. </flag> diff --git a/dev-util/perf/perf-6.14.ebuild b/dev-util/perf/perf-6.14.ebuild index c21bfb37e91b..99e4b1b918ce 100644 --- a/dev-util/perf/perf-6.14.ebuild +++ b/dev-util/perf/perf-6.14.ebuild @@ -35,7 +35,7 @@ S="${S_K}/tools/perf" LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" -IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind zstd" +IUSE="abi_mips_o32 abi_mips_n32 abi_mips_n64 babeltrace capstone big-endian bpf caps crypt debug +doc gtk java libpfm +libtraceevent +libtracefs lzma numa perl +python +slang systemtap tcmalloc unwind" REQUIRED_USE=" ${PYTHON_REQUIRED_USE} @@ -85,7 +85,7 @@ RDEPEND=" systemtap? ( dev-debug/systemtap ) tcmalloc? ( dev-util/google-perftools ) unwind? ( sys-libs/libunwind:= ) - zstd? ( app-arch/zstd:= ) + app-arch/zstd:= dev-libs/elfutils sys-libs/binutils-libs:= sys-libs/zlib @@ -185,6 +185,7 @@ src_prepare() { pushd "${S_K}" >/dev/null || die # Gentoo patches go here + eapply "${FILESDIR}"/${P}-lto.patch popd || die # Drop some upstream too-developer-oriented flags and fix the @@ -289,7 +290,6 @@ perf_make() { NO_LIBPYTHON=$(puse python) NO_LIBTRACEEVENT=$(puse libtraceevent) NO_LIBUNWIND=$(puse unwind) - NO_LIBZSTD=$(puse zstd) NO_SDT=$(puse systemtap) NO_SHELLCHECK=1 NO_SLANG=$(puse slang) diff --git a/dev-util/selenium-manager/Manifest b/dev-util/selenium-manager/Manifest index 38d647ba271c..5744afdce707 100644 --- a/dev-util/selenium-manager/Manifest +++ b/dev-util/selenium-manager/Manifest @@ -5,8 +5,10 @@ DIST selenium-selenium-4.26.0.gh.tar.gz 77107740 BLAKE2B d4e466dbdb9a12126ae8ee9 DIST selenium-selenium-4.28.0.gh.tar.gz 52440665 BLAKE2B c954745ffc62d05c7686dfad8be2963dc520d831849a3ff50e75d6b3bf6f14e985932026b61bd6c4df37a1cd50d877bd6b52d0ee35df3b0763d4f5d2f08b8b6a SHA512 02316b264a25888116070f697be59094139114ce3388013da8e907dc55ac4e0d60b773b35ae5a786fbd94ee59c3afc7ff9344aeec709c160960a343337f42d8c DIST selenium-selenium-4.29.0.gh.tar.gz 52589103 BLAKE2B 65b202e599c1a3d31ebd15a3da1246fe7e8ea4a55c24189a1146d07e4a49a5fcdfbdb000b7e8102b09de4f3c60d4ca13c033c2127603f8ed2c6277d254cb3069 SHA512 2a3dde375539592cb65fc2dca27e5a3f92ccdd9111dd0c7a0453a6f447a2f4b738d92120d1ef6872321265f86c87708859e714288b49893f6b8ccb1ad003cbf7 DIST selenium-selenium-4.30.0.gh.tar.gz 52519870 BLAKE2B 440198b919d2c3400666bc07d246bff04521ec10716fadf660c564bd316e5889c4ecb314a45422661623b2a17e47e93921cad6eb97d3ca1b6f47cbae0ad42ac7 SHA512 561551002d2c37acc9a0b5fc40e3989a47d69dc0692a6fe44c90b0b77bf0056bc390848020fea7f5681ccbb5ec9808912cc5e63c286577ec60d787f3d2991b82 +DIST selenium-selenium-4.31.0.gh.tar.gz 52458288 BLAKE2B 649d585e116ccd82e68f3b74b50cbbda5b9ac02c6ab8e72473b5775265205dc31ec69c846b1b39c91dceb63234bb02bf4833b321d101227f5873db6ad8897038 SHA512 e440e1b8e15b9e1f592b2466738f3982355a0757458bd7c8ef7eba31548df2bd449e54cea273a47f2b6bd0e68a2d75a1af67a791eff0cf3f601e685c4b8b237a EBUILD selenium-manager-4.26.0-r1.ebuild 2818 BLAKE2B 3a4e2731f6c90965c22615063bab1f2aafc27724b8226635b7e6e50a09a9f8cb64d061cfa81d52508e2e2ade72f1a60e00b2f3bb98ffb8a083585068e739d87b SHA512 9a2221808fe213d4d317a33edc147d529c98b94b2d898d11492ee3eabc4fe89a96a2ef7d0080a62158c211a16cad60abc4e5e94e1606aa837a7911845215ed01 EBUILD selenium-manager-4.28.0.ebuild 2837 BLAKE2B 2f9b31f72eb0bf351e77889a80ad72d7b55f1b834d82b522da09c90f93ab19c7057114017ce2d0b87eb58540c9bdec53bbca4752a923ccd59db68384edc4b303 SHA512 7b636deb4200804e0e815054269591a2278cf0d66c2662cb30e5c127745961c110e022ddd02f15e853b1522a34ac6d869d732af2d21324cab6444d59e95a91cd EBUILD selenium-manager-4.29.0.ebuild 2837 BLAKE2B 2f9b31f72eb0bf351e77889a80ad72d7b55f1b834d82b522da09c90f93ab19c7057114017ce2d0b87eb58540c9bdec53bbca4752a923ccd59db68384edc4b303 SHA512 7b636deb4200804e0e815054269591a2278cf0d66c2662cb30e5c127745961c110e022ddd02f15e853b1522a34ac6d869d732af2d21324cab6444d59e95a91cd -EBUILD selenium-manager-4.30.0.ebuild 2882 BLAKE2B 8b6b1cfae260626842273bc0b7b1384e86fc035c960137fa172c4f5f96a0861e5befc3f2763725ed71b274b0f068ffcb7b995b0f1a482c3790443aa6e567f6f1 SHA512 bee85076f23ab21b62959583aed73751b4b902830e051c99c144b550d5a5ed287dd52a62999eeb74d7f33ed88d3f4a4fd414556bfb2a93b1664d7b4531f5678a +EBUILD selenium-manager-4.30.0.ebuild 2880 BLAKE2B ab0cce0738bc553e6156fb7e128afe35d177bf93aff9b79d46a8838e4d62f81d46001f0e3661cf34bc43be2977b8cd2b6361eac782c65153763c67c3719c7f55 SHA512 c4085c83a2161be0e2436e244eea9575e662c358033c840497e627ae12ee61a6996d2c29d30d293a518a75dcb3ec6dc1637743945fd8279b43a509402b2b8819 +EBUILD selenium-manager-4.31.0.ebuild 2882 BLAKE2B 8b6b1cfae260626842273bc0b7b1384e86fc035c960137fa172c4f5f96a0861e5befc3f2763725ed71b274b0f068ffcb7b995b0f1a482c3790443aa6e567f6f1 SHA512 bee85076f23ab21b62959583aed73751b4b902830e051c99c144b550d5a5ed287dd52a62999eeb74d7f33ed88d3f4a4fd414556bfb2a93b1664d7b4531f5678a MISC metadata.xml 585 BLAKE2B 9810f0d387f5d0b8c6be3efd0bb41c04ccd0a47911b0d2fdd2722a9e2e00c590c27eb449449df764540c10359b698749c8de7a7e1abca2f8010dbaa649add6ca SHA512 2c1c2153adbf1af5a48bec25fd5879dc4dd4346f5ef5d37f1ed4abb8bbcf841870eed4ecd35ce69c50a861e0f50890fb2ee3da7c4980a29468acc6ecd54ecebd diff --git a/dev-util/selenium-manager/selenium-manager-4.30.0.ebuild b/dev-util/selenium-manager/selenium-manager-4.30.0.ebuild index 1de768774733..9b6a458a0895 100644 --- a/dev-util/selenium-manager/selenium-manager-4.30.0.ebuild +++ b/dev-util/selenium-manager/selenium-manager-4.30.0.ebuild @@ -31,7 +31,7 @@ LICENSE="Apache-2.0" # Dependent crate licenses LICENSE+=" Apache-2.0 BSD ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86" IUSE="telemetry test" RESTRICT="!test? ( test )" diff --git a/dev-util/selenium-manager/selenium-manager-4.31.0.ebuild b/dev-util/selenium-manager/selenium-manager-4.31.0.ebuild new file mode 100644 index 000000000000..1de768774733 --- /dev/null +++ b/dev-util/selenium-manager/selenium-manager-4.31.0.ebuild @@ -0,0 +1,121 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" +" + +inherit cargo + +TAG=selenium-${PV} +MY_P=selenium-${TAG} +CRATES_P=selenium-4.30.0 +DESCRIPTION="CLI tool that manages the browser/driver infrastructure required by Selenium" +HOMEPAGE=" + https://www.selenium.dev/ + https://github.com/SeleniumHQ/selenium/ +" +SRC_URI=" + https://github.com/SeleniumHQ/selenium/archive/selenium-${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +if [[ ${PKGBUMPING} != ${PVR} ]]; then + SRC_URI+=" + https://github.com/gentoo-crate-dist/selenium/releases/download/${CRATES_P}/${CRATES_P}-crates.tar.xz + " +fi +S="${WORKDIR}/${MY_P}/rust" + +LICENSE="Apache-2.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0 BSD ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="telemetry test" +RESTRICT="!test? ( test )" + +DEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + app-arch/zstd:= + sys-libs/zlib:= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + test? ( + || ( + www-client/firefox + www-client/firefox-bin + ) + ) +" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_prepare() { + default + + sed -i -e '/strip/d' Cargo.toml || die + if ! use telemetry; then + sed -i -e '/avoid-stats/s:false:true:' src/config.rs || die + fi + + # Avoid tests requiring Internet or specific browsers (or trying + # to fetch them, whatever). + rm tests/browser_download_tests.rs || die + rm tests/cache_tests.rs || die + rm tests/exec_driver_tests.rs || die + rm tests/grid_tests.rs || die + rm tests/browser_tests.rs || die + rm tests/config_tests.rs || die + rm tests/iexplorer_tests.rs || die + rm tests/mirror_tests.rs || die + rm tests/output_tests.rs || die + rm tests/stable_browser_tests.rs || die + rm tests/webview_tests.rs || die + + # enable system libraries where supported + export ZSTD_SYS_USE_PKG_CONFIG=1 + sed -i -e '/features.*static/d' "${ECARGO_VENDOR}"/apple-xar-*/Cargo.toml || die + + # remove unbundled sources, just in case + # (smoke.c is actually used to test system -lz, sigh) + find "${ECARGO_VENDOR}"/*-sys-*/ \ + \( -name '*.c' -a -not -name 'smoke.c' \) -delete || die + + # bzip2-sys requires a pkg-config file + # https://github.com/alexcrichton/bzip2-rs/issues/104 + mkdir "${T}/pkg-config" || die + export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} + cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die + Name: bzip2 + Version: 9999 + Description: + Libs: -lbz2 + EOF +} + +src_test() { + local -x PATH=${T}/bin:${PATH} + + mkdir "${T}/bin" || die + if ! has_version "www-client/firefox"; then + # upstream expects "firefox" rather than "firefox-bin" + ln -s "$(type -P firefox-bin)" "${T}/bin/firefox" || die + fi + + cargo_src_test --no-fail-fast +} + +src_install() { + cargo_src_install + einstalldocs + dodoc README.md + + newenvd - 70selenium-manager <<-EOF || die + SE_MANAGER_PATH="${EPREFIX}/usr/bin/selenium-manager" + EOF +} diff --git a/dev-util/watchman/Manifest b/dev-util/watchman/Manifest index 849cbfe741c5..8cebf5a1c6a6 100644 --- a/dev-util/watchman/Manifest +++ b/dev-util/watchman/Manifest @@ -291,5 +291,5 @@ DIST xi-unicode-0.2.1.crate 88229 BLAKE2B a091b894959e665e2b46086a3512a6193b54bd DIST zerocopy-0.7.35.crate 152645 BLAKE2B 8f13123c9d9257ac5a5c6954d38c3510fa658624442f7e03cdcc6db5a0977d9f26bb4e277be172b7872ec365cf6e58ac742e5578636f7698f9f37093e9249d9a SHA512 17fcb31c029ae89c01e5bae5fb2bb46bd434120199a3dc2c7fe0012dbbcfe2a0bb38934c4a7d3a4920e3fe47c097403beee554fefa54b66cb390f8b1de638d3c DIST zerocopy-derive-0.7.35.crate 37829 BLAKE2B badeb7fa5e0bfe93a6788d93fd297604ed31de526b121549300ead3c49d450f49265f499e2e7ce606dcce2b59dd01f7fa817b8fbb3f237475185c5b42f5299c4 SHA512 dbe23573b62a6267d7bc8c744320b75b2fbda03b908c1d175211f7394374fe182bce58021e25485c10671d726b2007f250565dfe53134d51c89293bb607e9feb EBUILD watchman-2023.06.19.00-r2.ebuild 5674 BLAKE2B 066ff3662a07c7fc1457d61a01b3e6e88d56e0a1cc5db820f268645905a2e4ba07c91976cc3807c3132eae849c528e4889aa77f5738178558e9130e41b561ff0 SHA512 6864f3ac4786f363977a844180e887ed984c86714e71c7afb399703902a35419b5e41875290b6bcfe334b097cbe83250401d47153aa39e0dbcb2dc1af09be21b -EBUILD watchman-2024.11.04.00.ebuild 7587 BLAKE2B b31a40598ef2c1cf773b48f5e76bb43a1f804100e14ac023bae41ca4bd8d5ffdf893368b751fc08385d5f40c59f16df18ac18f0b3ea36c6618d76dedc3fe07f7 SHA512 e8391e78d6ec3d4377275799094f685250805309fc7e26c698ac11ee1fbd6d343ebc7e36b855fd1d27ec64d56c6479bd8f063d37077acb384cafebd0d7baba20 +EBUILD watchman-2024.11.04.00.ebuild 7586 BLAKE2B efec1c89ea39ca9cd2e430677bd701f3c6a9a2ecd982e029112fe21d9f29df2c516d3bca61860d99207ea508f53321cd82dabccf26ec2faee2ee05a82d923f7c SHA512 0b18bfb1b30653e2a4d9f9fd5639f5e55c92329c0d8feb2d5024e0dd2fbcdca1d78b5720ac40aab53c4b946bae14bff1107876a0c5ed3915f1fcb4789d5401f6 MISC metadata.xml 582 BLAKE2B 9a1e25a4a46f649c5a39643e52f3b06de92e51701c3948454c769272c32385f4163038edfd59d10591fe83696c46efdcb262a6ff79ce81e537bd3b908c069e1e SHA512 e30706692c771c1e55493b241197cc1c1c68dd2f0412777c97f40c00432f9f01268397a6b9726f15587f84d8e9e35d82a3b8e99233573f60f9670978e37e4d7a diff --git a/dev-util/watchman/watchman-2024.11.04.00.ebuild b/dev-util/watchman/watchman-2024.11.04.00.ebuild index 26efcb7237bd..952a0c194edf 100644 --- a/dev-util/watchman/watchman-2024.11.04.00.ebuild +++ b/dev-util/watchman/watchman-2024.11.04.00.ebuild @@ -1,4 +1,4 @@ -# Copyright 2020-2024 Gentoo Authors +# Copyright 2020-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -244,7 +244,7 @@ LICENSE="MIT" # Dependent crate licenses LICENSE+=" Apache-2.0 MIT Unicode-DFS-2016 WTFPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="amd64 ~arm64" IUSE="llvm-libunwind python" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" |