From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id E2F81138350 for ; Sat, 11 Apr 2020 08:21:30 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 31ABEE09F0; Sat, 11 Apr 2020 08:21:30 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 0DCE6E09F0 for ; Sat, 11 Apr 2020 08:21:29 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 78ED434EEAA for ; Sat, 11 Apr 2020 08:21:28 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id DB1DF158 for ; Sat, 11 Apr 2020 08:21:26 +0000 (UTC) From: "Denis Reva" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Denis Reva" Message-ID: <1586593221.8d8302677aeb2906313ea1214b7c3b46f18f187c.RarogCmex@gentoo> Subject: [gentoo-commits] repo/proj/guru:dev commit in: media-libs/amdvlk/ X-VCS-Repository: repo/proj/guru X-VCS-Files: media-libs/amdvlk/Manifest media-libs/amdvlk/amdvlk-2020.1.4.ebuild media-libs/amdvlk/metadata.xml X-VCS-Directories: media-libs/amdvlk/ X-VCS-Committer: RarogCmex X-VCS-Committer-Name: Denis Reva X-VCS-Revision: 8d8302677aeb2906313ea1214b7c3b46f18f187c X-VCS-Branch: dev Date: Sat, 11 Apr 2020 08:21:26 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 827a5e63-c389-4876-b263-635d67368e6d X-Archives-Hash: 8dacc65411d7910bf702dc36ac4d5f0f commit: 8d8302677aeb2906313ea1214b7c3b46f18f187c Author: Denis Reva gmail com> AuthorDate: Sat Apr 11 08:19:27 2020 +0000 Commit: Denis Reva gmail com> CommitDate: Sat Apr 11 08:20:21 2020 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=8d830267 media-libs/amdvlk: new ebuild from Github's pull request Signed-off-by: Denis Reva gmail.com> All Unquoted variables is needed for fetching Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Reva Denis gmail.com> media-libs/amdvlk/Manifest | 8 ++ media-libs/amdvlk/amdvlk-2020.1.4.ebuild | 125 +++++++++++++++++++++++++++++++ media-libs/amdvlk/metadata.xml | 16 ++++ 3 files changed, 149 insertions(+) diff --git a/media-libs/amdvlk/Manifest b/media-libs/amdvlk/Manifest new file mode 100644 index 0000000..22a1c38 --- /dev/null +++ b/media-libs/amdvlk/Manifest @@ -0,0 +1,8 @@ +DIST AMDVLK-v-2020.Q1.4.tar.gz 30348 BLAKE2B fc3e4f03d52c064f8b028b1afd2aad6aab3196811d2d6e9535399f39619dc88317e3fb94e1faa9048fc6a3cbe64b1ee6ddc66a759fd38f5408e9cf8b9f535caa SHA512 53fd24eee13c38360b9f962a5d28a1598cdb180357a1ba8ba7c4460d6cd43f909fac25b8cb3231ec29ee172d85ff23faaa135970683072aa468bd15a5505353f +DIST CWPack-b601c88aeca7a7b08becb3d32709de383c8ee428.tar.gz 24538 BLAKE2B b30ddc4cf6e307864c77308faeb5a41a8ed9e708b668dac25989cfbe528422d70ffc17b54109c52abdf5da5c426a3d143cd19b4a3577459d5cce72a85e71284d SHA512 cc544f361ced841525041d6d31678698946362338cbd49ccfda6836f2dcfa4ce495d09b7ce191699364fd5101c671a6734aa4fb3ce447b9e8f1e75f7ea13c766 +DIST MetroHash-2b6fee002db6cc92345b02aeee963ebaaf4c0e2f.tar.gz 11762 BLAKE2B 4210468564233b0d49572bef5046479123e7597fa69d5a62d8e2b39b3898e89ae044ea2e58cce21f5034fd06c6178b9dbbee25d8f5ad5f3da18ac762b54400cb SHA512 565f98cb44af81c43096eabeaba269ea9cdc3ecfb06868fedf663a0d6f88f3c49251192de43cb30a5172b2ac60580f58fc2bacbd4cbefbc42283efccdfa8a87f +DIST llpc-7686a2ddba683f7a361460f3806b0d45e615ca76.tar.gz 1955263 BLAKE2B f9c6ad489f4998ede751d0b35b129a27d91d0e9d0e86a6d05652adb016eaae9ae40f3756c12ad2139040ab7543aeb1399988f28bda70417f480f42b0a8980ae9 SHA512 dc737957da89f6af4fdb85df2113857d8b9418df4396e7e362d029c696a11cf691b5aaff1ce14ab8ad0c1301d10af5f689394a76351eb965cba6be0e0194cb5d +DIST llvm-project-5c958c70bc6366298296dc778e903f65528c3b0f.tar.gz 116288565 BLAKE2B 438a04e6f3394e94bcfdcf97ecb240216050e723e1685ba05b10333061e7c8a6a79023071f35547509c88ed55541ed4e51988e06a89013201154dd89240b6f94 SHA512 57da73edda674e10ed799a06fa16f3dc5d241307bc28b463ab1cf4f359daa07c186fd64e242053fc4a3869efa604176c92a7850fc6005b1333e5aa92f6bf0bdd +DIST pal-bb7398b1c7509a30ba4f7d947b5ad5549a4d58db.tar.gz 7340860 BLAKE2B 66c0055ecff085b4ad762cba70f5c8448c448bcdebc2ebffd368a8a953cf40eb6e114e3c97cdd772b0c8c98982288f04915f647d247d21bd4dc7135491f98d28 SHA512 ed5cecd0243322f6c9885203677faabf4245b7af88b0eac2b0a736af971491690ce123b243b1d76af06249f0549aa2a724b67120ac413c6f4f6de0651d8c6b60 +DIST spvgen-d16fddddf22a1eb3a3f4ce05cbcb95a337f708b1.tar.gz 17745 BLAKE2B b4244e0eb7e2967b692569090481e21cf87ee2124f9e9c0bc550be5e9c26baa08a6be33785cb15c05b54d57805cb1489f7f9abcc3490ed1f374f7c2a4b7dee61 SHA512 48ba6708eae2409af54165eb8577eded0f3adc228963807ef4a49496c954e1ee256c00b243fa1caa070cbc4931c1d8b6dcbc702620d6361bd3ab0a1a3414bce3 +DIST xgl-2db4177e78133c868e2c6b4dcc46aeb2f512163a.tar.gz 841923 BLAKE2B e67ae03976a806ed1eaddfd694270ea58d18a0d9cb60a8fe4ac67cbddf765df958127258aa28d8d824c5267fbcd3066abb3ffdb0fb2064c580cbdc4d7daf638b SHA512 26fdf2003c32d63792b80942d59bdda56c26e809a26031f77c0f31383df280c8b76ef7c9d321d193e2512075f197461b27db356f8170887c25fda01c85b9f5ed diff --git a/media-libs/amdvlk/amdvlk-2020.1.4.ebuild b/media-libs/amdvlk/amdvlk-2020.1.4.ebuild new file mode 100644 index 0000000..f8b5424 --- /dev/null +++ b/media-libs/amdvlk/amdvlk-2020.1.4.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 +EAPI=7 + +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +inherit multilib-minimal check-reqs + +#cmake-multilib and cmake-utils build doesn't support https://github.com/GPUOpen-Drivers/AMDVLK/issues/151 +DESCRIPTION="AMD Open Source Driver for Vulkan" +HOMEPAGE="https://github.com/GPUOpen-Drivers/AMDVLK" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug wayland" +REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )" +###DEPENDS +BUNDLED_LLVM_DEPEND="sys-libs/zlib:0=[${MULTILIB_USEDEP}]" +DEPEND="wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] ) + ${BUNDLED_LLVM_DEPEND} + >=dev-util/vulkan-headers-1.2.133" +BDEPEND="${BUNDLED_LLVM_DEPEND} + dev-util/cmake" +RDEPEND=" ${DEPEND} + x11-libs/libdrm[${MULTILIB_USEDEP}] + x11-libs/libXrandr[${MULTILIB_USEDEP}] + x11-libs/libxcb[${MULTILIB_USEDEP}] + x11-libs/libxshmfence[${MULTILIB_USEDEP}] + >=media-libs/vulkan-loader-1.2.133[${MULTILIB_USEDEP}]" + +CHECKREQS_MEMORY="4G" +CHECKREQS_DISK_BUILD="2G" +S="${WORKDIR}" +CMAKE_USE_DIR="${S}/xgl" + +###SOURCE CODE VARIABLES +FETCH_URI="https://github.com/GPUOpen-Drivers" +CORRECT_AMDVLK_PV="v-$(ver_rs 1 '.Q')" #Works only for amdvlk source code: transforming version 2019.2.2 to v-2019.Q2.2. Any other commits should be updated manually +##For those who wants update ebuild: check https://github.com/GPUOpen-Drivers/AMDVLK/blob/master/default.xml +##and place commits in the desired variables +## EXAMPLE: XGL_COMMIT="80e5a4b11ad2058097e77746772ddc9ab2118e07" +## SRC_URI="... ${FETCH_URI}/$PART/archive/$COMMIT.zip -> $PART-$COMMIT.zip ..." +XGL_COMMIT="2db4177e78133c868e2c6b4dcc46aeb2f512163a" +PAL_COMMIT="bb7398b1c7509a30ba4f7d947b5ad5549a4d58db" +LLPC_COMMIT="7686a2ddba683f7a361460f3806b0d45e615ca76" +SPVGEN_COMMIT="d16fddddf22a1eb3a3f4ce05cbcb95a337f708b1" +LLVM_PROJECT_COMMIT="5c958c70bc6366298296dc778e903f65528c3b0f" +METROHASH_COMMIT="2b6fee002db6cc92345b02aeee963ebaaf4c0e2f" +CWPACK_COMMIT="b601c88aeca7a7b08becb3d32709de383c8ee428" +## SRC_URI +SRC_URI=" ${FETCH_URI}/AMDVLK/archive/${CORRECT_AMDVLK_PV}.tar.gz -> AMDVLK-${CORRECT_AMDVLK_PV}.tar.gz +${FETCH_URI}/xgl/archive/${XGL_COMMIT}.tar.gz -> xgl-${XGL_COMMIT}.tar.gz +${FETCH_URI}/pal/archive/${PAL_COMMIT}.tar.gz -> pal-${PAL_COMMIT}.tar.gz +${FETCH_URI}/llpc/archive/${LLPC_COMMIT}.tar.gz -> llpc-${LLPC_COMMIT}.tar.gz +${FETCH_URI}/spvgen/archive/${SPVGEN_COMMIT}.tar.gz -> spvgen-${SPVGEN_COMMIT}.tar.gz +${FETCH_URI}/llvm-project/archive/${LLVM_PROJECT_COMMIT}.tar.gz -> llvm-project-${LLVM_PROJECT_COMMIT}.tar.gz +${FETCH_URI}/MetroHash/archive/${METROHASH_COMMIT}.tar.gz -> MetroHash-${METROHASH_COMMIT}.tar.gz +${FETCH_URI}/CWPack/archive/${CWPACK_COMMIT}.tar.gz -> CWPack-${CWPACK_COMMIT}.tar.gz" + +###EBUILD FUNCTIONS +src_prepare() { + ##moving src to proper directories + mkdir -p ${S} + mkdir -p ${S}/third_party + mv AMDVLK-${CORRECT_AMDVLK_PV}/ ${S}/AMDVLK + mv xgl-${XGL_COMMIT}/ ${S}/xgl + mv pal-${PAL_COMMIT}/ ${S}/pal + mv llpc-${LLPC_COMMIT}/ ${S}/llpc + mv spvgen-${SPVGEN_COMMIT}/ ${S}/spvgen + mv llvm-project-${LLVM_PROJECT_COMMIT}/ ${S}/llvm-project + mv MetroHash-${METROHASH_COMMIT}/ ${S}/third_party/metrohash + mv CWPack-${CWPACK_COMMIT}/ ${S}/third_party/cwpack + ##Installing rule + cat << EOF > "${T}/10-amdvlk-dri3.conf" || die +Section "Device" +Identifier "AMDgpu" +Option "DRI" "3" +EndSection +EOF + cd ${S}/xgl + default +} + +multilib_src_configure() { + local mycmakeargs=( \ + -DBUILD_WAYLAND_SUPPORT=$(usex wayland ) \ + -DCMAKE_BUILD_TYPE="$(usex debug "Debug" "Release")" \ + -B${BUILD_DIR} ) + cd ${S}/xgl + cmake -H. "${mycmakeargs[@]}" +} + +multilib_src_install() { + if use abi_x86_64 && multilib_is_native_abi; then + mkdir -p ${D}/usr/lib64/ + mv "${BUILD_DIR}/icd/amdvlk64.so" ${D}/usr/lib64/ + insinto /usr/share/vulkan/icd.d + doins ${S}/AMDVLK/json/Redhat/amd_icd64.json + else + mkdir -p ${D}/usr/lib/ + mv "${BUILD_DIR}/icd/amdvlk32.so" ${D}/usr/lib/ + insinto /usr/share/vulkan/icd.d + doins ${S}/AMDVLK/json/Redhat/amd_icd32.json + fi +} + +multilib_src_install_all() { + insinto /usr/share/X11/xorg.conf.d/ + doins ${T}/10-amdvlk-dri3.conf + einfo "AMDVLK requires DRI3 mode so config file is istalled in /usr/share/X11/xorg.conf.d/10-amdvlk-dri3.conf" + einfo "It's safe to double xorg configuration files if you have already had ones" +} + +pkg_postinst() { + elog "More information about the configuration can be found here:" + elog " https://github.com/GPUOpen-Drivers/AMDVLK" + ewarn "Make sure the following line is NOT included in the any Xorg configuration section:" + ewarn "Driver \"modesetting\"" + ewarn "Else AMDVLK breaks things" + ewarn "With some games AMDVLK is still not stable. Use it at you own risk" + elog "You may want to disable default vulkan mesa provider in package.use \"media-libs/mesa -vulkan\"" + elog "or perform export in /etc/env.d/ variable VK_ICD_FILENAMES=vulkanprovidername:vulkanprovidername2 " + elog "exampe| VK_ICD_FILENAMES=\"/usr/share/vulkan/icd.d/amd_icd64.json:/usr/share/vulkan/icd.d/amd_icd64.json\"" +} diff --git a/media-libs/amdvlk/metadata.xml b/media-libs/amdvlk/metadata.xml new file mode 100644 index 0000000..d986303 --- /dev/null +++ b/media-libs/amdvlk/metadata.xml @@ -0,0 +1,16 @@ + + + + + denis7774@gmail.com + Reva Denis aka RarogCmex + + + proxy-maint@gentoo.org + Proxy Maintainers + + + The AMD Open Source Driver for Vulkan® is an open-source Vulkan driver for AMD Radeon™ graphics adapters on Linux®. It is built on top of AMD’s Platform Abstraction Library (PAL), a shared component that is designed to encapsulate certain hardware and OS-specific programming details for many of AMD’s 3D and compute drivers. Leveraging PAL can help provide a consistent experience across platforms, including support for recently released GPUs and compatibility with AMD developer tools. + Shaders that compose a particular VkPipeline object are compiled as a single entity using the LLVM-Based Pipeline Compiler (LLPC) library. LLPC builds on LLVM’s existing shader compilation infrastructure for AMD GPUs to generate code objects compatible with PAL’s pipeline ABI. + +