commit:     ac0d324647ccb3db9b1ee1f9595c913af6ae3d68
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May  7 09:44:23 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue May  7 09:45:15 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac0d3246

app-emulation/wine-staging: fix build with musl

Bug: https://bugs.gentoo.org/931341
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../wine-staging-9.8-musl-ioctls-header.patch      | 30 ++++++++++++++++++++++
 app-emulation/wine-staging/wine-staging-9.8.ebuild |  1 +
 2 files changed, 31 insertions(+)

diff --git 
a/app-emulation/wine-staging/files/wine-staging-9.8-musl-ioctls-header.patch 
b/app-emulation/wine-staging/files/wine-staging-9.8-musl-ioctls-header.patch
new file mode 100644
index 000000000000..7aa1a4c00587
--- /dev/null
+++ b/app-emulation/wine-staging/files/wine-staging-9.8-musl-ioctls-header.patch
@@ -0,0 +1,30 @@
+https://bugs.gentoo.org/931341
+https://gitlab.winehq.org/wine/wine/-/commit/24ca848c568d5a2786abd26f2e7314b2e3f509f3
+From: Fotios Valasiadis <[email protected]>
+Date: Sun, 5 May 2024 03:34:57 +0300
+Subject: [PATCH] ntdll/unix: Fix building on musl by explicitly including
+ asm/ioctls.h.
+
+After commit 898ab8dab19d498c17859f39a55e317ee7e367a5 wine would no longer
+build on musl.
+
+Issue is that apparently TCSETS2 isn't defined when including sys/ioctl.h.
+
+A little digging shows that glibc goes ahead and includes asm/ioctls.h in
+sys/ioctl.h, providing said macro.  Musl on the other hand doesn't and relies
+on bits/ioctl.h, which lacks said macro.
+
+Signed-off-by: Fotios Valasiadis <[email protected]>
+--- a/dlls/ntdll/unix/serial.c
++++ b/dlls/ntdll/unix/serial.c
+@@ -33,6 +33,7 @@
+ #include <stdio.h>
+ #ifdef HAVE_ASM_TERMBITS_H
+ # include <asm/termbits.h>
++# include <asm/ioctls.h>
+ #else
+ # include <termios.h>
+ #endif
+-- 
+GitLab
+

diff --git a/app-emulation/wine-staging/wine-staging-9.8.ebuild 
b/app-emulation/wine-staging/wine-staging-9.8.ebuild
index f0ed10e52b22..5bf74a8b36bc 100644
--- a/app-emulation/wine-staging/wine-staging-9.8.ebuild
+++ b/app-emulation/wine-staging/wine-staging-9.8.ebuild
@@ -177,6 +177,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-7.17-noexecstack.patch
        "${FILESDIR}"/${PN}-7.20-unwind.patch
        "${FILESDIR}"/${PN}-8.13-rpath.patch
+       "${FILESDIR}"/${P}-musl-ioctls-header.patch
 )
 
 pkg_pretend() {

Reply via email to