Compare commits

..

155 Commits

Author SHA1 Message Date
Sebastian Lackner
17c1053de4 Release 1.7.34-1 (Debian/Ubuntu specific dependency fix).
The package rename caused some problems on Debian/Ubuntu. This updated version should
hopefully fix those. Other distributions which do not use debian/{rules,control} for
packaging are unaffected by these changes.
2015-01-11 19:25:22 +01:00
Sebastian Lackner
b56948f392 debian/rules: Second attempt to fix Debian/Ubuntu dependencies, this time by providing the compatibility symlinks in the main package. 2015-01-11 13:42:15 +01:00
Michael MĂĽller
7850f8bd74 Fix debian control file 2015-01-11 07:19:23 +01:00
Sebastian Lackner
25a137c8c6 debian/control: Add explicit dependency from wine-compholio dummy packages to subpackages. 2015-01-11 05:32:52 +01:00
Sebastian Lackner
cdf5f42599 Release 1.7.34. 2015-01-10 22:27:16 +01:00
Sebastian Lackner
daf84945cb kernel32-Named_Pipe: When running on an older kernel, make sure that ntdll doesn't try to use message mode features. 2015-01-10 18:13:05 +01:00
Sebastian Lackner
a83a587270 patchinstall.sh: Use /bin/sh instead of bash. 2015-01-10 15:30:31 +01:00
Sebastian Lackner
595ac8afa2 wined3d-CSMT_Main: Fix warning in CSMT patchset, move fixes for uninitialized memory accesses into corresponding patches. 2015-01-10 07:35:17 +01:00
Sebastian Lackner
09ab82e9d0 ws2_32-WSARecv_Last_Error: Remove unnecessary tests, remove todo_wine where necessary. 2015-01-10 03:53:38 +01:00
Sebastian Lackner
87fd17de51 Update DXTn patches to better handle when libtxc_dxtn is missing or support is not compiled in. 2015-01-10 03:28:30 +01:00
Sebastian Lackner
ec40c1c8d0 nvapi-Stub_DLL: Build nvapi.dll only on 32-bit systems and nvapi64.dll only on 64-bit systems. 2015-01-10 00:22:00 +01:00
Sebastian Lackner
a0d5d4158b nvcuda-CUDA_Support: Rename function arguments in Unknown1 interface back to void*, we don't know enough about this internal interface yet. 2015-01-09 19:34:10 +01:00
Sebastian Lackner
e7782a24bf nvcuda-CUDA_Support: Replace a FIXME with a TRACE, its harmless now that ContextStorage is wrapped properly. 2015-01-09 08:05:29 +01:00
Sebastian Lackner
5c890acd8a nvcuda-CUDA_Support: Properly wrap undocumented 'ContextStorage' interface and add tests. 2015-01-09 07:58:31 +01:00
Sebastian Lackner
09dbde3104 nvcuda-CUDA_Support: Add additional patch for functions added in CUDA 6.5 2015-01-09 04:46:29 +01:00
Sebastian Lackner
e0a9d6cb9d nvcuda-CUDA_Support: Merge Unknown5 interface into main patch, move workaround into separate patch (to be removed later). 2015-01-09 03:47:45 +01:00
Sebastian Lackner
19d41e6139 winepulse-Pulseaudio_Support: Added missing files. 2015-01-08 18:41:18 +01:00
Sebastian Lackner
f2b6e399d4 Rebased winepulse-Pulseaudio_Support patches to latest version from http://repo.or.cz/w/wine/multimedia.git. 2015-01-08 18:34:58 +01:00
Sebastian Lackner
d4fa1d1816 patchinstall.sh: Implement 'stg' (stacked git) backend. 2015-01-08 15:41:25 +01:00
Sebastian Lackner
e01a0f00de patchinstall.sh: Rename 'git' backend to 'git-am', add 'git-apply' backend. 2015-01-08 14:59:00 +01:00
Sebastian Lackner
4f4df208a9 patchupdate.py: Fix issue when detecting dependencies, make wined3d-CSMT_Main depend on wined3d-Color_Key. 2015-01-08 02:12:38 +01:00
Michael MĂĽller
62d458238d Clean up nvapi patches and add NvAPI_GetPhysicalGPUsFromLogicalGPU. 2015-01-08 01:09:51 +01:00
Sebastian Lackner
f80d76f069 Merge branch 'master' of github.com:wine-compholio/wine-staging 2015-01-08 00:40:58 +01:00
Sebastian Lackner
cb475f78f9 Added patch to fix color key regression causing pink rectangles around text. 2015-01-08 00:38:19 +01:00
Michael MĂĽller
0868bcbade Update existing nvapi patch and add new stubs. 2015-01-07 23:31:32 +01:00
Sebastian Lackner
ac1ffc70f8 patchupdate.py: Improve code-generation for dependency resolver. 2015-01-07 23:08:07 +01:00
Sebastian Lackner
fe43f3ddc6 Added patch to implement support for CUDA GPU video decoding. 2015-01-07 22:37:15 +01:00
Erich E. Hoover
3f85f1763b Actually add patch for previous commit... 2015-01-07 11:17:26 -07:00
Erich E. Hoover
1fe2ba1ddc Added patch for WSARecv to call SetLastError on success. 2015-01-07 10:50:48 -07:00
Sebastian Lackner
2543a28ce4 debian/rules: Call patchinstall.sh directly instead of using deprecated Makefile. 2015-01-07 11:09:21 +01:00
Sebastian Lackner
673cb4f847 Added patch to fix NULL dereference in ICSeqCompressFrameStart. 2015-01-07 10:51:59 +01:00
Sebastian Lackner
2e6bd2290e nvapi-Stub_DLL: Remove unnecessary DLL_WINE_PREATTACH check. 2015-01-07 10:40:48 +01:00
Sebastian Lackner
1f5939c74a nvcuda-CUDA_Support: Fix typos. 2015-01-07 10:36:35 +01:00
Sebastian Lackner
63509658f4 Merge branch 'master' of github.com:wine-compholio/wine-staging 2015-01-07 10:07:50 +01:00
Sebastian Lackner
9fb3f40824 Huge rewrite of patchupdate.py, use script based method to apply patches, deprecation of Makefile based method. 2015-01-07 10:02:38 +01:00
Michael MĂĽller
41728a6faf Added patch for nvapi stubs (required for GPU PhysX support). 2015-01-06 15:12:34 +01:00
Erich E. Hoover
5f3631c6be Removed patches accepted upstream and rebase. 2015-01-05 19:25:58 -07:00
Erich E. Hoover
ad5dcc9752 Fix issue with invalid handles being incorrect when a new process is created. 2015-01-04 23:40:46 -07:00
Erich E. Hoover
abdef6b13c Remove patch for creating handles for new consoles. 2015-01-04 11:47:29 -07:00
Sebastian Lackner
205001dab8 d3dx9_36-DrawText: Added patch to fix horizontal centering. 2015-01-04 19:32:27 +01:00
Erich E. Hoover
1ba1541771 Replace new console handle patch with a version that does not inherit the handles from the parent. 2015-01-04 09:33:16 -07:00
Erich E. Hoover
ef6a3db00f Fix mistaken removal of trace variable in NeedCurrentDirectoryForExePath patch. 2015-01-04 09:18:01 -07:00
Erich E. Hoover
d8cde81519 Added patch to creating handles for new consoles when a new process is created. 2015-01-04 00:08:23 -07:00
Erich E. Hoover
a5ec351f6e Added patch for CreateProcess to prioritize the working directory over the system search path. 2015-01-03 22:32:32 -07:00
Sebastian Lackner
4c95b9d483 Fix issue in ws2_32-WriteWatches patch which can cause exceptions on the signal stack. 2015-01-03 21:32:47 +01:00
Sebastian Lackner
90c12baba2 nvcuda-CUDA_Support: Add minimalistic cuda.h directly to wine to avoid dependency, split patchset. 2015-01-03 03:53:04 +01:00
Michael MĂĽller
d3262def33 Add nvcuda patch for two d3d9 init functions. 2015-01-03 00:36:12 +01:00
Erich E. Hoover
63a6c00152 Added patch with stubs for WinSqm[Start|End]Session. 2015-01-02 14:28:56 -07:00
Sebastian Lackner
aa13fb8472 nvcuda-CUDA_Support: Added patch for Unknown5 internal CUDA interface. 2015-01-02 22:00:32 +01:00
Sebastian Lackner
21ab9dc521 Release lock while calling TLS callbacks, use refcount to allow releasing an active callback. 2015-01-02 03:46:33 +01:00
Sebastian Lackner
40e8ab0c08 Added patches for D3DXComputeNormals and D3DXComputeNormalMap. 2015-01-02 03:32:58 +01:00
Michael MĂĽller
e09be4fd77 Added first nvcuda implementation. 2015-01-01 22:38:59 +01:00
Sebastian Lackner
9f43cabb0a Added patch to fix parameters for ConvertToIndexedBlendedMesh stub. 2015-01-01 16:42:23 +01:00
Sebastian Lackner
b5e303e711 Removed patch to reallocate buffer when adding records to AVI files (fixed upstream). 2014-12-31 23:45:20 +01:00
Sebastian Lackner
706ff96060 d3dx9_36-DrawText: Fix condition when stripping NULL chars at the end of buffer. 2014-12-31 00:54:52 +01:00
Sebastian Lackner
6294cf99ff Merge branch 'master' of github.com:wine-compholio/wine-staging 2014-12-30 21:03:14 +01:00
Sebastian Lackner
0ad98f7460 Added patch for ID3DXFont::DrawTextA/W support. 2014-12-30 21:00:02 +01:00
Erich E. Hoover
b22ef7765c Rebase dsound-Fast_Mixer patch against latest upstream. 2014-12-29 21:40:24 -07:00
Sebastian Lackner
2fce7d906c Merge branch 'maharmstone-master' 2014-12-30 03:23:35 +01:00
Sebastian Lackner
44abde0a0d Removed several patches (accepted upstream), disable dsound-Fast_Mixer until rebased. 2014-12-30 01:32:56 +01:00
Mark Harmstone
e103c8cb4a added patch to expose PKEY_AudioEndpoint_PhysicalSpeakers for Pulse 2014-12-29 22:05:03 +00:00
Sebastian Lackner
ca871ef7fd kernel32-Named_Pipe: Fix compilation issue on FreeBSD. 2014-12-29 18:48:39 +01:00
Sebastian Lackner
bbd04d95a2 Added patch to fix access violation when calling GetStringTypeW with NULL src. 2014-12-27 23:08:41 +01:00
Sebastian Lackner
1944c4b4e8 Added patch to avoid calling IDirect3DDevice7_DrawIndexedPrimitive if there is no primitive. 2014-12-27 18:56:01 +01:00
Sebastian Lackner
913f7f2af2 Add note that named pipe message mode support is only fully implemented on Linux. 2014-12-27 18:25:51 +01:00
Sebastian Lackner
9c6e895b0b Added patch to add support for named pipe message mode. 2014-12-27 17:33:55 +01:00
Sebastian Lackner
1f74cc531e wininet-encoding: Fix whitespace issue. 2014-12-27 14:35:38 +01:00
Sebastian Lackner
05fd4e7f64 Removed patch for IoCsqInitialize (accepted upstream). 2014-12-24 22:09:07 +01:00
Sebastian Lackner
74e480d41e Merge branch 'master' of github.com:wine-compholio/wine-staging 2014-12-23 23:08:31 +01:00
Sebastian Lackner
b6a21b238f Removed several patches (accepted upstream). 2014-12-23 23:07:04 +01:00
Erich E. Hoover
9b064a2d9b Add bug number for IOCTL_DVD_READ_STRUCTURE problem. 2014-12-23 11:20:17 -07:00
Sebastian Lackner
981ea8facf Removed patch for wine64 support on FreeBSD (accepted upstream). 2014-12-23 16:02:22 +01:00
Sebastian Lackner
a934f08991 Added patch to fix invalid usage of RegOpenKeyExW in msdmo. 2014-12-23 07:23:35 +01:00
Sebastian Lackner
ce701fe0df Added patch to try harder to get the host name address in getaddrinfo(). 2014-12-23 07:12:43 +01:00
Sebastian Lackner
91e07b125f Merge branch 'master' of github.com:wine-compholio/wine-staging 2014-12-23 06:36:07 +01:00
Sebastian Lackner
2ec8a387a0 Added patch to use actual program name if available to describe PulseAudio streams. 2014-12-23 06:33:31 +01:00
Erich E. Hoover
b594ebe2e7 Added patch to expect the correct buffer size for different IOCTL_DVD_READ_STRUCTURE requests. 2014-12-22 20:36:56 -07:00
Sebastian Lackner
4f213843ac Added patch for support of SLGetWindowsInformationDWORD. 2014-12-22 20:35:58 +01:00
Mark Harmstone
cdcb0f8b99 Added patch to extract program name to describe PulseAudio streams 2014-12-21 23:55:31 +00:00
Sebastian Lackner
9e0670934a winepulse-PulseAudio_Support: Merge last patch into corresponding commits. 2014-12-21 05:34:21 +01:00
Michael MĂĽller
f85f8cf234 Add another entry to list of fixed bugs for gdi32-MultiMonitor. 2014-12-21 01:37:42 +01:00
Michael MĂĽller
7bad59bbdd Provide font licenses as seperate files. 2014-12-20 23:17:47 +01:00
Sebastian Lackner
030275f110 Added test for RtlIpv4StringToAddressExA. 2014-12-20 20:13:49 +01:00
Sebastian Lackner
0d1d699881 Added patch with stub for D3DXIntersect. 2014-12-20 17:13:13 +01:00
Sebastian Lackner
a59b542fd6 Added patch with stub for D3DXComputeTangentFrameEx. 2014-12-20 17:02:35 +01:00
Sebastian Lackner
aeedb30ca0 Removed patch for stub of ntdll.RtlSetHeapInformation (accepted upstream), rebased wininet patch. 2014-12-19 23:39:35 +01:00
Michael MĂĽller
9efe53b3f5 Added patch for ID3DXEffect::FindNextValidTechnique. 2014-12-19 22:40:48 +01:00
Michael MĂĽller
3d8a3c0e69 Added patch for IDXGIOutput::GetDesc. 2014-12-19 21:35:01 +01:00
Sebastian Lackner
c6eae9c6a3 Merge branch 'master' of github.com:wine-compholio/wine-staging 2014-12-19 14:53:04 +01:00
Sebastian Lackner
135f617b33 Fix issue in user32-WndProc patch which caused crashes for some 16-bit apps. 2014-12-19 14:38:16 +01:00
Michael MĂĽller
64fafd5c2e debian: Provide more transitional dummy packages to (hopefully) fix upgrading. 2014-12-19 02:30:05 +01:00
Erich E. Hoover
72b64cb4f2 Update DOS Attributes patches to use ENOSYS and 'turn hexattr up to 11'. 2014-12-18 15:50:39 -07:00
Sebastian Lackner
f6749f92de Added patch for stub of ntdll.RtlSetHeapInformation. 2014-12-18 23:26:56 +01:00
Sebastian Lackner
d2c32c103a Merge branch 'master' of github.com:wine-compholio/wine-staging 2014-12-18 22:44:36 +01:00
Sebastian Lackner
777d431d9a Removed patch to export SHILCreateFromPath by name (accepted upstream). 2014-12-18 22:44:10 +01:00
Erich E. Hoover
2777cce402 Remove DOS Attribute dependency from Junction Point patchset (dependent patch accepted upstream). 2014-12-18 13:07:38 -07:00
Sebastian Lackner
3fe922b5f5 Added test for server-Unexpected_Wakeup patch. 2014-12-18 18:44:41 +01:00
Michael MĂĽller
dd5e8aebb1 debian: Fix breaks entry (again). 2014-12-18 04:50:58 +01:00
Michael MĂĽller
f7f1efa7df debian: Fix breaks entry. 2014-12-18 04:45:45 +01:00
Michael MĂĽller
0df2608bb1 debian: Provide only legacy symlink for bin directory. 2014-12-18 04:05:50 +01:00
Sebastian Lackner
2912921b94 Added patch to ensure X11 input events are handled even without explicit message loop. 2014-12-18 01:17:09 +01:00
Sebastian Lackner
7dac73a69b Partially removed patches for ntdll DOS attributes (accepted upstream). 2014-12-18 00:13:20 +01:00
Michael MĂĽller
90261acce1 Rename debian package to wine-staging and small changelog cleanup. 2014-12-17 20:36:31 +01:00
Sebastian Lackner
12af26a582 Avoid duplicate wined3d specfile by adding PARENTSPEC Makefile argument. 2014-12-17 04:27:10 +01:00
Sebastian Lackner
f3e96bb902 debian/changelog: Add a missing space. 2014-12-16 23:04:07 +01:00
Sebastian Lackner
565f1e2e53 Removed several patches (accepted upstream). 2014-12-16 22:22:31 +01:00
Sebastian Lackner
b0ab8b3913 Added patch to return proper charcount for GetLocaleInfo with LOCALE_IFIRSTDAYOFWEEK. 2014-12-16 04:12:24 +01:00
Sebastian Lackner
1de37be8c1 wininet-FtpFindFirstFile: Replace HeapFree with heap_free.
... which is the same, but makes the coding style look more similar to existing code.
2014-12-16 02:41:20 +01:00
Sebastian Lackner
71a0838ac3 Added patch to fix handling of subdirectory in FtpFindFirstFile. 2014-12-16 01:49:58 +01:00
Sebastian Lackner
8765c50218 Removed several patches (accepted upstream). 2014-12-15 22:50:30 +01:00
Sebastian Lackner
346417b032 ntdll-DOS_Attributes: Replace '==' with '=' in configure.ac to be compatible with alternative shells. 2014-12-15 14:32:00 +01:00
Sebastian Lackner
14dd3801bf Release 1.7.33. 2014-12-15 00:53:35 +01:00
Sebastian Lackner
d9dc8f76ba wined3d-CSMT_Helper: Remove autogenerated changes from 'configure'. 2014-12-15 00:12:40 +01:00
Sebastian Lackner
0201a48e29 wined3d-CSMT_Helper: Fix error in spec file. 2014-12-14 22:14:05 +01:00
Sebastian Lackner
0f0f8d3d6f Added patch to add winecfg Staging tab. 2014-12-14 21:55:51 +01:00
Sebastian Lackner
2971d1f90b Added patch to enable second version of wined3d with STAGING_CSMT enabled. 2014-12-14 21:45:45 +01:00
Sebastian Lackner
5c6cef5ac8 Added patches for CSMT support (not enabled yet). 2014-12-14 20:24:48 +01:00
Sebastian Lackner
152e0e26a9 patchupdate.py: Add all autogenerated files to git after creation. 2014-12-14 06:29:32 +01:00
Sebastian Lackner
ffd1b6cd6a patchupdate.py: Fix issue with generating IfDefined patches. 2014-12-14 06:20:48 +01:00
Sebastian Lackner
48a7480fc5 patchupdate.py: Implement 'IfDefined' patch property to autogenerate corresponding patch. 2014-12-14 06:03:05 +01:00
Sebastian Lackner
c0f9ca2ab5 patchupdate.py: Move logic to extract patches into separate function. 2014-12-14 04:57:16 +01:00
Sebastian Lackner
f30b0e34fb patchupdate.py: Ignore patch files which do not start with a number. 2014-12-14 04:54:34 +01:00
Sebastian Lackner
eadd577d84 patchutils.py: Implement algorithm to autogenerate #ifdef patches. 2014-12-14 04:30:05 +01:00
Michael MĂĽller
60f7d52725 Added patch to implement support for loader dll redirections. 2014-12-13 05:38:40 +01:00
Sebastian Lackner
f474c5783f Add definition file for bug 37701 (mfplat.MFStartup and MFShutdown stubs). 2014-12-12 06:15:47 +01:00
Sebastian Lackner
c466779d90 Added patch to reallocate buffer when adding records to AVI files. 2014-12-12 05:53:08 +01:00
Sebastian Lackner
825711fcc7 Added patch to provide named entry point shell32.SHILCreateFromPath for vista apps. 2014-12-12 05:25:48 +01:00
Sebastian Lackner
47a163dcef Added patch to ignore unsupported flags for CoInternetSetFeatureEnabled. 2014-12-12 05:18:45 +01:00
Sebastian Lackner
fc24ba3f65 Added patch to fix return value of ScrollWindowEx for invisible windows. 2014-12-12 05:08:15 +01:00
Sebastian Lackner
824469b329 Added patch for additional tests of CoWaitForMultipleHandles with WM_QUIT. 2014-12-12 04:43:59 +01:00
Sebastian Lackner
5db9d0a105 Add missing files. 2014-12-12 04:35:46 +01:00
Sebastian Lackner
88e30c29c4 Added patch to implement stubs for MFStartup and MFShutdown. 2014-12-12 01:02:40 +01:00
Sebastian Lackner
50db62e9f4 d3dx9_36-DXTn: Fix build failure.
The fix in 78156b2 was incomplete, the build now fails with "config.h must be included before anything else".
2014-12-11 04:44:51 +01:00
Erich E. Hoover
78156b24d4 Add missing include to d3dx9 DXTn patch. 2014-12-10 18:51:06 -07:00
Erich E. Hoover
2a4af68e93 Add missing dependency for proper junction point support (when cherry-picking patches). 2014-12-10 18:21:47 -07:00
Erich E. Hoover
5bb17cb9ed Fix a bug in determining the type of delete operation for junction points. 2014-12-10 18:19:11 -07:00
Erich E. Hoover
7ba4197cbe Update DXTn patch against upstream changes. 2014-12-10 18:11:48 -07:00
Erich E. Hoover
26f47c8dd8 Remove part of combase HSTRING (accepted upstream). 2014-12-10 18:08:02 -07:00
Sebastian Lackner
ca389f162a Merge with master. 2014-12-09 22:53:38 +01:00
Sebastian Lackner
150dc70e53 Added patch for combase HSTRING objects. 2014-12-09 22:48:02 +01:00
Michael MĂĽller
8369b0ce86 Added patch to allow Accept-Encoding for HTTP/1.0 in wininet. 2014-12-08 03:02:18 +01:00
Sebastian Lackner
ec9701cec2 Added patch to implement shlwapi.StrCatChainW. 2014-12-07 23:23:22 +01:00
Sebastian Lackner
0feae4d437 Added patch to replace busyloop with condition variable in winepulse patchset. 2014-12-06 01:28:17 +01:00
Sebastian Lackner
f8befaf7fa Merge pull request #211 (Added patch to implement support for GetPropValue to PulseAudio backend.) 2014-12-06 01:11:01 +01:00
Mark Harmstone
ca0d3d1dca Added patch to implement GetPropValue function in winepulse 2014-12-05 15:54:37 +00:00
Sebastian Lackner
7bcb2e7adb Removed several patches (accepted upstream). 2014-12-04 23:12:37 +01:00
Sebastian Lackner
2f2045c5c8 Merge pull request #210 (Added patch to fix possible segfault in pulse_rd_loop of PulseAudio backend.) 2014-12-04 22:19:55 +01:00
Mark Harmstone
526c93c453 Added patch to fix winepulse segfault 2014-12-04 20:35:53 +00:00
Sebastian Lackner
e39c803fac Added patch to set last error when GetRawInputDeviceList fails. 2014-12-04 15:00:08 +01:00
Sebastian Lackner
00872dd69c Removed more api-ms-win-core-* stub patches (fixed upstream). 2014-12-03 23:47:54 +01:00
Sebastian Lackner
fb6a771a44 Remove various patches (accepted upstream), rebase some patches. 2014-12-02 21:24:57 +01:00
Sebastian Lackner
f317ba0b0c Removed patch to fix copy and paste errors in ws2_32 tests (accepted upstream). 2014-12-01 22:04:19 +01:00
Sebastian Lackner
c67647eb73 Added new version of patch to fix condition mask handling in RtlVerifyVersionInfo. 2014-12-01 11:39:29 +01:00
Sebastian Lackner
5420552434 Remove incorrect patch for RtlVerifyVersionInfo, add tests for VerifyVersionInfo. 2014-11-30 22:33:59 +01:00
Sebastian Lackner
748696d2bd Added patch to fix condition handling in RtlVerifyVersionInfo. 2014-11-30 18:20:45 +01:00
405 changed files with 56654 additions and 5273 deletions

