You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Compare commits
272 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
7efae8dc63 | ||
|
59a227fea5 | ||
|
7b41f47a27 | ||
|
2f48baf75b | ||
|
cdaf968aa6 | ||
|
f91056bdc2 | ||
|
ee4b0b868e | ||
|
46d3dece11 | ||
|
6e017c65e2 | ||
|
d018c5bad9 | ||
|
6431b62348 | ||
|
600d6d0b87 | ||
|
145e5212b3 | ||
|
799eed7336 | ||
|
b04636aa97 | ||
|
d270fde97f | ||
|
f609f42eed | ||
|
d39a62b810 | ||
|
8486f8265b | ||
|
f03602bcfd | ||
|
20d1c91c29 | ||
|
e6cf192b7b | ||
|
9d339630bb | ||
|
a8de052a24 | ||
|
846b29671f | ||
|
55e0e0ed4e | ||
|
020dc88b37 | ||
|
eb1e664c31 | ||
|
77a19f836f | ||
|
3a74d5cccc | ||
|
10354d4cb5 | ||
|
fe7b83a384 | ||
|
ad021f5462 | ||
|
e800cac340 | ||
|
91cd19237f | ||
|
1e0e9de2b0 | ||
|
802ebcbb91 | ||
|
2c3efe2faa | ||
|
2a3d9afece | ||
|
1c6691895b | ||
|
4dea282c90 | ||
|
845a4dd675 | ||
|
5bfc96a6a5 | ||
|
b8ab34f8d6 | ||
|
eccde841d5 | ||
|
22f1f858b1 | ||
|
ef427399da | ||
|
208b3c1d25 | ||
|
60632bb522 | ||
|
707a96d35a | ||
|
aa54f206eb | ||
|
6db9cf0e65 | ||
|
8727d25f6f | ||
|
02f52948f5 | ||
|
3f9af9fb49 | ||
|
e99ff32949 | ||
|
1f95d8181d | ||
|
e827cc078f | ||
|
80e51dcad6 | ||
|
10d9fda5f9 | ||
|
f69c6a545c | ||
|
a4d6e77557 | ||
|
5b691be2cc | ||
|
02eae9d5a0 | ||
|
a4dbc11aff | ||
|
f1121e3a1a | ||
|
ac83718ba8 | ||
|
603d7ca80e | ||
|
6b2cc4c58f | ||
|
a3d2b4b9e0 | ||
|
95bee0aa1e | ||
|
bc6f854478 | ||
|
0b33c39275 | ||
|
fce29b88da | ||
|
f6dd1f3d0d | ||
|
49bbdc5bf2 | ||
|
df034abacb | ||
|
d49ca49848 | ||
|
79843648fb | ||
|
63e82e5cd2 | ||
|
7e3381c7a3 | ||
|
cffa29b1ae | ||
|
dc95c57c20 | ||
|
a0a5084f55 | ||
|
386a2ce3ba | ||
|
86e6d52971 | ||
|
f7014738a8 | ||
|
4b95841bdb | ||
|
180fa60a17 | ||
|
32a0e9cc9e | ||
|
79861c20f1 | ||
|
bb0cece9a9 | ||
|
32148424bd | ||
|
5c72aff53e | ||
|
42afbafa33 | ||
|
9d3369d7a6 | ||
|
2bb1b96f06 | ||
|
2bfe73c2b7 | ||
|
8e2ab550d8 | ||
|
7f5e6044ee | ||
|
db0464c6f2 | ||
|
80455f2b22 | ||
|
ce40587ef4 | ||
|
4ad4f948c3 | ||
|
1fbebd0a1a | ||
|
1761c9534e | ||
|
b500367ff7 | ||
|
5721ee15c9 | ||
|
56264645ad | ||
|
113b554090 | ||
|
24c6b554c9 | ||
|
b861c5731d | ||
|
5d354c9b2a | ||
|
e8fee88c50 | ||
|
c2e8167d6d | ||
|
907d56238e | ||
|
674b998176 | ||
|
882b560d0d | ||
|
8df335170a | ||
|
2241ffdf4b | ||
|
dff7b6b562 | ||
|
cdb00a9e7a | ||
|
f7541123b5 | ||
|
6578707ac2 | ||
|
719c65ebb0 | ||
|
ddefcb372a | ||
|
c594bca17a | ||
|
3c33a592f6 | ||
|
4476d8af38 | ||
|
b216cdce2c | ||
|
fc086bb2bc | ||
|
772dfd9f5a | ||
|
b4d53a7344 | ||
|
e5c7fe8c18 | ||
|
fdc24226bf | ||
|
3886ee9fae | ||
|
229eb9bba5 | ||
|
1800d1f853 | ||
|
24d682fd91 | ||
|
979900f060 | ||
|
d094743650 | ||
|
2c9d2d8f64 | ||
|
457c0bf7e1 | ||
|
d2209c6ee0 | ||
|
84997e39ab | ||
|
ec9af72c77 | ||
|
01be545e92 | ||
|
bfb7d535af | ||
|
94813ecf3c | ||
|
b09ed0f3d2 | ||
|
807da03757 | ||
|
af447c6cfd | ||
|
aac5a0da53 | ||
|
7fede3cd56 | ||
|
43b781b453 | ||
|
d989770f24 | ||
|
036250b6da | ||
|
d787be6d20 | ||
|
c35db80eae | ||
|
4328f2e964 | ||
|
eecf7c4a68 | ||
|
4d01de8fcd | ||
|
f5ef032c89 | ||
|
f9eebd5599 | ||
|
48bbae3fb7 | ||
|
fdbc47e09e | ||
|
2b4093a0ea | ||
|
580ff7c1c5 | ||
|
454c09ddbe | ||
|
810202432b | ||
|
737eb1005a | ||
|
58eeb19b3e | ||
|
c8be20f3cf | ||
|
b6d34ea7d2 | ||
|
f6d14c47ec | ||
|
78d6102645 | ||
|
b862f600f5 | ||
|
e0b037b82a | ||
|
69b0f7ebd7 | ||
|
7c95fad661 | ||
|
67cc61ffca | ||
|
0df720506a | ||
|
68c91b3113 | ||
|
ac36f88de1 | ||
|
9fcd7e7113 | ||
|
903a8e54d4 | ||
|
3de6b17d8a | ||
|
74bd451363 | ||
|
22a1e1ff59 | ||
|
c781d177e1 | ||
|
f13c0f3cd8 | ||
|
9ebbbcfc9f | ||
|
d886426f50 | ||
|
d30bfe1a41 | ||
|
30825c59a9 | ||
|
7d03df647f | ||
|
a046f03792 | ||
|
b744f3d37b | ||
|
c52df465c1 | ||
|
09bfdcb009 | ||
|
2f449562d1 | ||
|
3c6c730333 | ||
|
809ee539f3 | ||
|
339892ffe6 | ||
|
2e7f83fbf8 | ||
|
9043eadbcb | ||
|
5386c7843d | ||
|
0675620019 | ||
|
552b6acf97 | ||
|
86c9842e64 | ||
|
d0e9447fb6 | ||
|
47ddb3a6d1 | ||
|
5a4ba9a546 | ||
|
b51c16c86a | ||
|
c1edf8d5c4 | ||
|
ebf2fb3d7d | ||
|
ca1e83ef3f | ||
|
054930fd52 | ||
|
56fd91825e | ||
|
a6b295029c | ||
|
ddf6dd7f6a | ||
|
524c64dd2a | ||
|
e470b33f7c | ||
|
556aa9335e | ||
|
0817bd1a57 | ||
|
2f7523bffe | ||
|
9fd0a6eb9d | ||
|
f5f50d333c | ||
|
2d3f9334f8 | ||
|
9466f14d52 | ||
|
79c4f4391e | ||
|
820cc2e861 | ||
|
29d69db459 | ||
|
7642c422ed | ||
|
d56138d8ec | ||
|
b5687dc502 | ||
|
7a15599a3a | ||
|
7e5038e76c | ||
|
30f3d023d5 | ||
|
a7a1f83013 | ||
|
53053927fd | ||
|
35cab4ef93 | ||
|
43b0d84ae9 | ||
|
825145217c | ||
|
99c6fe660f | ||
|
4a69f63a78 | ||
|
39fa530c33 | ||
|
564f8aeafc | ||
|
e77f05ee52 | ||
|
f352182c20 | ||
|
7bb4be5d03 | ||
|
ef956caf59 | ||
|
8e45d4c99f | ||
|
004109b3bd | ||
|
dd5b1514b2 | ||
|
34a6c25071 | ||
|
6dc4078d74 | ||
|
6fcc7f732d | ||
|
997c04f7f8 | ||
|
658fe4e3ae | ||
|
40aaeb61f8 | ||
|
6274002623 | ||
|
24af73d1d2 | ||
|
155a364280 | ||
|
9c1492069b | ||
|
c3d5bcab99 | ||
|
c3052d2e31 | ||
|
87fd81b9d8 | ||
|
062426558b | ||
|
1c6aeef3b4 | ||
|
f7de528788 | ||
|
8d45dc126d |
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
debian/tools/wine
|
||||
.depcache
|
||||
*.ok
|
||||
*.pyc
|
677
LICENSE.GPLv3
Normal file
677
LICENSE.GPLv3
Normal file
File diff suppressed because it is too large
Load Diff
502
LICENSE.LGPLv2.1
Normal file
502
LICENSE.LGPLv2.1
Normal file
File diff suppressed because it is too large
Load Diff
59
LICENSE.Liberation
Normal file
59
LICENSE.Liberation
Normal file
@@ -0,0 +1,59 @@
|
||||
The following files are under this license:
|
||||
* ./patches/fonts-Missing_Fonts/0001-fonts-Add-Liberation-Sans-as-an-Arial-replacement.patch
|
||||
|
||||
LICENSE AGREEMENT AND LIMITED PRODUCT WARRANTY
|
||||
LIBERATION FONT SOFTWARE
|
||||
|
||||
This agreement governs the use of the Software and any updates to the Software,
|
||||
regardless of the delivery mechanism. Subject to the following terms, Red Hat,
|
||||
Inc. ("Red Hat") grants to the user ("Client") a license to this work pursuant
|
||||
to the GNU General Public License v.2 with the exceptions set forth below and
|
||||
such other terms as our set forth in this End User License Agreement.
|
||||
|
||||
1.The Software and License Exception. LIBERATION font software (the "Software")
|
||||
consists of TrueType-OpenType formatted font software for rendering LIBERATION
|
||||
typefaces in sans serif, serif, and monospaced character styles. You are licensed
|
||||
to use, modify, copy, and distribute the Software pursuant to the GNU General
|
||||
Public License v.2 with the following exceptions:
|
||||
(a)As a special exception, if you create a document which uses this font, and
|
||||
embed this font or unaltered portions of this font into the document, this font
|
||||
does not by itself cause the resulting document to be covered by the GNU General
|
||||
Public License. This exception does not however invalidate any other reasons why
|
||||
the document might be covered by the GNU General Public License. If you modify
|
||||
this font, you may extend this exception to your version of the font, but you
|
||||
are not obligated to do so. If you do not wish to do so, delete this exception
|
||||
statement from your version.
|
||||
(b)As a further exception, any distribution of the object code of the Software
|
||||
in a physical product must provide you the right to access and modify the source
|
||||
code for the Software and to reinstall that modified version of the Software in
|
||||
object code form on the same physical product on which you received it.
|
||||
2.Intellectual Property Rights. The Software and each of its components,
|
||||
including the source code, documentation, appearance, structure and organization
|
||||
are owned by Red Hat and others and are protected under copyright and other laws.
|
||||
Title to the Software and any component, or to any copy, modification, or merged
|
||||
portion shall remain with the aforementioned, subject to the applicable license.
|
||||
The "LIBERATION" trademark is a trademark of Red Hat, Inc. in the U.S. and other
|
||||
countries. This agreement does not permit Client to distribute modified versions
|
||||
of the Software using Red Hat's trademarks. If Client makes a redistribution of
|
||||
a modified version of the Software, then Client must modify the files names to
|
||||
remove any reference to the Red Hat trademarks and must not use the Red Hat
|
||||
trademarks in any way to reference or promote the modified Software.
|
||||
3.Limited Warranty. To the maximum extent permitted under applicable law, the
|
||||
Software is provided and licensed "as is" without warranty of any kind,
|
||||
expressed or implied, including the implied warranties of merchantability,
|
||||
non-infringement or fitness for a particular purpose. Red Hat does not warrant
|
||||
that the functions contained in the Software will meet Client's requirements or
|
||||
that the operation of the Software will be entirely error free or appear
|
||||
precisely as described in the accompanying documentation.
|
||||
4.Limitation of Remedies and Liability. To the maximum extent permitted by
|
||||
applicable law, Red Hat or any Red Hat authorized dealer will not be liable to
|
||||
Client for any incidental or consequential damages, including lost profits or
|
||||
lost savings arising out of the use or inability to use the Software, even if
|
||||
Red Hat or such dealer has been advised of the possibility of such damages.
|
||||
5.General. If any provision of this agreement is held to be unenforceable, that
|
||||
shall not affect the enforceability of the remaining provisions. This agreement
|
||||
shall be governed by the laws of the State of North Carolina and of the United
|
||||
States, without regard to any conflict of laws provisions, except that the
|
||||
United Nations Convention on the International Sale of Goods shall not apply.
|
||||
Copyright © 2007 Red Hat, Inc. All rights reserved. LIBERATION is a trademark
|
||||
of Red Hat, Inc.
|
File diff suppressed because it is too large
Load Diff
108
README.md
108
README.md
@@ -1,4 +1,106 @@
|
||||
wine-compholio-daily
|
||||
====================
|
||||
wine-compholio
|
||||
==============
|
||||
|
||||
Daily updates for the Wine "Compholio" Edition.
|
||||
The Wine "Compholio" Edition repository includes a variety of patches for
|
||||
Wine to run common Windows applications under Linux.
|
||||
|
||||
These patches fix the following Wine bugs:
|
||||
|
||||
* Support for TransmitFile ([Wine Bug #5048](http://bugs.winehq.org/show_bug.cgi?id=5048 "Multiple applications and games need support for ws2_32 SIO_GET_EXTENSION_FUNCTION_POINTER TransmitFile (WSAID_TRANSMITFILE)"))
|
||||
* Need for Speed 3 installer requires devices in HKEY_DYN_DATA ([Wine Bug #7115](http://bugs.winehq.org/show_bug.cgi?id=7115 "Need for Speed III installer fails in Win9X mode, reporting \"Could not get 'HardWareKey' value\" (active PnP device keys in 'HKEY_DYN_DATA\\\\Config Manager\\\\Enum' missing)"))
|
||||
* Support for Junction Points ([Wine Bug #12401](http://bugs.winehq.org/show_bug.cgi?id=12401 "Support junction points, i.e. DeviceIoCtl(FSCTL_SET_REPARSE_POINT/FSCTL_GET_REPARSE_POINT)"))
|
||||
* Implement a Microsoft Yahei replacement font ([Wine Bug #13829](http://bugs.winehq.org/show_bug.cgi?id=13829 "Wine does not have CJK fonts"))
|
||||
* GetSecurityInfo returns NULL DACL for process object ([Wine Bug #15980](http://bugs.winehq.org/show_bug.cgi?id=15980 "Rhapsody 2 crashes on startup (GetSecurityInfo returns NULL DACL for process object)"))
|
||||
* Workaround for TransactNamedPipe not being supported ([Wine Bug #17273](http://bugs.winehq.org/show_bug.cgi?id=17273 "Many apps and games need SetNamedPipeHandleState implementation (support for named pipe message mode)(FireFox+Flash, Win8/NET 4.x SDK/vcrun2012, WiX installers)"))
|
||||
* Support for process ACLs ([Wine Bug #22006](http://bugs.winehq.org/show_bug.cgi?id=22006 "OpenProcess does not enforce ACL"))
|
||||
* Return correct IMediaSeeking stream positions in quartz ([Wine Bug #23174](http://bugs.winehq.org/show_bug.cgi?id=23174 "Fallout 3: Diologue and Video/sound issues"))
|
||||
* Add implementation of WTSEnumerateProcessesW ([Wine Bug #29903](http://bugs.winehq.org/show_bug.cgi?id=29903 "Some Microsoft debuggers fail to enumerate processes due to wtsapi32.WTSEnumerateProcessesW() being a stub (Microsoft Visual Studio 2005, DbgCLR from .NET 2.0 SDK)"))
|
||||
* Fix race conditions and deadlocks in strmbase/quartz ([Wine Bug #31566](http://bugs.winehq.org/show_bug.cgi?id=31566 "Fallout 3: regression causes block at critical section when radio is enabled"))
|
||||
* Support for stored file ACLs ([Wine Bug #31858](http://bugs.winehq.org/show_bug.cgi?id=31858 "Netflix on Firefox fails with Internet Connection Problem when loading bar is at 99%"))
|
||||
* Implement an Arial replacement font ([Wine Bug #32323](http://bugs.winehq.org/show_bug.cgi?id=32323 "Netflix (Silverlight 4.x) and several .NET Framework 3.x/4.0 WPF apps require either Arial or Verdana to be installed"))
|
||||
* Support for interface change notifications ([Wine Bug #32328](http://bugs.winehq.org/show_bug.cgi?id=32328 "Many .NET and Silverlight applications require SIO_ADDRESS_LIST_CHANGE for interface change notifications"))
|
||||
* Support for inherited file ACLs ([Wine Bug #34406](http://bugs.winehq.org/show_bug.cgi?id=34406 "Finale Notepad 2012 doesn't copy/create user files on program start"))
|
||||
* Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](http://bugs.winehq.org/show_bug.cgi?id=36374 "Israel timezone handled incorrectly"))
|
||||
|
||||
Besides that the following additional changes are included:
|
||||
|
||||
* Add default ACLs for user shell folders
|
||||
* Add support for Dynamic DST (daylight saving time) information in registry
|
||||
* Lockfree algorithm for filedescriptor cache (improves file access speed)
|
||||
* Other Pipelight specific enhancements
|
||||
* Reduced SetTimer minimum value from 10 ms to 5 ms (improves Silverlight framerates)
|
||||
* Support for GetVolumePathName
|
||||
* Support for PulseAudio backend for audio
|
||||
* Workaround for shlwapi URLs with relative paths
|
||||
* XEMBED support for embedding Wine windows inside Linux applications
|
||||
|
||||
### Compiling wine-compholio
|
||||
|
||||
Please note that starting with wine-compholio 1.7.23 it is deprecated to manually
|
||||
apply patches without using the Makefile. To avoid typical pitfalls for package
|
||||
maintainers (like trying to use the patch commandline utility for binary patches or
|
||||
not updating the patchlist) it is highly recommended to use the Makefile in order
|
||||
to apply all patches. This ensures that the the correct patch utility is used, that
|
||||
the list of patches is updated appropriately, and so on. Please note that it is still
|
||||
possible to exclude patches if desired, take a look at the end of this document for
|
||||
more details.
|
||||
|
||||
The following instructions (based on the
|
||||
[Gentoo Wiki](https://wiki.gentoo.org/wiki/Netflix/Pipelight#Compiling_manually))
|
||||
will give a short overview how to compile wine-compholio, but of course not explain
|
||||
all details. Make sure to install all required Wine dependencies before proceeding.
|
||||
|
||||
As the first step please grab the latest Wine source:
|
||||
```bash
|
||||
wget http://prdownloads.sourceforge.net/wine/wine-1.7.23.tar.bz2
|
||||
wget https://github.com/compholio/wine-compholio-daily/archive/v1.7.23.tar.gz
|
||||
```
|
||||
Extract the archives:
|
||||
```bash
|
||||
tar xvjf wine-1*.tar.bz2
|
||||
cd wine-1*
|
||||
tar xvzf ../v1.7.23.tar.gz --strip-components 1
|
||||
```
|
||||
And apply the patches:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install
|
||||
```
|
||||
Afterwards run configure (you can also specify a prefix if you don't want to install
|
||||
wine-compholio system-wide):
|
||||
```bash
|
||||
./configure --with-xattr
|
||||
```
|
||||
Before you continue you should make sure that ./configure doesn't show any warnings
|
||||
(look at the end of the output). If there are any warnings, this most likely means
|
||||
that you're missing some important header files. Install them and repeat the ./configure
|
||||
step until all problems are fixed.
|
||||
|
||||
Afterwards compile it (and grab a cup of coffee):
|
||||
```bash
|
||||
make
|
||||
```
|
||||
And install it (you only need sudo for a system-wide installation):
|
||||
```bash
|
||||
sudo make install
|
||||
```
|
||||
|
||||
### Excluding patches
|
||||
|
||||
It is also possible to apply only a subset of the patches, for example if you're
|
||||
compiling for a distribution where PulseAudio is not installed, or if you just don't
|
||||
like a specific patchset. Please note that some patchsets depend on each other, and
|
||||
requesting an impossible situation might result in a failure to apply all patches.
|
||||
|
||||
Lets assume you want to exclude the patchset in directory DIRNAME, then just invoke the
|
||||
Makefile like this:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok
|
||||
```
|
||||
|
||||
Using the same method its also possible to exclude multiple patchsets. If you want to
|
||||
exclude a very large number of patches, it is easier to do specify a list of patches
|
||||
which should be included instead. To apply for example only the patchsets in directory
|
||||
DIRNAME1 and DIRNAME2, you can use:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) PATCHLIST="DIRNAME1.ok DIRNAME2.ok" install
|
||||
```
|
||||
|
146
debian/changelog
vendored
146
debian/changelog
vendored
@@ -1,3 +1,149 @@
|
||||
wine-compholio (1.7.23) unstable; urgency=low
|
||||
* Rewrite of patch system to simplify maintaining large patchsets.
|
||||
* Fix failing Junction Point test.
|
||||
* Fix possible race conditions in strmbase/quartz.
|
||||
* Fix race condition between EndOfStream and Pause.
|
||||
* Fix issues with Israel Standard Time timezone.
|
||||
* Add support for Dynamic DST (daylight saving time) information.
|
||||
* Add some generic hardware in HKEY_DYN_DATA\Config Manager\Enum.
|
||||
* Return correct IMediaSeeking stream positions in quartz.
|
||||
* Make sure LICENSE files are included in the Debian packages.
|
||||
* Downgraded Arial replacement font to Liberation Sans v1.07.3.
|
||||
* Remove relative Junction Point linking for now (breaks tests).
|
||||
* Added WenQuanYi Micro Hei (GPLv3) as a Microsoft Yahei replacement.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 25 Jul 2014 21:12:42 -0600
|
||||
|
||||
wine-compholio (1.7.22) unstable; urgency=low
|
||||
* Implement passing ACLs to CreateProcess.
|
||||
* Removed several patches (accepted upstream).
|
||||
* Added NT4 support to the process ACL tests.
|
||||
* Implement RegSetKeySecurity on top of NtSetSecurityObject.
|
||||
* Updated RegSetKeySecurity patch to work with special root keys.
|
||||
* Add patch for wtsapi32.WTSEnumerateProcessesW function.
|
||||
* Fix incorrect scaling for DECIMAL values in VarDecAdd.
|
||||
* Updated main extended attributes patch to include BSD support.
|
||||
* Return NULL-terminated list of arguments in CommandLineToArgvW.
|
||||
* Updated main extended attributes patch to include additional data checks.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 11 Jul 2014 13:00:03 -0600
|
||||
|
||||
wine-compholio (1.7.21) unstable; urgency=low
|
||||
* Remove several patches (accepted upstream).
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Fri, 27 Jun 2014 23:08:48 -0600
|
||||
|
||||
wine-compholio (1.7.20) unstable; urgency=low
|
||||
* Remove several patches (accepted upstream).
|
||||
* Fix recommendation for odbc and add libgsm1.
|
||||
* Disabled gstreamer (broken with glib >= 2.32.0).
|
||||
* Updated scripts to be compatible with BSD systems.
|
||||
* Update winepulse patches to latest revision (extracted from 1.7.19).
|
||||
* Force autoreconf even when timestamp seems to indicate that it is not necessary.
|
||||
* Added patches for default security descriptor ownership and DACLs for processes.
|
||||
* Added a patch to avoid a race-condition when unloading modules while a hook is active.
|
||||
* Add patch to fix issues with Obsidium copy protection.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sat, 14 Jun 2014 18:15:12 +0200
|
||||
|
||||
wine-compholio (1.7.19-1) unstable; urgency=low
|
||||
* Added a patch to fix return value for FSCTL_PIPE_WAIT (required for Unity3D).
|
||||
* Added a patch to stub TokenAppContainerSid in NtQueryInformationToken (required for Unity3D).
|
||||
* Added a patch to optimize the file descriptor cache by using lockfree algorithms.
|
||||
* Add additional checks in XATTR patch to ensure wineserver doesn't crash if data is corrupted.
|
||||
* Add support for extended attributes on FreeBSD systems.
|
||||
* Added a patch to fix ntdll/exception test failures on x86_64.
|
||||
* Allow to change 'strict draw ordering' at runtime.
|
||||
* Add ability to test if all dynamic libraries are installed with "wine --check-libs".
|
||||
* Added a patch to query if direct rendering is enabled via GLX extension.
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Mon, 02 Jun 2014 23:50:23 +0200
|
||||
|
||||
wine-compholio (1.7.19) unstable; urgency=low
|
||||
* Updated SIO_ADDRESS_LIST_CHANGE patches.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 06 May 2014 15:42:32 -0600
|
||||
|
||||
wine-compholio (1.7.18-1) unstable; urgency=low
|
||||
* Fix some issues on BSD systems.
|
||||
* Add additional patches to silence a few FIXMEs.
|
||||
* Rebase 02-ACL_Extended_Attributes patches.
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Tue, 13 May 2014 20:47:23 +0200
|
||||
|
||||
wine-compholio (1.7.18) unstable; urgency=low
|
||||
* Updated SetTimer patch (10 ms accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 02 May 2014 13:05:13 -0600
|
||||
|
||||
wine-compholio (1.7.17) unstable; urgency=low
|
||||
* Split Arial replacement into two patches.
|
||||
* Removed dynamic unwind patches (accepted upstream).
|
||||
* Removed linguistic casing patches (accepted upstream).
|
||||
* ACL data is now stored in binary instead of converting it to ASCII.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 18 Apr 2014 16:03:57 -0600
|
||||
|
||||
wine-compholio (1.7.16-1) unstable; urgency=low
|
||||
* Fix build failure caused by dynamic unwind functions.
|
||||
* Dropped liblcms2-dev dependency for old Ubuntu versions.
|
||||
-- Sebastian Lackner <sebastian@fds-team.de> Sat, 05 Apr 2014 03:48:25 +0200
|
||||
|
||||
wine-compholio (1.7.16) unstable; urgency=low
|
||||
* Add stub for RtlInstallFunctionTableCallback.
|
||||
* Further split out the SIO_ADDRESS_LIST_CHANGE patches.
|
||||
* Add proper implementation for dynamic unwind functions, removed stub implementation.
|
||||
* Fix lcms dependency (Wine requires lcms2 instead of lcms1), add build dependency to libsane-dev.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 04 Apr 2014 17:27:52 -0600
|
||||
|
||||
wine-compholio (1.7.15-1) unstable; urgency=low
|
||||
* Build 64 bit version of Wine.
|
||||
* First SIO_ADDRESS_LIST_CHANGE patch accepted upstream.
|
||||
* Added stub dll for DirectX Video Acceleration (dxva2.dll).
|
||||
* Update DXVA2 patches (additional implementation details, parts accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 25 Mar 2014 06:08:01 +0100
|
||||
|
||||
wine-compholio (1.7.15) unstable; urgency=low
|
||||
* Fixed build dependencies for Debian Sid.
|
||||
* Fixed free() of a const variable (Bug #1).
|
||||
* Removed get_dir_unix_fd (no longer used, fixes compiling with "-Werror").
|
||||
* Removed 'register user administrative tools shell folder' patch (accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Sun, 23 Mar 2014 12:53:32 +0100
|
||||
|
||||
wine-compholio (1.7.14) unstable; urgency=low
|
||||
* Minor updates to the ACL patches.
|
||||
* Added Liberation Sans (SIL Open Font License) as an Arial replacement.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 07 Mar 2014 13:59:11 -0700
|
||||
|
||||
wine-compholio (1.7.13-1) unstable; urgency=low
|
||||
* Fixed a typo in the configure check for extended attributes.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 21 Feb 2014 09:00:00 -0700
|
||||
|
||||
wine-compholio (1.7.13) unstable; urgency=low
|
||||
* Added support for inherited file ACLs.
|
||||
* Further separated the file ACL patches.
|
||||
* Updated linguistic casing patches to include tests.
|
||||
* Updated the patch list template to be compatible with 'git am'.
|
||||
* Moved the patching code out of the debian rules into a Makefile.
|
||||
* Removed the named pipe security access patch (accepted upstream).
|
||||
* Explicitly run configure with '--with-xattr' when building debian packages.
|
||||
* Will now fail on configure when '--with-xattr' is passed and xattr.h cannot be found.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Thu, 20 Feb 2014 18:48:03 -0700
|
||||
|
||||
wine-compholio (1.7.12-1) unstable; urgency=low
|
||||
* Fixed PulseAudio patches to apply with 'git am'.
|
||||
* Fixed PulseAudio driver configure file for upstream Wine 1.7.12.
|
||||
* Fixed PulseAudio driver pthread dependency for upstream Wine 1.7.12.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 07 Feb 2014 17:52:32 -0700
|
||||
|
||||
wine-compholio (1.7.12) unstable; urgency=low
|
||||
* Added new patches to support GetVolumePathName.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 07 Feb 2014 14:57:33 -0700
|
||||
|
||||
wine-compholio (1.7.11) unstable; urgency=low
|
||||
* Added SRWLock patch.
|
||||
* Added new patches to support TransmitFile.
|
||||
* Added new patches to support Junction Points.
|
||||
* Moved pipelight-specific patches to a separate folder.
|
||||
* Removed SRWLock patch included in upstream Wine 1.7.11.
|
||||
* Reduced SetTimer minimum limitation from 15 ms to 5 ms.
|
||||
* Added support for security access parameters for named pipes.
|
||||
* Added WINE_STRICT_DRAW_ORDERING command line environment variable.
|
||||
* Fixed a path length bug in the ACL inheritance patch (assumed DOS limitation).
|
||||
* Added some workarounds for shlwapi url functions not handling relative paths well.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Fri, 17 Jan 2014 12:27:32 -0700
|
||||
|
||||
wine-compholio (1.7.10) unstable; urgency=low
|
||||
* Removed monitor enumeration patch included in upstream Wine 1.7.10.
|
||||
* Updated SIO_ADDRESS_LIST_CHANGE patch with latest proposed version.
|
||||
|
187
debian/control
vendored
187
debian/control
vendored
@@ -5,27 +5,21 @@ Maintainer: Erich E. Hoover <ehoover@mines.edu>
|
||||
XSBC-Original-Maintainer: Scott Ritchie <scottritchie@ubuntu.com>
|
||||
Build-Depends: autotools-dev,
|
||||
autoconf,
|
||||
bind9-host,
|
||||
bison,
|
||||
bsdmainutils,
|
||||
coreutils,
|
||||
debhelper (>= 7),
|
||||
docbook-to-man,
|
||||
docbook-utils,
|
||||
docbook-xsl,
|
||||
flex,
|
||||
fontforge,
|
||||
gawk,
|
||||
gcc-4.5 | gcc-4.7 | ubuntu-desktop (<< 1.207),
|
||||
gcc-4.5-multilib [amd64] | ubuntu-desktop (<< 1.207) [amd64],
|
||||
gcc-multilib [amd64],
|
||||
gettext,
|
||||
ia32-libs [amd64],
|
||||
ia32-libs-dev [amd64] | ubuntu-desktop (<< 1.267) [amd64],
|
||||
ia32-libs-multiarch [amd64] | ubuntu-desktop (<< 1.267) [amd64],
|
||||
lib32asound2-dev [amd64],
|
||||
lib32ncurses5-dev [amd64],
|
||||
lib32z1-dev [amd64],
|
||||
gzip,
|
||||
libacl1-dev,
|
||||
libasound2-dev [i386 lpia],
|
||||
libc6-dev-i386 [amd64],
|
||||
libasound2-dev,
|
||||
libcapi20-dev,
|
||||
libcups2-dev,
|
||||
libdbus-1-dev,
|
||||
@@ -33,28 +27,25 @@ Build-Depends: autotools-dev,
|
||||
libesd0-dev,
|
||||
libfontconfig1-dev | libfontconfig-dev,
|
||||
libfreetype6-dev,
|
||||
libgif-dev | libungif4-dev,
|
||||
libgl1-mesa-dev | nvidia-glx-dev | fglrx-driver-dev | libgl-dev,
|
||||
libglu1-mesa-dev | libglu-dev,
|
||||
libgnutls-dev,
|
||||
libgphoto2-dev | libgphoto2-6-dev | libgphoto2-2-dev (>= 2.4.6),
|
||||
libgphoto2port-dev | ubuntu-desktop (>= 1.245) | debian-edu-config,
|
||||
libgsm1-dev,
|
||||
libgstreamer-plugins-base0.10-dev,
|
||||
libgstreamer0.10-dev,
|
||||
libice-dev,
|
||||
libjpeg-dev,
|
||||
liblcms1-dev, liblcms-dev,
|
||||
liblcms2-dev | ubuntu-desktop (<< 1.267),
|
||||
libldap2-dev, libldap-dev,
|
||||
libmpg123-dev,
|
||||
libncurses5-dev [i386] | libncurses-dev [i386],
|
||||
libncurses5-dev | libncurses-dev,
|
||||
libopenal-dev (>= 1:1.12) | ubuntu-desktop (<< 1.207),
|
||||
libpng12-dev,
|
||||
libpulse-dev,
|
||||
libsane-dev,
|
||||
libssl-dev,
|
||||
libstdc++6-4.5-dev | libstdc++-dev,
|
||||
libtiff4-dev,
|
||||
libv4l-dev [i386],
|
||||
libtiff5-dev | libtiff4-dev | libtiff-dev,
|
||||
libv4l-dev,
|
||||
libx11-dev,
|
||||
libxcomposite-dev,
|
||||
libxcursor-dev,
|
||||
@@ -69,30 +60,28 @@ Build-Depends: autotools-dev,
|
||||
libxxf86vm-dev,
|
||||
linux-kernel-headers,
|
||||
linux-libc-dev,
|
||||
prelink [i386 amd64],
|
||||
prelink,
|
||||
quilt (>= 0.46-7~),
|
||||
sharutils,
|
||||
unixodbc-dev,
|
||||
x11proto-xinerama-dev
|
||||
Standards-Version: 3.9.2
|
||||
|
||||
Package: wine-compholio
|
||||
Package: wine-compholio-i386
|
||||
Architecture: i386
|
||||
Multi-Arch: foreign
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends},
|
||||
libasound2-plugins,
|
||||
libncurses5
|
||||
Recommends: gettext,
|
||||
libcapi20-3,
|
||||
Recommends: libcapi20-3,
|
||||
libcups2,
|
||||
libdbus-1-3,
|
||||
libfontconfig1 | libfontconfig,
|
||||
libfreetype6,
|
||||
libgif4,
|
||||
libgnutls26,
|
||||
libgphoto2-6 | libgphoto2-2 (>= 2.4.6),
|
||||
libgphoto2-port0 (>= 2.4.6),
|
||||
libgphoto2-port10 | libgphoto2-port0 (>= 2.4.6),
|
||||
libjpeg8,
|
||||
libopenal1 (>= 1:1.12),
|
||||
libosmesa6,
|
||||
@@ -100,7 +89,7 @@ Recommends: gettext,
|
||||
libpulse0,
|
||||
libsane,
|
||||
libssl1.0.0,
|
||||
libtiff4,
|
||||
libtiff5 | libtiff4,
|
||||
libv4l-0,
|
||||
libxcomposite1,
|
||||
libxcursor1,
|
||||
@@ -111,8 +100,96 @@ Recommends: gettext,
|
||||
libxslt1.1,
|
||||
libxt6,
|
||||
libxxf86vm1,
|
||||
unixodbc
|
||||
Provides: wine-compholio
|
||||
libodbc1,
|
||||
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
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package provides support for loading 32-bit x86 Windows applications
|
||||
.
|
||||
This package is based on a recent Wine beta. While many more applications will
|
||||
work, there may be some loss of functionality compared with the stable release
|
||||
provided by the regular wine package.
|
||||
|
||||
Package: wine-compholio-amd64
|
||||
Architecture: amd64
|
||||
Multi-Arch: foreign
|
||||
Pre-Depends: dpkg (>= 1.14.12ubuntu3), ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends},
|
||||
libasound2-plugins,
|
||||
libncurses5
|
||||
Recommends: libcapi20-3,
|
||||
libcups2,
|
||||
libdbus-1-3,
|
||||
libfontconfig1 | libfontconfig,
|
||||
libfreetype6,
|
||||
libgnutls26,
|
||||
libgphoto2-6 | libgphoto2-2 (>= 2.4.6),
|
||||
libgphoto2-port10 | libgphoto2-port0 (>= 2.4.6),
|
||||
libjpeg8,
|
||||
libopenal1 (>= 1:1.12),
|
||||
libosmesa6,
|
||||
libpng12-0,
|
||||
libpulse0,
|
||||
libsane,
|
||||
libssl1.0.0,
|
||||
libtiff5 | libtiff4,
|
||||
libv4l-0,
|
||||
libxcomposite1,
|
||||
libxcursor1,
|
||||
libxi6,
|
||||
libxinerama1,
|
||||
libxrandr2,
|
||||
libxrender1,
|
||||
libxslt1.1,
|
||||
libxt6,
|
||||
libxxf86vm1,
|
||||
libodbc1,
|
||||
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
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package provides support for loading 64-bit x86 Windows applications
|
||||
.
|
||||
This package is based on a recent Wine beta. While many more applications will
|
||||
work, there may be some loss of functionality compared with the stable release
|
||||
provided by the regular wine package.
|
||||
|
||||
Package: wine-compholio
|
||||
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],
|
||||
Section: otherosfs
|
||||
Priority: optional
|
||||
Description: The Compholio Edition is a special build of the popular Wine software
|
||||
@@ -135,3 +212,57 @@ Description: The Compholio Edition is a special build of the popular Wine softwa
|
||||
This package is based on a recent Wine beta. While many more applications will
|
||||
work, there may be some loss of functionality compared with the stable release
|
||||
provided by the regular wine package.
|
||||
|
||||
Package: wine-compholio-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],
|
||||
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
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
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
|
||||
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],
|
||||
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
|
||||
with patches representing my current staging tree for Wine.
|
||||
Currently these patches fix:
|
||||
* Netflix on Firefox hangs with loading bar at 100% (Bug 31993).
|
||||
* Netflix on Firefox fails with Internet Connection Problem when loading bar is
|
||||
at 99% (Bug 31858).
|
||||
.
|
||||
Microsoft Windows Compatibility Layer (Binary Emulator and Library)
|
||||
Wine is a compatibility layer for running Windows applications on Linux.
|
||||
Applications are run at full speed without the need of cpu emulation. Wine
|
||||
does not require Microsoft Windows, however it can use native system dll
|
||||
files in place of its own if they are available.
|
||||
.
|
||||
This package includes debugging symbols useful for reporting crashes and other
|
||||
failures.
|
||||
|
167
debian/rules
vendored
167
debian/rules
vendored
@@ -1,36 +1,4 @@
|
||||
#!/usr/bin/make -f
|
||||
# -*- makefile -*-
|
||||
# Sample debian/rules that uses debhelper.
|
||||
# This file was originally written by Joey Hess and Craig Small.
|
||||
# As a special exception, when this file is copied by dh-make into a
|
||||
# dh-make output file, you may use that output file without restriction.
|
||||
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
#export DH_VERBOSE=1
|
||||
|
||||
|
||||
# These are used for cross-compiling and for saving the configure script
|
||||
# from having to guess our platform (since we know it already)
|
||||
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
||||
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
||||
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
|
||||
CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
|
||||
else
|
||||
CROSS= --build $(DEB_BUILD_GNU_TYPE)
|
||||
endif
|
||||
|
||||
|
||||
# Apparently it's important to have an empty LDFLAGS, see:
|
||||
# http://www.winehq.org/pipermail/wine-bugs/2007-July/062505.html
|
||||
# For Wine 1.1.44 it's also important not to compile at -O0
|
||||
LDFLAGS =
|
||||
CFLAGS = -Wall -g -O2
|
||||
|
||||
# On amd64 the 32-bit libraries are in lib32 instead of lib
|
||||
ifeq ($(DEB_BUILD_ARCH), amd64)
|
||||
CONFFLAGS += --libdir=\$${prefix}/lib32
|
||||
endif
|
||||
|
||||
# Use gcc-4.5 if it's available
|
||||
ifeq ($(shell which gcc-4.5),)
|
||||
@@ -39,115 +7,40 @@ else
|
||||
CC = gcc-4.5
|
||||
endif
|
||||
|
||||
# Support passing of parallel=<n> in build options
|
||||
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
MAKEFLAGS += -j$(NUMJOBS)
|
||||
endif
|
||||
%:
|
||||
dh $@ --parallel
|
||||
|
||||
configure:
|
||||
# Unpack the original Wine version
|
||||
tar -xjvf wine-*.tar.bz2
|
||||
mv wine-*/* .
|
||||
rm wine-*/.* || true
|
||||
rm wine-*.tar.bz2
|
||||
rmdir wine-*
|
||||
override_dh_auto_configure:
|
||||
|
||||
config.status: configure
|
||||
dh_testdir
|
||||
# Add here commands to configure the package.
|
||||
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
|
||||
cp -f /usr/share/misc/config.sub config.sub
|
||||
endif
|
||||
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
|
||||
cp -f /usr/share/misc/config.guess config.guess
|
||||
endif
|
||||
# Apply our patches, reconfigure, and update the wineserver protocol request data
|
||||
make -C "$(CURDIR)/patches/" DESTDIR="$(CURDIR)" install
|
||||
|
||||
# Apply our patches to Wine
|
||||
for DIR in $$(find $(CURDIR)/patches/ -type d | sort); do \
|
||||
for FILE in $$(ls $$DIR | sort | grep '\.patch$$'); do \
|
||||
patch -N -p0 --strip=1 < $$DIR/$$FILE || exit 1; \
|
||||
done \
|
||||
done
|
||||
|
||||
# Update the configure script
|
||||
autoreconf
|
||||
|
||||
# Configure
|
||||
CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/opt/wine-compholio --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info $(CONFFLAGS)
|
||||
|
||||
|
||||
|
||||
build: build-stamp
|
||||
|
||||
build-stamp: config.status
|
||||
dh_testdir
|
||||
|
||||
# Add here commands to compile the package.
|
||||
$(MAKE) depend
|
||||
$(MAKE) $(MAKEFLAGS)
|
||||
#docbook-to-man debian/wine-compholio.sgml > wine-compholio.1
|
||||
|
||||
touch $@
|
||||
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
rm -f build-stamp
|
||||
|
||||
# Add here commands to clean up after the build process.
|
||||
[ ! -f Makefile ] || $(MAKE) distclean
|
||||
rm -f config.sub config.guess
|
||||
|
||||
dh_clean
|
||||
|
||||
install: build
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
dh_installdirs
|
||||
|
||||
# Add here commands to install the package into debian/wine-compholio.
|
||||
$(MAKE) DESTDIR=$(CURDIR)/debian/wine-compholio install
|
||||
|
||||
# Build architecture-independent files here.
|
||||
binary-indep: build install
|
||||
# We have nothing to do by default.
|
||||
|
||||
# Build architecture-dependent files here.
|
||||
binary-arch: build install
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
# dh_installchangelogs ChangeLog
|
||||
dh_installdocs
|
||||
dh_installexamples
|
||||
# dh_install
|
||||
# dh_installmenu
|
||||
# dh_installdebconf
|
||||
# dh_installlogrotate
|
||||
# dh_installemacsen
|
||||
# dh_installpam
|
||||
# dh_installmime
|
||||
# dh_python
|
||||
# dh_installinit
|
||||
# dh_installcron
|
||||
# dh_installinfo
|
||||
dh_installman
|
||||
dh_link
|
||||
dh_strip
|
||||
dh_compress
|
||||
dh_fixperms
|
||||
# dh_perl
|
||||
dh_makeshlibs
|
||||
dh_installdeb
|
||||
ifeq ($(DEB_BUILD_ARCH), amd64)
|
||||
dh_gencontrol -- -V"shlibs:Depends= ia32-libs (>= 1.6), lib32asound2 (>> 1.0.14), libc6-i386 (>= 2.6-1), lib32nss-mdns (>= 0.10-3)"
|
||||
./configure --prefix=/opt/wine-compholio --libdir=\$${prefix}/lib64 --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --enable-win64 --without-gstreamer --with-xattr $(CONFFLAGS)
|
||||
else
|
||||
LD_LIBRARY_PATH="$(CURDIR)/debian/wine-compholio/opt/wine-compholio/lib:${LD_LIBRARY_PATH}" dh_shlibdeps -L wine-compholio -l debian/wine-compholio/opt/wine-compholio/lib
|
||||
dh_gencontrol
|
||||
./configure --prefix=/opt/wine-compholio --libdir=\$${prefix}/lib --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --without-gstreamer --with-xattr $(CONFFLAGS)
|
||||
endif
|
||||
dh_md5sums
|
||||
dh_builddeb -- -Z lzma
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
.PHONY: build clean binary-indep binary-arch binary install
|
||||
override_dh_auto_test:
|
||||
# Wine's test suite does not pass on build daemons, skip it for now
|
||||
|
||||
override_dh_installdocs:
|
||||
dh_installdocs --link-doc=wine-compholio
|
||||
|
||||
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
|
||||
|
||||
override_dh_strip:
|
||||
dh_strip -Xwine-pthread -Xwine-kthread --dbg-package=wine-compholio-dbg
|
||||
|
||||
override_dh_shlibdeps:
|
||||
ifeq ($(DEB_HOST_ARCH),amd64)
|
||||
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-compholio/lib64/
|
||||
else
|
||||
dh_shlibdeps -l $(CURDIR)/debian/tmp/opt/wine-compholio/lib/
|
||||
endif
|
||||
|
84
debian/tools/README.md.in
vendored
Normal file
84
debian/tools/README.md.in
vendored
Normal file
@@ -0,0 +1,84 @@
|
||||
wine-compholio
|
||||
==============
|
||||
|
||||
The Wine "Compholio" Edition repository includes a variety of patches for
|
||||
Wine to run common Windows applications under Linux.
|
||||
|
||||
These patches fix the following Wine bugs:
|
||||
|
||||
{bugs}
|
||||
|
||||
Besides that the following additional changes are included:
|
||||
|
||||
{fixes}
|
||||
|
||||
### Compiling wine-compholio
|
||||
|
||||
Please note that starting with wine-compholio 1.7.23 it is deprecated to manually
|
||||
apply patches without using the Makefile. To avoid typical pitfalls for package
|
||||
maintainers (like trying to use the patch commandline utility for binary patches or
|
||||
not updating the patchlist) it is highly recommended to use the Makefile in order
|
||||
to apply all patches. This ensures that the the correct patch utility is used, that
|
||||
the list of patches is updated appropriately, and so on. Please note that it is still
|
||||
possible to exclude patches if desired, take a look at the end of this document for
|
||||
more details.
|
||||
|
||||
The following instructions (based on the
|
||||
[Gentoo Wiki](https://wiki.gentoo.org/wiki/Netflix/Pipelight#Compiling_manually))
|
||||
will give a short overview how to compile wine-compholio, but of course not explain
|
||||
all details. Make sure to install all required Wine dependencies before proceeding.
|
||||
|
||||
As the first step please grab the latest Wine source:
|
||||
```bash
|
||||
wget http://prdownloads.sourceforge.net/wine/wine-{version}.tar.bz2
|
||||
wget https://github.com/compholio/wine-compholio-daily/archive/v{version}.tar.gz
|
||||
```
|
||||
Extract the archives:
|
||||
```bash
|
||||
tar xvjf wine-1*.tar.bz2
|
||||
cd wine-1*
|
||||
tar xvzf ../v{version}.tar.gz --strip-components 1
|
||||
```
|
||||
And apply the patches:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install
|
||||
```
|
||||
Afterwards run configure (you can also specify a prefix if you don't want to install
|
||||
wine-compholio system-wide):
|
||||
```bash
|
||||
./configure --with-xattr
|
||||
```
|
||||
Before you continue you should make sure that ./configure doesn't show any warnings
|
||||
(look at the end of the output). If there are any warnings, this most likely means
|
||||
that you're missing some important header files. Install them and repeat the ./configure
|
||||
step until all problems are fixed.
|
||||
|
||||
Afterwards compile it (and grab a cup of coffee):
|
||||
```bash
|
||||
make
|
||||
```
|
||||
And install it (you only need sudo for a system-wide installation):
|
||||
```bash
|
||||
sudo make install
|
||||
```
|
||||
|
||||
### Excluding patches
|
||||
|
||||
It is also possible to apply only a subset of the patches, for example if you're
|
||||
compiling for a distribution where PulseAudio is not installed, or if you just don't
|
||||
like a specific patchset. Please note that some patchsets depend on each other, and
|
||||
requesting an impossible situation might result in a failure to apply all patches.
|
||||
|
||||
Lets assume you want to exclude the patchset in directory DIRNAME, then just invoke the
|
||||
Makefile like this:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok
|
||||
```
|
||||
|
||||
Using the same method its also possible to exclude multiple patchsets. If you want to
|
||||
exclude a very large number of patches, it is easier to do specify a list of patches
|
||||
which should be included instead. To apply for example only the patchsets in directory
|
||||
DIRNAME1 and DIRNAME2, you can use:
|
||||
```bash
|
||||
make -C ./patches DESTDIR=$(pwd) PATCHLIST="DIRNAME1.ok DIRNAME2.ok" install
|
||||
```
|
612
debian/tools/gitapply.sh
vendored
Executable file
612
debian/tools/gitapply.sh
vendored
Executable file
File diff suppressed because it is too large
Load Diff
73
debian/tools/patchlist.sh
vendored
Executable file
73
debian/tools/patchlist.sh
vendored
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/sh
|
||||
PATCH_DATA=$(cat);
|
||||
PATCH_LINES=$(echo "${PATCH_DATA}" | wc -l);
|
||||
PATCH_LINES=$((${PATCH_LINES}+20));
|
||||
|
||||
cat <<EOF
|
||||
From: "FDS-Team" <webmaster@fds-team.de>
|
||||
Subject: Autogenerated patch list.
|
||||
|
||||
---
|
||||
diff --git a/libs/wine/config.c b/libs/wine/config.c
|
||||
index a273502..5fa0cd5 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;
|
||||
}
|
||||
|
||||
+struct wine_patch {
|
||||
+ const char *hash;
|
||||
+ const char *author;
|
||||
+ const char *title;
|
||||
+} wine_patch_data[] = {
|
||||
${PATCH_DATA}
|
||||
+ { NULL, NULL, NULL }
|
||||
+};
|
||||
+
|
||||
+/* 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;
|
||||
diff --git a/include/wine/library.h b/include/wine/library.h
|
||||
index 242bb69..aa9e585 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 );
|
||||
EOF
|
503
debian/tools/patchupdate.py
vendored
Executable file
503
debian/tools/patchupdate.py
vendored
Executable file
File diff suppressed because it is too large
Load Diff
320
debian/tools/patchutils.py
vendored
Normal file
320
debian/tools/patchutils.py
vendored
Normal file
@@ -0,0 +1,320 @@
|
||||
#!/usr/bin/python
|
||||
#
|
||||
# Python functions to read, split and apply patches.
|
||||
#
|
||||
# Copyright (C) 2014 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
|
||||
#
|
||||
|
||||
import collections
|
||||
import difflib
|
||||
import hashlib
|
||||
import itertools
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
import tempfile
|
||||
|
||||
class PatchParserError(RuntimeError):
|
||||
"""Unable to parse patch file - either an unimplemented feature, or corrupted patch."""
|
||||
pass
|
||||
|
||||
class PatchApplyError(RuntimeError):
|
||||
"""Failed to apply/merge patch."""
|
||||
pass
|
||||
|
||||
class PatchObject(object):
|
||||
def __init__(self, filename):
|
||||
self.extracted_patch = None
|
||||
self.unique_hash = None
|
||||
|
||||
self.filename = filename
|
||||
self.offset_begin = None
|
||||
self.offset_end = None
|
||||
self.isbinary = False
|
||||
|
||||
self.oldname = None
|
||||
self.newname = None
|
||||
self.modified_file = None
|
||||
|
||||
self.oldsha1 = None
|
||||
self.newsha1 = None
|
||||
self.newmode = None
|
||||
|
||||
def is_binary(self):
|
||||
return self.isbinary
|
||||
|
||||
def read_chunks(self):
|
||||
"""Iterates over arbitrary sized chunks of this patch."""
|
||||
assert self.offset_end >= self.offset_begin
|
||||
with open(self.filename) as fp:
|
||||
fp.seek(self.offset_begin)
|
||||
i = self.offset_end - self.offset_begin
|
||||
while i > 0:
|
||||
buf = fp.read(4096 if i > 4096 else i)
|
||||
if buf == "": raise IOError("Unable to extract patch.")
|
||||
yield buf
|
||||
i -= len(buf)
|
||||
|
||||
def extract(self):
|
||||
"""Create a temporary file containing the extracted patch."""
|
||||
if not self.extracted_patch:
|
||||
self.extracted_patch = tempfile.NamedTemporaryFile()
|
||||
for chunk in self.read_chunks():
|
||||
self.extracted_patch.write(chunk)
|
||||
self.extracted_patch.flush()
|
||||
return self.extracted_patch
|
||||
|
||||
def hash(self):
|
||||
"""Hash the content of the patch."""
|
||||
if not self.unique_hash:
|
||||
m = hashlib.sha256()
|
||||
for chunk in self.read_chunks():
|
||||
m.update(chunk)
|
||||
self.unique_hash = m.digest()
|
||||
return self.unique_hash
|
||||
|
||||
def read_patch(filename):
|
||||
"""Iterates over all patches contained in a file, and returns PatchObject objects."""
|
||||
|
||||
class _FileReader(object):
|
||||
def __init__(self, filename):
|
||||
self.filename = filename
|
||||
self.fp = open(self.filename)
|
||||
self.peeked = None
|
||||
|
||||
def close(self):
|
||||
self.fp.close()
|
||||
|
||||
def __enter__(self):
|
||||
return self
|
||||
|
||||
def __exit__(self, type, value, traceback):
|
||||
self.close()
|
||||
|
||||
def seek(self, pos):
|
||||
"""Change the file cursor position."""
|
||||
self.fp.seek(pos)
|
||||
self.peeked = None
|
||||
|
||||
def tell(self):
|
||||
"""Return the current file cursor position."""
|
||||
if self.peeked is None:
|
||||
return self.fp.tell()
|
||||
return self.peeked[0]
|
||||
|
||||
def peek(self):
|
||||
"""Read one line without changing the file cursor."""
|
||||
if self.peeked is None:
|
||||
pos = self.fp.tell()
|
||||
tmp = self.fp.readline()
|
||||
if len(tmp) == 0: return None
|
||||
self.peeked = (pos, tmp)
|
||||
return self.peeked[1]
|
||||
|
||||
def read(self):
|
||||
"""Read one line from the file, and move the file cursor to the next line."""
|
||||
if self.peeked is None:
|
||||
tmp = self.fp.readline()
|
||||
if len(tmp) == 0: return None
|
||||
return tmp
|
||||
tmp, self.peeked = self.peeked, None
|
||||
return tmp[1]
|
||||
|
||||
def _read_single_patch(fp, oldname=None, newname=None):
|
||||
"""Internal function to read a single patch from a file."""
|
||||
|
||||
patch = PatchObject(fp.filename)
|
||||
patch.offset_begin = fp.tell()
|
||||
patch.oldname = oldname
|
||||
patch.newname = newname
|
||||
|
||||
# Skip over initial diff --git header
|
||||
line = fp.peek()
|
||||
if line.startswith("diff --git "):
|
||||
assert fp.read() == line
|
||||
|
||||
# Read header
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None:
|
||||
break
|
||||
elif line.startswith("--- "):
|
||||
patch.oldname = line[4:].strip()
|
||||
elif line.startswith("+++ "):
|
||||
patch.newname = line[4:].strip()
|
||||
elif line.startswith("old mode") or line.startswith("deleted file mode"):
|
||||
pass # ignore
|
||||
elif line.startswith("new mode "):
|
||||
patch.newmode = line[9:].strip()
|
||||
elif line.startswith("new file mode "):
|
||||
patch.newmode = line[14:].strip()
|
||||
elif line.startswith("new mode") or line.startswith("new file mode"):
|
||||
raise PatchParserError("Unable to parse header line '%s'." % line)
|
||||
elif line.startswith("copy from") or line.startswith("copy to"):
|
||||
raise NotImplementedError("Patch copy header not implemented yet.")
|
||||
elif line.startswith("rename "):
|
||||
raise NotImplementedError("Patch rename header not implemented yet.")
|
||||
elif line.startswith("similarity index") or line.startswith("dissimilarity index"):
|
||||
pass # ignore
|
||||
elif line.startswith("index "):
|
||||
r = re.match("^index ([a-fA-F0-9]*)\.\.([a-fA-F0-9]*)", line)
|
||||
if not r: raise PatchParserError("Unable to parse index header line '%s'." % line)
|
||||
patch.oldsha1, patch.newsha1 = r.group(1), r.group(2)
|
||||
else:
|
||||
break
|
||||
assert fp.read() == line
|
||||
|
||||
if patch.oldname is None or patch.newname is None:
|
||||
raise PatchParserError("Missing old or new name.")
|
||||
elif patch.oldname == "/dev/null" and patch.newname == "/dev/null":
|
||||
raise PatchParserError("Old and new name is /dev/null?")
|
||||
|
||||
if patch.oldname.startswith("a/"):
|
||||
patch.oldname = patch.oldname[2:]
|
||||
elif patch.oldname != "/dev/null":
|
||||
raise PatchParserError("Old name in patch doesn't start with a/.")
|
||||
|
||||
if patch.newname.startswith("b/"):
|
||||
patch.newname = patch.newname[2:]
|
||||
elif patch.newname != "/dev/null":
|
||||
raise PatchParserError("New name in patch doesn't start with b/.")
|
||||
|
||||
if patch.newname != "/dev/null":
|
||||
patch.modified_file = patch.newname
|
||||
else:
|
||||
patch.modified_file = patch.oldname
|
||||
|
||||
# Decide between binary and textual patch
|
||||
if line is None or line.startswith("diff --git ") or line.startswith("--- "):
|
||||
if oldname != newname:
|
||||
raise PatchParserError("Stripped old- and new name doesn't match.")
|
||||
|
||||
elif line.startswith("@@ -"):
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None or not line.startswith("@@ -"):
|
||||
break
|
||||
|
||||
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.")
|
||||
assert fp.read() == line
|
||||
|
||||
while srclines > 0 or dstlines > 0:
|
||||
line = fp.read()
|
||||
if line is None:
|
||||
raise PatchParserError("Truncated patch.")
|
||||
elif line.startswith(" "):
|
||||
if srclines == 0 or dstlines == 0:
|
||||
raise PatchParserError("Corrupted patch.")
|
||||
srclines -= 1
|
||||
dstlines -= 1
|
||||
elif line.startswith("-"):
|
||||
if srclines == 0:
|
||||
raise PatchParserError("Corrupted patch.")
|
||||
srclines -= 1
|
||||
elif line.startswith("+"):
|
||||
if dstlines == 0:
|
||||
raise PatchParserError("Corrupted patch.")
|
||||
dstlines -= 1
|
||||
elif line.startswith("\\ "):
|
||||
pass # ignore
|
||||
else:
|
||||
raise PatchParserError("Unexpected line in hunk.")
|
||||
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None or not line.startswith("\\ "): break
|
||||
assert fp.read() == line
|
||||
|
||||
elif line.rstrip() == "GIT binary patch":
|
||||
if patch.oldsha1 is None or patch.newsha1 is None:
|
||||
raise PatchParserError("Missing index header, sha1 sums required for binary patch.")
|
||||
elif patch.oldname != patch.newname:
|
||||
raise PatchParserError("Stripped old- and new name doesn't match for binary patch.")
|
||||
assert fp.read() == line
|
||||
|
||||
line = fp.read()
|
||||
if line is None: raise PatchParserError("Unexpected end of file.")
|
||||
r = re.match("^(literal|delta) ([0-9]+)", line)
|
||||
if not r: raise NotImplementedError("Only literal/delta patches are supported.")
|
||||
patch.isbinary = True
|
||||
|
||||
# Skip over patch data
|
||||
while True:
|
||||
line = fp.read()
|
||||
if line is None or line.strip() == "":
|
||||
break
|
||||
|
||||
else:
|
||||
raise PatchParserError("Unknown patch format.")
|
||||
|
||||
patch.offset_end = fp.tell()
|
||||
return patch
|
||||
|
||||
with _FileReader(filename) as fp:
|
||||
while True:
|
||||
line = fp.peek()
|
||||
if line is None:
|
||||
break
|
||||
elif line.startswith("diff --git "):
|
||||
tmp = line.strip().split(" ")
|
||||
if len(tmp) != 4: raise PatchParserError("Unable to parse git diff header line '%s'." % line)
|
||||
yield _read_single_patch(fp, tmp[2].strip(), tmp[3].strip())
|
||||
elif line.startswith("--- "):
|
||||
yield _read_single_patch(fp)
|
||||
elif line.startswith("@@ -") or line.startswith("+++ "):
|
||||
raise PatchParserError("Patch didn't start with a git or diff header.")
|
||||
else:
|
||||
assert fp.read() == line
|
||||
|
||||
def apply_patch(content, patches, reverse=False, fuzz=2):
|
||||
"""Apply a patch with optional fuzz - uses the commandline 'patch' utility."""
|
||||
|
||||
if not isinstance(patches, collections.Sequence):
|
||||
patches = [patches]
|
||||
|
||||
contentfile = tempfile.NamedTemporaryFile(delete=False)
|
||||
try:
|
||||
contentfile.write(content)
|
||||
contentfile.close()
|
||||
|
||||
for patch in patches:
|
||||
|
||||
patchfile = patch.extract()
|
||||
cmdline = ["patch", "--batch", "--silent", "-r", "-"]
|
||||
if reverse: cmdline.append("--reverse")
|
||||
if fuzz != 2: cmdline.append("--fuzz=%d" % fuzz)
|
||||
cmdline += [contentfile.name, patchfile.name]
|
||||
|
||||
with open(os.devnull, 'w') as devnull:
|
||||
exitcode = subprocess.call(cmdline, stdout=devnull, stderr=devnull)
|
||||
if exitcode != 0:
|
||||
raise PatchApplyError("Failed to apply patch (exitcode %d)." % exitcode)
|
||||
|
||||
with open(contentfile.name) as fp:
|
||||
content = fp.read()
|
||||
|
||||
finally:
|
||||
os.unlink(contentfile.name)
|
||||
|
||||
return content
|
||||
|
4
debian/wine-compholio-amd64.install
vendored
Normal file
4
debian/wine-compholio-amd64.install
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
/opt/wine-compholio/lib64/libwine.so*
|
||||
/opt/wine-compholio/lib64/wine
|
||||
/opt/wine-compholio/bin/wine64
|
||||
/opt/wine-compholio/bin/wine64-preloader
|
1
debian/wine-compholio-dev.install
vendored
Normal file
1
debian/wine-compholio-dev.install
vendored
Normal file
@@ -0,0 +1 @@
|
||||
/opt/wine-compholio/include
|
4
debian/wine-compholio-i386.install
vendored
Normal file
4
debian/wine-compholio-i386.install
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
/opt/wine-compholio/lib/libwine.so*
|
||||
/opt/wine-compholio/lib/wine
|
||||
/opt/wine-compholio/bin/wine
|
||||
/opt/wine-compholio/bin/wine-preloader
|
9
debian/wine-compholio.docs
vendored
Normal file
9
debian/wine-compholio.docs
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
documentation/README.*
|
||||
ANNOUNCE
|
||||
AUTHORS
|
||||
LICENSE
|
||||
LICENSE.GPLv3
|
||||
LICENSE.LGPLv2.1
|
||||
LICENSE.Liberation
|
||||
LICENSE.wine-compholio
|
||||
README
|
2
debian/wine-compholio.install
vendored
Normal file
2
debian/wine-compholio.install
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
/opt/wine-compholio/bin
|
||||
/opt/wine-compholio/share
|
@@ -1,24 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
PATCH_DATA="";
|
||||
for FILE in patches/*/*.def; do
|
||||
UUID=$(echo "${FILE}" | sed -e 's|^.*/||g' -e 's|\.def$||g');
|
||||
REVISION=$(cat "${FILE}" | sed -n 's|Revision: \(.*\)|\1|p');
|
||||
AUTHOR=$(cat "${FILE}" | sed -n 's|Author: \(.*\)|\1|p');
|
||||
TITLE=$(cat "${FILE}" | sed -n 's|Title: \(.*\)|\1|p');
|
||||
if [ "${AUTHOR}" = "" ] && [ "${TITLE}" = "" ]; then
|
||||
continue;
|
||||
fi
|
||||
if [ "${PATCH_DATA}" != "" ]; then
|
||||
PATCH_DATA="${PATCH_DATA}
|
||||
";
|
||||
fi
|
||||
PATCH_DATA="${PATCH_DATA}+ { \"${UUID}:${REVISION}\", \"${AUTHOR}\", \"${TITLE}\" },";
|
||||
done
|
||||
PATCH_LINES=$(echo "${PATCH_DATA}" | grep -c '\n');
|
||||
PATCH_LINES=$((${PATCH_LINES}+20));
|
||||
PATCH_DATA=$(echo "${PATCH_DATA}" | sed ':a;N;$!ba;s/\n/\\n/g');
|
||||
cat patch-list-template.diff | sed \
|
||||
-e "s|##PATCH_LINES##|${PATCH_LINES}|" \
|
||||
-e "s|##PATCH_DATA##|${PATCH_DATA}|"
|
||||
#
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user