summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2014-05-21 16:17:37 +0000
committerChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2014-05-21 16:17:37 +0000
commitafd507661482a29bc8f61a07b8870b37212577ee (patch)
tree9325106bb1de1edc0bd751f790be626a99e6dc73 /x11-libs/libXfont
parentVersion bump (diff)
downloadgentoo-2-afd507661482a29bc8f61a07b8870b37212577ee.tar.gz
gentoo-2-afd507661482a29bc8f61a07b8870b37212577ee.tar.bz2
gentoo-2-afd507661482a29bc8f61a07b8870b37212577ee.zip
Add patched version to build against fontsproto-2.1.3
(Portage version: 2.2.8-r1/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'x11-libs/libXfont')
-rw-r--r--x11-libs/libXfont/ChangeLog10
-rw-r--r--x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-configure_ac.patch35
-rw-r--r--x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-constchar.patch555
-rw-r--r--x11-libs/libXfont/libXfont-1.4.8-r1.ebuild39
4 files changed, 638 insertions, 1 deletions
diff --git a/x11-libs/libXfont/ChangeLog b/x11-libs/libXfont/ChangeLog
index 775464503f32..f93ebea2ffd8 100644
--- a/x11-libs/libXfont/ChangeLog
+++ b/x11-libs/libXfont/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for x11-libs/libXfont
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/libXfont/ChangeLog,v 1.201 2014/05/18 16:58:50 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libXfont/ChangeLog,v 1.202 2014/05/21 16:17:37 chithanh Exp $
+
+*libXfont-1.4.8-r1 (21 May 2014)
+
+ 21 May 2014; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+ +files/libXfont-1.4.8-fontsproto-2.1.3-configure_ac.patch,
+ +files/libXfont-1.4.8-fontsproto-2.1.3-constchar.patch,
+ +libXfont-1.4.8-r1.ebuild:
+ Add patched version to build against fontsproto-2.1.3
18 May 2014; Jeroen Roovers <jer@gentoo.org> libXfont-1.4.8.ebuild:
Stable for HPPA (bug #510250).
diff --git a/x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-configure_ac.patch b/x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-configure_ac.patch
new file mode 100644
index 000000000000..4d06ef8d1a35
--- /dev/null
+++ b/x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-configure_ac.patch
@@ -0,0 +1,35 @@
+From 5a398a55ccdd92d0ff05793692ef8e57f3a50198 Mon Sep 17 00:00:00 2001
+From: Alan Coopersmith <alan.coopersmith@oracle.com>
+Date: Mon, 21 Apr 2014 01:10:07 +0000
+Subject: Require fontsproto 2.1.3 for matching function prototypes
+
+Building current libXfont git against fontsproto 2.1.2 causes clang
+complaints of:
+
+patcache.c:130:1: error: conflicting types for 'CacheFontPattern'
+CacheFontPattern (FontPatternCachePtr cache,
+^
+patcache.c:176:1: error: conflicting types for 'FindCachedFontPattern'
+FindCachedFontPattern (FontPatternCachePtr cache,
+^
+
+due to the constification of arguments not matching.
+
+Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+Reviewed-by: Thomas Klausner <wiz@NetBSD.org>
+---
+diff --git a/configure.ac b/configure.ac
+index cbb540a..e78e56a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -180,7 +180,7 @@ fi
+ AC_CHECK_LIB(m, hypot, [MATH_LIBS=-lm
+ AC_SUBST(MATH_LIBS)], AC_MSG_ERROR([*** libm is required]))
+
+-PKG_CHECK_MODULES(XFONT, [xproto xtrans fontsproto < 2.1.3 fontenc])
++PKG_CHECK_MODULES(XFONT, [xproto xtrans fontsproto >= 2.1.3 fontenc])
+
+ # Transport selection macro from xtrans.m4
+ XTRANS_CONNECTION_FLAGS
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-constchar.patch b/x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-constchar.patch
new file mode 100644
index 000000000000..cdbb28dc1821
--- /dev/null
+++ b/x11-libs/libXfont/files/libXfont-1.4.8-fontsproto-2.1.3-constchar.patch
@@ -0,0 +1,555 @@
+From a96cc1f032a059da89319ceccb6659c8edd446fb Mon Sep 17 00:00:00 2001
+From: Keith Packard <keithp@keithp.com>
+Date: Fri, 15 Nov 2013 12:46:15 +0000
+Subject: Warning fixes.
+
+Many const char issues.
+
+One extra 'i' declared in ScaleFont; we can just use the same 'i' as
+exists at the top level scope.
+
+Also ignore bad-function-cast in ftfuncs.c and bitscale.c because
+we're casting the return value from floor or ceil from double to
+int. As floor and ceil are kinda designed to generate integer results,
+it's pretty clear that we're doing what we want and that the compiler
+is generating noise. I'm not sure why bad-function-cast is ever a good
+warning to turn on, but I'll leave that for another day.
+
+Signed-off-by: Keith Packard <keithp@keithp.com>
+Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
+---
+diff --git a/include/X11/fonts/fntfil.h b/include/X11/fonts/fntfil.h
+index a32df63..24be79a 100644
+--- a/include/X11/fonts/fntfil.h
++++ b/include/X11/fonts/fntfil.h
+@@ -72,12 +72,12 @@ typedef struct _FontRenderer *FontRendererPtr;
+ #define FontAliasFile "fonts.alias"
+ #define FontScalableFile "fonts.scale"
+
+-extern int FontFileNameCheck ( char *name );
++extern int FontFileNameCheck ( const char *name );
+ extern int FontFileInitFPE ( FontPathElementPtr fpe );
+ extern int FontFileResetFPE ( FontPathElementPtr fpe );
+ extern int FontFileFreeFPE ( FontPathElementPtr fpe );
+ extern int FontFileOpenFont ( pointer client, FontPathElementPtr fpe,
+- Mask flags, char *name, int namelen,
++ Mask flags, const char *name, int namelen,
+ fsBitmapFormat format, fsBitmapFormatMask fmask,
+ XID id, FontPtr *pFont, char **aliasName,
+ FontPtr non_cachable_font );
+@@ -87,14 +87,14 @@ extern int FontFileOpenBitmap ( FontPathElementPtr fpe, FontPtr *pFont,
+ fsBitmapFormat format,
+ fsBitmapFormatMask fmask );
+ extern int FontFileListFonts ( pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ FontNamesPtr names );
+ extern int FontFileStartListFonts ( pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep, int mark_aliases );
+ extern int FontFileStartListFontsWithInfo ( pointer client,
+ FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep );
+ extern int FontFileListNextFontWithInfo ( pointer client,
+ FontPathElementPtr fpe,
+@@ -103,7 +103,7 @@ extern int FontFileListNextFontWithInfo ( pointer client,
+ int *numFonts, pointer private );
+ extern int FontFileStartListFontsAndAliases ( pointer client,
+ FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep );
+ extern int FontFileListNextFontOrAlias ( pointer client,
+ FontPathElementPtr fpe,
+@@ -173,7 +173,7 @@ extern int FontFileMatchBitmapSource ( FontPathElementPtr fpe,
+ fsBitmapFormatMask fmask,
+ Bool noSpecificSize );
+
+-extern int FontFileReadDirectory ( char *directory, FontDirectoryPtr *pdir );
++extern int FontFileReadDirectory ( const char *directory, FontDirectoryPtr *pdir );
+ extern Bool FontFileDirectoryChanged ( FontDirectoryPtr dir );
+
+ #endif /* _FONTFILE_H_ */
+diff --git a/include/X11/fonts/fontmisc.h b/include/X11/fonts/fontmisc.h
+index 73a8247..d3926a7 100644
+--- a/include/X11/fonts/fontmisc.h
++++ b/include/X11/fonts/fontmisc.h
+@@ -91,7 +91,7 @@ RepadBitmap (
+
+ extern void CopyISOLatin1Lowered(
+ char * /*dest*/,
+- char * /*source*/,
++ const char * /*source*/,
+ int /*length*/
+ );
+
+diff --git a/src/FreeType/ftfuncs.c b/src/FreeType/ftfuncs.c
+index 44e5e02..65efefc 100644
+--- a/src/FreeType/ftfuncs.c
++++ b/src/FreeType/ftfuncs.c
+@@ -1069,6 +1069,8 @@ FT_Do_SBit_Metrics( FT_Face ft_face, FT_Size ft_size, FT_ULong strike_index,
+ #endif
+ }
+
++#pragma GCC diagnostic ignored "-Wbad-function-cast"
++
+ int
+ FreeTypeRasteriseGlyph(unsigned idx, int flags, CharInfoPtr tgp,
+ FTInstancePtr instance, int hasMetrics)
+diff --git a/src/bitmap/bitscale.c b/src/bitmap/bitscale.c
+index e89ba7c..b864a28 100644
+--- a/src/bitmap/bitscale.c
++++ b/src/bitmap/bitscale.c
+@@ -751,6 +751,8 @@ compute_xform_matrix(FontScalablePtr vals, double dx, double dy,
+ * ScaleFont
+ * returns a pointer to the new scaled font, or NULL (due to AllocError).
+ */
++#pragma GCC diagnostic ignored "-Wbad-function-cast"
++
+ static FontPtr
+ ScaleFont(FontPtr opf, /* originating font */
+ double widthMult, /* glyphs width scale factor */
+@@ -811,8 +813,6 @@ ScaleFont(FontPtr opf, /* originating font */
+ needs to be for the output font */
+ if (vals->nranges)
+ {
+- int i;
+-
+ pfi->allExist = 0;
+ firstCol = 255;
+ lastCol = 0;
+diff --git a/src/builtins/builtin.h b/src/builtins/builtin.h
+index 75dff8d..f9a4cea 100644
+--- a/src/builtins/builtin.h
++++ b/src/builtins/builtin.h
+@@ -54,9 +54,9 @@ extern const int builtin_dir_count;
+ extern const BuiltinAliasRec builtin_alias[];
+ extern const int builtin_alias_count;
+
+-extern FontFilePtr BuiltinFileOpen (char *);
++extern FontFilePtr BuiltinFileOpen (const char *);
+ extern int BuiltinFileClose (BufFilePtr, int);
+-extern int BuiltinReadDirectory (char *, FontDirectoryPtr *);
++extern int BuiltinReadDirectory (const char *, FontDirectoryPtr *);
+ extern void BuiltinRegisterFontFileFunctions (void);
+
+ extern void BuiltinRegisterFpeFunctions (void);
+diff --git a/src/builtins/dir.c b/src/builtins/dir.c
+index 490e7e3..0225bfc 100644
+--- a/src/builtins/dir.c
++++ b/src/builtins/dir.c
+@@ -148,7 +148,7 @@ BuiltinAliasesRestore (BuiltinAliasPtr a_cur_tab,
+ }
+
+ int
+-BuiltinReadDirectory (char *directory, FontDirectoryPtr *pdir)
++BuiltinReadDirectory (const char *directory, FontDirectoryPtr *pdir)
+ {
+ FontDirectoryPtr dir;
+ int i;
+diff --git a/src/builtins/file.c b/src/builtins/file.c
+index 3f657d9..93527c1 100644
+--- a/src/builtins/file.c
++++ b/src/builtins/file.c
+@@ -90,7 +90,7 @@ BuiltinClose (BufFilePtr f, int unused)
+
+
+ FontFilePtr
+-BuiltinFileOpen (char *name)
++BuiltinFileOpen (const char *name)
+ {
+ int i;
+ BuiltinIOPtr io;
+diff --git a/src/builtins/fpe.c b/src/builtins/fpe.c
+index 689f22a..4f5d4cf 100644
+--- a/src/builtins/fpe.c
++++ b/src/builtins/fpe.c
+@@ -32,7 +32,7 @@ static int font_file_type;
+ static const char builtin_fonts[] = "built-ins";
+
+ static int
+-BuiltinNameCheck (char *name)
++BuiltinNameCheck (const char *name)
+ {
+ return (strcmp (name, builtin_fonts) == 0);
+ }
+diff --git a/src/fc/fsconvert.c b/src/fc/fsconvert.c
+index faf2e5d..75b5372 100644
+--- a/src/fc/fsconvert.c
++++ b/src/fc/fsconvert.c
+@@ -634,7 +634,7 @@ _fs_unload_font(FontPtr pfont)
+
+ FontPtr
+ fs_create_font (FontPathElementPtr fpe,
+- char *name,
++ const char *name,
+ int namelen,
+ fsBitmapFormat format,
+ fsBitmapFormatMask fmask)
+diff --git a/src/fc/fserve.c b/src/fc/fserve.c
+index fc44d19..be1c89f 100644
+--- a/src/fc/fserve.c
++++ b/src/fc/fserve.c
+@@ -137,7 +137,7 @@ static void
+ _fs_close_server (FSFpePtr conn);
+
+ static FSFpePtr
+-_fs_init_conn (char *servername);
++_fs_init_conn (const char *servername);
+
+ static int
+ _fs_wait_connect (FSFpePtr conn);
+@@ -212,7 +212,7 @@ _fs_add_rep_log (FSFpePtr conn, fsGenericReply *rep)
+ #endif
+
+ static Bool
+-fs_name_check(char *name)
++fs_name_check(const char *name)
+ {
+ /* Just make sure there is a protocol/ prefix */
+ return (name && *name != '/' && strchr(name, '/'));
+@@ -270,7 +270,7 @@ static int
+ fs_init_fpe(FontPathElementPtr fpe)
+ {
+ FSFpePtr conn;
+- char *name;
++ const char *name;
+ int err;
+ int ret;
+
+@@ -1517,7 +1517,7 @@ _fs_do_blocked (FSFpePtr conn)
+ /* ARGSUSED */
+ static int
+ fs_send_open_font(pointer client, FontPathElementPtr fpe, Mask flags,
+- char *name, int namelen,
++ const char *name, int namelen,
+ fsBitmapFormat format, fsBitmapFormatMask fmask,
+ XID id, FontPtr *ppfont)
+ {
+@@ -1709,7 +1709,7 @@ fs_send_query_bitmaps(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
+ /* ARGSUSED */
+ static int
+ fs_open_font(pointer client, FontPathElementPtr fpe, Mask flags,
+- char *name, int namelen,
++ const char *name, int namelen,
+ fsBitmapFormat format, fsBitmapFormatMask fmask,
+ XID id, FontPtr *ppfont,
+ char **alias, FontPtr non_cachable_font)
+@@ -2259,7 +2259,7 @@ fs_read_list(FontPathElementPtr fpe, FSBlockDataPtr blockrec)
+ }
+
+ static int
+-fs_send_list_fonts(pointer client, FontPathElementPtr fpe, char *pattern,
++fs_send_list_fonts(pointer client, FontPathElementPtr fpe, const char *pattern,
+ int patlen, int maxnames, FontNamesPtr newnames)
+ {
+ FSFpePtr conn = (FSFpePtr) fpe->private;
+@@ -2315,7 +2315,7 @@ fs_send_list_fonts(pointer client, FontPathElementPtr fpe, char *pattern,
+
+ static int
+ fs_list_fonts(pointer client, FontPathElementPtr fpe,
+- char *pattern, int patlen, int maxnames, FontNamesPtr newnames)
++ const char *pattern, int patlen, int maxnames, FontNamesPtr newnames)
+ {
+ FSFpePtr conn = (FSFpePtr) fpe->private;
+ FSBlockDataPtr blockrec;
+@@ -2429,7 +2429,7 @@ done:
+ /* ARGSUSED */
+ static int
+ fs_start_list_with_info(pointer client, FontPathElementPtr fpe,
+- char *pattern, int len, int maxnames, pointer *pdata)
++ const char *pattern, int len, int maxnames, pointer *pdata)
+ {
+ FSFpePtr conn = (FSFpePtr) fpe->private;
+ FSBlockDataPtr blockrec;
+@@ -3145,7 +3145,7 @@ _fs_start_reconnect (FSFpePtr conn)
+
+
+ static FSFpePtr
+-_fs_init_conn (char *servername)
++_fs_init_conn (const char *servername)
+ {
+ FSFpePtr conn;
+
+diff --git a/src/fc/fserve.h b/src/fc/fserve.h
+index 5999861..502e201 100644
+--- a/src/fc/fserve.h
++++ b/src/fc/fserve.h
+@@ -72,7 +72,7 @@ typedef struct _fs_blocked_extents *FSBlockedExtentPtr;
+ extern void _fs_convert_char_info ( fsXCharInfo *src, xCharInfo *dst );
+ extern void _fs_free_props (FontInfoPtr pfi);
+ extern FontPtr fs_create_font (FontPathElementPtr fpe,
+- char *name,
++ const char *name,
+ int namelen,
+ fsBitmapFormat format,
+ fsBitmapFormatMask fmask);
+diff --git a/src/fontfile/catalogue.c b/src/fontfile/catalogue.c
+index 6230930..81a1e13 100644
+--- a/src/fontfile/catalogue.c
++++ b/src/fontfile/catalogue.c
+@@ -40,7 +40,7 @@ static const char CataloguePrefix[] = "catalogue:";
+ static int CatalogueFreeFPE (FontPathElementPtr fpe);
+
+ static int
+-CatalogueNameCheck (char *name)
++CatalogueNameCheck (const char *name)
+ {
+ return strncmp(name, CataloguePrefix, sizeof(CataloguePrefix) - 1) == 0;
+ }
+@@ -116,7 +116,7 @@ CatalogueUnrefFPEs (FontPathElementPtr fpe)
+ if (subfpe->refcount == 0)
+ {
+ FontFileFreeFPE (subfpe);
+- free(subfpe->name);
++ free((void *) subfpe->name);
+ free(subfpe);
+ }
+ }
+@@ -158,6 +158,7 @@ CatalogueRescan (FontPathElementPtr fpe, Bool forceScan)
+ CatalogueUnrefFPEs (fpe);
+ while (entry = readdir(dir), entry != NULL)
+ {
++ char *name;
+ snprintf(link, sizeof link, "%s/%s", path, entry->d_name);
+ len = readlink(link, dest, sizeof dest - 1);
+ if (len < 0)
+@@ -191,15 +192,16 @@ CatalogueRescan (FontPathElementPtr fpe, Bool forceScan)
+ * (which uses font->fpe->type) goes to CatalogueCloseFont. */
+ subfpe->type = fpe->type;
+ subfpe->name_length = len;
+- subfpe->name = malloc (len + 1);
+- if (subfpe->name == NULL)
++ name = malloc (len + 1);
++ if (name == NULL)
+ {
+ free(subfpe);
+ continue;
+ }
+
+- memcpy(subfpe->name, dest, len);
+- subfpe->name[len] = '\0';
++ memcpy(name, dest, len);
++ name[len] = '\0';
++ subfpe->name = name;
+
+ /* The X server will manipulate the subfpe ref counts
+ * associated with the font in OpenFont and CloseFont, so we
+@@ -208,7 +210,7 @@ CatalogueRescan (FontPathElementPtr fpe, Bool forceScan)
+
+ if (FontFileInitFPE (subfpe) != Successful)
+ {
+- free(subfpe->name);
++ free((void *) subfpe->name);
+ free(subfpe);
+ continue;
+ }
+@@ -280,7 +282,7 @@ CatalogueFreeFPE (FontPathElementPtr fpe)
+
+ static int
+ CatalogueOpenFont (pointer client, FontPathElementPtr fpe, Mask flags,
+- char *name, int namelen,
++ const char *name, int namelen,
+ fsBitmapFormat format, fsBitmapFormatMask fmask,
+ XID id, FontPtr *pFont, char **aliasName,
+ FontPtr non_cachable_font)
+@@ -314,7 +316,7 @@ CatalogueCloseFont (FontPathElementPtr fpe, FontPtr pFont)
+ }
+
+ static int
+-CatalogueListFonts (pointer client, FontPathElementPtr fpe, char *pat,
++CatalogueListFonts (pointer client, FontPathElementPtr fpe, const char *pat,
+ int len, int max, FontNamesPtr names)
+ {
+ CataloguePtr cat = fpe->private;
+@@ -339,7 +341,7 @@ typedef struct _LFWIData {
+
+ static int
+ CatalogueStartListFonts(pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max, pointer *privatep,
++ const char *pat, int len, int max, pointer *privatep,
+ int mark_aliases)
+ {
+ CataloguePtr cat = fpe->private;
+@@ -375,7 +377,7 @@ CatalogueStartListFonts(pointer client, FontPathElementPtr fpe,
+
+ static int
+ CatalogueStartListFontsWithInfo(pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep)
+ {
+ return CatalogueStartListFonts(client, fpe, pat, len, max, privatep, 0);
+@@ -413,7 +415,7 @@ CatalogueListNextFontWithInfo(pointer client, FontPathElementPtr fpe,
+
+ static int
+ CatalogueStartListFontsAndAliases(pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep)
+ {
+ return CatalogueStartListFonts(client, fpe, pat, len, max, privatep, 1);
+diff --git a/src/fontfile/dirfile.c b/src/fontfile/dirfile.c
+index 0d34db9..cb28333 100644
+--- a/src/fontfile/dirfile.c
++++ b/src/fontfile/dirfile.c
+@@ -49,8 +49,10 @@ static int ReadFontAlias ( char *directory, Bool isFile,
+ static int lexAlias ( FILE *file, char **lexToken );
+ static int lexc ( FILE *file );
+
++#pragma GCC diagnostic ignored "-Wformat-nonliteral"
++
+ int
+-FontFileReadDirectory (char *directory, FontDirectoryPtr *pdir)
++FontFileReadDirectory (const char *directory, FontDirectoryPtr *pdir)
+ {
+ char file_name[MAXFONTFILENAMELEN];
+ char font_name[MAXFONTNAMELEN];
+diff --git a/src/fontfile/fontfile.c b/src/fontfile/fontfile.c
+index c55282b..05a9610 100644
+--- a/src/fontfile/fontfile.c
++++ b/src/fontfile/fontfile.c
+@@ -50,7 +50,7 @@ ISOLatin1ToLower(unsigned char source)
+ }
+
+ _X_HIDDEN void
+-CopyISOLatin1Lowered(char *dest, char *source, int length)
++CopyISOLatin1Lowered(char *dest, const char *source, int length)
+ {
+ int i;
+ for (i = 0; i < length; i++, source++, dest++)
+@@ -69,7 +69,7 @@ static int FontFileOpenBitmapNCF (FontPathElementPtr fpe, FontPtr *pFont,
+ FontPtr non_cachable_font);
+
+ int
+-FontFileNameCheck (char *name)
++FontFileNameCheck (const char *name)
+ {
+ #ifndef NCD
+ #if defined(WIN32)
+@@ -254,7 +254,7 @@ transfer_values_to_alias(char *entryname, int entrynamelength,
+ /* ARGSUSED */
+ int
+ FontFileOpenFont (pointer client, FontPathElementPtr fpe, Mask flags,
+- char *name, int namelen,
++ const char *name, int namelen,
+ fsBitmapFormat format, fsBitmapFormatMask fmask,
+ XID id, FontPtr *pFont, char **aliasName,
+ FontPtr non_cachable_font)
+@@ -688,7 +688,7 @@ _FontFileAddScalableNames(FontNamesPtr names, FontNamesPtr scaleNames,
+ /* ARGSUSED */
+ static int
+ _FontFileListFonts (pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max, FontNamesPtr names,
++ const char *pat, int len, int max, FontNamesPtr names,
+ int mark_aliases)
+ {
+ FontDirectoryPtr dir;
+@@ -794,7 +794,7 @@ typedef struct _LFWIData {
+ } LFWIDataRec, *LFWIDataPtr;
+
+ int
+-FontFileListFonts (pointer client, FontPathElementPtr fpe, char *pat,
++FontFileListFonts (pointer client, FontPathElementPtr fpe, const char *pat,
+ int len, int max, FontNamesPtr names)
+ {
+ return _FontFileListFonts (client, fpe, pat, len, max, names, 0);
+@@ -802,7 +802,7 @@ FontFileListFonts (pointer client, FontPathElementPtr fpe, char *pat,
+
+ int
+ FontFileStartListFonts(pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep, int mark_aliases)
+ {
+ LFWIDataPtr data;
+@@ -833,7 +833,7 @@ FontFileStartListFonts(pointer client, FontPathElementPtr fpe,
+
+ int
+ FontFileStartListFontsWithInfo(pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep)
+ {
+ return FontFileStartListFonts(client, fpe, pat, len, max, privatep, 0);
+@@ -1067,7 +1067,7 @@ FontFileListNextFontWithInfo(pointer client, FontPathElementPtr fpe,
+
+ int
+ FontFileStartListFontsAndAliases(pointer client, FontPathElementPtr fpe,
+- char *pat, int len, int max,
++ const char *pat, int len, int max,
+ pointer *privatep)
+ {
+ return FontFileStartListFonts(client, fpe, pat, len, max, privatep, 1);
+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
diff --git a/x11-libs/libXfont/libXfont-1.4.8-r1.ebuild b/x11-libs/libXfont/libXfont-1.4.8-r1.ebuild
new file mode 100644
index 000000000000..b98c81dff579
--- /dev/null
+++ b/x11-libs/libXfont/libXfont-1.4.8-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libXfont/libXfont-1.4.8-r1.ebuild,v 1.1 2014/05/21 16:17:37 chithanh Exp $
+
+EAPI=5
+
+XORG_DOC=doc
+XORG_EAUTORECONF=yes
+inherit xorg-2
+
+DESCRIPTION="X.Org Xfont library"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 ipv6 truetype"
+
+RDEPEND="x11-libs/xtrans
+ x11-libs/libfontenc
+ truetype? ( >=media-libs/freetype-2 )
+ bzip2? ( app-arch/bzip2 )
+ x11-proto/xproto
+ >=x11-proto/fontsproto-2.1.3"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fontsproto-2.1.3-configure_ac.patch
+ "${FILESDIR}"/${P}-fontsproto-2.1.3-constchar.patch
+)
+
+src_configure() {
+ XORG_CONFIGURE_OPTIONS=(
+ $(use_enable ipv6)
+ $(use_enable doc devel-docs)
+ $(use_with doc xmlto)
+ $(use_with bzip2)
+ $(use_enable truetype freetype)
+ --without-fop
+ )
+ xorg-2_src_configure
+}