diff options
author | Pierre Franco | 2017-10-04 23:19:42 +0200 |
---|---|---|
committer | Pierre Franco | 2017-10-04 23:19:42 +0200 |
commit | 39585f1ca89380da734886a7c833e7acd0b57c06 (patch) | |
tree | cc30497aabb7e9cd81b55e5a82ac61428aa9b0cd | |
parent | f1f2c685e5e35bbc9e4d6b8050145707d596204b (diff) | |
download | aur-39585f1ca89380da734886a7c833e7acd0b57c06.tar.gz |
Updated to version 2.18-1
-rw-r--r-- | .SRCINFO | 23 | ||||
-rw-r--r-- | PKGBUILD | 40 | ||||
-rw-r--r-- | freetype_2.8.1_fix.patch | 15 | ||||
-rw-r--r-- | wine-list.h-linked-list-cache-line-prefetching.patch | 104 |
4 files changed, 126 insertions, 56 deletions
@@ -1,9 +1,9 @@ # Generated by mksrcinfo v8 -# Fri Sep 29 20:30:46 UTC 2017 +# Wed Oct 4 21:17:45 UTC 2017 pkgbase = wine-gaming-nine pkgdesc = Based off wine-staging, including the gallium-nine patches and some more hacks - pkgver = 2.17 - pkgrel = 3 + pkgver = 2.18 + pkgrel = 1 url = http://www.wine-staging.com arch = i686 arch = x86_64 @@ -64,7 +64,6 @@ pkgbase = wine-gaming-nine makedepends = dri3proto makedepends = xf86driproto makedepends = pkg-config - makedepends = freetype2<2.8.1-1 makedepends = attr makedepends = lib32-attr makedepends = fontconfig @@ -138,29 +137,27 @@ pkgbase = wine-gaming-nine optdepends = cups optdepends = samba optdepends = dosbox - provides = wine=2.17 - provides = wine-wow64=2.17 - provides = wine-staging=2.17 + provides = wine=2.18 + provides = wine-wow64=2.18 + provides = wine-staging=2.18 conflicts = wine conflicts = wine-wow64 conflicts = wine-staging options = staticlibs - source = https://github.com/gamax92/wine-overwatch/archive/overwatch-2.17.tar.gz + source = https://github.com/wine-compholio/wine-patched/archive/staging-2.18.tar.gz source = https://github.com/sarnex/wine-d3d9-patches/archive/wine-d3d9-2.17.tar.gz - source = https://github.com/laino/wine-patches/archive/master.tar.gz source = 30-win32-aliases.conf - source = freetype_2.8.1_fix.patch source = keybindings.patch source = steam.patch source = wbemprox_query_v2.patch - sha1sums = 1e2a147a74195f0ebbf35028b33a7dce3e26abf8 + source = wine-list.h-linked-list-cache-line-prefetching.patch + sha1sums = 089a7ca0d83b9dbbad42ce127bf66ba60d5669d7 sha1sums = f37e9190466faa67741b49b60e9268d70c5b4644 - sha1sums = SKIP sha1sums = 023a5c901c6a091c56e76b6a62d141d87cce9fdb - sha1sums = aabb80b412adc99fcc42b02fa2d6692321f1c3ac sha1sums = f3febb8836f38320742a546c667106608d4c4395 sha1sums = 74aae040fde9ff3c9e8da9c840557e87afdbc3a0 sha1sums = 644e141125a9f2407e64d23c85ec84a691c7caae + sha1sums = 360b9725286690b34313590076538a402e03ecb5 pkgname = wine-gaming-nine depends = attr @@ -2,39 +2,36 @@ # Based on wine-staging PKGBUILD #Additional patches: -# -Overwatch patches # -Gallium Nine support # -Keybind patch reversion -# -Heap allocation perfomance improvement patch # -Wbemprox videocontroller query fix v2 (see https://bugs.winehq.org/show_bug.cgi?id=38879 ) # -Steam patch, Crossover Hack version (see https://bugs.winehq.org/show_bug.cgi?id=39403 ) +# -Linked lists perfomances improvements pkgname=wine-gaming-nine -pkgver=2.17 -pkgrel=3 +pkgver=2.18 +pkgrel=1 _pkgbasever=${pkgver/rc/-rc} -_d3d9ver=$_pkgbasever -#_d3d9ver=2.16 -_winesrcdir="wine-overwatch-overwatch-$_pkgbasever" +#_d3d9ver=$_pkgbasever +_d3d9ver=2.17 +_winesrcdir="wine-patched-staging-$_pkgbasever" -source=("https://github.com/gamax92/wine-overwatch/archive/overwatch-$_pkgbasever.tar.gz" +source=("https://github.com/wine-compholio/wine-patched/archive/staging-$_pkgbasever.tar.gz" "https://github.com/sarnex/wine-d3d9-patches/archive/wine-d3d9-$_d3d9ver.tar.gz" - "https://github.com/laino/wine-patches/archive/master.tar.gz" 30-win32-aliases.conf - freetype_2.8.1_fix.patch keybindings.patch steam.patch wbemprox_query_v2.patch + wine-list.h-linked-list-cache-line-prefetching.patch ) -sha1sums=('1e2a147a74195f0ebbf35028b33a7dce3e26abf8' +sha1sums=('089a7ca0d83b9dbbad42ce127bf66ba60d5669d7' 'f37e9190466faa67741b49b60e9268d70c5b4644' - 'SKIP' '023a5c901c6a091c56e76b6a62d141d87cce9fdb' - 'aabb80b412adc99fcc42b02fa2d6692321f1c3ac' 'f3febb8836f38320742a546c667106608d4c4395' '74aae040fde9ff3c9e8da9c840557e87afdbc3a0' '644e141125a9f2407e64d23c85ec84a691c7caae' + '360b9725286690b34313590076538a402e03ecb5' ) pkgdesc="Based off wine-staging, including the gallium-nine patches and some more hacks" @@ -91,7 +88,6 @@ makedepends=(autoconf ncurses bison perl fontforge flex dri3proto xf86driproto pkg-config - 'freetype2<2.8.1-1' ) optdepends=( @@ -137,27 +133,15 @@ prepare() { cd "$_winesrcdir" - patch -p1 < "$srcdir/wine-d3d9-patches-wine-d3d9-$_d3d9ver/staging-helper.patch" #for wine-staging + patch -p1 < "$srcdir/wine-d3d9-patches-wine-d3d9-$_d3d9ver/staging-helper.patch" patch -p1 < "$srcdir/wine-d3d9-patches-wine-d3d9-$_d3d9ver/wine-d3d9.patch" patch -p1 < ../steam.patch -# patch -p1 -R < ../0001-ntdll-Improve-heap-allocation-performance-by-using-m.patch - -# patch -p1 < ../wine-patches-master/0001-ntdll-improve-heap-allocation-performance.patch -# patch -p1 < ../wine-patches-master/0002-ntdll-heap.c-align-everything-to-64-byte-to-reduce-f.patch - patch -p1 < ../wine-patches-master/0003-wine-list.h-linked-list-cache-line-prefetching.patch -# patch -p1 < ../wine-patches-master/0004-ntdll-heap.c-freelist_balance-prefetch-next-entry-ca.patch -# This patch has been upstreamed -# patch -p1 < ../wine-patches-master/0005-oleaut32-typelib.c-fix-cursor2-having-the-wrong-type.patch -# patch -p1 < ../wine-patches-master/0006-Ensure-16-byte-alignment-of-data.patch -# patch -p1 < ../wine-patches-master/0007-wined3d-use-SwitchToThread-waits-in-wined3d_pause.patch - + patch -p1 < ../wine-list.h-linked-list-cache-line-prefetching.patch patch -p1 < ../wbemprox_query_v2.patch patch -p1 -R < ../keybindings.patch - patch -p1 < ../freetype_2.8.1_fix.patch - autoreconf -f sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i configure* diff --git a/freetype_2.8.1_fix.patch b/freetype_2.8.1_fix.patch deleted file mode 100644 index 27aaff6c8559..000000000000 --- a/freetype_2.8.1_fix.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c -index 13edef6601..e8ed9a9751 100644 ---- a/dlls/gdi32/freetype.c -+++ b/dlls/gdi32/freetype.c -@@ -5150,6 +5150,10 @@ static FT_Encoding pick_charmap( FT_Face face, int charset ) - if (select_charmap( face, *encs )) break; - encs++; - } -+ -+ if (!*encs && face->num_charmaps) -+ face->charmap = face->charmaps[0]; -+ - return *encs; - } - diff --git a/wine-list.h-linked-list-cache-line-prefetching.patch b/wine-list.h-linked-list-cache-line-prefetching.patch new file mode 100644 index 000000000000..a0cb54bd488e --- /dev/null +++ b/wine-list.h-linked-list-cache-line-prefetching.patch @@ -0,0 +1,104 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Nils Kuhnhenn <kuhnhenn.nils@gmail.com> +Date: Wed, 24 Aug 2016 19:44:37 +0200 +Subject: [PATCH 3/7] wine/list.h: linked list cache line prefetching + +--- + include/wine/list.h | 36 ++++++++++++++++++++---------------- + 1 file changed, 20 insertions(+), 16 deletions(-) + +diff --git a/include/wine/list.h b/include/wine/list.h +index b4d681fe0f..49b1e23a39 100644 +--- a/include/wine/list.h ++++ b/include/wine/list.h +@@ -105,7 +105,8 @@ static inline void list_remove( struct list *elem ) + static inline struct list *list_next( const struct list *list, const struct list *elem ) + { + struct list *ret = elem->next; +- if (elem->next == list) ret = NULL; ++ if (ret == list) return NULL; ++ __builtin_prefetch(ret->next, 0, 1); + return ret; + } + +@@ -113,7 +114,8 @@ static inline struct list *list_next( const struct list *list, const struct list + static inline struct list *list_prev( const struct list *list, const struct list *elem ) + { + struct list *ret = elem->prev; +- if (elem->prev == list) ret = NULL; ++ if (ret == list) return NULL; ++ __builtin_prefetch(ret->prev, 0, 1); + return ret; + } + +@@ -176,51 +178,53 @@ static inline void list_move_head( struct list *dst, struct list *src ) + + /* iterate through the list */ + #define LIST_FOR_EACH(cursor,list) \ +- for ((cursor) = (list)->next; (cursor) != (list); (cursor) = (cursor)->next) ++ for ((cursor) = (list)->next, __builtin_prefetch((cursor)->next, 0, 1); \ ++ (cursor) != (list); (cursor) = (cursor)->next, __builtin_prefetch((cursor)->next, 0, 1)) + + /* iterate through the list, with safety against removal */ + #define LIST_FOR_EACH_SAFE(cursor, cursor2, list) \ +- for ((cursor) = (list)->next, (cursor2) = (cursor)->next; \ ++ for ((cursor) = (list)->next, (cursor2) = (cursor)->next, __builtin_prefetch((cursor2)->next, 0, 1); \ + (cursor) != (list); \ +- (cursor) = (cursor2), (cursor2) = (cursor)->next) ++ (cursor) = (cursor2), (cursor2) = (cursor)->next, __builtin_prefetch((cursor2)->next, 0, 1)) + + /* iterate through the list using a list entry */ + #define LIST_FOR_EACH_ENTRY(elem, list, type, field) \ +- for ((elem) = LIST_ENTRY((list)->next, type, field); \ ++ for ((elem) = LIST_ENTRY((list)->next, type, field), __builtin_prefetch((elem)->field.next, 0, 1); \ + &(elem)->field != (list); \ +- (elem) = LIST_ENTRY((elem)->field.next, type, field)) ++ (elem) = LIST_ENTRY((elem)->field.next, type, field), __builtin_prefetch((elem)->field.next, 0, 1)) + + /* iterate through the list using a list entry, with safety against removal */ + #define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field) \ + for ((cursor) = LIST_ENTRY((list)->next, type, field), \ +- (cursor2) = LIST_ENTRY((cursor)->field.next, type, field); \ ++ (cursor2) = LIST_ENTRY((cursor)->field.next, type, field), __builtin_prefetch((cursor2)->field.next, 0, 1); \ + &(cursor)->field != (list); \ + (cursor) = (cursor2), \ +- (cursor2) = LIST_ENTRY((cursor)->field.next, type, field)) ++ (cursor2) = LIST_ENTRY((cursor)->field.next, type, field), __builtin_prefetch((cursor2)->field.next, 0, 1)) + + /* iterate through the list in reverse order */ + #define LIST_FOR_EACH_REV(cursor,list) \ +- for ((cursor) = (list)->prev; (cursor) != (list); (cursor) = (cursor)->prev) ++ for ((cursor) = (list)->prev, __builtin_prefetch((cursor)->prev, 0, 1); \ ++ (cursor) != (list); (cursor) = (cursor)->prev, __builtin_prefetch((cursor)->prev, 0, 1)) + + /* iterate through the list in reverse order, with safety against removal */ + #define LIST_FOR_EACH_SAFE_REV(cursor, cursor2, list) \ +- for ((cursor) = (list)->prev, (cursor2) = (cursor)->prev; \ ++ for ((cursor) = (list)->prev, (cursor2) = (cursor)->prev, __builtin_prefetch((cursor2)->prev, 0, 1); \ + (cursor) != (list); \ +- (cursor) = (cursor2), (cursor2) = (cursor)->prev) ++ (cursor) = (cursor2), (cursor2) = (cursor)->prev, __builtin_prefetch((cursor2)->prev, 0, 1)) + + /* iterate through the list in reverse order using a list entry */ + #define LIST_FOR_EACH_ENTRY_REV(elem, list, type, field) \ +- for ((elem) = LIST_ENTRY((list)->prev, type, field); \ ++ for ((elem) = LIST_ENTRY((list)->prev, type, field), __builtin_prefetch((elem)->field.prev, 0, 1); \ + &(elem)->field != (list); \ +- (elem) = LIST_ENTRY((elem)->field.prev, type, field)) ++ (elem) = LIST_ENTRY((elem)->field.prev, type, field), __builtin_prefetch((elem)->field.prev, 0, 1)) + + /* iterate through the list in reverse order using a list entry, with safety against removal */ + #define LIST_FOR_EACH_ENTRY_SAFE_REV(cursor, cursor2, list, type, field) \ + for ((cursor) = LIST_ENTRY((list)->prev, type, field), \ +- (cursor2) = LIST_ENTRY((cursor)->field.prev, type, field); \ ++ (cursor2) = LIST_ENTRY((cursor)->field.prev, type, field), __builtin_prefetch((cursor2)->field.prev, 0, 1); \ + &(cursor)->field != (list); \ + (cursor) = (cursor2), \ +- (cursor2) = LIST_ENTRY((cursor)->field.prev, type, field)) ++ (cursor2) = LIST_ENTRY((cursor)->field.prev, type, field), __builtin_prefetch((cursor2)->field.prev, 0, 1)) + + /* macros for statically initialized lists */ + #undef LIST_INIT +-- +2.12.2 + |