commit:     f1495d6fb8321763a5f91bd84c12baaded309738
Author:     Adel KARA SLIMANE <adel.ks <AT> zegrapher <DOT> com>
AuthorDate: Mon Feb 10 22:46:34 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Feb 14 05:14:46 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1495d6f

media-libs/amdgpu-pro-vulkan: add 24.30.2111292

Signed-off-by: Adel KARA SLIMANE <adel.ks <AT> zegrapher.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/amdgpu-pro-vulkan/Manifest              |   2 +
 .../amdgpu-pro-vulkan-24.30.2111292.ebuild         | 127 +++++++++++++++++++++
 2 files changed, 129 insertions(+)

diff --git a/media-libs/amdgpu-pro-vulkan/Manifest 
b/media-libs/amdgpu-pro-vulkan/Manifest
index cabf0920ce29..4e9a52c6f9be 100644
--- a/media-libs/amdgpu-pro-vulkan/Manifest
+++ b/media-libs/amdgpu-pro-vulkan/Manifest
@@ -4,3 +4,5 @@ DIST amdgpu-pro-vulkan-23.40.0.1741713-amd64.deb 23818448 
BLAKE2B 7772466630e243
 DIST amdgpu-pro-vulkan-23.40.0.1741713-i386.deb 25236404 BLAKE2B 
936761b0489950e20b3cc1dbf9dad3aaecc394bb79dc3d9f761afbafb005385edbcb6e32fc966e5f5d9a4b414d5e17b83b88b6926157f7beca450c5cba955bbb
 SHA512 
fcf6995af686d205e9cddbb44d8bb57c0eb98985cd5579a806435cd40300fa6baa2c97e7087855ba3a09390cec6a91176156932f84e271a8c5a3b210c177bc0d
 DIST amdgpu-pro-vulkan-24.10.0.1787253-amd64.deb 24104776 BLAKE2B 
716f21242a7509abd7be7472dd6933f2e991818dd501cbb30002914589e82f74f389e95c4a921f17cb435279618b3cfeec7c691fb608d44e93c6acca52d458cb
 SHA512 
8837965d33cdf8756bbb114d25a9e31d3e3572103b79a410521edd452372ec58d548f0b9e351f1d965bc4deb8d7a58cd4db77dd0f26957d54badd416ad430953
 DIST amdgpu-pro-vulkan-24.10.0.1787253-i386.deb 25584368 BLAKE2B 
926196eea01f54b4274caa1c808cc948bcdb6bb2543622832f709175b7481d96ff34acd230b604c3e3adbdcdb1fb9c561b56560a9cb3516a8129da963b95fd5c
 SHA512 
a48cdc9174290956c3eb77d7f2308696203cd2514374a87eb55a3b4ce13fec23aac670d9baff91e84e0ef4aeccc2397905af930b25c46c3586a49dd0fbc5a4c1
+DIST amdgpu-pro-vulkan-24.30.2111292-amd64.deb 28325236 BLAKE2B 
3f5f9fa1c44d06b389ff7bb49b717fb9d7a9391e3ecec8f2b71d15b48622e0f12bb0e015893d8d14927ab05dc0d3e2ed1a7f9cb3cadd62c5d7e1c44c45331ac4
 SHA512 
219fc0746828fa8aba778309f1ff6b1d106f1cf4e9a059915f6fddd46fc76c194b06dcff8d3d58c2566a9716cff07e8ec6318e47ef7b84422e7db77c82d60757
+DIST amdgpu-pro-vulkan-24.30.2111292-i386.deb 29646612 BLAKE2B 
a2b65664cfe7b38fcefdb694c6f182b6906da34341f37e87cf7b695a91823a06bf4b874a6f9b7d6c6b3a45afed33d4fded1a075e7e52be0b0251fc3fd105ba5b
 SHA512 
a36365c3866672c9c36dbe35374aa0341a86d0d4a67ec05ae94ff73f6bf80663dd06efe907f1ecd4503683903678f38229b7b233586ce727b8f4856158dfbd62

