From 0c46d1e8a20f3d85ad9e3f91b7b71a67fc10377b Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Thu, 25 May 2017 03:05:27 +0200 Subject: [PATCH] Rebase against 8967e87c8a890aed7a81051c2d372f065e825bb2. --- ...ement-some-processor-group-functions.patch | 101 ++++++++--------- ...d-stub-for-SetThreadIdealProcessorEx.patch | 106 ++++-------------- patches/patchinstall.sh | 28 +++-- .../0001-vulkan-Initial-implementation.patch | 16 +-- ...repeated-Unhandled-blend-factor-0-me.patch | 29 ----- ...ay-FIXME-only-once-when-blen-op-is-0.patch | 29 ----- ...1.drv-Fix-compilation-without-XFixes.patch | 41 +++++++ 7 files changed, 133 insertions(+), 217 deletions(-) delete mode 100644 patches/wined3d-Silence_FIXMEs/0001-wined3d-Silence-repeated-Unhandled-blend-factor-0-me.patch delete mode 100644 patches/wined3d-Silence_FIXMEs/0007-wined3d-Display-FIXME-only-once-when-blen-op-is-0.patch create mode 100644 patches/winex11-XFixes/0001-winex11.drv-Fix-compilation-without-XFixes.patch diff --git a/patches/kernel32-Processor_Group/0001-kernel32-Implement-some-processor-group-functions.patch b/patches/kernel32-Processor_Group/0001-kernel32-Implement-some-processor-group-functions.patch index 58740ce2..1c0e598c 100644 --- a/patches/kernel32-Processor_Group/0001-kernel32-Implement-some-processor-group-functions.patch +++ b/patches/kernel32-Processor_Group/0001-kernel32-Implement-some-processor-group-functions.patch @@ -1,15 +1,15 @@ -From caf89ae3ed2f1ff8e2fb16cc1c80f101a2897722 Mon Sep 17 00:00:00 2001 +From 5fc643183617eae4c5975f4d32058cd512ffdf00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sat, 4 Feb 2017 16:20:37 +0100 Subject: kernel32: Implement some processor group functions. --- .../api-ms-win-core-kernel32-legacy-l1-1-0.spec | 2 +- - dlls/kernel32/cpu.c | 55 ++++++++++++++++++++++ - dlls/kernel32/kernel32.spec | 8 ++-- - dlls/kernel32/tests/process.c | 23 +++++++++ + dlls/kernel32/cpu.c | 45 ++++++++++++++++++---- + dlls/kernel32/kernel32.spec | 4 +- + dlls/kernel32/tests/process.c | 23 +++++++++++ include/winnt.h | 2 + - 5 files changed, 85 insertions(+), 5 deletions(-) + 5 files changed, 66 insertions(+), 10 deletions(-) diff --git a/dlls/api-ms-win-core-kernel32-legacy-l1-1-0/api-ms-win-core-kernel32-legacy-l1-1-0.spec b/dlls/api-ms-win-core-kernel32-legacy-l1-1-0/api-ms-win-core-kernel32-legacy-l1-1-0.spec index 7c196c932fd..4aa415bbf62 100644 @@ -25,41 +25,26 @@ index 7c196c932fd..4aa415bbf62 100644 @ stub GetNamedPipeServerProcessId @ stdcall GetShortPathNameA(str ptr long) kernel32.GetShortPathNameA diff --git a/dlls/kernel32/cpu.c b/dlls/kernel32/cpu.c -index 756d8f94ab2..5fb806746a0 100644 +index 2e0e79f8e8d..5bba2ed26c3 100644 --- a/dlls/kernel32/cpu.c +++ b/dlls/kernel32/cpu.c -@@ -303,3 +303,58 @@ SIZE_T WINAPI GetLargePageMinimum(void) - FIXME("Not implemented on your platform/architecture.\n"); - return 0; +@@ -309,7 +309,9 @@ SIZE_T WINAPI GetLargePageMinimum(void) + */ + WORD WINAPI GetActiveProcessorGroupCount(void) + { +- FIXME("semi-stub, always returning 1\n"); ++ TRACE("()\n"); ++ ++ /* systems with less than 64 logical processors only have group 0 */ + return 1; } -+ -+/*********************************************************************** -+ * GetActiveProcessorGroupCount (KERNEL32.@) -+ */ -+WORD WINAPI GetActiveProcessorGroupCount(void) -+{ -+ TRACE("()\n"); -+ -+ /* systems with less than 64 logical processors only have group 0 */ -+ return 1; -+} -+ -+/*********************************************************************** -+ * GetMaximumProcessorGroupCount (KERNEL32.@) -+ */ -+WORD WINAPI GetMaximumProcessorGroupCount(void) -+{ -+ TRACE("()\n"); -+ -+ /* systems with less than 64 logical processors only have group 0 */ -+ return 1; -+} -+ -+/*********************************************************************** -+ * GetActiveProcessorCount (KERNEL32.@) -+ */ -+DWORD WINAPI GetActiveProcessorCount(WORD group) -+{ + +@@ -318,12 +320,41 @@ WORD WINAPI GetActiveProcessorGroupCount(void) + */ + DWORD WINAPI GetActiveProcessorCount(WORD group) + { +- SYSTEM_INFO si; +- DWORD cpus; + TRACE("(%u)\n", group); + + if (group && group != ALL_PROCESSOR_GROUPS) @@ -72,6 +57,19 @@ index 756d8f94ab2..5fb806746a0 100644 +} + +/*********************************************************************** ++ * GetMaximumProcessorGroupCount (KERNEL32.@) ++ */ ++WORD WINAPI GetMaximumProcessorGroupCount(void) ++{ ++ TRACE("()\n"); + +- GetSystemInfo( &si ); +- cpus = si.dwNumberOfProcessors; ++ /* systems with less than 64 logical processors only have group 0 */ ++ return 1; ++} ++ ++/*********************************************************************** + * GetMaximumProcessorCount (KERNEL32.@) + */ +DWORD WINAPI GetMaximumProcessorCount(WORD group) @@ -83,25 +81,16 @@ index 756d8f94ab2..5fb806746a0 100644 + SetLastError(ERROR_INVALID_PARAMETER); + return 0; + } -+ + +- FIXME("semi-stub, returning %u\n", cpus); +- return cpus; + /* Wine only counts active processors so far */ + return system_info.NumberOfProcessors; -+} + } diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec -index 2668386bf84..e6081aeb04a 100644 +index 1a11af579f4..567442ef138 100644 --- a/dlls/kernel32/kernel32.spec +++ b/dlls/kernel32/kernel32.spec -@@ -540,8 +540,8 @@ - @ stdcall GenerateConsoleCtrlEvent(long long) - @ stdcall -i386 -private Get16DLLAddress(long str) krnl386.exe16.Get16DLLAddress - @ stdcall GetACP() --# @ stub GetActiveProcessorCount --# @ stub GetActiveProcessorGroupCount -+@ stdcall GetActiveProcessorCount(long) -+@ stdcall GetActiveProcessorGroupCount() - # @ stub GetApplicationRecoveryCallback - # @ stub GetApplicationRestartSettings - @ stdcall GetAtomNameA(long ptr long) @@ -716,8 +716,8 @@ # @ stub GetLongPathNameTransactedW @ stdcall GetLongPathNameW (wstr long long) @@ -114,7 +103,7 @@ index 2668386bf84..e6081aeb04a 100644 @ stdcall GetModuleFileNameW(long ptr long) @ stdcall GetModuleHandleA(str) diff --git a/dlls/kernel32/tests/process.c b/dlls/kernel32/tests/process.c -index 68d6b648252..5e5346af749 100644 +index c480a278c98..e95473bfa08 100644 --- a/dlls/kernel32/tests/process.c +++ b/dlls/kernel32/tests/process.c @@ -91,6 +91,7 @@ static SIZE_T (WINAPI *pGetLargePageMinimum)(void); @@ -133,7 +122,7 @@ index 68d6b648252..5e5346af749 100644 return TRUE; } -@@ -3351,6 +3353,26 @@ static void test_ProcThreadAttributeList(void) +@@ -3357,6 +3359,26 @@ static void test_ProcThreadAttributeList(void) pDeleteProcThreadAttributeList(&list); } @@ -160,7 +149,7 @@ index 68d6b648252..5e5346af749 100644 START_TEST(process) { HANDLE job; -@@ -3425,6 +3447,7 @@ START_TEST(process) +@@ -3431,6 +3453,7 @@ START_TEST(process) test_GetNumaProcessorNode(); test_session_info(); test_GetLogicalProcessorInformationEx(); @@ -169,7 +158,7 @@ index 68d6b648252..5e5346af749 100644 test_ProcThreadAttributeList(); diff --git a/include/winnt.h b/include/winnt.h -index 5bd1b1b4a83..2fc4a190e48 100644 +index 450499c1299..a615e4a6022 100644 --- a/include/winnt.h +++ b/include/winnt.h @@ -5855,6 +5855,8 @@ typedef struct _GROUP_AFFINITY @@ -182,5 +171,5 @@ index 5bd1b1b4a83..2fc4a190e48 100644 { WORD Group; -- -2.11.0 +2.12.2 diff --git a/patches/kernel32-Processor_Group/0002-kernel32-Add-stub-for-SetThreadIdealProcessorEx.patch b/patches/kernel32-Processor_Group/0002-kernel32-Add-stub-for-SetThreadIdealProcessorEx.patch index 56ffc921..4fad670a 100644 --- a/patches/kernel32-Processor_Group/0002-kernel32-Add-stub-for-SetThreadIdealProcessorEx.patch +++ b/patches/kernel32-Processor_Group/0002-kernel32-Add-stub-for-SetThreadIdealProcessorEx.patch @@ -1,60 +1,17 @@ -From bb531528ac5096ece43d100dc11fcc39f744d498 Mon Sep 17 00:00:00 2001 +From ac7b880c08822aac4e5241753dc919b7ab0e796e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Sat, 4 Feb 2017 16:31:59 +0100 Subject: kernel32: Add stub for SetThreadIdealProcessorEx. --- - .../api-ms-win-core-processthreads-l1-1-1.spec | 2 +- - .../api-ms-win-core-processthreads-l1-1-2.spec | 2 +- - dlls/kernel32/kernel32.spec | 2 +- - dlls/kernel32/thread.c | 40 ++++++++++++++++++---- - dlls/kernelbase/kernelbase.spec | 2 +- - 5 files changed, 37 insertions(+), 11 deletions(-) + dlls/kernel32/thread.c | 32 ++++++++++++++++++++++---------- + 1 file changed, 22 insertions(+), 10 deletions(-) -diff --git a/dlls/api-ms-win-core-processthreads-l1-1-1/api-ms-win-core-processthreads-l1-1-1.spec b/dlls/api-ms-win-core-processthreads-l1-1-1/api-ms-win-core-processthreads-l1-1-1.spec -index 9d321af724..0432965009 100644 ---- a/dlls/api-ms-win-core-processthreads-l1-1-1/api-ms-win-core-processthreads-l1-1-1.spec -+++ b/dlls/api-ms-win-core-processthreads-l1-1-1/api-ms-win-core-processthreads-l1-1-1.spec -@@ -47,7 +47,7 @@ - @ stub SetProcessMitigationPolicy - @ stdcall SetProcessShutdownParameters(long long) kernel32.SetProcessShutdownParameters - @ stdcall SetThreadContext(long ptr) kernel32.SetThreadContext --@ stub SetThreadIdealProcessorEx -+@ stdcall SetThreadIdealProcessorEx(long ptr ptr) kernel32.SetThreadIdealProcessorEx - @ stdcall SetThreadPriority(long long) kernel32.SetThreadPriority - @ stdcall SetThreadPriorityBoost(long long) kernel32.SetThreadPriorityBoost - @ stdcall SetThreadStackGuarantee(ptr) kernel32.SetThreadStackGuarantee -diff --git a/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec b/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec -index 0e30f18e52..7a729a5004 100644 ---- a/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec -+++ b/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec -@@ -53,7 +53,7 @@ - @ stdcall SetProcessPriorityBoost(long long) kernel32.SetProcessPriorityBoost - @ stdcall SetProcessShutdownParameters(long long) kernel32.SetProcessShutdownParameters - @ stdcall SetThreadContext(long ptr) kernel32.SetThreadContext --@ stub SetThreadIdealProcessorEx -+@ stdcall SetThreadIdealProcessorEx(long ptr ptr) kernel32.SetThreadIdealProcessorEx - @ stub SetThreadInformation - @ stdcall SetThreadPriority(long long) kernel32.SetThreadPriority - @ stdcall SetThreadPriorityBoost(long long) kernel32.SetThreadPriorityBoost -diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec -index 62a91a03f1..f512cb4fd3 100644 ---- a/dlls/kernel32/kernel32.spec -+++ b/dlls/kernel32/kernel32.spec -@@ -1448,7 +1448,7 @@ - @ stdcall SetThreadExecutionState(long) - @ stdcall SetThreadGroupAffinity(long ptr ptr) - @ stdcall SetThreadIdealProcessor(long long) --# @ stub SetThreadIdealProcessorEx -+@ stdcall SetThreadIdealProcessorEx(long ptr ptr) - @ stdcall SetThreadLocale(long) - @ stdcall SetThreadPreferredUILanguages(long ptr ptr) - @ stdcall SetThreadPriority(long long) diff --git a/dlls/kernel32/thread.c b/dlls/kernel32/thread.c -index c8dd94bbea..0a0b0e4bd6 100644 +index ac2c3687789..499fbe24d09 100644 --- a/dlls/kernel32/thread.c +++ b/dlls/kernel32/thread.c -@@ -462,6 +462,28 @@ DWORD_PTR WINAPI SetThreadAffinityMask( HANDLE hThread, DWORD_PTR dwThreadAffini +@@ -450,6 +450,28 @@ DWORD_PTR WINAPI SetThreadAffinityMask( HANDLE hThread, DWORD_PTR dwThreadAffini return tbi.AffinityMask; } @@ -83,46 +40,23 @@ index c8dd94bbea..0a0b0e4bd6 100644 /********************************************************************** * SetThreadIdealProcessor [KERNEL32.@] Sets preferred processor for thread. -@@ -474,15 +496,19 @@ DWORD WINAPI SetThreadIdealProcessor( - HANDLE hThread, /* [in] Specifies the thread of interest */ - DWORD dwIdealProcessor) /* [in] Specifies the new preferred processor */ - { -- FIXME("(%p): stub\n",hThread); -- if (dwIdealProcessor > MAXIMUM_PROCESSORS) -- { -- SetLastError(ERROR_INVALID_PARAMETER); -+ PROCESSOR_NUMBER previous, current; -+ -+ TRACE("(%p, %u)\n", hThread, dwIdealProcessor); -+ -+ current.Group = 0; -+ current.Number = dwIdealProcessor; -+ current.Reserved = 0; -+ -+ if (!SetThreadIdealProcessorEx(hThread, ¤t, &previous)) - return ~0u; -- } -- return 0; --} - -+ return previous.Number; -+} +@@ -472,16 +494,6 @@ DWORD WINAPI SetThreadIdealProcessor( + } /*********************************************************************** +- * SetThreadIdealProcessorEx (KERNEL32.@) +- */ +-BOOL SetThreadIdealProcessorEx( HANDLE thread, PROCESSOR_NUMBER *ideal, PROCESSOR_NUMBER *previous ) +-{ +- FIXME("(%p %p %p): stub\n", thread, ideal, previous); +- SetLastError(ERROR_CALL_NOT_IMPLEMENTED); +- return FALSE; +-} +- +-/*********************************************************************** * GetThreadSelectorEntry (KERNEL32.@) -diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec -index 9fba5803b2..17ef35cb59 100644 ---- a/dlls/kernelbase/kernelbase.spec -+++ b/dlls/kernelbase/kernelbase.spec -@@ -1482,7 +1482,7 @@ - @ stdcall SetThreadErrorMode(long ptr) kernel32.SetThreadErrorMode - @ stdcall SetThreadGroupAffinity(long ptr ptr) kernel32.SetThreadGroupAffinity - @ stdcall SetThreadIdealProcessor(long long) kernel32.SetThreadIdealProcessor --# @ stub SetThreadIdealProcessorEx -+@ stdcall SetThreadIdealProcessorEx(long ptr ptr) kernel32.SetThreadIdealProcessorEx - # @ stub SetThreadInformation - @ stdcall SetThreadLocale(long) kernel32.SetThreadLocale - @ stdcall SetThreadPreferredUILanguages(long ptr ptr) kernel32.SetThreadPreferredUILanguages + */ + BOOL WINAPI GetThreadSelectorEntry( HANDLE hthread, DWORD sel, LPLDT_ENTRY ldtent ) -- -2.11.0 +2.12.2 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index a29ec97e..5fc9e69d 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -52,7 +52,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "ef267f115f76a3041e0da4a0f0dbd7ffb4a022e1" + echo "8967e87c8a890aed7a81051c2d372f065e825bb2" } # Show version information @@ -445,6 +445,7 @@ patch_enable_all () enable_winex11_Window_Groups="$1" enable_winex11_Window_Style="$1" enable_winex11_XEMBED="$1" + enable_winex11_XFixes="$1" enable_winex11__NET_ACTIVE_WINDOW="$1" enable_winex11_wglShareLists="$1" enable_winhlp32_Flex_Workaround="$1" @@ -1568,6 +1569,9 @@ patch_enable () winex11-XEMBED) enable_winex11_XEMBED="$2" ;; + winex11-XFixes) + enable_winex11_XFixes="$2" + ;; winex11-_NET_ACTIVE_WINDOW) enable_winex11__NET_ACTIVE_WINDOW="$2" ;; @@ -4823,10 +4827,8 @@ fi # | * combase-RoApi, kernel32-UmsStubs, api-ms-win-Stub_DLLs # | # | Modified files: -# | * dlls/api-ms-win-core-kernel32-legacy-l1-1-0/api-ms-win-core-kernel32-legacy-l1-1-0.spec, dlls/api-ms-win-core- -# | processthreads-l1-1-1/api-ms-win-core-processthreads-l1-1-1.spec, dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win- -# | core-processthreads-l1-1-2.spec, dlls/kernel32/cpu.c, dlls/kernel32/kernel32.spec, dlls/kernel32/tests/process.c, -# | dlls/kernel32/thread.c, dlls/kernelbase/kernelbase.spec, include/winnt.h +# | * dlls/api-ms-win-core-kernel32-legacy-l1-1-0/api-ms-win-core-kernel32-legacy-l1-1-0.spec, dlls/kernel32/cpu.c, +# | dlls/kernel32/kernel32.spec, dlls/kernel32/tests/process.c, dlls/kernel32/thread.c, include/winnt.h # | if test "$enable_kernel32_Processor_Group" -eq 1; then patch_apply kernel32-Processor_Group/0001-kernel32-Implement-some-processor-group-functions.patch @@ -8737,22 +8739,18 @@ fi # | * dlls/wined3d/resource.c, dlls/wined3d/state.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c, dlls/wined3d/texture.c # | if test "$enable_wined3d_Silence_FIXMEs" -eq 1; then - patch_apply wined3d-Silence_FIXMEs/0001-wined3d-Silence-repeated-Unhandled-blend-factor-0-me.patch patch_apply wined3d-Silence_FIXMEs/0002-wined3d-Display-FIXME-for-cmp-function-0-only-once.patch patch_apply wined3d-Silence_FIXMEs/0003-wined3d-Silence-repeated-resource_check_usage-FIXME.patch patch_apply wined3d-Silence_FIXMEs/0004-wined3d-Print-FIXME-only-once-in-surface_cpu_blt.patch patch_apply wined3d-Silence_FIXMEs/0005-wined3d-Silence-repeated-wined3d_swapchain_present-F.patch patch_apply wined3d-Silence_FIXMEs/0006-wined3d-Silence-extremely-noisy-FIXME-in-wined3d_tex.patch - patch_apply wined3d-Silence_FIXMEs/0007-wined3d-Display-FIXME-only-once-when-blen-op-is-0.patch patch_apply wined3d-Silence_FIXMEs/0008-wined3d-Silence-noisy-fixme-Unrecognized-stencil-op-.patch ( - printf '%s\n' '+ { "Sebastian Lackner", "wined3d: Silence repeated '\''Unhandled blend factor 0'\'' messages.", 1 },'; printf '%s\n' '+ { "Christian Costa", "wined3d: Display FIXME for cmp function 0 only once.", 1 },'; printf '%s\n' '+ { "Erich E. Hoover", "wined3d: Silence repeated resource_check_usage FIXME.", 2 },'; printf '%s\n' '+ { "Christian Costa", "wined3d: Print FIXME only once in surface_cpu_blt.", 1 },'; printf '%s\n' '+ { "Sebastian Lackner", "wined3d: Silence repeated wined3d_swapchain_present FIXME.", 1 },'; printf '%s\n' '+ { "Sebastian Lackner", "wined3d: Silence extremely noisy FIXME in wined3d_texture_add_dirty_region.", 1 },'; - printf '%s\n' '+ { "Christian Costa", "wined3d: Display FIXME only once when blen op is 0.", 1 },'; printf '%s\n' '+ { "Christian Costa", "wined3d: Silence noisy fixme Unrecognized stencil op 0.", 1 },'; ) >> "$patchlist" fi @@ -9122,6 +9120,18 @@ if test "$enable_winex11_XEMBED" -eq 1; then ) >> "$patchlist" fi +# Patchset winex11-XFixes +# | +# | Modified files: +# | * dlls/winex11.drv/clipboard.c +# | +if test "$enable_winex11_XFixes" -eq 1; then + patch_apply winex11-XFixes/0001-winex11.drv-Fix-compilation-without-XFixes.patch + ( + printf '%s\n' '+ { "Sebastian Lackner", "winex11.drv: Fix compilation without XFixes.", 1 },'; + ) >> "$patchlist" +fi + # Patchset winex11-wglShareLists # | # | This patchset fixes the following Wine bugs: diff --git a/patches/vulkan-Vulkan_Implementation/0001-vulkan-Initial-implementation.patch b/patches/vulkan-Vulkan_Implementation/0001-vulkan-Initial-implementation.patch index 7a928f7d..aa48c7e3 100644 --- a/patches/vulkan-Vulkan_Implementation/0001-vulkan-Initial-implementation.patch +++ b/patches/vulkan-Vulkan_Implementation/0001-vulkan-Initial-implementation.patch @@ -1,4 +1,4 @@ -From 00e6b5dee992743569981db6621fcc5e6956ae52 Mon Sep 17 00:00:00 2001 +From 13c96697dd2104a6aaf02d13c7c0700a839d6e64 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Sat, 19 Mar 2016 00:42:10 +0100 Subject: vulkan: Initial implementation. (v2) @@ -22,7 +22,7 @@ Subject: vulkan: Initial implementation. (v2) create mode 100644 dlls/vulkan/vulkan_thunks.c diff --git a/configure.ac b/configure.ac -index e8710d0dbbb..b0b58ba60b6 100644 +index 7d6566be0e2..0b703d15077 100644 --- a/configure.ac +++ b/configure.ac @@ -81,6 +81,8 @@ AC_ARG_WITH(xcomposite,AS_HELP_STRING([--without-xcomposite],[do not use the Xco @@ -31,10 +31,10 @@ index e8710d0dbbb..b0b58ba60b6 100644 [if test "x$withval" = "xno"; then ac_cv_header_X11_Xcursor_Xcursor_h=no; fi]) +AC_ARG_WITH(xcb, AS_HELP_STRING([--without-xcb],[do not use X11 XCB extension]), + [if test "x$withval" = "xno"; then ac_cv_header_X11_Xlib_xcb_h=no; fi]) + AC_ARG_WITH(xfixes, AS_HELP_STRING([--without-xfixes],[do not use Xfixes for clipboard change notifications]), + [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xfixes_h=no; fi]) AC_ARG_WITH(xinerama, AS_HELP_STRING([--without-xinerama],[do not use Xinerama (multi-monitor support)]), - [if test "x$withval" = "xno"; then ac_cv_header_X11_extensions_Xinerama_h=no; fi]) - AC_ARG_WITH(xinput, AS_HELP_STRING([--without-xinput],[do not use the Xinput extension]), -@@ -991,6 +993,7 @@ then +@@ -993,6 +995,7 @@ then dnl *** All of the following tests require X11/Xlib.h AC_CHECK_HEADERS([X11/Xlib.h \ @@ -42,7 +42,7 @@ index e8710d0dbbb..b0b58ba60b6 100644 X11/XKBlib.h \ X11/Xutil.h \ X11/Xcursor/Xcursor.h \ -@@ -1114,6 +1117,14 @@ then +@@ -1127,6 +1130,14 @@ then WINE_NOTICE_WITH(xcomposite,[test "x$ac_cv_lib_soname_Xcomposite" = "x"], [libxcomposite ${notice_platform}development files not found, Xcomposite won't be supported.]) @@ -57,7 +57,7 @@ index e8710d0dbbb..b0b58ba60b6 100644 dnl *** Check for XICCallback struct AC_CHECK_MEMBERS([XICCallback.callback, XEvent.xcookie],,, [#ifdef HAVE_X11_XLIB_H -@@ -1175,6 +1186,9 @@ else +@@ -1188,6 +1199,9 @@ else [enable_winex11_drv]) fi @@ -67,7 +67,7 @@ index e8710d0dbbb..b0b58ba60b6 100644 dnl **** Check for OpenCL **** if test "$ac_cv_header_CL_cl_h" = "yes" then -@@ -3484,6 +3498,8 @@ WINE_CONFIG_DLL(vnbt.vxd,enable_win16) +@@ -3497,6 +3511,8 @@ WINE_CONFIG_DLL(vnbt.vxd,enable_win16) WINE_CONFIG_DLL(vnetbios.vxd,enable_win16) WINE_CONFIG_DLL(vssapi) WINE_CONFIG_DLL(vtdapi.vxd,enable_win16) diff --git a/patches/wined3d-Silence_FIXMEs/0001-wined3d-Silence-repeated-Unhandled-blend-factor-0-me.patch b/patches/wined3d-Silence_FIXMEs/0001-wined3d-Silence-repeated-Unhandled-blend-factor-0-me.patch deleted file mode 100644 index 6fa6a161..00000000 --- a/patches/wined3d-Silence_FIXMEs/0001-wined3d-Silence-repeated-Unhandled-blend-factor-0-me.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 6c46c1e7d4c3ac8fe3482dc7d948b6d4397b6ef7 Mon Sep 17 00:00:00 2001 -From: Sebastian Lackner -Date: Sun, 15 Mar 2015 01:33:05 +0100 -Subject: wined3d: Silence repeated 'Unhandled blend factor 0' messages. - ---- - dlls/wined3d/state.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c -index 540a1b36174..d7f70545905 100644 ---- a/dlls/wined3d/state.c -+++ b/dlls/wined3d/state.c -@@ -415,8 +415,11 @@ static GLenum gl_blend_factor(enum wined3d_blend factor, const struct wined3d_fo - case WINED3D_BLEND_INVSRC1ALPHA: - return GL_ONE_MINUS_SRC1_ALPHA; - default: -- FIXME("Unhandled blend factor %#x.\n", factor); -+ { -+ static int once; -+ if (factor || !once++) FIXME("Unhandled blend factor %#x.\n", factor); - return GL_NONE; -+ } - } - } - --- -2.11.0 - diff --git a/patches/wined3d-Silence_FIXMEs/0007-wined3d-Display-FIXME-only-once-when-blen-op-is-0.patch b/patches/wined3d-Silence_FIXMEs/0007-wined3d-Display-FIXME-only-once-when-blen-op-is-0.patch deleted file mode 100644 index 2e768e8a..00000000 --- a/patches/wined3d-Silence_FIXMEs/0007-wined3d-Display-FIXME-only-once-when-blen-op-is-0.patch +++ /dev/null @@ -1,29 +0,0 @@ -From dbce3be53546b6d2f9db58c53d8d5376092dc83b Mon Sep 17 00:00:00 2001 -From: Christian Costa -Date: Sun, 3 Apr 2016 22:30:59 +0200 -Subject: wined3d: Display FIXME only once when blen op is 0. - ---- - dlls/wined3d/state.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c -index e5e550e..6ca506b 100644 ---- a/dlls/wined3d/state.c -+++ b/dlls/wined3d/state.c -@@ -291,8 +291,11 @@ static GLenum gl_blend_op(const struct wined3d_gl_info *gl_info, enum wined3d_bl - case WINED3D_BLEND_OP_MAX: - return gl_info->supported[EXT_BLEND_MINMAX] ? GL_MAX : GL_FUNC_ADD; - default: -- FIXME("Unhandled blend op %#x.\n", op); -+ { -+ static int once; -+ if (op || !once++) FIXME("Unhandled blend op %#x.\n", op); - return GL_FUNC_ADD; -+ } - } - } - --- -2.7.1 - diff --git a/patches/winex11-XFixes/0001-winex11.drv-Fix-compilation-without-XFixes.patch b/patches/winex11-XFixes/0001-winex11.drv-Fix-compilation-without-XFixes.patch new file mode 100644 index 00000000..8f258de0 --- /dev/null +++ b/patches/winex11-XFixes/0001-winex11.drv-Fix-compilation-without-XFixes.patch @@ -0,0 +1,41 @@ +From d4dc0e7e0c45cce29e4b6e968184eb6c946b825e Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner +Date: Thu, 25 May 2017 01:50:05 +0200 +Subject: winex11.drv: Fix compilation without XFixes. + +--- + dlls/winex11.drv/clipboard.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/dlls/winex11.drv/clipboard.c b/dlls/winex11.drv/clipboard.c +index 3da40811794..8e6e05b8288 100644 +--- a/dlls/winex11.drv/clipboard.c ++++ b/dlls/winex11.drv/clipboard.c +@@ -1954,21 +1954,21 @@ static BOOL wait_clipboard_mutex(void) + + + /************************************************************************** +- * handle_selection_notify_event ++ * selection_notify_event + * + * Called when x11 clipboard content changes + */ ++#ifdef SONAME_LIBXFIXES + static BOOL selection_notify_event( HWND hwnd, XEvent *event ) + { +-#ifdef SONAME_LIBXFIXES + XFixesSelectionNotifyEvent *req = (XFixesSelectionNotifyEvent*)event; + + if (!is_clipboard_owner) return FALSE; + if (req->owner == selection_window) return FALSE; + request_selection_contents( req->display, TRUE ); + return FALSE; +-#endif + } ++#endif + + /************************************************************************** + * xfixes_init +-- +2.12.2 +