From 24706063e8d47a08f114ef946ffbdf490604767c Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Wed, 29 Mar 2017 13:57:35 +0000
Subject: libxcb: update to 1.12

---
 abs/core/libxcb/PKGBUILD                          | 17 +++++----
 abs/core/libxcb/libxcb-1.1-no-pthread-stubs.patch |  2 +-
 abs/core/libxcb/python-35x-fixes.patch            | 42 +++++++++++++++++++++++
 3 files changed, 53 insertions(+), 8 deletions(-)
 create mode 100644 abs/core/libxcb/python-35x-fixes.patch

diff --git a/abs/core/libxcb/PKGBUILD b/abs/core/libxcb/PKGBUILD
index 126d0a8..92ad925 100644
--- a/abs/core/libxcb/PKGBUILD
+++ b/abs/core/libxcb/PKGBUILD
@@ -4,22 +4,25 @@
 # Contributor: Alexander Baldeck <alexander@archlinux.org>
 
 pkgname=libxcb
-pkgver=1.11
+pkgver=1.12
 pkgrel=1
 pkgdesc="X11 client-side library"
 arch=('i686' 'x86_64')
-url="http://xcb.freedesktop.org/"
-depends=('xcb-proto>=1.11' 'libxdmcp' 'libxau')
+url="https://xcb.freedesktop.org/"
+depends=('xcb-proto>=1.12' 'libxdmcp' 'libxau')
 makedepends=('libxslt' 'python2' 'xorg-util-macros')
 license=('custom')
 source=($url/dist/$pkgname-$pkgver.tar.bz2
-        libxcb-1.1-no-pthread-stubs.patch)
-sha256sums=('03635d70045b9ede90778e67516135828a57de87ac508f987024f43c03620ff7'
-            '3923bcb1930b851012968435909597d8d5251c72153511cb2982636c97100cc3')
+        libxcb-1.1-no-pthread-stubs.patch
+        python-35x-fixes.patch)
+sha256sums=('4adfb1b7c67e99bc9c2ccb110b2f175686576d2f792c8a71b9c8b19014057b5b'
+            '37debaf892235a516a50a4975e6229538d3b4696b4571a8dea05eed774004aff'
+            'e66140ac2270b47e940db82975e2d28d3536ca1bd0eae63bce3b900ed81fa517')
 
 prepare() {
   cd "$pkgname-$pkgver"
   patch -Np1 -i ../libxcb-1.1-no-pthread-stubs.patch
+#  patch -Np1 -i ../python-35x-fixes.patch
   autoreconf -vfi
 }
 
@@ -29,7 +32,7 @@ build() {
     --enable-xinput \
     --enable-xkb \
     --disable-static
-  make
+  make -j1
 }
 
 check() {
diff --git a/abs/core/libxcb/libxcb-1.1-no-pthread-stubs.patch b/abs/core/libxcb/libxcb-1.1-no-pthread-stubs.patch
index 84c7f8e..3580aa4 100644
--- a/abs/core/libxcb/libxcb-1.1-no-pthread-stubs.patch
+++ b/abs/core/libxcb/libxcb-1.1-no-pthread-stubs.patch
@@ -3,7 +3,7 @@
 @@ -43,7 +43,7 @@
  
  # Checks for pkg-config packages
- PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.11)
+ PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.12)
 -NEEDED="pthread-stubs xau >= 0.99.2"
 +NEEDED="xau >= 0.99.2"
  PKG_CHECK_MODULES(NEEDED, $NEEDED)
diff --git a/abs/core/libxcb/python-35x-fixes.patch b/abs/core/libxcb/python-35x-fixes.patch
new file mode 100644
index 0000000..88de252
--- /dev/null
+++ b/abs/core/libxcb/python-35x-fixes.patch
@@ -0,0 +1,42 @@
+diff --git a/src/c_client.py b/src/c_client.py
+index 57de3fb..043338d 100644
+--- a/src/c_client.py
++++ b/src/c_client.py
+@@ -1364,7 +1364,7 @@ def _c_serialize(context, self):
+             _c('    unsigned int xcb_align_to = 0;')
+         if self.is_switch:
+             _c('    unsigned int xcb_padding_offset = %d;',
+-	       self.get_align_offset() )
++               self.get_align_offset() )
+         prefix = [('_aux', '->', self)]
+         aux_ptr = 'xcb_out'
+ 
+@@ -1390,7 +1390,7 @@ def _c_serialize(context, self):
+         _c('    unsigned int xcb_align_to = 0;')
+         if self.is_switch:
+             _c('    unsigned int xcb_padding_offset = %d;',
+-	       self.get_align_offset() )
++               self.get_align_offset() )
+ 
+     elif 'sizeof' == context:
+         param_names = [p[2] for p in params]
+@@ -1930,14 +1930,14 @@ def _c_accessors_list(self, field):
+                     # from the request size and divide that by the member size
+                     return '(((R->length * 4) - sizeof('+ self.c_type + '))/'+'sizeof('+field.type.member.c_wiretype+'))'
+                 else:
+-		    # use the accessor to get the start of the list, then
+-		    # compute the length of it by subtracting it from
++                    # use the accessor to get the start of the list, then
++                    # compute the length of it by subtracting it from
+                     # the adress of the first byte after the end of the
+                     # request
+-		    after_end_of_request = '(((char*)R) + R->length * 4)'
+-		    start_of_list = '%s(R)' % (field.c_accessor_name)
++                    after_end_of_request = '(((char*)R) + R->length * 4)'
++                    start_of_list = '%s(R)' % (field.c_accessor_name)
+                     bytesize_of_list = '%s - (char*)(%s)' % (after_end_of_request, start_of_list)
+-		    return '(%s) / sizeof(%s)' % (bytesize_of_list, field.type.member.c_wiretype)
++                    return '(%s) / sizeof(%s)' % (bytesize_of_list, field.type.member.c_wiretype)
+             else:
+                 raise Exception(
+                     "lengthless lists with varsized members are not supported. Fieldname '%s'"
-- 
cgit v0.12