diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-04-17 23:53:43 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-04-17 23:53:43 +0100 |
commit | 3a8423ee2874c2fd96358b28af08d38d83e9bdc0 (patch) | |
tree | 4cb2ff2a0a12a3c5013370cccd6697938b087225 /app-emulation/wine-proton/files | |
parent | 6fe0a08604ce763398dcbeb5fc63d814110f0748 (diff) |
gentoo auto-resync : 17:04:2023 - 23:53:43
Diffstat (limited to 'app-emulation/wine-proton/files')
-rw-r--r-- | app-emulation/wine-proton/files/README.gentoo | 2 | ||||
-rw-r--r-- | app-emulation/wine-proton/files/wine-proton-8.0.1c-unwind.patch | 36 |
2 files changed, 37 insertions, 1 deletions
diff --git a/app-emulation/wine-proton/files/README.gentoo b/app-emulation/wine-proton/files/README.gentoo index 5b24fb4b7b8f..a6354c92ee53 100644 --- a/app-emulation/wine-proton/files/README.gentoo +++ b/app-emulation/wine-proton/files/README.gentoo @@ -7,7 +7,7 @@ To keep a low maintenance cost, these changes are not reverted in Gentoo with the exception of re-enabling winemenubuilder for desktop entries. Also, given this Wine variant is oriented toward running games, some -normally unrelated features (e.g. ldap) may not have real upstream +normally unrelated features (e.g. cups) may not have real upstream (Valve) support. Because of this, some are left always disabled. If needed, use other variants for the more expected Wine behavior. diff --git a/app-emulation/wine-proton/files/wine-proton-8.0.1c-unwind.patch b/app-emulation/wine-proton/files/wine-proton-8.0.1c-unwind.patch new file mode 100644 index 000000000000..50fc5be57abc --- /dev/null +++ b/app-emulation/wine-proton/files/wine-proton-8.0.1c-unwind.patch @@ -0,0 +1,36 @@ +Fix build with llvm-libunwind, and also fix for non-llvm libunwind +when using clang+bfd given clang doesn't have _Unwind_Find_FDE in +its rtlib and expects it from llvm-libunwind. + +The _CONFIG_H_ check is for <llvm-libunwind-15 (adds _VERSION). +--- a/dlls/ntdll/unix/dwarf.h ++++ b/dlls/ntdll/unix/dwarf.h +@@ -257,5 +257,7 @@ + }; + ++#if defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__) || !defined(__clang__) + extern const struct dwarf_fde *_Unwind_Find_FDE (void *, struct dwarf_eh_bases *); ++#endif + + static unsigned char dwarf_get_u1( const unsigned char **p ) +--- a/dlls/ntdll/unix/signal_x86_64.c ++++ b/dlls/ntdll/unix/signal_x86_64.c +@@ -648,5 +648,5 @@ + int rc; + +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__) + rc = unw_getcontext( &unw_context ); + if (rc == UNW_ESUCCESS) +@@ -774,4 +774,5 @@ + CONTEXT *context = params->context; + struct dwarf_eh_bases bases; ++#if defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__) || !defined(__clang__) + const struct dwarf_fde *fde = _Unwind_Find_FDE( (void *)(context->Rip - 1), &bases ); + +@@ -779,4 +780,5 @@ + return dwarf_virtual_unwind( context->Rip, &dispatch->EstablisherFrame, context, fde, + &bases, &dispatch->LanguageHandler, &dispatch->HandlerData ); ++#endif + #ifdef HAVE_LIBUNWIND + return libunwind_virtual_unwind( context->Rip, &dispatch->EstablisherFrame, context, |