diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-02-06 00:10:59 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-02-06 00:10:59 +0000 |
commit | 22eaa60297c2dbc92dd1658fb7d8e46878552755 (patch) | |
tree | c3e1147cecf778a6418d736658cedc5d7f2dfa2d /media-libs | |
parent | e019d91362a4788fe5cc5788877327b813d0f730 (diff) |
gentoo auto-resync : 06:02:2025 - 00:10:59
Diffstat (limited to 'media-libs')
-rw-r--r-- | media-libs/Manifest.gz | bin | 69786 -> 69788 bytes | |||
-rw-r--r-- | media-libs/libopenmpt/Manifest | 6 | ||||
-rw-r--r-- | media-libs/libopenmpt/libopenmpt-0.6.6.ebuild | 61 | ||||
-rw-r--r-- | media-libs/libopenmpt/libopenmpt-0.7.10.ebuild | 61 | ||||
-rw-r--r-- | media-libs/libopenmpt/libopenmpt-0.7.13.ebuild | 2 | ||||
-rw-r--r-- | media-libs/mesa/Manifest | 6 | ||||
-rw-r--r-- | media-libs/mesa/mesa-24.3.4-r1.ebuild | 1 | ||||
-rw-r--r-- | media-libs/mesa/mesa-25.0.0_rc2.ebuild | 504 | ||||
-rw-r--r-- | media-libs/mesa/mesa-9999.ebuild | 7 |
9 files changed, 515 insertions, 133 deletions
diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz Binary files differindex 39e6dd4aeae8..85b85456c2a8 100644 --- a/media-libs/Manifest.gz +++ b/media-libs/Manifest.gz diff --git a/media-libs/libopenmpt/Manifest b/media-libs/libopenmpt/Manifest index 57ca35d4d81e..f83196f916c1 100644 --- a/media-libs/libopenmpt/Manifest +++ b/media-libs/libopenmpt/Manifest @@ -1,7 +1,3 @@ -DIST libopenmpt-0.6.6+release.autotools.tar.gz 1554516 BLAKE2B 21e2fc4252431235608a52d3a321e26eae5d45f2328ff3e3604d84c537d72e07d72346c504901b000af04dfc52b1dd91c79f576be4331ea8685e534a174b61cd SHA512 b634c556f13dc51d1008f4216936a9b7cab25a6fb0d5218da0b692ec848de21905ed1981223ac9ecdebea9ce6c5376e91ff92e1655dd0be491fce0114e3230bf -DIST libopenmpt-0.7.10+release.autotools.tar.gz 1671289 BLAKE2B 62bd4a1bcd9685fdb92c270687b71609a23986941e301ad17cc37ca5f6b5b76fa1a8f425b2e68603bb29bfa34c3c1caea98faea1d95004f87943b2bed6b7c9a0 SHA512 e5f02b045bc1449791ec43a32216c4c4231edff88b3bda07283c9768118bce3a1f50c2535dbe38a21eb12016294e3b5823ef2f32f2f1e21d40fafe188bad783d DIST libopenmpt-0.7.13+release.autotools.tar.gz 1681351 BLAKE2B d75df89e85531e85974bd532773e8ed16440211448790779191a61a629dde33ef7280bcc1c82e6ac6aeb313f7f568bc7a2abe707772801f52c271977b88eff8e SHA512 04e63c635dd6c63c2ce79db4eff971f10e4d14a12c7f143fc317a4b5f5188cd8cbf84fc5121057c2beff3a3e6b9b48767c02b9eb5c569accab3e6ff7322a9690 -EBUILD libopenmpt-0.6.6.ebuild 1560 BLAKE2B 649dbcde7c2bc9aabf1b50f6d7e232e1173f6669e9b73afb34b9cf6273783f52193dda79aa52d54fc0e502fe3a978bbba79bf04c631d2141b91c8d456e8ec4ac SHA512 35cea07a2a46d8f316455e5115e6388b601bb5fe8218a4460e4b523e4401b8b771d2d1149fbb5f97462bd8361ea842034040d80a40ed91166056f24273288bb0 -EBUILD libopenmpt-0.7.10.ebuild 1565 BLAKE2B bf355c4e8df835d7e1c575b2159b71841167042547a51405eff6b8eafe0e9d1a40a1d53684800769bd35744230bfc62d19bcebff4943c77cee60bc75513ee86b SHA512 59e0ac9f28dbf891e6bb02971682fa669af730f7e99c5ccb6d3b357f6fb4d08e33bbed1ac466c18990685ad15edce9b083027eda2b49efb4b49562598886da24 -EBUILD libopenmpt-0.7.13.ebuild 1561 BLAKE2B 1ef57ece652f222a7c96f03e2c99d4bc122cb90379cc2fa9d931bfd0cbef98d2bda9b9522f25081f9eee67817e443652a6b9cc11559d0c54d87a2cc6ea1817f2 SHA512 d64fc520762a5726e68a3dd26f3697ea490061868a0a848b6c039b88f501023105222c9fb5396bbdaf8534697ae1037732d63f86fe06288c0098ad1f43dda80d +EBUILD libopenmpt-0.7.13.ebuild 1560 BLAKE2B 10337191a781f9067f5ee829001d6c64fac2705f04c1aa8563d936092fb613b1fdd3c1016575e4eed4821ddf95492100946cf9527452dfda56cf68ae044d971f SHA512 3b48864f460a6a744693e35ccd9edd8e676ae5cb987caeca6807c25e3bfcf42cc2d68689ec2df8aaebe95a9537d03c5855a676ee1d5752b80bc1d7a41a48ee72 MISC metadata.xml 328 BLAKE2B 25f8b37a7e7885a50e5b7305c9090033c78b1154214e05060c3407f0d27ac436aa3f0da1dff3a5ba1685bef390f1fe99416893aaf59e002921cc3464ce0d2167 SHA512 6686c75dbfcd5a5f9d6ef4d667916f54388180045471f8eb585c7b0d6e03f5d56c3fc892c97851f7453318309a456bbfd877eb240cbf008b71984009d08a8181 diff --git a/media-libs/libopenmpt/libopenmpt-0.6.6.ebuild b/media-libs/libopenmpt/libopenmpt-0.6.6.ebuild deleted file mode 100644 index 6b839e1264b9..000000000000 --- a/media-libs/libopenmpt/libopenmpt-0.6.6.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal - -MY_P="libopenmpt-${PV}+release.autotools" -DESCRIPTION="Library to decode tracked music files (modules)" -HOMEPAGE="https://lib.openmpt.org/libopenmpt/" -SRC_URI="https://lib.openmpt.org/files/libopenmpt/src/${MY_P}.tar.gz" -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm ~arm64 ppc ppc64 ~riscv x86" -IUSE="examples mp3 ogg static-libs test vorbis zlib" -RESTRICT="!test? ( test )" - -RDEPEND=" - mp3? ( media-sound/mpg123[${MULTILIB_USEDEP}] ) - ogg? ( media-libs/libogg[${MULTILIB_USEDEP}] ) - vorbis? ( media-libs/libvorbis[${MULTILIB_USEDEP}] ) - zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -S="${WORKDIR}/${MY_P}" -ECONF_SOURCE="${S}" - -multilib_src_configure() { - # A lot of these optional dependencies relate to openmpt123, which - # we package separately, so we disable them here. - econf \ - $(use_enable static-libs static) \ - --disable-openmpt123 \ - --disable-examples \ - $(use_enable test tests) \ - --disable-doxygen-doc \ - $(use_with zlib) \ - $(use_with mp3 mpg123) \ - $(use_with ogg) \ - $(use_with vorbis) \ - $(use_with vorbis vorbisfile) \ - --without-pulseaudio \ - --without-portaudio \ - --without-portaudiocpp \ - --without-sdl2 \ - --without-sndfile \ - --without-flac -} - -multilib_src_install_all() { - rm -f \ - "${ED}"/usr/*/*.la \ - "${ED}"/usr/share/doc/${P}/LICENSE || die - - if ! use examples; then - rm -r "${ED}"/usr/share/doc/${P}/examples || die - fi -} diff --git a/media-libs/libopenmpt/libopenmpt-0.7.10.ebuild b/media-libs/libopenmpt/libopenmpt-0.7.10.ebuild deleted file mode 100644 index 03b0016c8652..000000000000 --- a/media-libs/libopenmpt/libopenmpt-0.7.10.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit multilib-minimal - -MY_P="libopenmpt-${PV}+release.autotools" -DESCRIPTION="Library to decode tracked music files (modules)" -HOMEPAGE="https://lib.openmpt.org/libopenmpt/" -SRC_URI="https://lib.openmpt.org/files/libopenmpt/src/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" -IUSE="examples mp3 ogg static-libs test vorbis zlib" -RESTRICT="!test? ( test )" - -RDEPEND=" - mp3? ( media-sound/mpg123[${MULTILIB_USEDEP}] ) - ogg? ( media-libs/libogg[${MULTILIB_USEDEP}] ) - vorbis? ( media-libs/libvorbis[${MULTILIB_USEDEP}] ) - zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" -BDEPEND="virtual/pkgconfig" - -ECONF_SOURCE="${S}" - -multilib_src_configure() { - # A lot of these optional dependencies relate to openmpt123, which - # we package separately, so we disable them here. - econf \ - $(use_enable static-libs static) \ - --disable-openmpt123 \ - --disable-examples \ - $(use_enable test tests) \ - --disable-doxygen-doc \ - $(use_with zlib) \ - $(use_with mp3 mpg123) \ - $(use_with ogg) \ - $(use_with vorbis) \ - $(use_with vorbis vorbisfile) \ - --without-pulseaudio \ - --without-portaudio \ - --without-portaudiocpp \ - --without-sdl2 \ - --without-sndfile \ - --without-flac -} - -multilib_src_install_all() { - rm -f \ - "${ED}"/usr/*/*.la \ - "${ED}"/usr/share/doc/${P}/LICENSE || die - - if ! use examples; then - rm -r "${ED}"/usr/share/doc/${P}/examples || die - fi -} diff --git a/media-libs/libopenmpt/libopenmpt-0.7.13.ebuild b/media-libs/libopenmpt/libopenmpt-0.7.13.ebuild index adb83284bca0..25bbb93352d9 100644 --- a/media-libs/libopenmpt/libopenmpt-0.7.13.ebuild +++ b/media-libs/libopenmpt/libopenmpt-0.7.13.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://lib.openmpt.org/files/libopenmpt/src/${MY_P}.tar.gz" S="${WORKDIR}/${MY_P}" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 arm ~arm64 ppc ppc64 ~riscv x86" +KEYWORDS="amd64 arm ~arm64 ppc ppc64 ~riscv x86" IUSE="examples mp3 ogg static-libs test vorbis zlib" RESTRICT="!test? ( test )" diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest index f38bb3da9f8d..c603513f947a 100644 --- a/media-libs/mesa/Manifest +++ b/media-libs/mesa/Manifest @@ -4,6 +4,7 @@ DIST mesa-24.3.1.tar.xz 30611028 BLAKE2B d3efc322388e29f651b15b0396fef8a6acc0cf2 DIST mesa-24.3.2.tar.xz 30640276 BLAKE2B d5973506983a23a95c360801a591e13945695e9a0c6f9f3bbb953865aa39ccfabaae624f4cd1edc8ecf479710856f5cc08e4f6374b107a06870906e934ecc5b8 SHA512 ea1065f7b466f1b2b3570c87585d6de15e3784a60d920c9f991c22720197d5947b598ac2c76773bed8150c91360ee5bbc77f3b48780a19502a8c4224baa728b9 DIST mesa-24.3.3.tar.xz 30657916 BLAKE2B b973227885b3fd5fa6267c150a5e174f5e8a1c6378cf9326845ba75332084d7c914917c8e3b6d7b89f49ede0f5a5b453eb1ce42591e98b0cbad3f85bd3040035 SHA512 280d7a6dd64503ec398d449430270c78b5558c03bfeed3a42346573fd2db1aa3f96f5a212e49288718a7fe27447ee40235b066517622d68b0dfdd7b251a4e85f DIST mesa-24.3.4.tar.xz 30691532 BLAKE2B a5cf1f49c6d809d19510793f5d1dcec1a3842495d3b4166e303d7f2d4744d179811697d264c5c9b39f2819ebc64a76357195b3eae6b1d2a83128de141354e3c2 SHA512 9c23cd86fda4cf0289c5a78b08ceea8b01e5b141d86ee3e659fa46e62ff9586ff92a4984d2a340b5bf209c4c7f3414bf99f3ced19feee8fb39ef99fe572dbd55 +DIST mesa-25.0.0-rc2.tar.xz 46570616 BLAKE2B bd85d30d1d3e674dae38c476ef1df774df1699963d1c105b336da77f5c271d8ab823d24af9763e5a85643e4794fa4dd041de16b27359799fad3aac7c99b94077 SHA512 67eec93fbe24cb3fa26b062539453326b3237bd8c6ac111061142dae69b81fe7da000728d9bc2c0e2ec46f122011cbde9b99141f6333828016efb3eaa87b27f7 DIST paste-1.0.14.crate 18157 BLAKE2B 35e8548611c51ee75f4d04926149e5e54870d7073d9b635d550a6fa0f85891f57f326bdbcff3dd8618cf40f8e08cf903ef87d9c034d5921d8b91e1db842cdd7c SHA512 3a793f0e5e773a7f7defc798a4c17ae9a40d715144632ea6cb0a8c785e14c4212046491df016bb9838281f8eaf327a79f01c1e2ac5f26785c028bc880faff9ee DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6a3885a6269740a23359b41bb4099ac2484565d3b2b0936261689ca525785ac620c766997234fd8d0f409e80e5ea3 SHA512 1cdb7e22a35ae231d880c9420784c9acf97bda2db258b3d34aae5061dc1858449defe19a49e12c6a4173906aa72a4115059ac2db0fc760205fd2ab8b5b414434 @@ -16,6 +17,7 @@ EBUILD mesa-24.2.8.ebuild 13854 BLAKE2B f375b50f7d2329f70302f08d9c96ee24ae60d782 EBUILD mesa-24.3.1.ebuild 13530 BLAKE2B b904449f3bfcec35b69fddff80d21700ae036de68a1aabe9ab4667bd5e6af770ae509695314b09aba889085f0245697cd44c5e6da6daf6093e1cd1b9a71ed11e SHA512 4a8a3dc06d41b5b12c4881dac86cc9f88aa0273bb9933410228fbd52e33e440082617865498b33d34b28d02a20ef6afa38d4dba1862db3c242f59ffcf33c764b EBUILD mesa-24.3.2.ebuild 13685 BLAKE2B 6a5cce38e17ecf21830cd3883e6d6fe7e961cd43c4068a9442aaedfc858eb8e41d4570b1b51f588dc0740aa36a8668e606f7c903c884de38a42f9db7aa746c4e SHA512 da93c1d1a944f70dc761da029c0301aa3314cedc39d5ba59346de492be4d319197e4e13bfe028c4e87c3d65cbe514ab834a5ea995a311d8e7c4e0dce6d188078 EBUILD mesa-24.3.3.ebuild 13729 BLAKE2B d77a5bbbaaa625c3189c383c97f2c3d1751bd64a364ada1f7968c126fdbea632a3af41c8c13b5525e08e5a8647f356d8b1c37f27a8808bade18b35d2489d69d8 SHA512 0b655780b02637d6fddd2984fcf9c137ea5dac67ef8584bb04f0d53a8a91698eda154cb459cb9d4196646931adaa3286471aee8a1c383b02903b8f8f890bda38 -EBUILD mesa-24.3.4-r1.ebuild 13746 BLAKE2B b83b5d28ea71e773f93d71c4e7757551a97c8d2586747964724a7520baa86336a4a6477bd7662668550c5c3e315f60cb245ae3fa10060e5515fcf391b3426e33 SHA512 70d785d04265c681b505b4f573453976d6dcb07cc8ec70dd8bb50846b4ba6b46e30d6808dfe0f0e6465d5bc25b2e487f553d76ba51593ce013eb14897314f529 -EBUILD mesa-9999.ebuild 13769 BLAKE2B f5c9ab1e66ffca5890770f573b40670fc474e05a82ef7db0e459ce0700811008dbe46c531de7c6a8b37ecef8a842497af75be45675534df04b15fbd3aa2a9fa0 SHA512 70035f2af535bc1068f98c635a20da775dff2dd1add8c7a02c1d15a3344499a06e06354f74156e38abf467b87821bc0bfdb102c34f11e2321d1dc515161f4900 +EBUILD mesa-24.3.4-r1.ebuild 13762 BLAKE2B 3aa39c93d72d80d191ba6850e8a40ebff1676b361f1d6c080526b15a8617e69f2d6a25def9511fcadf437ef447f455105080500de381e14d11643a9c4b395697 SHA512 c15f3a14ca577f753ebd8bd0c6d484799c37fed2b63222810fb678f1b5cb15739676ad54cc74c785dfba8306c359bf4669cc9bf07bd920c9c6d14abf85eba3d3 +EBUILD mesa-25.0.0_rc2.ebuild 13758 BLAKE2B f590cfc8e5a3ca7403e2fa10f2598b9ddc73673e0df6ebf74add31eba52de2518932711eb4ead43fcf62857ec4812594544dee33935e76d8820ab0a41eb74909 SHA512 5e5afed4ab3e90bac5ae6b30aa0132ccff2e3f972d751a4b4a034217e569102192a1d20b69586ec0ee89e7ccac131e75e7b8025e7714cc21e2a42c6042f5feba +EBUILD mesa-9999.ebuild 13783 BLAKE2B 4814e40fcc71ecba6abb88531bedb71691dec5081a976886aa6ef098eeb70f399c1394882d896160693893252db669c43cbe6ebc76e08c2601bd2ce040a0480e SHA512 3236a27fedc49f63087ebe1ea524d73eb75b9367a28a2b94754036928a3240d5a5e4d8f593891fc21f5503b0143fa38fa235178209f82cac5132f333fd23bdd1 MISC metadata.xml 1303 BLAKE2B 348e84a15156bd8ae4634c1866f83f1b283b77f8478e66e57dd3f047a6346d1cc67a7c808ce159b82d292dfab62e8b6c4d17cefcae7aea6fa38739667947258b SHA512 448c3d73ded90117f38cec7c80eead4bdac1599c563798c91c96bca8543b9db2e5c2a06f26f9b7496af085a964aff51ed8b0882aa88f18404b64447de2f65598 diff --git a/media-libs/mesa/mesa-24.3.4-r1.ebuild b/media-libs/mesa/mesa-24.3.4-r1.ebuild index afe9b3b9d929..8cbcc6393fc1 100644 --- a/media-libs/mesa/mesa-24.3.4-r1.ebuild +++ b/media-libs/mesa/mesa-24.3.4-r1.ebuild @@ -21,6 +21,7 @@ CRATES=" " RUST_MIN_VER="1.74.1" +RUST_MULTILIB=1 RUST_OPTIONAL=1 inherit cargo diff --git a/media-libs/mesa/mesa-25.0.0_rc2.ebuild b/media-libs/mesa/mesa-25.0.0_rc2.ebuild new file mode 100644 index 000000000000..f9f6f3778ffd --- /dev/null +++ b/media-libs/mesa/mesa-25.0.0_rc2.ebuild @@ -0,0 +1,504 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {15..19} ) +LLVM_OPTIONAL=1 +CARGO_OPTIONAL=1 +PYTHON_COMPAT=( python3_{10..13} ) + +inherit flag-o-matic llvm-r1 meson-multilib python-any-r1 linux-info rust-toolchain + +MY_P="${P/_/-}" + +CRATES=" + syn@2.0.68 + proc-macro2@1.0.86 + quote@1.0.33 + unicode-ident@1.0.12 + paste@1.0.14 +" + +RUST_MIN_VER="1.78.0" +RUST_MULTILIB=1 +RUST_OPTIONAL=1 + +inherit cargo + +DESCRIPTION="OpenGL-like graphic library for Linux" +HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/" + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git" + inherit git-r3 +else + SRC_URI=" + https://archive.mesa3d.org/${MY_P}.tar.xz + " + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris" +fi + +# This should be {CARGO_CRATE_URIS//.crate/.tar.gz} to correspond to the wrap files, +# but there are "stale" distfiles on the mirrors with the wrong names. +# export MESON_PACKAGE_CACHE_DIR="${DISTDIR}" +SRC_URI+=" + ${CARGO_CRATE_URIS} +" + +S="${WORKDIR}/${MY_P}" +EGIT_CHECKOUT_DIR=${S} + +LICENSE="MIT SGI-B-2.0" +SLOT="0" + +RADEON_CARDS="r300 r600 radeon radeonsi" +VIDEO_CARDS="${RADEON_CARDS} + d3d12 freedreno intel lavapipe lima nouveau nvk panfrost v3d vc4 virgl + vivante vmware zink" +for card in ${VIDEO_CARDS}; do + IUSE_VIDEO_CARDS+=" video_cards_${card}" +done + +IUSE="${IUSE_VIDEO_CARDS} + cpu_flags_x86_sse2 d3d9 debug +llvm + lm-sensors opencl +opengl osmesa +proprietary-codecs selinux + test unwind vaapi valgrind vdpau vulkan + wayland +X xa +zstd" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + d3d9? ( + || ( + video_cards_freedreno + video_cards_intel + video_cards_nouveau + video_cards_panfrost + video_cards_r300 + video_cards_r600 + video_cards_radeonsi + video_cards_vmware + video_cards_zink + ) + ) + llvm? ( ${LLVM_REQUIRED_USE} ) + video_cards_lavapipe? ( llvm vulkan ) + video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) ) + video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) ) + video_cards_zink? ( vulkan opengl ) + video_cards_nvk? ( vulkan video_cards_nouveau ) + vdpau? ( X ) + xa? ( X ) +" + +LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.121" +RDEPEND=" + >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=dev-util/spirv-tools-1.3.231.0[${MULTILIB_USEDEP}] + >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.9[${MULTILIB_USEDEP}] + unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) + llvm? ( + $(llvm_gen_dep " + llvm-core/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + opencl? ( + dev-util/spirv-llvm-translator:\${LLVM_SLOT} + llvm-core/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + =llvm-core/libclc-\${LLVM_SLOT}*[spirv(-)] + ) + ") + video_cards_r600? ( + virtual/libelf:0=[${MULTILIB_USEDEP}] + ) + video_cards_radeon? ( + virtual/libelf:0=[${MULTILIB_USEDEP}] + ) + ) + lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] ) + opencl? ( + >=virtual/opencl-3 + llvm-core/libclc[spirv(-)] + virtual/libelf:0= + ) + vaapi? ( + >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}] + ) + vdpau? ( >=x11-libs/libvdpau-1.5:=[${MULTILIB_USEDEP}] ) + video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) + video_cards_zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] ) + selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] ) + wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] ) + ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}] + X? ( + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] + >=x11-libs/libxcb-1.17:=[${MULTILIB_USEDEP}] + x11-libs/libXfixes[${MULTILIB_USEDEP}] + x11-libs/xcb-util-keysyms[${MULTILIB_USEDEP}] + ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +for card in ${RADEON_CARDS}; do + RDEPEND="${RDEPEND} + video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] ) + " +done +RDEPEND="${RDEPEND} + video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] ) +" + +DEPEND="${RDEPEND} + video_cards_d3d12? ( >=dev-util/directx-headers-1.614.1[${MULTILIB_USEDEP}] ) + valgrind? ( dev-debug/valgrind ) + wayland? ( >=dev-libs/wayland-protocols-1.38 ) + X? ( + x11-libs/libXrandr[${MULTILIB_USEDEP}] + x11-base/xorg-proto + ) +" +BDEPEND=" + ${PYTHON_DEPS} + opencl? ( + ${RUST_DEPEND} + >=dev-util/bindgen-0.58.0 + ) + >=dev-build/meson-1.4.1 + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig + $(python_gen_any_dep " + >=dev-python/mako-0.8.0[\${PYTHON_USEDEP}] + dev-python/packaging[\${PYTHON_USEDEP}] + dev-python/pyyaml[\${PYTHON_USEDEP}] + ") + video_cards_intel? ( + ~dev-util/mesa_clc-${PV} + llvm-core/libclc[spirv(-)] + $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") + ) + vulkan? ( + dev-util/glslang + video_cards_nvk? ( + >=dev-util/bindgen-0.68.1 + >=dev-util/cbindgen-0.26.0 + ${RUST_DEPEND} + ) + ) + wayland? ( dev-util/wayland-scanner ) +" + +QA_WX_LOAD=" +x86? ( + usr/lib/libgallium-*.so + usr/lib/libOSMesa.so.8.0.0 + usr/lib/libGLX_mesa.so.0.0.0 +)" + +src_unpack() { + if [[ ${PV} == 9999 ]]; then + git-r3_src_unpack + else + unpack ${MY_P}.tar.xz + fi + + # We need this because we cannot tell meson to use DISTDIR yet + pushd "${DISTDIR}" >/dev/null || die + mkdir -p "${S}"/subprojects/packagecache || die + local i + for i in *.crate; do + ln -s "${PWD}/${i}" "${S}/subprojects/packagecache/${i/.crate/}.tar.gz" || die + done + popd >/dev/null || die +} + +pkg_pretend() { + if use vulkan; then + if ! use video_cards_d3d12 && + ! use video_cards_freedreno && + ! use video_cards_intel && + ! use video_cards_lavapipe && + ! use video_cards_nouveau && + ! use video_cards_nvk && + ! use video_cards_panfrost && + ! use video_cards_radeonsi && + ! use video_cards_v3d && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, lavapipe, nouveau, nvk, panfrost, radeonsi, v3d, or virgl" + fi + fi + + # VA + if use vaapi; then + if ! use video_cards_d3d12 && + ! use video_cards_nouveau && + ! use video_cards_r600 && + ! use video_cards_radeonsi && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" + fi + fi + + if use vdpau; then + if ! use video_cards_d3d12 && + ! use video_cards_nouveau && + ! use video_cards_r600 && + ! use video_cards_radeonsi && + ! use video_cards_virgl; then + ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, nouveau, r600, radeonsi, or virgl" + fi + fi + + if use xa; then + if ! use video_cards_freedreno && + ! use video_cards_intel && + ! use video_cards_nouveau && + ! use video_cards_vmware; then + ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, intel, nouveau, or vmware" + fi + fi + + if ! use llvm; then + use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm" + fi + + if use osmesa && ! use llvm; then + ewarn "OSMesa will be slow without enabling USE=llvm" + fi +} + +python_check_deps() { + python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/packaging[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" || return 1 + if use llvm && use vulkan && use video_cards_intel && use amd64; then + python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1 + fi +} + +pkg_setup() { + # warning message for bug 459306 + if use llvm && has_version llvm-core/llvm[!debug=]; then + ewarn "Mismatch between debug USE flags in media-libs/mesa and llvm-core/llvm" + ewarn "detected! This can cause problems. For details, see bug 459306." + fi + + if use video_cards_intel || + use video_cards_radeonsi; then + if kernel_is -ge 5 11 3; then + CONFIG_CHECK="~KCMP" + elif kernel_is -ge 5 11; then + CONFIG_CHECK="~CHECKPOINT_RESTORE" + elif kernel_is -ge 5 10 20; then + CONFIG_CHECK="~KCMP" + else + CONFIG_CHECK="~CHECKPOINT_RESTORE" + fi + linux-info_pkg_setup + fi + + use llvm && llvm-r1_pkg_setup + python-any-r1_pkg_setup + + if use opencl || (use vulkan && use video_cards_nvk); then + rust_pkg_setup + fi +} + +src_prepare() { + default + sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \ + bin/symbols-check.py || die # bug #830728 +} + +multilib_src_configure() { + local emesonargs=() + + # bug #932591 and https://gitlab.freedesktop.org/mesa/mesa/-/issues/11140 + filter-lto + + local platforms + use X && platforms+="x11" + use wayland && platforms+=",wayland" + emesonargs+=(-Dplatforms=${platforms#,}) + + if use video_cards_freedreno || + use video_cards_intel || # crocus i915 iris + use video_cards_nouveau || + use video_cards_panfrost || + use video_cards_r300 || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_vmware || # svga + use video_cards_zink; then + emesonargs+=($(meson_use d3d9 gallium-nine)) + else + emesonargs+=(-Dgallium-nine=false) + fi + + if use video_cards_d3d12 || + use video_cards_nouveau || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_virgl; then + emesonargs+=($(meson_feature vaapi gallium-va)) + use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers ) + else + emesonargs+=(-Dgallium-va=disabled) + fi + + if use video_cards_d3d12; then + emesonargs+=($(meson_feature vaapi gallium-d3d12-video)) + fi + + if use video_cards_d3d12 || + use video_cards_nouveau || + use video_cards_r600 || + use video_cards_radeonsi || + use video_cards_virgl; then + emesonargs+=($(meson_feature vdpau gallium-vdpau)) + else + emesonargs+=(-Dgallium-vdpau=disabled) + fi + + if use video_cards_freedreno || + use video_cards_intel || + use video_cards_nouveau || + use video_cards_vmware; then + emesonargs+=($(meson_feature xa gallium-xa)) + else + emesonargs+=(-Dgallium-xa=disabled) + fi + + gallium_enable !llvm softpipe + gallium_enable llvm llvmpipe + gallium_enable video_cards_d3d12 d3d12 + gallium_enable video_cards_freedreno freedreno + gallium_enable video_cards_intel crocus i915 iris + gallium_enable video_cards_lima lima + gallium_enable video_cards_nouveau nouveau + gallium_enable video_cards_panfrost panfrost + gallium_enable video_cards_v3d v3d + gallium_enable video_cards_vc4 vc4 + gallium_enable video_cards_virgl virgl + gallium_enable video_cards_vivante etnaviv + gallium_enable video_cards_vmware svga + gallium_enable video_cards_zink zink + + gallium_enable video_cards_r300 r300 + gallium_enable video_cards_r600 r600 + gallium_enable video_cards_radeonsi radeonsi + if ! use video_cards_r300 && + ! use video_cards_r600; then + gallium_enable video_cards_radeon r300 r600 + fi + + if use llvm && use opencl; then + PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig" + # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst + emesonargs+=( + $(meson_native_true gallium-rusticl) + -Drust_std=2021 + ) + fi + + if use vulkan; then + vulkan_enable video_cards_d3d12 microsoft-experimental + vulkan_enable video_cards_freedreno freedreno + vulkan_enable video_cards_intel intel intel_hasvk + vulkan_enable video_cards_lavapipe swrast + vulkan_enable video_cards_panfrost panfrost + vulkan_enable video_cards_radeonsi amd + vulkan_enable video_cards_v3d broadcom + vulkan_enable video_cards_vc4 broadcom + vulkan_enable video_cards_virgl virtio + if use video_cards_nvk; then + vulkan_enable video_cards_nvk nouveau + if ! multilib_is_native_abi; then + echo -e "[binaries]\nrust = ['rustc', '--target=$(rust_abi $CBUILD)']" > "${T}/rust_fix.ini" + emesonargs+=( + --native-file "${T}"/rust_fix.ini + ) + fi + fi + + emesonargs+=(-Dvulkan-layers=device-select,overlay) + fi + + driver_list() { + local drivers="$(sort -u <<< "${1// /$'\n'}")" + echo "${drivers//$'\n'/,}" + } + + if use opengl && use X; then + emesonargs+=(-Dglx=dri) + else + emesonargs+=(-Dglx=disabled) + fi + + if [[ "${ABI}" == amd64 ]]; then + emesonargs+=($(meson_feature video_cards_intel intel-rt)) + fi + + use debug && EMESON_BUILDTYPE=debug + + emesonargs+=( + $(meson_use test build-tests) + -Dshared-glapi=enabled + -Dlegacy-x11=dri2 + -Dexpat=enabled + $(meson_use opengl) + $(meson_feature opengl gbm) + $(meson_feature opengl gles1) + $(meson_feature opengl gles2) + $(meson_feature opengl glvnd) + $(meson_feature opengl egl) + $(meson_feature llvm) + $(meson_feature lm-sensors lmsensors) + $(meson_use osmesa) + $(meson_use selinux) + $(meson_feature unwind libunwind) + $(meson_feature zstd) + $(meson_use cpu_flags_x86_sse2 sse2) + -Dmesa-clc=$(usex video_cards_intel system auto) + -Dvalgrind=$(usex valgrind auto disabled) + -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") + -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") + -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}") + -Db_ndebug=$(usex debug false true) + ) + meson_src_configure + + if ! multilib_is_native_abi && use video_cards_nvk; then + sed -i -E '{N; s/(rule rust_COMPILER_FOR_BUILD\n command = rustc) --target=[a-zA-Z0-9=:-]+ (.*) -C link-arg=-m[[:digit:]]+/\1 \2/g}' build.ninja || die + fi +} + +multilib_src_compile() { + if [[ ${ABI} == x86 ]]; then + # Bug 939803 + BINDGEN_EXTRA_CLANG_ARGS="-m32" meson_src_compile + else + meson_src_compile + fi +} + +multilib_src_test() { + meson_src_test -t 100 +} + +# $1 - VIDEO_CARDS flag (check skipped for "--") +# other args - names of DRI drivers to enable +gallium_enable() { + if [[ $1 == -- ]] || use $1; then + shift + GALLIUM_DRIVERS+=("$@") + fi +} + +vulkan_enable() { + if [[ $1 == -- ]] || use $1; then + shift + VULKAN_DRIVERS+=("$@") + fi +} diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild index b70574a42523..004565b3e787 100644 --- a/media-libs/mesa/mesa-9999.ebuild +++ b/media-libs/mesa/mesa-9999.ebuild @@ -20,7 +20,8 @@ CRATES=" paste@1.0.14 " -RUST_MIN_VER="1.74.1" +RUST_MIN_VER="1.78.0" +RUST_MULTILIB=1 RUST_OPTIONAL=1 inherit cargo @@ -172,7 +173,7 @@ BDEPEND=" dev-python/pyyaml[\${PYTHON_USEDEP}] ") video_cards_intel? ( - ~dev-util/intel_clc-${PV} + ~dev-util/mesa_clc-${PV} llvm-core/libclc[spirv(-)] $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]") ) @@ -459,7 +460,7 @@ multilib_src_configure() { $(meson_feature unwind libunwind) $(meson_feature zstd) $(meson_use cpu_flags_x86_sse2 sse2) - -Dintel-clc=$(usex video_cards_intel system auto) + -Dmesa-clc=$(usex video_cards_intel system auto) -Dvalgrind=$(usex valgrind auto disabled) -Dvideo-codecs=$(usex proprietary-codecs "all" "all_free") -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}") |