Staging repository for Wine
Go to file
2014-07-13 04:46:11 +02:00
debian Improve patchupdate.py to detect changes even when regular diff files without git header are used. 2014-07-13 04:46:11 +02:00
patches Add .NOTPARALLEL to generated Makefile. 2014-07-13 02:47:34 +02:00
.gitignore Initial version of new dependency based patch system. 2014-07-11 18:51:03 +02:00
LICENSE.wine-compholio Work around bazaar merges not liking conflicts. 2013-11-23 17:00:04 -07:00
precommit-hook.sh Precommit script should trigger even if just the changelog was updated. 2014-07-13 01:32:09 +02:00
README.md Add instructions how to exclude patches in README.md. 2014-07-13 03:29:56 +02:00

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:

Besides that the following additional changes are included:

  • Lockfree algorithm for filedescriptor cache (improves file access speed)
  • Other Pipelight specific enhancements
  • Reduced SetTimer minimum value from 15 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

In order to wine-compholio, please use the recommended Makefile based approach which will automatically decide whether to use 'git apply' or 'gitapply.sh'. The following instructions (based on the Gentoo Wiki) will give a short overview how to compile wine-compholio, but of course not explain details. Make sure to install all required wine dependencies before proceeding.

As the first step please grab the latest Wine source:

wget http://prdownloads.sourceforge.net/wine/wine-1.7.22.tar.bz2
wget https://github.com/compholio/wine-compholio-daily/archive/v1.7.22.tar.gz

Extract the archives:

tar xvjf wine-1*.tar.bz2
cd wine-1*
tar xvzf ../v1.7.22.tar.gz --strip-components 1

And apply the patches:

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):

./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):

make

And install it (you only need sudo for a system-wide installation):

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 make like that:

make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok