diff --git a/files/0001-winhlp32-Workaround-a-bug-in-Flex.patch b/files/0001-winhlp32-Workaround-a-bug-in-Flex.patch new file mode 100644 --- /dev/null +++ b/files/0001-winhlp32-Workaround-a-bug-in-Flex.patch @@ -0,0 +1,34 @@ +From cf6bdd7b7dc1dc1ba31bd48171c218ba3503eb76 Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner +Date: Sat, 14 Jan 2017 05:48:28 +0100 +Subject: winhlp32: Workaround a bug in Flex. + +--- + programs/winhlp32/macro.lex.l | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +diff --git a/programs/winhlp32/macro.lex.l b/programs/winhlp32/macro.lex.l +index 8f6945ca988..da2dd22e447 100644 +--- a/programs/winhlp32/macro.lex.l ++++ b/programs/winhlp32/macro.lex.l +@@ -20,7 +20,7 @@ + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + %} +-%option noinput nounput never-interactive 8bit ++%option noinput nounput never-interactive 8bit noyywrap + %x quote + %{ + #include "config.h" +@@ -367,7 +367,3 @@ WINHELP_WINDOW* MACRO_CurrentWindow(void) + { + return lex_data ? lex_data->window : Globals.active_win; + } +- +-#ifndef yywrap +-int yywrap(void) { return 1; } +-#endif +-- +2.11.0 + + diff --git a/files/30-win32-aliases.conf b/files/30-win32-aliases.conf new file mode 100644 --- /dev/null +++ b/files/30-win32-aliases.conf @@ -0,0 +1,21 @@ + + + + + MS Shell Dlg + Microsoft Sans Serif + sans-serif + + + MS Shell Dlg 2 + Tahoma + sans-serif + + + + MS Sans Serif + Microsoft Sans Serif + sans-serif + + + diff --git a/files/d3d9-helper.patch b/files/d3d9-helper.patch --- a/files/d3d9-helper.patch +++ b/files/d3d9-helper.patch @@ -1,6 +1,6 @@ -From 585f317c9677779f6c917606b8b2271cb93fd872 Mon Sep 17 00:00:00 2001 +From 4ab841665be1b0b924773b677be85e6ff82cc794 Mon Sep 17 00:00:00 2001 From: Nick Sarnie -Date: Wed, 19 Apr 2017 23:35:30 -0400 +Date: Mon, 29 May 2017 10:34:33 -0400 Subject: [PATCH] D3D9 Helper Signed-off-by: Nick Sarnie @@ -18,10 +18,10 @@ create mode 100644 programs/winecfg/staging.c diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c -index cf758505a4..6ea32252af 100644 +index 518a99f590..d0f274e99c 100644 --- a/dlls/ntdll/loader.c +++ b/dlls/ntdll/loader.c -@@ -92,6 +92,7 @@ struct builtin_load_info +@@ -93,6 +93,7 @@ struct builtin_load_info { const WCHAR *load_path; const WCHAR *filename; @@ -29,7 +29,7 @@ NTSTATUS status; WINE_MODREF *wm; }; -@@ -123,7 +124,8 @@ static WINE_MODREF *cached_modref; +@@ -124,7 +125,8 @@ static WINE_MODREF *cached_modref; static WINE_MODREF *current_modref; static WINE_MODREF *last_failed_modref; @@ -39,7 +39,7 @@ static NTSTATUS process_attach( WINE_MODREF *wm, LPVOID lpReserved ); static FARPROC find_ordinal_export( HMODULE module, const IMAGE_EXPORT_DIRECTORY *exports, DWORD exp_size, DWORD ordinal, LPCWSTR load_path ); -@@ -448,7 +450,7 @@ static FARPROC find_forwarded_export( HMODULE module, const char *forward, LPCWS +@@ -449,7 +451,7 @@ static FARPROC find_forwarded_export( HMODULE module, const char *forward, LPCWS if (!(wm = find_basename_module( mod_name ))) { TRACE( "delay loading %s for '%s'\n", debugstr_w(mod_name), forward ); @@ -48,7 +48,7 @@ !(wm->ldr.Flags & LDR_DONT_RESOLVE_REFS)) { if (process_attach( wm, NULL ) != STATUS_SUCCESS) -@@ -604,7 +606,7 @@ static BOOL import_dll( HMODULE module, const IMAGE_IMPORT_DESCRIPTOR *descr, LP +@@ -605,7 +607,7 @@ static BOOL import_dll( HMODULE module, const IMAGE_IMPORT_DESCRIPTOR *descr, LP { ascii_to_unicode( buffer, name, len ); buffer[len] = 0; @@ -57,7 +57,7 @@ } else /* need to allocate a larger buffer */ { -@@ -612,7 +614,7 @@ static BOOL import_dll( HMODULE module, const IMAGE_IMPORT_DESCRIPTOR *descr, LP +@@ -613,7 +615,7 @@ static BOOL import_dll( HMODULE module, const IMAGE_IMPORT_DESCRIPTOR *descr, LP if (!ptr) return FALSE; ascii_to_unicode( ptr, name, len ); ptr[len] = 0; @@ -66,7 +66,7 @@ RtlFreeHeap( GetProcessHeap(), 0, ptr ); } -@@ -936,7 +938,7 @@ static NTSTATUS fixup_imports( WINE_MODREF *wm, LPCWSTR load_path ) +@@ -937,7 +939,7 @@ static NTSTATUS fixup_imports( WINE_MODREF *wm, LPCWSTR load_path ) * Allocate a WINE_MODREF structure and add it to the process list * The loader_section must be locked while calling this function. */ @@ -75,7 +75,7 @@ { WINE_MODREF *wm; const WCHAR *p; -@@ -958,7 +960,7 @@ static WINE_MODREF *alloc_module( HMODULE hModule, LPCWSTR filename ) +@@ -959,7 +961,7 @@ static WINE_MODREF *alloc_module( HMODULE hModule, LPCWSTR filename ) wm->ldr.TimeDateStamp = 0; wm->ldr.ActivationContext = 0; @@ -84,7 +84,7 @@ if ((p = strrchrW( wm->ldr.FullDllName.Buffer, '\\' ))) p++; else p = wm->ldr.FullDllName.Buffer; RtlInitUnicodeString( &wm->ldr.BaseDllName, p ); -@@ -1591,7 +1593,7 @@ static void load_builtin_callback( void *module, const char *filename ) +@@ -1620,7 +1622,7 @@ static void load_builtin_callback( void *module, const char *filename ) return; } @@ -93,7 +93,7 @@ RtlFreeHeap( GetProcessHeap(), 0, fullname ); if (!wm) { -@@ -1773,8 +1775,8 @@ static NTSTATUS perform_relocations( void *module, SIZE_T len ) +@@ -1802,8 +1804,8 @@ static NTSTATUS perform_relocations( void *module, SIZE_T len ) /****************************************************************************** * load_native_dll (internal) */ @@ -104,7 +104,7 @@ { void *module; HANDLE mapping; -@@ -1808,7 +1810,7 @@ static NTSTATUS load_native_dll( LPCWSTR load_path, LPCWSTR name, HANDLE file, +@@ -1837,7 +1839,7 @@ static NTSTATUS load_native_dll( LPCWSTR load_path, LPCWSTR name, HANDLE file, /* create the MODREF */ @@ -113,7 +113,7 @@ { status = STATUS_NO_MEMORY; goto done; -@@ -1872,8 +1874,8 @@ done: +@@ -1901,8 +1903,8 @@ done: /*********************************************************************** * load_builtin_dll */ @@ -124,7 +124,7 @@ { char error[256], dllname[MAX_PATH]; const WCHAR *name, *p; -@@ -1893,6 +1895,7 @@ static NTSTATUS load_builtin_dll( LPCWSTR load_path, LPCWSTR path, HANDLE file, +@@ -1922,6 +1924,7 @@ static NTSTATUS load_builtin_dll( LPCWSTR load_path, LPCWSTR path, HANDLE file, */ info.load_path = load_path; info.filename = NULL; @@ -132,7 +132,7 @@ info.status = STATUS_SUCCESS; info.wm = NULL; -@@ -2211,14 +2214,14 @@ overflow: +@@ -2240,14 +2243,14 @@ overflow: return STATUS_BUFFER_TOO_SMALL; } @@ -149,7 +149,7 @@ { enum loadorder loadorder; WCHAR buffer[64]; -@@ -2255,6 +2258,25 @@ static NTSTATUS load_dll( LPCWSTR load_path, LPCWSTR libname, DWORD flags, WINE_ +@@ -2284,6 +2287,25 @@ static NTSTATUS load_dll( LPCWSTR load_path, LPCWSTR libname, DWORD flags, WINE_ } main_exe = get_modref( NtCurrentTeb()->Peb->ImageBaseAddress ); @@ -175,7 +175,7 @@ loadorder = get_load_order( main_exe ? main_exe->ldr.BaseDllName.Buffer : NULL, filename ); if (handle && is_fake_dll( handle )) -@@ -2277,22 +2299,22 @@ static NTSTATUS load_dll( LPCWSTR load_path, LPCWSTR libname, DWORD flags, WINE_ +@@ -2306,22 +2328,22 @@ static NTSTATUS load_dll( LPCWSTR load_path, LPCWSTR libname, DWORD flags, WINE_ if (!handle) nts = STATUS_DLL_NOT_FOUND; else { @@ -203,7 +203,7 @@ if (nts == STATUS_SUCCESS && loadorder == LO_DEFAULT && (MODULE_InitDLL( *pwm, DLL_WINE_PREATTACH, NULL ) != STATUS_SUCCESS)) { -@@ -2302,7 +2324,7 @@ static NTSTATUS load_dll( LPCWSTR load_path, LPCWSTR libname, DWORD flags, WINE_ +@@ -2331,7 +2353,7 @@ static NTSTATUS load_dll( LPCWSTR load_path, LPCWSTR libname, DWORD flags, WINE_ nts = STATUS_DLL_NOT_FOUND; } if (nts == STATUS_DLL_NOT_FOUND && loadorder != LO_BUILTIN) @@ -212,7 +212,7 @@ break; } -@@ -2335,7 +2357,7 @@ NTSTATUS WINAPI DECLSPEC_HOTPATCH LdrLoadDll(LPCWSTR path_name, DWORD flags, +@@ -2364,7 +2386,7 @@ NTSTATUS WINAPI DECLSPEC_HOTPATCH LdrLoadDll(LPCWSTR path_name, DWORD flags, RtlEnterCriticalSection( &loader_section ); if (!path_name) path_name = NtCurrentTeb()->Peb->ProcessParameters->DllPath.Buffer; @@ -221,7 +221,7 @@ if (nts == STATUS_SUCCESS && !(wm->ldr.Flags & LDR_DONT_RESOLVE_REFS)) { -@@ -3306,7 +3328,7 @@ void __wine_process_init(void) +@@ -3335,7 +3357,7 @@ void __wine_process_init(void) /* setup the load callback and create ntdll modref */ wine_dll_set_callback( load_builtin_callback ); @@ -842,5 +842,5 @@ /* @makedep: winecfg.ico */ -- -2.12.2 +2.13.0 diff --git a/files/wine-d3d9.patch b/files/wine-d3d9.patch --- a/files/wine-d3d9.patch +++ b/files/wine-d3d9.patch @@ -1,6 +1,6 @@ -From e22c3b7c8bec9ee759d39aa652213b0abcba26a1 Mon Sep 17 00:00:00 2001 +From 61860dfa0c46176de3d109c05578725c96cccf02 Mon Sep 17 00:00:00 2001 From: Nick Sarnie -Date: Wed, 19 Apr 2017 23:34:51 -0400 +Date: Mon, 29 May 2017 10:33:53 -0400 Subject: [PATCH] Wine D3D9 Signed-off-by: Nick Sarnie @@ -41,7 +41,7 @@ create mode 100644 dlls/d3d9-nine/wndproc.h diff --git a/configure.ac b/configure.ac -index 0a8d88390f..4b86d74c0e 100644 +index 01c425b221..3f454fea5f 100644 --- a/configure.ac +++ b/configure.ac @@ -66,6 +66,14 @@ AC_ARG_WITH(openal, AS_HELP_STRING([--without-openal],[do not use OpenAL]), @@ -59,7 +59,7 @@ AC_ARG_WITH(osmesa, AS_HELP_STRING([--without-osmesa],[do not use the OSMesa library])) AC_ARG_WITH(oss, AS_HELP_STRING([--without-oss],[do not use the OSS sound support])) AC_ARG_WITH(pcap, AS_HELP_STRING([--without-pcap],[do not use the Packet Capture library]), -@@ -386,6 +394,8 @@ AC_CHECK_LIB(ossaudio,_oss_ioctl) +@@ -388,6 +396,8 @@ AC_CHECK_LIB(ossaudio,_oss_ioctl) AC_SUBST(OPENGL_LIBS,"") @@ -68,7 +68,7 @@ dnl **** Check for header files **** AC_SYS_LARGEFILE() -@@ -1207,6 +1217,183 @@ OpenGL and Direct3D won't be supported.]) +@@ -1219,6 +1229,183 @@ OpenGL and Direct3D won't be supported.]) WINE_NOTICE_WITH(va,[test "x$ac_cv_lib_soname_va" = "x" -o "x$ac_cv_lib_soname_va_x11" = "x" -o "x$ac_cv_lib_soname_va_drm" = "x"], [libva ${notice_platform}development files not found, GPU video acceleration won't be supported.]) @@ -252,7 +252,7 @@ CPPFLAGS="$ac_save_CPPFLAGS" else X_CFLAGS="" -@@ -2987,6 +3174,7 @@ WINE_CONFIG_DLL(d3d8,,[implib]) +@@ -3020,6 +3207,7 @@ WINE_CONFIG_DLL(d3d8,,[implib]) WINE_CONFIG_TEST(dlls/d3d8/tests) WINE_CONFIG_DLL(d3d9,,[implib]) WINE_CONFIG_TEST(dlls/d3d9/tests) @@ -5736,5 +5736,5 @@ + +#endif -- -2.12.2 +2.13.0 diff --git a/package.yml b/package.yml --- a/package.yml +++ b/package.yml @@ -1,8 +1,8 @@ name : wine -version : 2.7 -release : 17 +version : 2.9 +release : 18 source : - - https://dl.winehq.org/wine/source/2.x/wine-2.7.tar.xz : e55a43088e313c45f7ab49272b7cb441c06f5659fb4220b2325dc060db0ee14c + - https://dl.winehq.org/wine/source/2.x/wine-2.9.tar.xz : ac46f7bbbbc1dc135c95e4f98d28bf6e3d7a78fb7f9ba6caa7354a3e8786545f license : LGPL-2.1 component : virt summary : Wine compatibility layer for Windows emulation. @@ -62,32 +62,25 @@ rundeps : - 32bit : - freetype2-32bit - - ncurses-32bit + - harfbuzz-32bit - libtxc_dxtn-32bit - libpng-32bit - libtiff-32bit - libgnutls-32bit + - ncurses-32bit setup : | # D3D9 support %patch -p1 < $pkgfiles/d3d9-helper.patch %patch -p1 < $pkgfiles/wine-d3d9.patch + + %patch -p1 < $pkgfiles/0001-winhlp32-Workaround-a-bug-in-Flex.patch + autoreconf -vfi # Get 64-bit done first. mkdir wine64 && pushd wine64 ../configure %CONFOPTS% --enable-win64 \ - --with-d3d9-nine=yes \ - --with-gnutls=yes \ - --with-glu=yes \ - --with-png=yes \ - --with-v4l=yes \ - --with-jpeg=yes \ - --with-xshm=yes \ - --with-xcomposite=yes \ - --with-pulse=yes \ - --with-opengl=yes \ - --with-openal=yes \ - --with-alsa=yes + --with-x %make popd build : | @@ -95,19 +88,9 @@ mkdir wine32 && pushd wine32 PKG_CONFIG_PATH=/usr/lib32/pkgconfig:/usr/share/pkgconfig:/usr/lib64/pkgconfig ../configure %CONFOPTS% --with-wine64=../wine64 \ --libdir=/usr/lib32 \ - --with-d3d9-nine=yes \ - --with-gnutls=yes \ - --with-glu=yes \ - --with-png=yes \ - --with-v4l=yes \ - --with-jpeg=yes \ - --with-xshm=yes \ - --with-xcomposite=yes \ - --with-pulse=yes \ - --with-opengl=yes \ - --with-openal=yes \ - --with-alsa=yes + --with-x %make + popd install : | pushd wine32 %make_install @@ -116,3 +99,10 @@ pushd wine64 %make_install popd + + # Font aliasing settings for Win32 applications + install -d 755 $installdir/usr/share/fonts/conf.d + install -d 755 $installdir/usr/share/fontconfig/conf.avail + install -m 644 $pkgfiles/30-win32-aliases.conf $installdir/usr/share/fontconfig/conf.avail + ln -s /usr/share/fontconfig/conf.avail/30-win32-aliases.conf $installdir/usr/share/fonts/conf.d/30-win32-aliases.conf + diff --git a/pspec_x86_64.xml b/pspec_x86_64.xml --- a/pspec_x86_64.xml +++ b/pspec_x86_64.xml @@ -2,8 +2,8 @@ wine - Ikey Doherty - ikey@solus-project.com + Pierre-Yves + pyu@riseup.net LGPL-2.1 virt @@ -350,6 +350,7 @@ /usr/lib64/wine/expand.exe.so /usr/lib64/wine/explorer.exe.so /usr/lib64/wine/explorerframe.dll.so + /usr/lib64/wine/ext-ms-win-authz-context-l1-1-0.dll.so /usr/lib64/wine/ext-ms-win-domainjoin-netjoin-l1-1-0.dll.so /usr/lib64/wine/ext-ms-win-gdi-dc-create-l1-1-1.dll.so /usr/lib64/wine/ext-ms-win-gdi-dc-l1-2-0.dll.so @@ -697,6 +698,7 @@ /usr/lib64/wine/fakedlls/expand.exe /usr/lib64/wine/fakedlls/explorer.exe /usr/lib64/wine/fakedlls/explorerframe.dll + /usr/lib64/wine/fakedlls/ext-ms-win-authz-context-l1-1-0.dll /usr/lib64/wine/fakedlls/ext-ms-win-domainjoin-netjoin-l1-1-0.dll /usr/lib64/wine/fakedlls/ext-ms-win-gdi-dc-create-l1-1-1.dll /usr/lib64/wine/fakedlls/ext-ms-win-gdi-dc-l1-2-0.dll @@ -1245,6 +1247,7 @@ /usr/lib64/wine/libloadperf.def /usr/lib64/wine/liblz32.def /usr/lib64/wine/libmapi32.def + /usr/lib64/wine/libmfplat.def /usr/lib64/wine/libmlang.def /usr/lib64/wine/libmpr.def /usr/lib64/wine/libmprapi.def @@ -1702,6 +1705,8 @@ /usr/lib64/wine/xpsprint.dll.so /usr/lib64/wine/xpssvcs.dll.so /usr/share/applications/wine.desktop + /usr/share/fontconfig/conf.avail/30-win32-aliases.conf + /usr/share/fonts/conf.d/30-win32-aliases.conf /usr/share/man /usr/share/wine @@ -1713,7 +1718,7 @@ emul32 - wine + wine /usr/bin/wine @@ -1728,8 +1733,8 @@ programming.devel - wine-32bit - wine-devel + wine-32bit + wine-devel /usr/lib32/lib*.so @@ -1742,7 +1747,7 @@ programming.devel - wine + wine /usr/include/ @@ -1750,12 +1755,12 @@ - - 2017-04-30 - 2.7 + + 2017-06-02 + 2.9 Packaging update - Ikey Doherty - ikey@solus-project.com + Pierre-Yves + pyu@riseup.net \ No newline at end of file