commit:     593965e4bc4692323d330191d13bea191203d717
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sun Jun  2 02:57:10 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sun Jun  2 03:43:36 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=593965e4

app-emulation/wine-proton: fix build with -Os

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 .../wine-proton/files/wine-proton-7.0.6-vulkan-libm.patch    | 12 ++++++++++++
 .../wine-proton/files/wine-proton-8.0.5c-vulkan-libm.patch   | 12 ++++++++++++
 app-emulation/wine-proton/wine-proton-7.0.6.ebuild           |  1 +
 app-emulation/wine-proton/wine-proton-8.0.5c.ebuild          |  1 +
 app-emulation/wine-proton/wine-proton-9.0.1.ebuild           |  1 +
 app-emulation/wine-proton/wine-proton-9.0.9999.ebuild        |  1 +
 6 files changed, 28 insertions(+)

diff --git 
a/app-emulation/wine-proton/files/wine-proton-7.0.6-vulkan-libm.patch 
b/app-emulation/wine-proton/files/wine-proton-7.0.6-vulkan-libm.patch
new file mode 100644
index 000000000000..b81778fb957c
--- /dev/null
+++ b/app-emulation/wine-proton/files/wine-proton-7.0.6-vulkan-libm.patch
@@ -0,0 +1,12 @@
+Valve's patches add use of "ceil" without using libm, it works
+by accident with -O2 but fails with -Os.
+
+ld: dlls/winevulkan/vulkan.o: in function `fshack_vk_queue_present':
+vulkan.c:(.text+0x12f46): undefined reference to `ceil'
+--- a/dlls/winevulkan/Makefile.in
++++ b/dlls/winevulkan/Makefile.in
+@@ -4,3 +4,3 @@
+ IMPORTS   = user32 gdi32 advapi32 setupapi win32u
+-EXTRALIBS = $(PTHREAD_LIBS)
++EXTRALIBS = -lm $(PTHREAD_LIBS)
+ 

diff --git 
a/app-emulation/wine-proton/files/wine-proton-8.0.5c-vulkan-libm.patch 
b/app-emulation/wine-proton/files/wine-proton-8.0.5c-vulkan-libm.patch
new file mode 100644
index 000000000000..c3d9794fbbfe
--- /dev/null
+++ b/app-emulation/wine-proton/files/wine-proton-8.0.5c-vulkan-libm.patch
@@ -0,0 +1,12 @@
+Valve's patches add use of "ceil" without using libm, it works
+by accident with -O2 but fails with -Os.
+
+ld: dlls/winevulkan/vulkan.o: in function `fshack_vk_queue_present':
+vulkan.c:(.text+0x12f46): undefined reference to `ceil'
+--- a/dlls/winevulkan/Makefile.in
++++ b/dlls/winevulkan/Makefile.in
+@@ -4,3 +4,3 @@
+ IMPORTS   = user32 gdi32 advapi32 setupapi win32u
+-UNIX_LIBS = -lwin32u $(PTHREAD_LIBS)
++UNIX_LIBS = -lm -lwin32u $(PTHREAD_LIBS)
+ 

diff --git a/app-emulation/wine-proton/wine-proton-7.0.6.ebuild 
b/app-emulation/wine-proton/wine-proton-7.0.6.ebuild
index cdab45831b77..29b0e02ef24a 100644
--- a/app-emulation/wine-proton/wine-proton-7.0.6.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.6.ebuild
@@ -124,6 +124,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-7.0.4-restore-menubuilder.patch
        "${FILESDIR}"/${PN}-7.0.4-unwind.patch
        "${FILESDIR}"/${PN}-7.0.6-mingw64-11.0.0.patch
+       "${FILESDIR}"/${PN}-7.0.6-vulkan-libm.patch
 )
 
 pkg_pretend() {

diff --git a/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild 
b/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild
index 83417e7c34f7..cecd79a0c1f7 100644
--- a/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild
+++ b/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild
@@ -124,6 +124,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-7.0.4-noexecstack.patch
        "${FILESDIR}"/${PN}-8.0.1c-unwind.patch
        "${FILESDIR}"/${PN}-8.0.4-restore-menubuilder.patch
+       "${FILESDIR}"/${PN}-8.0.5c-vulkan-libm.patch
 )
 
 pkg_pretend() {

diff --git a/app-emulation/wine-proton/wine-proton-9.0.1.ebuild 
b/app-emulation/wine-proton/wine-proton-9.0.1.ebuild
index 1dd72b877060..227f0cf4916a 100644
--- a/app-emulation/wine-proton/wine-proton-9.0.1.ebuild
+++ b/app-emulation/wine-proton/wine-proton-9.0.1.ebuild
@@ -134,6 +134,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-7.0.4-noexecstack.patch
        "${FILESDIR}"/${PN}-8.0.1c-unwind.patch
        "${FILESDIR}"/${PN}-8.0.4-restore-menubuilder.patch
+       "${FILESDIR}"/${PN}-8.0.5c-vulkan-libm.patch
        "${FILESDIR}"/${PN}-9.0-rpath.patch
 )
 

diff --git a/app-emulation/wine-proton/wine-proton-9.0.9999.ebuild 
b/app-emulation/wine-proton/wine-proton-9.0.9999.ebuild
index f43dad37ae8e..caa389a5712f 100644
--- a/app-emulation/wine-proton/wine-proton-9.0.9999.ebuild
+++ b/app-emulation/wine-proton/wine-proton-9.0.9999.ebuild
@@ -134,6 +134,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-7.0.4-noexecstack.patch
        "${FILESDIR}"/${PN}-8.0.1c-unwind.patch
        "${FILESDIR}"/${PN}-8.0.4-restore-menubuilder.patch
+       "${FILESDIR}"/${PN}-8.0.5c-vulkan-libm.patch
        "${FILESDIR}"/${PN}-9.0-rpath.patch
 )
 

Reply via email to