diff --git 
a/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.30.2111292.ebuild 
b/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.30.2111292.ebuild
new file mode 100644
index 000000000000..d73318da58a5
--- /dev/null
+++ b/media-libs/amdgpu-pro-vulkan/amdgpu-pro-vulkan-24.30.2111292.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit unpacker
+
+MY_PV_HIGH=$(ver_cut 1)
+MY_PV_MIDDLE=$(ver_cut 2)
+MY_PV_REV=$(ver_cut 3)
+
+MY_PV="${MY_PV_HIGH}.${MY_PV_MIDDLE}"
+
+INTERNAL_VER="6.3.2"
+
+MY_PV_FULL="${MY_PV}-${MY_PV_REV}"
+
+MY_PN="vulkan-amdgpu-pro"
+MY_LINK="https://repo.radeon.com/amdgpu/${INTERNAL_VER}/ubuntu/pool/proprietary/v/${MY_PN}";
+
+UBUNTU_VER="24.04"
+
+DESCRIPTION="AMD's closed source vulkan driver, from Radeon Software for Linux"
+HOMEPAGE="https://www.amd.com/en/support";
+SRC_URI="
+       abi_x86_64? ( ${MY_LINK}/${MY_PN}_${MY_PV_FULL}.${UBUNTU_VER}_amd64.deb 
-> ${P}-amd64.deb )
+       abi_x86_32? ( ${MY_LINK}/${MY_PN}_${MY_PV_FULL}.${UBUNTU_VER}_i386.deb 
-> ${P}-i386.deb )
+"
+S="${WORKDIR}"
+
+LICENSE="AMD-GPU-PRO-EULA"
+SLOT="0"
+KEYWORDS="-* amd64 ~x86"
+IUSE="abi_x86_32 abi_x86_64 video_cards_amdgpu"
+
+RESTRICT="bindist mirror"
+
+REQUIRED_USE="video_cards_amdgpu"
+
+BDEPEND="dev-util/patchelf"
+
+QA_PREBUILT="
+       usr/lib64/amdvlkpro64.so*
+       usr/lib/amdvlkpro32.so*
+"
+
+src_unpack() {
+       default
+
+       if use abi_x86_64 ; then
+               mkdir "${S}/${PN}-amd64" || die
+               cd "${S}/${PN}-amd64" || die
+               unpack_deb "${DISTDIR}/${P}-amd64.deb"
+       fi
+
+       if use abi_x86_32 ; then
+               mkdir "${S}/${PN}-i386" || die
+               cd "${S}/${PN}-i386" || die
+               unpack_deb "${DISTDIR}/${P}-i386.deb"
+       fi
+}
+
+src_prepare() {
+       if use abi_x86_64 ; then
+               cd "${S}/${PN}-amd64/opt/amdgpu-pro/lib/x86_64-linux-gnu/" || 
die
+
+               # Add "pro" in the .so file's name
+               mv amdvlk64.so amdvlkpro64.so || die
+
+               # same with the SONAME
+               patchelf --set-soname amdvlkpro64.so "${PWD}"/amdvlkpro64.so || 
die
+
+               cd "${S}/${PN}-amd64/opt/amdgpu-pro/etc/vulkan/icd.d/" || die
+               eapply "${FILESDIR}"/icd_amd64.patch
+               mv amd_icd64.json amd_pro_icd64.json || die
+       fi
+
+       if use abi_x86_32 ; then
+               cd "${S}/${PN}-i386/opt/amdgpu-pro/lib/i386-linux-gnu/" || die
+
+               # Add "pro" in the .so file's name
+               mv amdvlk32.so amdvlkpro32.so || die
+
+               # same with the SONAME
+               patchelf --set-soname amdvlkpro32.so "${PWD}"/amdvlkpro32.so || 
die
+
+               cd "${S}/${PN}-i386/opt/amdgpu-pro/etc/vulkan/icd.d/" || die
+               eapply "${FILESDIR}"/icd_x86.patch
+               mv amd_icd32.json amd_pro_icd32.json || die
+       fi
+
+       default
+}
+
+src_install() {
+       if use abi_x86_64 ; then
+               # Vulkan driver
+               insinto /usr/lib64
+               doins 
"${S}"/"${PN}"-amd64/opt/amdgpu-pro/lib/x86_64-linux-gnu/amdvlkpro64.so
+
+               # ICD loader
+               insinto /usr/share/vulkan/icd.d
+               doins 
"${S}"/"${PN}"-amd64/opt/amdgpu-pro/etc/vulkan/icd.d/amd_pro_icd64.json
+       fi
+
+       if use abi_x86_32 ; then
+               # Vulkan driver
+               insinto /usr/lib
+               doins 
"${S}"/"${PN}"-i386/opt/amdgpu-pro/lib/i386-linux-gnu/amdvlkpro32.so
+
+               # ICD loader
+               insinto /usr/share/vulkan/icd.d
+               doins 
"${S}"/"${PN}"-i386/opt/amdgpu-pro/etc/vulkan/icd.d/amd_pro_icd32.json
+       fi
+
+       # AMDGPU-PRO & RADV Vulkan prefix
+       dobin "${FILESDIR}/vk_pro"
+       dobin "${FILESDIR}/vk_radv"
+}
+
+pkg_postinst() {
+       elog "To execute programs with the amdgpu-pro-vulkan driver:"
+       elog "  - Use the `vk_pro` wrapper script: e.g. 'vk_pro vkcube'"
+       elog "  - Define the following environment variable: "
+       elog "    
VK_DRIVER_FILES=/usr/share/vulkan/icd.d/amd_pro_icd64.json:/usr/share/vulkan/icd.d/amd_pro_icd32.json"
+       elog
+}

Reply via email to