Date: Wednesday, April 23, 2014 @ 08:32:42
  Author: lcarlier
Revision: 211681

upgpkg: libxfont 1.4.7-2

Fix build failure with fontsproto-2.1.3 (FS#40044)

Added:
  libxfont/trunk/fix-for-fontsproto213.patch
Modified:
  libxfont/trunk/PKGBUILD

-----------------------------+
 PKGBUILD                    |   14 ++++++--
 fix-for-fontsproto213.patch |   70 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 81 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2014-04-23 03:13:46 UTC (rev 211680)
+++ PKGBUILD    2014-04-23 06:32:42 UTC (rev 211681)
@@ -3,7 +3,7 @@
 
 pkgname=libxfont
 pkgver=1.4.7
-pkgrel=1
+pkgrel=2
 pkgdesc="X11 font rasterisation library"
 arch=(i686 x86_64)
 url="http://xorg.freedesktop.org/";
@@ -10,9 +10,17 @@
 license=('custom')
 depends=('freetype2' 'libfontenc' 'xproto' 'fontsproto')
 makedepends=('xorg-util-macros' 'xtrans')
-source=(${url}/archive/individual/lib/libXfont-${pkgver}.tar.bz2)
-sha256sums=('d16ea3541835d296b19cfb05d7e64fc62173d8e7eb93284402ec761b951d1543')
+source=(${url}/archive/individual/lib/libXfont-${pkgver}.tar.bz2
+       fix-for-fontsproto213.patch)
+sha256sums=('d16ea3541835d296b19cfb05d7e64fc62173d8e7eb93284402ec761b951d1543'
+            '9c8298cc9f4dc3981f19107353b2e4373dfb7882768bbf0b3ae027820a2dcad9')
 
+prepare() {
+  cd "${srcdir}/libXfont-${pkgver}"
+  # FS#40044 - merged for branch 1.5
+  patch -Np1 -i ../fix-for-fontsproto213.patch
+}
+
 build() {
   cd "${srcdir}/libXfont-${pkgver}"
   ./configure --prefix=/usr --sysconfdir=/etc --disable-static

Added: fix-for-fontsproto213.patch
===================================================================
--- fix-for-fontsproto213.patch                         (rev 0)
+++ fix-for-fontsproto213.patch 2014-04-23 06:32:42 UTC (rev 211681)
@@ -0,0 +1,70 @@
+diff --git a/src/util/patcache.c b/src/util/patcache.c
+index 9c05fa1..2101015 100644
+--- a/src/util/patcache.c
++++ b/src/util/patcache.c
+@@ -50,7 +50,7 @@ typedef unsigned char        EntryPtr;
+ typedef struct _FontPatternCacheEntry {
+     struct _FontPatternCacheEntry   *next, **prev;
+     short                         patlen;
+-    char                          *pattern;
++    const char                            *pattern;
+     int                                   hash;
+     FontPtr                       pFont;      /* associated font */
+ } FontPatternCacheEntryRec, *FontPatternCacheEntryPtr;
+@@ -74,7 +74,7 @@ EmptyFontPatternCache (FontPatternCachePtr cache)
+       cache->entries[i].next = &cache->entries[i+1];
+       cache->entries[i].prev = 0;
+       cache->entries[i].pFont = 0;
+-      free (cache->entries[i].pattern);
++      free ((void *) cache->entries[i].pattern);
+       cache->entries[i].pattern = 0;
+       cache->entries[i].patlen = 0;
+     }
+@@ -107,7 +107,7 @@ FreeFontPatternCache (FontPatternCachePtr cache)
+     int           i;
+ 
+     for (i = 0; i < NENTRIES; i++)
+-      free (cache->entries[i].pattern);
++      free ((void *) cache->entries[i].pattern);
+     free (cache);
+ }
+ 
+@@ -128,7 +128,7 @@ Hash (const char *string, int len)
+ /* add entry */
+ void
+ CacheFontPattern (FontPatternCachePtr cache,
+-                char *pattern,
++                const char *pattern,
+                 int patlen,
+                 FontPtr pFont)
+ {
+@@ -154,7 +154,7 @@ CacheFontPattern (FontPatternCachePtr cache,
+       if (e->next)
+           e->next->prev = e->prev;
+       *e->prev = e->next;
+-      free (e->pattern);
++      free ((void *) e->pattern);
+     }
+     /* set pattern */
+     memcpy (newpat, pattern, patlen);
+@@ -174,7 +174,7 @@ CacheFontPattern (FontPatternCachePtr cache,
+ /* find matching entry */
+ FontPtr
+ FindCachedFontPattern (FontPatternCachePtr cache,
+-                     char *pattern,
++                     const char *pattern,
+                      int patlen)
+ {
+     int                               hash;
+@@ -211,7 +211,7 @@ RemoveCachedFontPattern (FontPatternCachePtr cache,
+           *e->prev = e->next;
+           e->next = cache->free;
+           cache->free = e;
+-          free (e->pattern);
++          free ((void *) e->pattern);
+           e->pattern = 0;
+       }
+     }
+--
+cgit v0.9.0.2-2-gbebe
+

Reply via email to