commit:     fcf677868d92ede04dc94a4873f38978933f6606
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 10 10:49:41 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Jul 10 12:17:39 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fcf67786

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 <AT> gentoo.org>

 app-emulation/dxvk/dxvk-9999.ebuild                | 33 ++++++++--------------
 app-emulation/dxvk/files/dxvk-2.4-d3d8-setup.patch |  8 ++++++
 app-emulation/dxvk/metadata.xml                    |  1 +
 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>

Reply via email to