diff options
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/dxvk-bin/Manifest | 1 | ||||
-rw-r--r-- | app-emulation/dxvk-bin/dxvk-bin-1.8.ebuild | 73 |
2 files changed, 74 insertions, 0 deletions
diff --git a/app-emulation/dxvk-bin/Manifest b/app-emulation/dxvk-bin/Manifest index 8bc3d373e..c5daa953d 100644 --- a/app-emulation/dxvk-bin/Manifest +++ b/app-emulation/dxvk-bin/Manifest @@ -1,2 +1,3 @@ DIST dxvk-bin-1.7.2.tar.gz 7881987 BLAKE2B 5f9a9bab7807b37cd56108a36c4c00f52897d07c4a5b50a61f97d3d5f6ea1f14d5b5effdbf2bc8faf78c965449b41d9792b6f20c2233e7ae6912dad5dc117ef3 SHA512 88ce06c3a37384341906b1f1082c4ddcfdcb13032909414f922600da2c9d1b6697f0fe0fcf1b8a46e60c30f2391f5a01d042606cf3cd161d5f0632de610ff929 DIST dxvk-bin-1.7.3.tar.gz 7866514 BLAKE2B 3ac1427535dece18229d35dc44be75a4644e1252a7eba2eaccae3fb131d154412bc7a83ec33d0283374c21b70861652e5da50eea942b247ffdaa8a9b6fdd81a5 SHA512 11f66dda37419f54d78c7505d6aced2dc880c0f86f1eb91d0139ae9d3f0dbda149763670abeb953f5b073d8b705f922c3ff2b1f52cb87fab6f18e2a9f254f7a3 +DIST dxvk-bin-1.8.tar.gz 7905165 BLAKE2B 49e012ff180d0135329b5a02cede51722ae74670b367f93d7a0606262e314541ef1cfcd11e115510bf377c7cb8618b90843602d2b28de9b373abc2f6018458a4 SHA512 b5971d30e26261a2961f9b7c1eaabe71cce8ac846446fe5382563abb1212c01e05f3e151b293654a22f3253f052378ef781f29ca3ee0f5bac02be41c5f1a8816 diff --git a/app-emulation/dxvk-bin/dxvk-bin-1.8.ebuild b/app-emulation/dxvk-bin/dxvk-bin-1.8.ebuild new file mode 100644 index 000000000..ff3906888 --- /dev/null +++ b/app-emulation/dxvk-bin/dxvk-bin-1.8.ebuild @@ -0,0 +1,73 @@ +# 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 + +MY_P="dxvk-${PV}" +DESCRIPTION="Vulkan-based implementation of D3D9, D3D10 and D3D11 for Linux / Wine" +HOMEPAGE="https://github.com/doitsujin/dxvk" +SRC_URI="https://github.com/doitsujin/dxvk/releases/download/v${PV}/${MY_P}.tar.gz -> ${P}.tar.gz" + +LICENSE="ZLIB" +SLOT="0" +KEYWORDS="~amd64" +IUSE="video_cards_nvidia" + +DEPEND="" +RDEPEND=" + || ( + video_cards_nvidia? ( >=x11-drivers/nvidia-drivers-440.31 ) + >=media-libs/mesa-19.2 + ) + || ( + >=app-emulation/wine-staging-4.5[${MULTILIB_USEDEP},vulkan] + >=app-emulation/wine-vanilla-4.5[${MULTILIB_USEDEP},vulkan] + ) +" + +S="${WORKDIR}/${MY_P}" + +# NOTE: Various repos contain dxvk ebuilds that install into …/dxvk. +# To not clash with them, this ebuild installs into …/dxvk-bin. + +src_prepare() { + default + + sed -i "s|^basedir=.*$|basedir=\"${EPREFIX}\"|" setup_dxvk.sh || die + + # Delete installation instructions for unused ABIs. + if ! use abi_x86_64; then + sed -i '/installFile "$win64_sys_path"/d' setup_dxvk.sh || die + fi + if ! use abi_x86_32; then + sed -i '/installFile "$win32_sys_path"/d' setup_dxvk.sh || die + fi + + fix_install_dir() { + local bits="${MULTILIB_ABI_FLAG:8:2}" + # Fix installation directory. + sed -i "s|\"x${bits}\"|\"usr/$(get_libdir)/dxvk-bin\"|" \ + setup_dxvk.sh || die + } + multilib_foreach_abi fix_install_dir +} + +multilib_src_install() { + local bits="${MULTILIB_ABI_FLAG:8:2}" + insinto "usr/$(get_libdir)/dxvk-bin" + insopts --mode=755 + doins "${S}/x${bits}/"*.dll +} + +multilib_src_install_all() { + newbin setup_dxvk.sh setup_dxvk-bin.sh +} + +pkg_postinst() { + elog "dxvk-bin is installed, but not activated. You have to create DLL overrides" + elog "in order to make use of it. To do so, set WINEPREFIX and execute" + elog "setup_dxvk-bin.sh install --symlink." +} |