summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIonen Wolkens <ionen@gentoo.org>2024-07-10 06:49:41 -0400
committerIonen Wolkens <ionen@gentoo.org>2024-07-10 08:17:39 -0400
commitfcf677868d92ede04dc94a4873f38978933f6606 (patch)
tree193106773b90bd28dc5a35daed4c9028a6ce7bff
parentdev-ruby/facter: Keyword 4.7.0 riscv, #934881 (diff)
downloadgentoo-fcf677868d92ede04dc94a4873f38978933f6606.tar.gz
gentoo-fcf677868d92ede04dc94a4873f38978933f6606.tar.bz2
gentoo-fcf677868d92ede04dc94a4873f38978933f6606.zip
app-emulation/dxvk: update live
Also drop some old warnings, they shouldn't matter too much at this point. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
-rw-r--r--app-emulation/dxvk/dxvk-9999.ebuild33
-rw-r--r--app-emulation/dxvk/files/dxvk-2.4-d3d8-setup.patch8
-rw-r--r--app-emulation/dxvk/metadata.xml1
3 files changed, 21 insertions, 21 deletions
diff --git a/app-emulation/dxvk/dxvk-9999.ebuild b/app-emulation/dxvk/dxvk-9999.ebuild
index 9db73b208248..9fe577d2f13b 100644
--- a/app-emulation/dxvk/dxvk-9999.ebuild
+++ b/app-emulation/dxvk/dxvk-9999.ebuild
@@ -40,9 +40,10 @@ SRC_URI+=" https://raw.githubusercontent.com/doitsujin/dxvk/cd21cd7fa3b0df3e0819
LICENSE="ZLIB Apache-2.0 MIT"
SLOT="0"
-IUSE="+abi_x86_32 crossdev-mingw +d3d9 +d3d10 +d3d11 +dxgi +strip"
+IUSE="+abi_x86_32 crossdev-mingw +d3d8 +d3d9 +d3d10 +d3d11 +dxgi +strip"
REQUIRED_USE="
- || ( d3d9 d3d10 d3d11 dxgi )
+ || ( d3d8 d3d9 d3d10 d3d11 dxgi )
+ d3d8? ( d3d9 )
d3d10? ( d3d11 )
d3d11? ( dxgi )
"
@@ -56,6 +57,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-1.10.3-wow64-setup.patch
"${FILESDIR}"/${PN}-2.3.1-gcc14.patch
+ "${FILESDIR}"/${PN}-2.4-d3d8-setup.patch
)
pkg_pretend() {
@@ -138,6 +140,7 @@ multilib_src_configure() {
--prefix="${EPREFIX}"/usr/lib/${PN}
--{bin,lib}dir=x${MULTILIB_ABI_FLAG: -2}
--force-fallback-for=libdisplay-info # system's is ELF (unusable)
+ $(meson_use {,enable_}d3d8)
$(meson_use {,enable_}d3d9)
$(meson_use {,enable_}d3d10)
$(meson_use {,enable_}d3d11)
@@ -155,10 +158,6 @@ multilib_src_install_all() {
find "${ED}" -type f -name '*.a' -delete || die
}
-pkg_preinst() {
- [[ -e ${EROOT}/usr/$(get_libdir)/dxvk/d3d11.dll ]] && DXVK_HAD_OVERLAY=
-}
-
pkg_postinst() {
if [[ ! ${REPLACING_VERSIONS} ]]; then
elog "To enable ${PN} on a wine prefix, you can run the following command:"
@@ -168,24 +167,16 @@ pkg_postinst() {
elog "See ${EROOT}/usr/share/doc/${PF}/README.md* for details."
elog "Note: setup_dxvk.sh is unofficially temporarily provided as it was"
elog "removed upstream, handling may change in the future."
- elif [[ -v DXVK_HAD_OVERLAY ]]; then
- # temporary warning until this version is more widely used
- elog "Gentoo's main repo ebuild for ${PN} uses different paths than most overlays."
- elog "If you were using symbolic links in wine prefixes it may be necessary to"
- elog "refresh them by re-running the command:"
- elog
- elog " WINEPREFIX=/path/to/prefix setup_dxvk.sh install --symlink"
- elog
- elog "Also, if you were using /etc/${PN}.conf, ${PN} is no longer patched to load"
- elog "it. See ${EROOT}/usr/share/doc/${PF}/README.md* for handling configs."
fi
- if [[ ! ${REPLACING_VERSIONS##* } ]] ||
- ver_test ${REPLACING_VERSIONS##* } -lt 2.0
+ if use d3d8 && [[ ${REPLACING_VERSIONS##* } ]] &&
+ ver_test ${REPLACING_VERSIONS##* } -lt 2.4
then
elog
- elog ">=${PN}-2.0 requires drivers and Wine to support vulkan-1.3, meaning:"
- elog ">=wine-*-7.1 (or >=wine-proton-7.0), and >=mesa-22.0 (or >=nvidia-drivers-510)"
- elog "For details, see: https://github.com/doitsujin/dxvk/wiki/Driver-support"
+ elog ">=${PN}-2.4 now provides d3d8.dll, to make use of it will need to"
+ elog "update old wine prefixes which is typically done by re-running:"
+ elog
+ elog " WINEPREFIX=/path/to/prefix setup_dxvk.sh install --symlink"
+ elog
fi
}
diff --git a/app-emulation/dxvk/files/dxvk-2.4-d3d8-setup.patch b/app-emulation/dxvk/files/dxvk-2.4-d3d8-setup.patch
new file mode 100644
index 000000000000..9a0e15310d96
--- /dev/null
+++ b/app-emulation/dxvk/files/dxvk-2.4-d3d8-setup.patch
@@ -0,0 +1,8 @@
+Newly added in dxvk-2.4, but the old script does not know about it.
+(see also wow64-setup.patch, this script needs a replacement)
+--- a/setup_dxvk.sh
++++ b/setup_dxvk.sh
+@@ -207,2 +207,3 @@
+
++$action d3d8
+ $action d3d9
diff --git a/app-emulation/dxvk/metadata.xml b/app-emulation/dxvk/metadata.xml
index 84811f271d8e..bcd095ee95b9 100644
--- a/app-emulation/dxvk/metadata.xml
+++ b/app-emulation/dxvk/metadata.xml
@@ -10,6 +10,7 @@
Use <pkg>sys-devel/crossdev</pkg> for the toolchain rather than
<pkg>dev-util/mingw64-toolchain</pkg> (requires manual setting up)
</flag>
+ <flag name="d3d8">Enable support for DirectX 8 (d3d8.dll)</flag>
<flag name="d3d9">Enable support for DirectX 9 (d3d9.dll)</flag>
<flag name="d3d10">Enable support for DirectX 10 (d3d10.dll)</flag>
<flag name="d3d11">Enable support for DirectX 11 (d3d11.dll)</flag>