2
.gitignore vendored
View File

@@ -1,4 +1,2 @@
debian/tools/wine
.patchupdate.cache
*.ok
*.pyc

View File

@@ -37,12 +37,17 @@ Wine. All those differences are also documented on the
Included bug fixes and improvements
===================================
**Bugs fixed in Wine Staging 1.7.32 [108]:**
**Bugs fixed in Wine Staging 1.7.34-1 [135]:**
* ATL IOCS data should not be stored in GWLP_USERDATA ([Wine Bug #21767](https://bugs.winehq.org/show_bug.cgi?id=21767))
* Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](https://bugs.winehq.org/show_bug.cgi?id=36374))
* Add default ACLs for user shell folders
* Add nvapi stubs required for GPU PhysX support
* Add stub for D3DXComputeNormalMap
* Add stub for D3DXComputeTangentFrameEx ([Wine Bug #31984](https://bugs.winehq.org/show_bug.cgi?id=31984))
* Add stub for D3DXIntersect
* Add stub for NtSetLdtEntries/ZwSetLdtEntries ([Wine Bug #26268](https://bugs.winehq.org/show_bug.cgi?id=26268))
* Add support for GetPropValue to PulseAudio backend
* Adobe Reader needs ITextSelection_fnGetDuplicate implementation
* Allow selection of audio device for PulseAudio backend
* Allow special characters in pipe names ([Wine Bug #28995](https://bugs.winehq.org/show_bug.cgi?id=28995))
@@ -50,19 +55,25 @@ Included bug fixes and improvements
* Audio stuttering and performance drops in multiple applications ([Wine Bug #30639](https://bugs.winehq.org/show_bug.cgi?id=30639))
* Avoid crashing when broken app tries to release surface although refcount is zero ([Wine Bug #18477](https://bugs.winehq.org/show_bug.cgi?id=18477))
* Avoid race-conditions of async WSARecv() operations with write watches.
* Basic support for CUDA
* Black & White needs DXTn software decoding support ([Wine Bug #14939](https://bugs.winehq.org/show_bug.cgi?id=14939))
* Correctly treat '.' when checking for empty directories ([Wine Bug #26272](https://bugs.winehq.org/show_bug.cgi?id=26272))
* CreateProcess does not prioritize the working directory over the system search path ([Wine Bug #23934](https://bugs.winehq.org/show_bug.cgi?id=23934))
* D3DCompileShader should filter specific warning messages ([Wine Bug #33770](https://bugs.winehq.org/show_bug.cgi?id=33770))
* Do not fail when a used context is passed to wglShareLists ([Wine Bug #11436](https://bugs.winehq.org/show_bug.cgi?id=11436))
* Don't fill KdHelp structure for usermode applications ([Wine Bug #37272](https://bugs.winehq.org/show_bug.cgi?id=37272))
* Emulate access to KI_USER_SHARED_DATA kernel page on x86_64 ([Wine Bug #33849](https://bugs.winehq.org/show_bug.cgi?id=33849))
* Emulate write to CR4 register ([Wine Bug #30220](https://bugs.winehq.org/show_bug.cgi?id=30220))
* Ensure NtProtectVirtualMemory and NtCreateSection are on separate pages ([Wine Bug #33162](https://bugs.winehq.org/show_bug.cgi?id=33162))
* Ensure X11 input events are handled even without explicit message loop ([Wine Bug #8854](https://bugs.winehq.org/show_bug.cgi?id=8854))
* Exception during start of fr-043 caused by missing DXTn support ([Wine Bug #37391](https://bugs.winehq.org/show_bug.cgi?id=37391))
* Expose PKEY_AudioEndpoint_PhysicalSpeakers device property in PulseAudio driver
* FEAR 1 installer expects basic_string_wchar_dtor to return NULL ([Wine Bug #37358](https://bugs.winehq.org/show_bug.cgi?id=37358))
* FairplayKD.sys needs KeSetSystemAffinityThread ([Wine Bug #36822](https://bugs.winehq.org/show_bug.cgi?id=36822))
* Fix NULL dereference in ICSeqCompressFrameStart ([Wine Bug #27595](https://bugs.winehq.org/show_bug.cgi?id=27595))
* Fix access violation when calling GetStringTypeW with NULL src. ([Wine Bug #37759](https://bugs.winehq.org/show_bug.cgi?id=37759))
* Fix black screen on startup introduced by pixelformat changes. ([Wine Bug #35950](https://bugs.winehq.org/show_bug.cgi?id=35950))
* Fix color key regression causing pink rectangles around text ([Wine Bug #37748](https://bugs.winehq.org/show_bug.cgi?id=37748))
* Fix comparison of punctuation characters in lstrcmp ([Wine Bug #10767](https://bugs.winehq.org/show_bug.cgi?id=10767))
* Fix condition mask handling in RtlVerifyVersionInfo ([Wine Bug #36143](https://bugs.winehq.org/show_bug.cgi?id=36143))
* Fix crash of Trine Demo on start ([Wine Bug #19231](https://bugs.winehq.org/show_bug.cgi?id=19231))
* Fix crash of winedevice when relocation entry crosses page boundary ([Wine Bug #28254](https://bugs.winehq.org/show_bug.cgi?id=28254))
* Fix flickering introduced by pixelformat changes. ([Wine Bug #35718](https://bugs.winehq.org/show_bug.cgi?id=35718))
@@ -71,16 +82,24 @@ Included bug fixes and improvements
* Fix gray screen on startup introduced by pixelformat changes. ([Wine Bug #35975](https://bugs.winehq.org/show_bug.cgi?id=35975))
* Fix handling of empty section and key name for profile files. ([Wine Bug #8036](https://bugs.winehq.org/show_bug.cgi?id=8036))
* Fix handling of invert_y in DrawTextExW ([Wine Bug #22109](https://bugs.winehq.org/show_bug.cgi?id=22109))
* Fix handling of subdirectory in FtpFindFirstFile ([Wine Bug #16526](https://bugs.winehq.org/show_bug.cgi?id=16526))
* Fix issues when driver dispatch routine returns different status codes ([Wine Bug #30155](https://bugs.winehq.org/show_bug.cgi?id=30155))
* Fix issues with dragging layers between images in Adobe Photoshop 7.0 ([Wine Bug #12007](https://bugs.winehq.org/show_bug.cgi?id=12007))
* Fix missing video introduced by pixelformat changes. ([Wine Bug #36900](https://bugs.winehq.org/show_bug.cgi?id=36900))
* Fix ordering of IP addresses by metric if two addresses have the same metric.
* Fix passing of unicode environment from msvcrt to CreateProcessW. ([Wine Bug #37635](https://bugs.winehq.org/show_bug.cgi?id=37635))
* Fix parameters for ConvertToIndexedBlendedMesh stub ([Wine Bug #36449](https://bugs.winehq.org/show_bug.cgi?id=36449))
* Fix possible segfault in pulse_rd_loop of PulseAudio backend
* Fix return value of ScrollWindowEx for invisible windows ([Wine Bug #37706](https://bugs.winehq.org/show_bug.cgi?id=37706))
* Fix texture corruption in CSI: Fatal Conspiracy ([Wine Bug #33768](https://bugs.winehq.org/show_bug.cgi?id=33768))
* Fix unintentional leaks with ntdll internals
* Fix wined3d performance drop introduced by pixelformat changes. ([Wine Bug #35655](https://bugs.winehq.org/show_bug.cgi?id=35655))
* Games For Windows Live 1.x expects a valid linker version in the PE header ([Wine Bug #28768](https://bugs.winehq.org/show_bug.cgi?id=28768))
* GetMonitorInfo returns the same name for all monitors ([Wine Bug #37709](https://bugs.winehq.org/show_bug.cgi?id=37709))
* GetSecurityInfo returns NULL DACL for process object ([Wine Bug #15980](https://bugs.winehq.org/show_bug.cgi?id=15980))
* Hearthstone fails to start ([Wine Bug #36216](https://bugs.winehq.org/show_bug.cgi?id=36216))
* IOCTL_DVD_READ_STRUCTURE expects the wrong size of output buffer for some requests ([Wine Bug #37767](https://bugs.winehq.org/show_bug.cgi?id=37767))
* Ignore unsupported flags for CoInternetSetFeatureEnabled ([Wine Bug #35197](https://bugs.winehq.org/show_bug.cgi?id=35197))
* Implement ID3DXEffect::FindNextValidTechnique ([Wine Bug #34101](https://bugs.winehq.org/show_bug.cgi?id=34101))
* Implement IDXGIOutput::GetDesc
* Implement a Microsoft Yahei replacement font ([Wine Bug #13829](https://bugs.winehq.org/show_bug.cgi?id=13829))
* Implement an Arial replacement font ([Wine Bug #32323](https://bugs.winehq.org/show_bug.cgi?id=32323))
* Implement exclusive mode in PulseAudio backend ([Wine Bug #37042](https://bugs.winehq.org/show_bug.cgi?id=37042))
@@ -102,8 +121,12 @@ Included bug fixes and improvements
* Return more context attributes in schan_InitializeSecurityContextW ([Wine Bug #37527](https://bugs.winehq.org/show_bug.cgi?id=37527))
* SO_CONNECT_TIME returns the appropriate time
* Send WM_PAINT event during dialog creation ([Wine Bug #35652](https://bugs.winehq.org/show_bug.cgi?id=35652))
* Set last error when GetRawInputDeviceList fails ([Wine Bug #37667](https://bugs.winehq.org/show_bug.cgi?id=37667))
* Support for AllocateAndGetTcpExTableFromStack ([Wine Bug #34372](https://bugs.winehq.org/show_bug.cgi?id=34372))
* Support for BindImageEx ([Wine Bug #3591](https://bugs.winehq.org/show_bug.cgi?id=3591))
* Support for CSMT (command stream) to increase graphic performance ([Wine Bug #11674](https://bugs.winehq.org/show_bug.cgi?id=11674))
* Support for CUDA GPU video decoding
* Support for D3DXComputeNormals ([Wine Bug #26379](https://bugs.winehq.org/show_bug.cgi?id=26379))
* Support for D3DXGetShaderInputSemantics ([Wine Bug #22682](https://bugs.winehq.org/show_bug.cgi?id=22682))
* Support for DOS hidden/system file attributes ([Wine Bug #9158](https://bugs.winehq.org/show_bug.cgi?id=9158))
* Support for Dynamic DST (daylight saving time) information in registry
@@ -111,11 +134,11 @@ Included bug fixes and improvements
* Support for GetFinalPathNameByHandle ([Wine Bug #36073](https://bugs.winehq.org/show_bug.cgi?id=36073))
* Support for GetSystemTimes ([Wine Bug #19813](https://bugs.winehq.org/show_bug.cgi?id=19813))
* Support for GetVolumePathName
* Support for ID3DXFont::DrawTextA/W ([Wine Bug #24754](https://bugs.winehq.org/show_bug.cgi?id=24754))
* Support for ID3DXSkinInfoImpl_UpdateSkinnedMesh ([Wine Bug #32572](https://bugs.winehq.org/show_bug.cgi?id=32572))
* Support for ITextDocument_fnRange function ([Wine Bug #12458](https://bugs.winehq.org/show_bug.cgi?id=12458))
* Support for ITextRange, ITextFont and ITextPara ([Wine Bug #18303](https://bugs.winehq.org/show_bug.cgi?id=18303))
* Support for Junction Points ([Wine Bug #12401](https://bugs.winehq.org/show_bug.cgi?id=12401))
* Support for K32EnumProcessModulesEx ([Wine Bug #34864](https://bugs.winehq.org/show_bug.cgi?id=34864))
* Support for KF_FLAG_DEFAULT_PATH in SHGetKnownFolderPath ([Wine Bug #30385](https://bugs.winehq.org/show_bug.cgi?id=30385))
* Support for LoadIconMetric ([Wine Bug #35375](https://bugs.winehq.org/show_bug.cgi?id=35375))
* Support for NtQuerySection ([Wine Bug #37338](https://bugs.winehq.org/show_bug.cgi?id=37338))
@@ -123,6 +146,7 @@ Included bug fixes and improvements
* Support for PulseAudio backend for audio ([Wine Bug #10495](https://bugs.winehq.org/show_bug.cgi?id=10495))
* Support for RtlDecompressBuffer ([Wine Bug #37449](https://bugs.winehq.org/show_bug.cgi?id=37449))
* Support for SHCreateSessionKey ([Wine Bug #35630](https://bugs.winehq.org/show_bug.cgi?id=35630))
* Support for SLGetWindowsInformationDWORD ([Wine Bug #36709](https://bugs.winehq.org/show_bug.cgi?id=36709))
* Support for TOOLTIPS_GetTipText edge cases ([Wine Bug #30648](https://bugs.winehq.org/show_bug.cgi?id=30648))
* Support for TransmitFile ([Wine Bug #5048](https://bugs.winehq.org/show_bug.cgi?id=5048))
* Support for UTF7 encoding/decoding ([Wine Bug #27388](https://bugs.winehq.org/show_bug.cgi?id=27388))
@@ -130,21 +154,24 @@ Included bug fixes and improvements
* Support for extra large and jumbo icon lists in shell32 ([Wine Bug #24721](https://bugs.winehq.org/show_bug.cgi?id=24721))
* Support for inherited file ACLs ([Wine Bug #34406](https://bugs.winehq.org/show_bug.cgi?id=34406))
* Support for interface change notifications ([Wine Bug #32328](https://bugs.winehq.org/show_bug.cgi?id=32328))
* Support for loader dll redirections
* Support for named pipe message mode (Linux only) ([Wine Bug #17195](https://bugs.winehq.org/show_bug.cgi?id=17195))
* Support for pasting HTML from Unix applications ([Wine Bug #7372](https://bugs.winehq.org/show_bug.cgi?id=7372))
* Support for process ACLs ([Wine Bug #22006](https://bugs.winehq.org/show_bug.cgi?id=22006))
* Support for setcap on wine-preloader ([Wine Bug #26256](https://bugs.winehq.org/show_bug.cgi?id=26256))
* Support for stored file ACLs ([Wine Bug #31858](https://bugs.winehq.org/show_bug.cgi?id=31858))
* Support for wine64 on FreeBSD/PC-BSD ([Wine Bug #34330](https://bugs.winehq.org/show_bug.cgi?id=34330))
* Try harder to get the host name address in getaddrinfo() ([Wine Bug #29609](https://bugs.winehq.org/show_bug.cgi?id=29609))
* Tumblebugs 2 requires DXTn software encoding support ([Wine Bug #29586](https://bugs.winehq.org/show_bug.cgi?id=29586))
* Unity3D Editor requires ProductId registry value ([Wine Bug #36964](https://bugs.winehq.org/show_bug.cgi?id=36964))
* Update a XIM candidate position when cursor location changes ([Wine Bug #30938](https://bugs.winehq.org/show_bug.cgi?id=30938))
* Use actual program name if available to describe PulseAudio streams
* Use manual relay for RunDLL_CallEntry16 in shell32 ([Wine Bug #23033](https://bugs.winehq.org/show_bug.cgi?id=23033))
* Voobly expects correct handling of WRITECOPY memory protection ([Wine Bug #29384](https://bugs.winehq.org/show_bug.cgi?id=29384))
* WSARecv should call SetLastError on success ([Wine Bug #31438](https://bugs.winehq.org/show_bug.cgi?id=31438))
* Wine ignores IDF_CHECKFIRST flag in SetupPromptForDisk ([Wine Bug #20465](https://bugs.winehq.org/show_bug.cgi?id=20465))
* Wintrust doesn't reset data->pWintrustData->u.pFile->hFile after closing handle ([Wine Bug #36257](https://bugs.winehq.org/show_bug.cgi?id=36257))
* Workaround for shlwapi URLs with relative paths
* XEMBED support for embedding Wine windows inside Linux applications
* nVidia driver for high-end laptop cards does not list all supported resolutions
* vSphere needs IoCsqInitialize ([Wine Bug #36777](https://bugs.winehq.org/show_bug.cgi?id=36777))
* ntdll is missing WinSqm[Start|End]Session implementation ([Wine Bug #31971](https://bugs.winehq.org/show_bug.cgi?id=31971))
* wglDescribePixelFormat should return max index for NULL descriptor ([Wine Bug #6176](https://bugs.winehq.org/show_bug.cgi?id=6176))
* wininet should allow Accept-Encoding header for HTTP/1.0 ([Wine Bug #37046](https://bugs.winehq.org/show_bug.cgi?id=37046))

90
debian/changelog vendored
View File

@@ -1,3 +1,91 @@
wine-staging (1.7.34-1) unstable; urgency=low
* Debian/Ubuntu specific package dependency fix (no changes for other distros).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 11 Jan 2015 19:14:09 +0100
wine-staging (1.7.34) unstable; urgency=low
* Huge rewrite of patchupdate.py, deprecation of Makefile based way to apply patches.
* Rename debian package from 'wine-compholio' to 'wine-staging' and provide compatibility package.
* Avoid duplicate wined3d specfile by adding PARENTSPEC Makefile argument.
* Fix issue in DOS Attributes patch which broke ./configure on systems with alternative shells.
* Fix issue in user32-WndProc patch which caused crashes for some 16-bit apps.
* Fix issue in ws2_32-WriteWatches patch which can cause exceptions on the signal stack.
* Fix issue with invalid handles being incorrect when a new process is created.
* Update DXTn patches to better handle when libtxc_dxtn is missing or support is not compiled in.
* Added patch for WSARecv to call SetLastError on success.
* Added patch for CreateProcess to prioritize the working directory over the system search path.
* Added patch with stubs for WinSqm[Start|End]Session.
* Added patch to fix handling of subdirectory in FtpFindFirstFile.
* Added patch to return proper charcount for GetLocaleInfo with LOCALE_IFIRSTDAYOFWEEK.
* Added patch to ensure X11 input events are handled even without explicit message loop.
* Added test for server-Unexpected_Wakeup patch.
* Added patch for stub of ntdll.RtlSetHeapInformation.
* Added patch for IDXGIOutput::GetDesc.
* Added patch for ID3DXEffect::FindNextValidTechnique.
* Added patch with stub for D3DXComputeTangentFrameEx.
* Added patch with stub for D3DXIntersect.
* Added test for RtlIpv4StringToAddressExA.
* Added patch for support of SLGetWindowsInformationDWORD.
* Added patch to expect the correct buffer size for different IOCTL_DVD_READ_STRUCTURE requests.
* Added patch to use actual program name if available to describe PulseAudio streams.
* Added patch to try harder to get the host name address in getaddrinfo().
* Added patch to fix invalid usage of RegOpenKeyExW in msdmo.
* Added patch to add support for named pipe message mode.
* Added patch to avoid calling IDirect3DDevice7_DrawIndexedPrimitive if there is no primitive.
* Added patch to fix access violation when calling GetStringTypeW with NULL src.
* Added patch for ID3DXFont::DrawTextA/W support.
* Added patch to fix parameters for ConvertToIndexedBlendedMesh stub.
* Added patch for basic CUDA support.
* Added patches for D3DXComputeNormals and D3DXComputeNormalMap.
* Added patch for nvapi stubs (required for GPU PhysX support).
* Added patch to fix NULL dereference in ICSeqCompressFrameStart.
* Added patch to implement support for CUDA GPU video decoding.
* Added patch to fix color key regression causing pink rectangles around text.
* Rebased winepulse-Pulseaudio_Support patches to latest version from http://repo.or.cz/w/wine/multimedia.git.
* Removed patch to emulate write to CR4 register (accepted upstream).
* Removed patch with stub for KeSetSystemAffinityThread (accepted upstream).
* Removed patch to implement combase HSTRING objects (accepted upstream).
* Removed patch to add fake ProductId to registry (accepted upstream).
* Removed patch to implement stubs for MFStartup and MFShutdown (accepted upstream).
* Removed patch to implement shlwapi.StrCatChainW (accepted upstream).
* Removed patch to implement semi-stub for psapi/kernel32 K32EnumProcessModulesEx (accepted upstream).
* Removed patch to return proper charcount for GetLocaleInfo with LOCALE_IFIRSTDAYOFWEEK (accepted upstream).
* Removed patch to export SHILCreateFromPath by name (accepted upstream).
* Removed patch for stub of ntdll.RtlSetHeapInformation (accepted upstream).
* Removed patch for wine64 support on FreeBSD (accepted upstream).
* Removed patch for IoCsqInitialize (accepted upstream).
* Removed patch to fix invalid usage of RegOpenKeyExW in msdmo (fixed upstream).
* Removed patch to reallocate buffer when adding records to AVI files (fixed upstream).
* Partially removed patches for ntdll DOS attributes (accepted upstream).
* Partially removed patches for UTF7 support (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sat, 10 Jan 2015 22:22:01 +0100
wine-compholio (1.7.33) unstable; urgency=low
* Various improvements of patchupdate.py.
* Added patches for wined3d CSMT (command stream) support.
* Added additional tests for VerifyVersionInfoA.
* Added patch to fix condition handling in RtlVerifyVersionInfo.
* Added patch to set last error when GetRawInputDeviceList fails.
* Added patch to fix possible segfault in pulse_rd_loop of PulseAudio backend.
* Added patch to implement support for GetPropValue to PulseAudio backend.
* Added patch to implement shlwapi.StrCatChainW.
* Added patch to allow Accept-Encoding for HTTP/1.0 in wininet.
* Added patch for combase HSTRING objects.
* Added patch to implement stubs for MFStartup and MFShutdown.
* Added patch for additional tests of CoWaitForMultipleHandles with WM_QUIT.
* Added patch to fix return value of ScrollWindowEx for invisible windows.
* Added patch to ignore unsupported flags for CoInternetSetFeatureEnabled.
* Added patch to provide named entry point shell32.SHILCreateFromPath for vista apps.
* Added patch to reallocate buffer when adding records to AVI files.
* Added patch to implement support for loader dll redirections.
* Added patch to add winecfg Staging tab.
* Removed patch to fix copy and paste errors in ws2_32 tests (accepted upstream).
* Removed patch to fix ordering of IP addresses by metric if two addresses have the same metric (accepted upstream).
* Removed patch to reset data->pWintrustData->u.pFile->hFile after closing handle (accepted upstream).
* Removed patch to simplify implementation of ws32 get_poll_results (accepted upstream).
* Removed patch to fix passing of unicode environment from msvcrt to CreateProcessW (accepted upstream).
* Removed patches for api-ms-win-core-* stub dlls (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Mon, 15 Dec 2014 00:53:01 +0100
wine-compholio (1.7.32) unstable; urgency=low
* Various optimizations of patchupdate.py.
* Update patch for SO_CONNECT_TIME and adding better tests.
@@ -27,7 +115,7 @@ wine-compholio (1.7.32) unstable; urgency=low
* Removed patch to fix implementation ofCoWaitForMultipleHandles (accepted upstream).
* Removed patch to avoid interthread no-op messages in ShowWindow (accepted upstream).
* Removed patches to take abs() of vertex z coordinate as FFP fog coordinate (fixed upstream).
* Removed patch to fix detection of gnutls on Ubuntu 14.10.
* Removed patch to fix detection of gnutls on Ubuntu 14.10 (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 30 Nov 2014 15:22:49 +0100
wine-compholio (1.7.31) unstable; urgency=low

82
debian/control vendored
View File

@@ -1,4 +1,4 @@
Source: wine-compholio
Source: wine-staging
Section: otherosfs
Priority: optional
Maintainer: Erich E. Hoover <erich.e.hoover@gmail.com>
@@ -69,7 +69,7 @@ Build-Depends: autotools-dev,
x11proto-xinerama-dev
Standards-Version: 3.9.2
Package: wine-compholio-i386
Package: wine-staging-i386
Architecture: i386
Multi-Arch: foreign
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
@@ -108,9 +108,7 @@ Recommends: libcapi20-3,
libgsm1
Section: otherosfs
Priority: optional
Replaces: wine-compholio (<< 1.7.15-1~)
Breaks: wine-compholio (<< 1.7.15-1~)
Description: The Compholio Edition is a special build of the popular Wine software
Description: The Staging Edition is a special build of the popular Wine software
with patches representing my current staging tree for Wine.
.
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
@@ -125,7 +123,7 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
work, there may be some loss of functionality compared with the stable release
provided by the regular wine package.
Package: wine-compholio-amd64
Package: wine-staging-amd64
Architecture: amd64
Multi-Arch: foreign
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
@@ -164,9 +162,7 @@ Recommends: libcapi20-3,
libgsm1
Section: otherosfs
Priority: optional
Replaces: wine-compholio (<< 1.7.15-1~)
Breaks: wine-compholio (<< 1.7.15-1~)
Description: The Compholio Edition is a special build of the popular Wine software
Description: The Staging Edition is a special build of the popular Wine software
with patches representing my current staging tree for Wine.
.
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
@@ -181,16 +177,16 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
work, there may be some loss of functionality compared with the stable release
provided by the regular wine package.
Package: wine-compholio
Package: wine-staging
Architecture: i386 amd64
Multi-Arch: foreign
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
Depends: ${misc:Depends}, ${shlibs:Depends},
wine-compholio-i386 (= ${binary:Version}) [i386 amd64],
wine-compholio-amd64 (= ${binary:Version}) [amd64],
wine-staging-i386 (= ${binary:Version}) [i386 amd64],
wine-staging-amd64 (= ${binary:Version}) [amd64],
Section: otherosfs
Priority: optional
Description: The Compholio Edition is a special build of the popular Wine software
Description: The Staging Edition is a special build of the popular Wine software
with patches representing my current staging tree for Wine.
.
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
@@ -207,18 +203,16 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
work, there may be some loss of functionality compared with the stable release
provided by the regular wine package.
Package: wine-compholio-dev
Package: wine-staging-dev
Architecture: i386 amd64
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
Depends: libc6-dev,
${shlibs:Depends},
wine-compholio-i386 (= ${binary:Version}) [i386 amd64],
wine-compholio-amd64 (= ${binary:Version}) [amd64],
wine-staging-i386 (= ${binary:Version}) [i386 amd64],
wine-staging-amd64 (= ${binary:Version}) [amd64],
Section: libdevel
Priority: optional
Replaces: wine-compholio (<< 1.7.15-1~)
Breaks: wine-compholio (<< 1.7.15-1~)
Description: The Compholio Edition is a special build of the popular Wine software
Description: The Staging Edition is a special build of the popular Wine software
with patches representing my current staging tree for Wine.
.
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
@@ -230,18 +224,16 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
This package consists of the development files needed to compile programs
using wine's free version of the Microsoft Windows API.
Package: wine-compholio-dbg
Package: wine-staging-dbg
Architecture: i386 amd64
Multi-Arch: same
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
Depends: ${shlibs:Depends},
wine-compholio-i386 (= ${binary:Version}) [i386 amd64],
wine-compholio-amd64 (= ${binary:Version}) [amd64],
wine-staging-i386 (= ${binary:Version}) [i386 amd64],
wine-staging-amd64 (= ${binary:Version}) [amd64],
Section: debug
Priority: optional
Replaces: wine-compholio (<< 1.7.15-1~)
Breaks: wine-compholio (<< 1.7.15-1~)
Description: The Compholio Edition is a special build of the popular Wine software
Description: The Staging Edition is a special build of the popular Wine software
with patches representing my current staging tree for Wine.
.
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
@@ -252,3 +244,43 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
.
This package includes debugging symbols useful for reporting crashes and other
failures.
Package: wine-compholio
Architecture: i386 amd64
Depends: wine-staging, ${misc:Depends}
Priority: extra
Section: oldlibs
Description: Transitional dummy package
This is a transitional dummy package. It can safely be removed.
Package: wine-compholio-i386
Architecture: i386
Depends: wine-staging-i386, ${misc:Depends}
Priority: extra
Section: oldlibs
Description: Transitional dummy package
This is a transitional dummy package. It can safely be removed.
Package: wine-compholio-amd64
Architecture: amd64
Depends: wine-staging-amd64, ${misc:Depends}
Priority: extra
Section: oldlibs
Description: Transitional dummy package
This is a transitional dummy package. It can safely be removed.
Package: wine-compholio-dev
Architecture: i386 amd64
Depends: wine-staging-dev, ${misc:Depends}
Priority: extra
Section: oldlibs
Description: Transitional dummy package
This is a transitional dummy package. It can safely be removed.
Package: wine-compholio-dbg
Architecture: i386 amd64
Depends: wine-staging-dbg, ${misc:Depends}
Priority: extra
Section: oldlibs
Description: Transitional dummy package
This is a transitional dummy package. It can safely be removed.

43
debian/rules vendored
View File

@@ -14,11 +14,11 @@ endif
override_dh_auto_configure:
# Apply our patches, reconfigure, and update the wineserver protocol request data
make -C "$(CURDIR)/patches/" DESTDIR="$(CURDIR)" install
"$(CURDIR)/patches/patchinstall.sh" DESTDIR="$(CURDIR)" --all
# Run configure
ifeq ($(DEB_BUILD_ARCH), amd64)
./configure --prefix=/opt/wine-compholio \
./configure --prefix=/opt/wine-staging \
--libdir=\$${prefix}/lib64 \
--mandir=\$${prefix}/share/man \
--infodir=\$${prefix}/share/info \
@@ -27,7 +27,7 @@ ifeq ($(DEB_BUILD_ARCH), amd64)
--with-xattr \
$(CONFFLAGS)
else
./configure --prefix=/opt/wine-compholio \
./configure --prefix=/opt/wine-staging \
--libdir=\$${prefix}/lib \
--mandir=\$${prefix}/share/man \
--infodir=\$${prefix}/share/info \
@@ -42,31 +42,42 @@ override_dh_auto_test:
override_dh_installdocs:
# Create copies of license files
cp "$(CURDIR)/LICENSE" "$(CURDIR)/LICENSE.wine"
cp "$(CURDIR)/LICENSE.md" "$(CURDIR)/LICENSE.wine-compholio"
dh_installdocs --link-doc=wine-compholio
dh_installdocs --link-doc=wine-staging
override_dh_install:
dh_install --fail-missing
# These files will end up in multiple packages otherwise
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine-preloader
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine64
rm -f debian/wine-compholio/opt/wine-compholio/bin/wine64-preloader
rm -f debian/wine-staging/opt/wine-staging/bin/wine
rm -f debian/wine-staging/opt/wine-staging/bin/wine-preloader
rm -f debian/wine-staging/opt/wine-staging/bin/wine64
rm -f debian/wine-staging/opt/wine-staging/bin/wine64-preloader
# Create compatibility symlinks
mkdir -p debian/wine-compholio/opt/wine-compholio/bin
for _file in $$(ls "debian/wine-staging/opt/wine-staging/bin"); do \
ln -s "/opt/wine-staging/bin/$$_file" "debian/wine-compholio/opt/wine-compholio/bin/$$_file"; \
done
# Architecture specific compatibility symlinks
ifeq ($(DEB_HOST_ARCH),amd64)
for _file in wine wine-preloader wine64 wine64-preloader; do \
ln -s "/opt/wine-staging/bin/$$_file" "debian/wine-compholio/opt/wine-compholio/bin/$$_file"; \
done
else
for _file in wine wine-preloader; do \
ln -s "/opt/wine-staging/bin/$$_file" "debian/wine-compholio/opt/wine-compholio/bin/$$_file"; \
done
endif
override_dh_strip:
dh_strip -Xwine-pthread -Xwine-kthread --dbg-package=wine-compholio-dbg
dh_strip -Xwine-pthread -Xwine-kthread --dbg-package=wine-staging-dbg
override_dh_shlibdeps:
ifeq ($(DEB_HOST_ARCH),amd64)
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-compholio/lib64/
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-staging/lib64/
else
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-compholio/lib/
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-staging/lib/
endif

View File

@@ -2,7 +2,7 @@
#
# Wrapper to apply binary patches without git.
#
# Copyright (C) 2014 Sebastian Lackner
# Copyright (C) 2014-2015 Sebastian Lackner
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
@@ -75,7 +75,7 @@ filesize()
# Parse environment variables
while [[ $# > 0 ]]; do
while [ "$#" -gt 0 ]; do
cmd="$1"; shift
case "$cmd" in

291
debian/tools/patchinstall.sh.in vendored Normal file
View File

@@ -0,0 +1,291 @@
#!/bin/sh
#
# Script to automatically install all Wine Staging patches
#
# Copyright (C) 2015 Sebastian Lackner
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
#
# Show usage information
usage()
{{
echo ""
echo "Usage: ./patchinstall.sh [DESTDIR=path] [--all] [-W patchset] [patchset ...]"
echo ""
echo "Autogenerated script to apply all Wine Staging patches on your Wine"
echo "source tree. This script replaces and enhances the old method of"
echo "using a Makefile."
echo ""
echo "Configuration:"
echo " DESTDIR=path Specify the path to the wine source tree"
echo " --all Select all patches"
echo " --help Display this help and exit"
echo " --no-autoupdate Do not apply patchlist and don't auto-update files"
echo " -W patchset Exclude a specific patchset"
echo ""
echo "Backends:"
echo " --backend=patch Use regular 'patch' utility to apply patches (default)"
echo " --backend=git-am Use 'git am' to apply patches"
echo " --backend=git-apply Use 'git apply' to apply patches"
echo ""
}}
# Critical error, abort
abort()
{{
echo "ERROR: $1" >&2
exit 1
}}
{patch_helpers}
# Default settings
patch_enable_all 0
enable_autoupdate=1
patchlist="/dev/null"
backend="patch"
enable=1
if test "$#" -eq 0; then
abort "No commandline arguments given, don't know what to do."
fi
while test "$#" -gt 0; do
if patch_enable "$1" "$enable"; then
shift
enable=1
continue
fi
if test "$enable" -ne 1; then
abort "Wrong use of -W commandline argument, expected patchname."
fi
case "$1" in
DESTDIR=*)
DESTDIR="${{1#*=}}"
shift
;;
--all)
patch_enable_all 1
shift
;;
--backend=*)
backend="${{1#*=}}"
shift
;;
--help)
usage
exit 0
;;
--no-autoupdate)
enable_autoupdate=0
shift
;;
-W)
enable=2
shift
;;
*)
abort "Unknown commandline argument $1"
exit 1
esac
done
if test "$enable" -ne 1; then
abort "Missing argument for -W, expected patchname."
fi
# Apply the patches using gitapply.sh, a small wrapper around 'patch'
if test "$backend" = "patch"; then
patch_apply ()
{{
echo "Applying $1"
if ! ../debian/tools/gitapply.sh -d "$DESTDIR" < "$1"; then
abort "Failed to apply patch, aborting!"
fi
}}
# GIT backend - apply patches using 'git am'
elif test "$backend" = "git" -o "$backend" = "git-am"; then
patch_apply ()
{{
echo "Applying $1"
if ! cat "$1" | (cd "$DESTDIR" && git am); then
abort "Failed to apply patch, aborting!"
fi
}}
# Git apply backend
elif test "$backend" = "git-apply"; then
patch_apply ()
{{
echo "Applying $1"
if ! cat "$1" | (cd "$DESTDIR" && git apply); then
abort "Failed to apply patch, aborting!"
fi
}}
# Stacked GIT backend - import the patches (mainly for developers)
elif test "$backend" = "stg"; then
# Only import the regular patches, no autogenerated ones -
# moreover, don't run autoreconf or ./tools/make_requests.
enable_autoupdate=0
patch_apply ()
{{
echo "Applying $1"
if ! echo "staging/$1" | cat - "$1" | (cd "$DESTDIR" && stg import); then
abort "Failed to apply patch, aborting!"
fi
}}
else
abort "Selected backend $backend not supported."
fi
{patch_resolver}
if test -z "$DESTDIR" -a -f ./tools/make_requests; then
DESTDIR="$(pwd)"
elif test ! -f "$DESTDIR/tools/make_requests"; then
abort "DESTDIR does not point to the Wine source tree."
fi
# To make sure we find all the patches and tools switch to the patches directory now
script="$(readlink -f "$0")"
curdir="$(dirname "$script")"
if ! cd "$curdir"; then
abort "Failed to change working directory to $curdir."
fi
# If autoupdate is enabled then create a tempfile to keep track of all patches
if test "$enable_autoupdate" -eq 1; then
patchlist=$(mktemp)
if test ! -f "$patchlist"; then
echo "ERROR: Unable to create temporary file for patchlist." >&2
exit 1
fi
fi
{patch_apply}
if test "$enable_autoupdate" -eq 1; then
# Generate a temporary patch containing the patchlist and apply it
patch_data=$(cat "$patchlist" | sort)
patch_lines=$(echo "$patch_data" | wc -l)
if test ! -z "$patch_data"; then
patch_lines=$((${{patch_lines}}+23))
cat > "$patchlist" <<EOF
From: Wine Staging Team <webmaster@fds-team.de>
Subject: Autogenerated patch list.
diff --git a/include/wine/library.h b/include/wine/library.h
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -43,6 +43,7 @@ extern const char *wine_get_data_dir(void);
extern const char *wine_get_server_dir(void);
extern const char *wine_get_user_name(void);
extern const char *wine_get_version(void);
+extern const void *wine_get_patches(void);
extern const char *wine_get_build_id(void);
extern void wine_init_argv0_path( const char *argv0 );
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
diff --git a/libs/wine/config.c b/libs/wine/config.c
index a273502..0a3182f 100644
--- a/libs/wine/config.c
+++ b/libs/wine/config.c
@@ -478,6 +478,${{patch_lines}} @@ const char *wine_get_version(void)
return PACKAGE_VERSION;
}}
+static const struct
+{{
+ const char *author;
+ const char *subject;
+ int revision;
+}}
+wine_patch_data[] =
+{{
${{patch_data}}
+ {{ NULL, NULL, 0 }}
+}};
+
+/* return the applied non-standard patches */
+const void *wine_get_patches(void)
+{{
+ return &wine_patch_data[0];
+}}
+
/* return the build id string */
const char *wine_get_build_id(void)
{{
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
index ed315bd..5b42029 100644
--- a/libs/wine/wine.def
+++ b/libs/wine/wine.def
@@ -83,6 +83,7 @@ EXPORTS
wine_get_sortkey
wine_get_user_name
wine_get_version
+ wine_get_patches
wine_init
wine_init_argv0_path
wine_is_dbcs_leadbyte
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index 2159fac..7cb2918 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -90,6 +90,7 @@ WINE_1.0
wine_get_ss;
wine_get_user_name;
wine_get_version;
+ wine_get_patches;
wine_init;
wine_init_argv0_path;
wine_is_dbcs_leadbyte;
EOF
patch_apply "$patchlist"
fi
rm "$patchlist"
# Other autogenerated changes
if ! (cd "$DESTDIR" && autoreconf -f); then
abort "'autoreconf -f' failed."
fi
if ! (cd "$DESTDIR" && ./tools/make_requests); then
abort "'./tools/make_requests' failed."
fi
fi
# Success
exit 0

View File

@@ -1,76 +0,0 @@
#!/bin/sh
PATCH_DATA=$(cat);
PATCH_LINES=$(echo "${PATCH_DATA}" | wc -l);
PATCH_LINES=$((${PATCH_LINES}+23));
cat <<EOF
From: FDS-Team <webmaster@fds-team.de>
Subject: Autogenerated patch list.
---
diff --git a/include/wine/library.h b/include/wine/library.h
index 242bb69..fae73fe 100644
--- a/include/wine/library.h
+++ b/include/wine/library.h
@@ -43,6 +43,7 @@ extern const char *wine_get_data_dir(void);
extern const char *wine_get_server_dir(void);
extern const char *wine_get_user_name(void);
extern const char *wine_get_version(void);
+extern const void *wine_get_patches(void);
extern const char *wine_get_build_id(void);
extern void wine_init_argv0_path( const char *argv0 );
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
diff --git a/libs/wine/config.c b/libs/wine/config.c
index a273502..0a3182f 100644
--- a/libs/wine/config.c
+++ b/libs/wine/config.c
@@ -478,6 +478,${PATCH_LINES} @@ const char *wine_get_version(void)
return PACKAGE_VERSION;
}
+static const struct
+{
+ const char *author;
+ const char *subject;
+ int revision;
+}
+wine_patch_data[] =
+{
${PATCH_DATA}
+ { NULL, NULL, 0 }
+};
+
+/* return the applied non-standard patches */
+const void *wine_get_patches(void)
+{
+ return &wine_patch_data[0];
+}
+
/* return the build id string */
const char *wine_get_build_id(void)
{
diff --git a/libs/wine/wine.def b/libs/wine/wine.def
index ed315bd..5b42029 100644
--- a/libs/wine/wine.def
+++ b/libs/wine/wine.def
@@ -83,6 +83,7 @@ EXPORTS
wine_get_sortkey
wine_get_user_name
wine_get_version
+ wine_get_patches
wine_init
wine_init_argv0_path
wine_is_dbcs_leadbyte
diff --git a/libs/wine/wine.map b/libs/wine/wine.map
index 2159fac..7cb2918 100644
--- a/libs/wine/wine.map
+++ b/libs/wine/wine.map
@@ -90,6 +90,7 @@ WINE_1.0
wine_get_ss;
wine_get_user_name;
wine_get_version;
+ wine_get_patches;
wine_init;
wine_init_argv0_path;
wine_is_dbcs_leadbyte;
EOF

File diff suppressed because it is too large Load Diff

View File

@@ -40,6 +40,14 @@ class PatchApplyError(RuntimeError):
"""Failed to apply/merge patch."""
pass
class PatchDiffError(RuntimeError):
"""Failed to compute diff."""
pass
class CParserError(RuntimeError):
"""Unable to parse C source."""
pass
class PatchObject(object):
def __init__(self, filename, header):
self.patch_author = header['author']
@@ -362,3 +370,299 @@ def apply_patch(original, patchfile, reverse=False, fuzz=2):
except:
os.unlink(result.name)
raise
def generate_ifdef_patch(original, patched, ifdef):
"""Generate a patch which adds #ifdef where necessary to keep both the original and patched version."""
def _preprocess_source(fp):
"""Simple C preprocessor to determine where we can savely add #ifdef instructions."""
_re_state0 = re.compile("(\"|/[/*])")
_re_state1 = re.compile("(\\\"|\")")
_re_state2 = re.compile("\\*/")
# We need to read the original file, and figure out where lines can be splitted
lines = []
original.seek(0)
for line in original:
lines.append(line.rstrip("\n"))
split = set([0])
state = 0
i = 0
while i < len(lines):
# Read a full line (and handle line continuation)
line = lines[i]
i += 1
while line.endswith("\\"):
if i >= len(lines):
raise CParserError("Unexpected end of file.")
line = line[:-1] + lines[i]
i += 1
# To find out where we can add our #ifdef tags we use a simple
# statemachine. This allows finding the beginning of a multiline
# instruction or comment.
j = 0
while True:
# State 0: No context
if state == 0:
match = _re_state0.search(line, j)
if match is None: break
if match.group(0) == "\"":
state = 1 # Begin of string
elif match.group(0) == "/*":
state = 2 # Begin of comment
elif match.group(0) == "//":
break # Rest of the line is a comment, which can be savely ignored
else:
assert 0
# State 1: Inside of string
elif state == 1:
match = _re_state1.search(line, j)
if match is None:
raise CParserError("Line ended in the middle of a string.")
if match.group(0) == "\"":
state = 0 # End of string
elif match.group(0) != "\\\"":
assert 0
# State 2: Multiline comment
elif state == 2:
match = _re_state2.search(line, j)
if match is None: break
if match.group(0) == "*/":
state = 0 # End of comment
else:
assert 0
else:
raise CParserError("Internal state error.")
j = match.end()
# Only in state 0 (no context) we can split here
if state == 0:
split.add(i)
# Ensure that the last comment is properly terminated
if state != 0:
raise CParserError("Unexpected end of file.")
return lines, split
#
# The basic of idea of this algorithm is as following:
#
# (1) determine diff between original file and patched file
# (2) run the preprocessor, to determine where #ifdefs can be savely added
# (3) use diff and preprocessor information to create a merged version containing #ifdefs
# (4) create another diff to apply the changes on the patched version
#
with tempfile.NamedTemporaryFile() as diff:
exitcode = subprocess.call(["diff", "-u", original.name, patched.name],
stdout=diff, stderr=_devnull)
if exitcode == 0:
return None
elif exitcode != 1:
raise PatchDiffError("Failed to compute diff (exitcode %d)." % exitcode)
# Preprocess the original C source
lines, split = _preprocess_source(original)
# Parse the created diff file
diff.flush()
diff.seek(0)
# We expect this output format from 'diff', if this is not the case things might go wrong.
line = diff.readline()
assert line.startswith("--- ")
line = diff.readline()
assert line.startswith("+++ ")
hunks = []
while True:
line = diff.readline()
if line == "":
break
# Parse each hunk, and extract the srclines and dstlines. This algorithm is very
# similar to _read_single_patch.
if not line.startswith("@@ -"):
raise PatchParserError("Unable to parse line '%s'." % line)
r = re.match("^@@ -(([0-9]+),)?([0-9]+) \+(([0-9]+),)?([0-9]+) @@", line)
if not r: raise PatchParserError("Unable to parse hunk header '%s'." % line)
srcpos = max(int(r.group(2)) - 1, 0) if r.group(2) else 0
dstpos = max(int(r.group(5)) - 1, 0) if r.group(5) else 0
srclines, dstlines = int(r.group(3)), int(r.group(6))
if srclines <= 0 and dstlines <= 0:
raise PatchParserError("Empty hunk doesn't make sense.")
srcdata = []
dstdata = []
try:
while srclines > 0 or dstlines > 0:
line = diff.readline().rstrip("\n")
if line[0] == " ":
if srclines == 0 or dstlines == 0:
raise PatchParserError("Corrupted patch.")
srcdata.append(line[1:])
dstdata.append(line[1:])
srclines -= 1
dstlines -= 1
elif line[0] == "-":
if srclines == 0:
raise PatchParserError("Corrupted patch.")
srcdata.append(line[1:])
srclines -= 1
elif line[0] == "+":
if dstlines == 0:
raise PatchParserError("Corrupted patch.")
dstdata.append(line[1:])
dstlines -= 1
elif line[0] == "\\":
pass # ignore
else:
raise PatchParserError("Unexpected line in hunk.")
except IndexError: # triggered by ""[0]
raise PatchParserError("Truncated patch.")
# Ensure that the patch would really apply in practice
if lines[srcpos:srcpos + len(srcdata)] != srcdata:
raise PatchParserError("Patch failed to apply.")
# Strip common lines from the beginning and end
while len(srcdata) > 0 and len(dstdata) > 0 and \
srcdata[0] == dstdata[0]:
srcdata.pop(0)
dstdata.pop(0)
srcpos += 1
dstpos += 1
while len(srcdata) > 0 and len(dstdata) > 0 and \
srcdata[-1] == dstdata[-1]:
srcdata.pop()
dstdata.pop()
# Ensure that diff generated valid output
assert len(srcdata) > 0 or len(dstdata) > 0
# If this is the first hunk, then check if we have to extend it at the beginning
if len(hunks) == 0:
while srcpos > 0 and srcpos not in split:
srcpos -= 1
srcdata.insert(0, lines[srcpos])
dstdata.insert(0, lines[srcpos])
hunks.append((srcpos, dstpos, srcdata, dstdata))
# Check if we can merge with the previous hunk
else:
prev_srcpos, prev_dstpos, prev_srcdata, prev_dstdata = hunks[-1]
prev_endpos = prev_srcpos + len(prev_srcdata)
found = 0
for i in xrange(prev_endpos, srcpos):
if i in split:
found += 1
# At least two possible splitting positions inbetween
if found >= 2:
while prev_endpos not in split:
prev_srcdata.append(lines[prev_endpos])
prev_dstdata.append(lines[prev_endpos])
prev_endpos += 1
while srcpos not in split:
srcpos -= 1
srcdata.insert(0, lines[srcpos])
dstdata.insert(0, lines[srcpos])
hunks.append((srcpos, dstpos, srcdata, dstdata))
# Merge hunks
else:
while prev_endpos < srcpos:
prev_srcdata.append(lines[prev_endpos])
prev_dstdata.append(lines[prev_endpos])
prev_endpos += 1
assert prev_dstpos + len(prev_dstdata) == dstpos
hunks[-1][2] += srcdata
hunks[-1][3] += dstdata
# Ready with this hunk
pass
# We might have to extend the last hunk
if len(hunks):
prev_srcpos, prev_dstpos, prev_srcdata, prev_dstdata = hunks[-1]
prev_endpos = prev_srcpos + len(prev_srcdata)
while prev_endpos < len(lines) and prev_endpos not in split:
prev_srcdata.append(lines[prev_endpos])
prev_dstdata.append(lines[prev_endpos])
prev_endpos += 1
# We don't need the diff anymore, all hunks are in memory
diff.close()
# Generate resulting file with #ifdefs
with tempfile.NamedTemporaryFile() as intermediate:
pos = 0
while len(hunks):
srcpos, dstpos, srcdata, dstdata = hunks.pop(0)
if pos < srcpos:
intermediate.write("\n".join(lines[pos:srcpos]))
intermediate.write("\n")
if len(srcdata) and len(dstdata):
intermediate.write("#if defined(%s)\n" % ifdef)
intermediate.write("\n".join(dstdata))
intermediate.write("\n#else /* %s */\n" % ifdef)
intermediate.write("\n".join(srcdata))
intermediate.write("\n#endif /* %s */\n" % ifdef)
elif len(srcdata):
intermediate.write("#if !defined(%s)\n" % ifdef)
intermediate.write("\n".join(srcdata))
intermediate.write("\n#endif /* %s */\n" % ifdef)
elif len(dstdata):
intermediate.write("#if defined(%s)\n" % ifdef)
intermediate.write("\n".join(dstdata))
intermediate.write("\n#endif /* %s */\n" % ifdef)
else:
assert 0
pos = srcpos + len(srcdata)
if pos < len(lines):
intermediate.write("\n".join(lines[pos:]))
intermediate.write("\n")
intermediate.flush()
# Now we can finally compute the diff between the patched file and our intermediate file
diff = tempfile.NamedTemporaryFile()
exitcode = subprocess.call(["diff", "-u", patched.name, intermediate.name],
stdout=diff, stderr=_devnull)
if exitcode != 1: # exitcode 0 cannot (=shouldn't) happen in this situation
raise PatchDiffError("Failed to compute diff (exitcode %d)." % exitcode)
diff.flush()
diff.seek(0)
# We expect this output format from 'diff', if this is not the case things might go wrong.
line = diff.readline()
assert line.startswith("--- ")
line = diff.readline()
assert line.startswith("+++ ")
# Return the final diff
return diff

View File

@@ -1,4 +0,0 @@
/opt/wine-compholio/lib64/libwine.so*
/opt/wine-compholio/lib64/wine
/opt/wine-compholio/bin/wine64
/opt/wine-compholio/bin/wine64-preloader

View File

@@ -1 +0,0 @@
/opt/wine-compholio/include

View File

@@ -1,4 +0,0 @@
/opt/wine-compholio/lib/libwine.so*
/opt/wine-compholio/lib/wine
/opt/wine-compholio/bin/wine
/opt/wine-compholio/bin/wine-preloader

View File

@@ -1,6 +0,0 @@
documentation/README.*
ANNOUNCE
AUTHORS
LICENSE.wine
LICENSE.wine-compholio
README

View File

@@ -1,2 +0,0 @@
/opt/wine-compholio/bin
/opt/wine-compholio/share

4
debian/wine-staging-amd64.install vendored Normal file
View File

@@ -0,0 +1,4 @@
/opt/wine-staging/lib64/libwine.so*
/opt/wine-staging/lib64/wine
/opt/wine-staging/bin/wine64
/opt/wine-staging/bin/wine64-preloader

1
debian/wine-staging-dev.install vendored Normal file
View File

@@ -0,0 +1 @@
/opt/wine-staging/include

4
debian/wine-staging-i386.install vendored Normal file
View File

@@ -0,0 +1,4 @@
/opt/wine-staging/lib/libwine.so*
/opt/wine-staging/lib/wine
/opt/wine-staging/bin/wine
/opt/wine-staging/bin/wine-preloader

9
debian/wine-staging.docs vendored Normal file
View File

@@ -0,0 +1,9 @@
documentation/README.*
ANNOUNCE
AUTHORS
LICENSE
COPYING.LIB
COPYING.arial
COPYING.cour
COPYING.msyh
README

2
debian/wine-staging.install vendored Normal file
View File

@@ -0,0 +1,2 @@
/opt/wine-staging/bin
/opt/wine-staging/share

Some files were not shown because too many files have changed in this diff Show More