Source: wine-development Version: 4.21-2 Severity: serious control: affects -1 src:wine
Hello, I took some time to have a look on wine FTBFS, and I think I crafted some patches that are pending upstream review https://bugs.winehq.org/show_bug.cgi?id=48398 +wine-development (4.21-2.1) unstable; urgency=medium + + * Non-maintainer upload (Closes: #-1) + * Fix new-gcc errors on arm64. + * Do not check anymore for sysctl header file + + -- Gianfranco Costamagna <locutusofb...@debian.org> Tue, 31 Dec 2019 17:27:10 +0100 the sysctl hack is needed for the new glibc The very same patches are applying cleanly to wine too. thanks Gianfranco
diff -Nru wine-5.0~rc1/debian/patches/anysize-array.patch wine-5.0~rc1/debian/patches/anysize-array.patch --- wine-5.0~rc1/debian/patches/anysize-array.patch 1970-01-01 01:00:00.000000000 +0100 +++ wine-5.0~rc1/debian/patches/anysize-array.patch 2019-12-31 18:29:19.000000000 +0100 @@ -0,0 +1,32 @@ +Description: +clang -c -o file.o file.c -I. -I../../include -I../../include/msvcrt -D__WINESRC__ -D_REENTRANT -fPIC -fno-builtin -fshort-wchar -Wall -pipe -fcf-protection=none -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Wno-pragma-pack -Wstrict-prototypes -Wtype-limits -Wvla -Wwrite-strings -Wpointer-arith -gdwarf-2 -gstrict-dwarf -Werror -Wdate-time -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wno-shift-overflow -Wno-unused-function -Wno-deprecated-declarations -Wno-enum-conversion -Wno-absolute-value +file.c:1057:49: error: array index 1 is past the end of the array (which contains 1 element) [-Werror,-Warray-bounds] + dir_info->FileName[0] == '.' && dir_info->FileName[1] == '.') continue; + ^ ~ +../../include/winternl.h:551:5: note: array 'FileName' declared here + WCHAR FileName[ANYSIZE_ARRAY]; +Author: Gianfranco Costamagna <locutusofb...@debian.org> +Last-Update: 2019-12-31 + +--- wine-development-4.21.orig/include/winnt.h ++++ wine-development-4.21/include/winnt.h +@@ -4115,7 +4115,7 @@ typedef struct tagMESSAGE_RESOURCE_DATA + * First a constant for the following typedefs. + */ + +-#define ANYSIZE_ARRAY 1 ++#define ANYSIZE_ARRAY 2 + + /* FIXME: Orphan. What does it point to? */ + typedef PVOID PACCESS_TOKEN; +--- wine-development-4.21.orig/tools/winapi/winapi_test ++++ wine-development-4.21/tools/winapi/winapi_test +@@ -140,7 +140,7 @@ my $progress_max = scalar(@files); + my %type_name2type; + + my %defines = ( +- "ANYSIZE_ARRAY" => 1, ++ "ANYSIZE_ARRAY" => 2, + "CCHDEVICENAME" => 32, + "CCHILDREN_TITLEBAR+1" => 6, + "ELF_VENDOR_SIZE" => 4, diff -Nru wine-5.0~rc1/debian/patches/fix-bad-comparison.patch wine-5.0~rc1/debian/patches/fix-bad-comparison.patch --- wine-5.0~rc1/debian/patches/fix-bad-comparison.patch 1970-01-01 01:00:00.000000000 +0100 +++ wine-5.0~rc1/debian/patches/fix-bad-comparison.patch 2019-12-31 18:29:19.000000000 +0100 @@ -0,0 +1,36 @@ +Description: +../../tools/winegcc/winegcc -o d3dcompiler_47.dll.so --wine-objdir ../.. -fPIC -fasynchronous-unwind-tables -shared d3dcompiler_47.spec -mno-cygwin asmparser.o blob.o bytecodewriter.o compiler.o main.o preproc.o reflection.o utils.o asmshader.tab.o hlsl.tab.o ppy.tab.o asmshader.yy.o hlsl.yy.o ppl.yy.o version.res ../../dlls/dxguid/libdxguid.a ../../dlls/uuid/libuuid.a -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,-rpath,/usr/lib/aarch64-linux-gnu/wine +../d3dx9_36/effect.c:1472:12: error: result of comparison of unsigned enum expression < 0 is always false [-Werror,-Wtautological-unsigned-enum-zero-compare] + if (op < 0 || op > SCT_PSINT) + ~~ ^ ~ +1 error generated. + +Author: Gianfranco Costamagna <locutusofb...@debian.org> + +Forwarded: pending +Last-Update: 2019-12-31 + +--- wine-5.0~rc1.orig/dlls/d3dx9_36/effect.c ++++ wine-5.0~rc1/dlls/d3dx9_36/effect.c +@@ -1469,7 +1469,7 @@ static HRESULT d3dx_set_shader_const_sta + D3DXVECTOR4 value; + HRESULT ret; + +- if (op < 0 || op > SCT_PSINT) ++ if (op > SCT_PSINT) + { + FIXME("Unknown op %u.\n", op); + return D3DERR_INVALIDCALL; +--- wine-5.0~rc1.orig/dlls/gdiplus/graphics.c ++++ wine-5.0~rc1/dlls/gdiplus/graphics.c +@@ -6836,8 +6836,8 @@ GpStatus WINGDIPAPI GdipTransformPoints( + GpCoordinateSpace src_space, GpPointF *points, INT count) + { + if(!graphics || !points || count <= 0 || +- dst_space < 0 || dst_space > CoordinateSpaceDevice || +- src_space < 0 || src_space > CoordinateSpaceDevice) ++ dst_space > CoordinateSpaceDevice || ++ src_space > CoordinateSpaceDevice) + return InvalidParameter; + + if(graphics->busy) diff -Nru wine-5.0~rc1/debian/patches/for-loop.patch wine-5.0~rc1/debian/patches/for-loop.patch --- wine-5.0~rc1/debian/patches/for-loop.patch 1970-01-01 01:00:00.000000000 +0100 +++ wine-5.0~rc1/debian/patches/for-loop.patch 2019-12-31 18:29:19.000000000 +0100 @@ -0,0 +1,26 @@ +Description: a for loop from n down to >=0 can't be assigned to an unsigned int + +clang -c -o variant.o variant.c -I. -I../../include -I../../include/msvcrt -D__WINESRC__ -D_OLEAUT32_ -D_REENTRANT -fPIC -fno-builtin -fshort-wchar -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Wno-pragma-pack -Wstrict-prototypes -Wtype-limits -Wvla -Wwrite-strings -Wpointer-arith -gdwarf-2 -gstrict-dwarf -Werror -Wdate-time -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wno-shift-overflow -Wno-unused-function -Wno-deprecated-declarations -Wno-enum-conversion -Wno-absolute-value +signal_arm64.c:1606:48: error: result of comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-unsigned-zero-compare] + for (i = func->u.s.RegF / 2 - 1; i >= 0; i--) + ~ ^ ~ +signal_arm64.c:1634:44: error: result of comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-unsigned-zero-compare] + for (i = func->u.s.RegI / 2 - 1; i >= 0; i--) + ~ ^ ~ +2 errors generated. +make[2]: *** [Makefile:331: signal_arm64.o] Error 1 + +Author: Gianfranco Costamagna <locutusofb...@debian.org> +--- wine-development-4.21.orig/dlls/ntdll/signal_arm64.c ++++ wine-development-4.21/dlls/ntdll/signal_arm64.c +@@ -1519,7 +1519,8 @@ static void process_unwind_codes( BYTE * + static void *unwind_packed_data( ULONG_PTR base, ULONG_PTR pc, RUNTIME_FUNCTION *func, + CONTEXT *context, KNONVOLATILE_CONTEXT_POINTERS *ptrs ) + { +- unsigned int i, len, offset, skip = 0; ++ int i; ++ unsigned int len, offset, skip = 0; + unsigned int int_size = func->u.s.RegI * 8, fp_size = func->u.s.RegF * 8, regsave, local_size; + + TRACE( "function %lx-%lx: len=%#x flag=%x regF=%u regI=%u H=%u CR=%u frame=%x\n", + diff -Nru wine-5.0~rc1/debian/patches/no-sysctl.patch wine-5.0~rc1/debian/patches/no-sysctl.patch --- wine-5.0~rc1/debian/patches/no-sysctl.patch 1970-01-01 01:00:00.000000000 +0100 +++ wine-5.0~rc1/debian/patches/no-sysctl.patch 2019-12-31 17:25:19.000000000 +0100 @@ -0,0 +1,16 @@ +Description: Do not look for sysctl, to avoid gcc warnings with Werror=cpp on newer glibc + +Author: Gianfranco Costamagna <locutusofb...@debian.org> +Last-Update: 2019-12-31 + +--- wine-5.0~rc1.orig/configure.ac ++++ wine-5.0~rc1/configure.ac +@@ -553,7 +553,7 @@ AC_HEADER_STAT() + + dnl **** Checks for headers that depend on other ones **** + +-AC_CHECK_HEADERS([sys/mount.h sys/statfs.h sys/sysctl.h sys/user.h sys/vfs.h],,, ++AC_CHECK_HEADERS([sys/mount.h sys/statfs.h sys/user.h sys/vfs.h],,, + [#include <sys/types.h> + #ifdef HAVE_SYS_PARAM_H + # include <sys/param.h> diff -Nru wine-5.0~rc1/debian/patches/series wine-5.0~rc1/debian/patches/series --- wine-5.0~rc1/debian/patches/series 2019-12-18 05:29:54.000000000 +0100 +++ wine-5.0~rc1/debian/patches/series 2019-12-31 18:29:19.000000000 +0100 @@ -38,3 +38,7 @@ warnings/argument-promotion.patch warnings/discarded-qualifiers.patch warnings/uninitialized-variables.patch +no-sysctl.patch +fix-bad-comparison.patch +anysize-array.patch +for-loop.patch