Browse Source

freetype package update

Signed-off-by: tuibuilder_pel7x64builder0 <tuibuilder@powerel.org>
master
tuibuilder_pel7x64builder0 6 years ago
parent
commit
11b979da44
  1. 20
      SOURCES/freetype-2.2.1-enable-valid.patch
  2. 11
      SOURCES/freetype-2.3.0-enable-spr.patch
  3. 18
      SOURCES/freetype-2.3.11-more-demos.patch
  4. 14
      SOURCES/freetype-2.4.11-inode-overflow.patch
  5. 11
      SOURCES/freetype-2.4.11-libtool.patch
  6. 399
      SOURCES/freetype-2.4.11-signed.patch
  7. 696
      SOURCES/freetype-2.8-2.4.11-API.patch
  8. 46
      SOURCES/freetype-2.8-avar-table-load.patch
  9. 39
      SOURCES/freetype-2.8-getvariation.patch
  10. 36
      SOURCES/freetype-2.8-loop-counter.patch
  11. 58
      SOURCES/freetype-2.8-pcf-encoding.patch
  12. 65
      SOURCES/freetype-multilib.patch
  13. 14
      SOURCES/ftconfig.h
  14. 916
      SPECS/freetype.spec

20
SOURCES/freetype-2.2.1-enable-valid.patch

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
--- freetype-2.2.1/modules.cfg.orig 2006-07-07 21:01:09.000000000 -0400
+++ freetype-2.2.1/modules.cfg 2006-07-07 21:01:54.000000000 -0400
@@ -110,7 +110,7 @@
# TrueType GX/AAT table validation. Needs ftgxval.c below.
#
# No FT_CONFIG_OPTION_PIC support.
-# AUX_MODULES += gxvalid
+AUX_MODULES += gxvalid
# Support for streams compressed with gzip (files with suffix .gz).
#
@@ -124,7 +124,7 @@
# OpenType table validation. Needs ftotval.c below.
#
# No FT_CONFIG_OPTION_PIC support.
-# AUX_MODULES += otvalid
+AUX_MODULES += otvalid
# Auxiliary PostScript driver component to share common code.
#

11
SOURCES/freetype-2.3.0-enable-spr.patch

@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
--- freetype-2.3.0/include/freetype/config/ftoption.h.spf 2007-01-18 14:27:34.000000000 -0500
+++ freetype-2.3.0/include/freetype/config/ftoption.h 2007-01-18 14:27:48.000000000 -0500
@@ -92,7 +92,7 @@
/* This is done to allow FreeType clients to run unmodified, forcing */
/* them to display normal gray-level anti-aliased glyphs. */
/* */
-/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
+#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING
/*************************************************************************/

18
SOURCES/freetype-2.3.11-more-demos.patch

@ -0,0 +1,18 @@ @@ -0,0 +1,18 @@
diff -up ft2demos-2.3.11/Makefile.more-demos freetype-2.3.11/ft2demos-2.3.11/Makefile
--- ft2demos-2.3.11/Makefile.more-demos 2009-10-22 16:02:26.000000000 -0400
+++ ft2demos-2.3.11/Makefile 2009-10-22 16:02:32.000000000 -0400
@@ -296,10 +296,10 @@ else
# The following programs are not compiled automatically; either comment
# out the affected line or use the program name as a Makefile target.
#
- # EXES += ftchkwd
- # EXES += ftmemchk
- # EXES += ftpatchk
- # EXES += fttimer
+ EXES += ftchkwd
+ EXES += ftmemchk
+ EXES += ftpatchk
+ EXES += fttimer
# EXES += testname
exes: $(EXES:%=$(BIN_DIR_2)/%$E)

14
SOURCES/freetype-2.4.11-inode-overflow.patch

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
--- freetype-2.4.11/src/tools/ftrandom/ftrandom.c.orig 2009-03-14 14:45:26.000000000 +0100
+++ freetype-2.4.11/src/tools/ftrandom/ftrandom.c 2016-02-10 17:51:45.047340575 +0100
@@ -369,6 +369,11 @@
}
fontlist[fcnt].name = strdup( buffer );
+ if ( statb.st_size > LONG_MAX )
+ {
+ fprintf( stderr, "The file is too big\n" );
+ exit( 1 );
+ }
fontlist[fcnt].len = statb.st_size;
figurefiletype( &fontlist[fcnt] );

11
SOURCES/freetype-2.4.11-libtool.patch

@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
--- freetype-2.4.11/builds/unix/freetype-config.in
+++ freetype-2.4.11/builds/unix/freetype-config.in
@@ -205,7 +205,7 @@ if test "$echo_libs" = "yes" ; then
fi
if test "$echo_libtool" = "yes" ; then
- echo ${SYSROOT}$libdir/libfreetype.la
+ echo ""
fi
# EOF

399
SOURCES/freetype-2.4.11-signed.patch

@ -0,0 +1,399 @@ @@ -0,0 +1,399 @@
--- freetype-2.4.11/src/base/ftstream.c
+++ freetype-2.4.11/src/base/ftstream.c
@@ -373,6 +373,25 @@
}
+ FT_BASE_DEF( FT_Short )
+ FT_Stream_GetShort( FT_Stream stream )
+ {
+ FT_Byte* p;
+ FT_Short result;
+
+
+ FT_ASSERT( stream && stream->cursor );
+
+ result = 0;
+ p = stream->cursor;
+ if ( p + 1 < stream->limit )
+ result = FT_NEXT_SHORT( p );
+ stream->cursor = p;
+
+ return result;
+ }
+
+
FT_BASE_DEF( FT_UShort )
FT_Stream_GetUShortLE( FT_Stream stream )
{
@@ -392,6 +411,25 @@
}
+ FT_BASE_DEF( FT_Short )
+ FT_Stream_GetShortLE( FT_Stream stream )
+ {
+ FT_Byte* p;
+ FT_Short result;
+
+
+ FT_ASSERT( stream && stream->cursor );
+
+ result = 0;
+ p = stream->cursor;
+ if ( p + 1 < stream->limit )
+ result = FT_NEXT_SHORT_LE( p );
+ stream->cursor = p;
+
+ return result;
+ }
+
+
FT_BASE_DEF( FT_ULong )
FT_Stream_GetUOffset( FT_Stream stream )
{
@@ -410,6 +448,24 @@
}
+ FT_BASE_DEF( FT_Long )
+ FT_Stream_GetOffset( FT_Stream stream )
+ {
+ FT_Byte* p;
+ FT_Long result;
+
+
+ FT_ASSERT( stream && stream->cursor );
+
+ result = 0;
+ p = stream->cursor;
+ if ( p + 2 < stream->limit )
+ result = FT_NEXT_OFF3( p );
+ stream->cursor = p;
+ return result;
+ }
+
+
FT_BASE_DEF( FT_ULong )
FT_Stream_GetULong( FT_Stream stream )
{
@@ -428,6 +484,24 @@
}
+ FT_BASE_DEF( FT_Long )
+ FT_Stream_GetLong( FT_Stream stream )
+ {
+ FT_Byte* p;
+ FT_Long result;
+
+
+ FT_ASSERT( stream && stream->cursor );
+
+ result = 0;
+ p = stream->cursor;
+ if ( p + 3 < stream->limit )
+ result = FT_NEXT_LONG( p );
+ stream->cursor = p;
+ return result;
+ }
+
+
FT_BASE_DEF( FT_ULong )
FT_Stream_GetULongLE( FT_Stream stream )
{
@@ -446,6 +520,24 @@
}
+ FT_BASE_DEF( FT_Long )
+ FT_Stream_GetLongLE( FT_Stream stream )
+ {
+ FT_Byte* p;
+ FT_Long result;
+
+
+ FT_ASSERT( stream && stream->cursor );
+
+ result = 0;
+ p = stream->cursor;
+ if ( p + 3 < stream->limit )
+ result = FT_NEXT_LONG_LE( p );
+ stream->cursor = p;
+ return result;
+ }
+
+
FT_BASE_DEF( FT_Char )
FT_Stream_ReadChar( FT_Stream stream,
FT_Error* error )
@@ -530,6 +622,53 @@
}
+ FT_BASE_DEF( FT_Short )
+ FT_Stream_ReadShort( FT_Stream stream,
+ FT_Error* error )
+ {
+ FT_Byte reads[2];
+ FT_Byte* p = 0;
+ FT_Short result = 0;
+
+
+ FT_ASSERT( stream );
+
+ *error = FT_Err_Ok;
+
+ if ( stream->pos + 1 < stream->size )
+ {
+ if ( stream->read )
+ {
+ if ( stream->read( stream, stream->pos, reads, 2L ) != 2L )
+ goto Fail;
+
+ p = reads;
+ }
+ else
+ {
+ p = stream->base + stream->pos;
+ }
+
+ if ( p )
+ result = FT_NEXT_SHORT( p );
+ }
+ else
+ goto Fail;
+
+ stream->pos += 2;
+
+ return result;
+
+ Fail:
+ *error = FT_Err_Invalid_Stream_Operation;
+ FT_ERROR(( "FT_Stream_ReadShort:"
+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
+ stream->pos, stream->size ));
+
+ return 0;
+ }
+
+
FT_BASE_DEF( FT_UShort )
FT_Stream_ReadUShortLE( FT_Stream stream,
FT_Error* error )
@@ -577,6 +716,53 @@
}
+ FT_BASE_DEF( FT_Short )
+ FT_Stream_ReadShortLE( FT_Stream stream,
+ FT_Error* error )
+ {
+ FT_Byte reads[2];
+ FT_Byte* p = 0;
+ FT_Short result = 0;
+
+
+ FT_ASSERT( stream );
+
+ *error = FT_Err_Ok;
+
+ if ( stream->pos + 1 < stream->size )
+ {
+ if ( stream->read )
+ {
+ if ( stream->read( stream, stream->pos, reads, 2L ) != 2L )
+ goto Fail;
+
+ p = reads;
+ }
+ else
+ {
+ p = stream->base + stream->pos;
+ }
+
+ if ( p )
+ result = FT_NEXT_SHORT_LE( p );
+ }
+ else
+ goto Fail;
+
+ stream->pos += 2;
+
+ return result;
+
+ Fail:
+ *error = FT_Err_Invalid_Stream_Operation;
+ FT_ERROR(( "FT_Stream_ReadShortLE:"
+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
+ stream->pos, stream->size ));
+
+ return 0;
+ }
+
+
FT_BASE_DEF( FT_ULong )
FT_Stream_ReadUOffset( FT_Stream stream,
FT_Error* error )
@@ -624,6 +810,53 @@
}
+ FT_BASE_DEF( FT_Long )
+ FT_Stream_ReadOffset( FT_Stream stream,
+ FT_Error* error )
+ {
+ FT_Byte reads[3];
+ FT_Byte* p = 0;
+ FT_Long result = 0;
+
+
+ FT_ASSERT( stream );
+
+ *error = FT_Err_Ok;
+
+ if ( stream->pos + 2 < stream->size )
+ {
+ if ( stream->read )
+ {
+ if (stream->read( stream, stream->pos, reads, 3L ) != 3L )
+ goto Fail;
+
+ p = reads;
+ }
+ else
+ {
+ p = stream->base + stream->pos;
+ }
+
+ if ( p )
+ result = FT_NEXT_OFF3( p );
+ }
+ else
+ goto Fail;
+
+ stream->pos += 3;
+
+ return result;
+
+ Fail:
+ *error = FT_Err_Invalid_Stream_Operation;
+ FT_ERROR(( "FT_Stream_ReadOffset:"
+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
+ stream->pos, stream->size ));
+
+ return 0;
+ }
+
+
FT_BASE_DEF( FT_ULong )
FT_Stream_ReadULong( FT_Stream stream,
FT_Error* error )
@@ -671,6 +904,53 @@
}
+ FT_BASE_DEF( FT_Long )
+ FT_Stream_ReadLong( FT_Stream stream,
+ FT_Error* error )
+ {
+ FT_Byte reads[4];
+ FT_Byte* p = 0;
+ FT_Long result = 0;
+
+
+ FT_ASSERT( stream );
+
+ *error = FT_Err_Ok;
+
+ if ( stream->pos + 3 < stream->size )
+ {
+ if ( stream->read )
+ {
+ if ( stream->read( stream, stream->pos, reads, 4L ) != 4L )
+ goto Fail;
+
+ p = reads;
+ }
+ else
+ {
+ p = stream->base + stream->pos;
+ }
+
+ if ( p )
+ result = FT_NEXT_LONG( p );
+ }
+ else
+ goto Fail;
+
+ stream->pos += 4;
+
+ return result;
+
+ Fail:
+ *error = FT_Err_Invalid_Stream_Operation;
+ FT_ERROR(( "FT_Stream_ReadLong:"
+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
+ stream->pos, stream->size ));
+
+ return 0;
+ }
+
+
FT_BASE_DEF( FT_ULong )
FT_Stream_ReadULongLE( FT_Stream stream,
FT_Error* error )
@@ -714,6 +994,53 @@
" invalid i/o; pos = 0x%lx, size = 0x%lx\n",
stream->pos, stream->size ));
+ return 0;
+ }
+
+
+ FT_BASE_DEF( FT_Long )
+ FT_Stream_ReadLongLE( FT_Stream stream,
+ FT_Error* error )
+ {
+ FT_Byte reads[4];
+ FT_Byte* p = 0;
+ FT_Long result = 0;
+
+
+ FT_ASSERT( stream );
+
+ *error = FT_Err_Ok;
+
+ if ( stream->pos + 3 < stream->size )
+ {
+ if ( stream->read )
+ {
+ if ( stream->read( stream, stream->pos, reads, 4L ) != 4L )
+ goto Fail;
+
+ p = reads;
+ }
+ else
+ {
+ p = stream->base + stream->pos;
+ }
+
+ if ( p )
+ result = FT_NEXT_LONG_LE( p );
+ }
+ else
+ goto Fail;
+
+ stream->pos += 4;
+
+ return result;
+
+ Fail:
+ *error = FT_Err_Invalid_Stream_Operation;
+ FT_ERROR(( "FT_Stream_ReadLongLE:"
+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
+ stream->pos, stream->size ));
+
return 0;
}

696
SOURCES/freetype-2.8-2.4.11-API.patch

@ -0,0 +1,696 @@ @@ -0,0 +1,696 @@
--- freetype-2.8/builds/unix/unix-cc.in.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/builds/unix/unix-cc.in 2018-06-07 19:16:35.881770695 +0200
@@ -109,6 +109,6 @@ CCexe := $(CCraw_build) # used to
LINK_LIBRARY = $(LIBTOOL) --mode=link $(CCraw) -o $@ $(OBJECTS_LIST) \
-rpath $(libdir) -version-info $(version_info) \
$(LDFLAGS) -no-undefined \
- -export-symbols $(EXPORTS_LIST)
+ # -export-symbols $(EXPORTS_LIST)
# EOF
--- freetype-2.8/ft2demos-2.8/src/ftview.c.api 2017-05-11 18:31:16.000000000 +0200
+++ freetype-2.8/ft2demos-2.8/src/ftview.c 2018-06-04 16:53:29.960331386 +0200
@@ -1531,8 +1531,8 @@
case FT_ENCODING_SJIS:
encoding = "SJIS";
break;
- case FT_ENCODING_PRC:
- encoding = "PRC";
+ case FT_ENCODING_GB2312:
+ encoding = "GB2312";
break;
case FT_ENCODING_BIG5:
encoding = "Big5";
--- freetype-2.8/include/freetype/freetype.h.api 2017-05-13 06:28:40.000000000 +0200
+++ freetype-2.8/include/freetype/freetype.h 2018-06-04 16:53:29.961331388 +0200
@@ -766,15 +766,14 @@ FT_BEGIN_HEADER
FT_ENC_TAG( FT_ENCODING_UNICODE, 'u', 'n', 'i', 'c' ),
FT_ENC_TAG( FT_ENCODING_SJIS, 's', 'j', 'i', 's' ),
- FT_ENC_TAG( FT_ENCODING_PRC, 'g', 'b', ' ', ' ' ),
+ FT_ENC_TAG( FT_ENCODING_GB2312, 'g', 'b', ' ', ' ' ),
FT_ENC_TAG( FT_ENCODING_BIG5, 'b', 'i', 'g', '5' ),
FT_ENC_TAG( FT_ENCODING_WANSUNG, 'w', 'a', 'n', 's' ),
FT_ENC_TAG( FT_ENCODING_JOHAB, 'j', 'o', 'h', 'a' ),
/* for backward compatibility */
- FT_ENCODING_GB2312 = FT_ENCODING_PRC,
FT_ENCODING_MS_SJIS = FT_ENCODING_SJIS,
- FT_ENCODING_MS_GB2312 = FT_ENCODING_PRC,
+ FT_ENCODING_MS_GB2312 = FT_ENCODING_GB2312,
FT_ENCODING_MS_BIG5 = FT_ENCODING_BIG5,
FT_ENCODING_MS_WANSUNG = FT_ENCODING_WANSUNG,
FT_ENCODING_MS_JOHAB = FT_ENCODING_JOHAB,
--- freetype-2.8/include/freetype/ftcache.h.api 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/include/freetype/ftcache.h 2018-06-04 16:53:29.961331388 +0200
@@ -667,8 +667,8 @@ FT_BEGIN_HEADER
typedef struct FTC_ImageTypeRec_
{
FTC_FaceID face_id;
- FT_UInt width;
- FT_UInt height;
+ FT_Int width;
+ FT_Int height;
FT_Int32 flags;
} FTC_ImageTypeRec;
--- freetype-2.8/include/freetype/ftimage.h.api 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/include/freetype/ftimage.h 2018-06-04 16:53:29.962331389 +0200
@@ -260,13 +260,13 @@ FT_BEGIN_HEADER
/* */
typedef struct FT_Bitmap_
{
- unsigned int rows;
- unsigned int width;
+ int rows;
+ int width;
int pitch;
unsigned char* buffer;
- unsigned short num_grays;
- unsigned char pixel_mode;
- unsigned char palette_mode;
+ short num_grays;
+ char pixel_mode;
+ char palette_mode;
void* palette;
} FT_Bitmap;
--- freetype-2.8/include/freetype/ftmm.h.api 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/include/freetype/ftmm.h 2018-06-04 16:53:29.962331389 +0200
@@ -177,14 +177,10 @@ FT_BEGIN_HEADER
/* */
/* strid :: The entry in `name' table identifying this instance. */
/* */
- /* psid :: The entry in `name' table identifying a PostScript name */
- /* for this instance. */
- /* */
typedef struct FT_Var_Named_Style_
{
FT_Fixed* coords;
FT_UInt strid;
- FT_UInt psid; /* since 2.7.1 */
} FT_Var_Named_Style;
--- freetype-2.8/include/freetype/ttnameid.h.api 2017-05-03 23:26:45.000000000 +0200
+++ freetype-2.8/include/freetype/ttnameid.h 2018-06-04 16:53:29.963331391 +0200
@@ -1217,9 +1217,9 @@ FT_BEGIN_HEADER
/* */
/* for backward compatibility with older FreeType versions */
-#define TT_UCR_ARABIC_PRESENTATION_A \
+#define TT_UCR_ARABIC_PRESENTATIONS_A \
TT_UCR_ARABIC_PRESENTATION_FORMS_A
-#define TT_UCR_ARABIC_PRESENTATION_B \
+#define TT_UCR_ARABIC_PRESENTATIONS_B \
TT_UCR_ARABIC_PRESENTATION_FORMS_B
#define TT_UCR_COMBINING_DIACRITICS \
--- freetype-2.8/include/freetype/tttables.h.api 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/include/freetype/tttables.h 2018-06-04 17:18:26.699449088 +0200
@@ -383,7 +383,7 @@ FT_BEGIN_HEADER
FT_Short xAvgCharWidth;
FT_UShort usWeightClass;
FT_UShort usWidthClass;
- FT_UShort fsType;
+ FT_Short fsType;
FT_Short ySubscriptXSize;
FT_Short ySubscriptYSize;
FT_Short ySubscriptXOffset;
@@ -427,11 +427,6 @@ FT_BEGIN_HEADER
FT_UShort usBreakChar;
FT_UShort usMaxContext;
- /* only version 5 and higher: */
-
- FT_UShort usLowerOpticalPointSize; /* in twips (1/20th points) */
- FT_UShort usUpperOpticalPointSize; /* in twips (1/20th points) */
-
} TT_OS2;
@@ -596,43 +591,41 @@ FT_BEGIN_HEADER
/* @FT_Get_Sfnt_Table API function. */
/* */
/* <Values> */
- /* FT_SFNT_HEAD :: To access the font's @TT_Header structure. */
+ /* ft_sfnt_head :: To access the font's @TT_Header structure. */
/* */
- /* FT_SFNT_MAXP :: To access the font's @TT_MaxProfile structure. */
+ /* ft_sfnt_maxp :: To access the font's @TT_MaxProfile structure. */
/* */
- /* FT_SFNT_OS2 :: To access the font's @TT_OS2 structure. */
+ /* ft_sfnt_os2 :: To access the font's @TT_OS2 structure. */
/* */
- /* FT_SFNT_HHEA :: To access the font's @TT_HoriHeader structure. */
+ /* ft_sfnt_hhea :: To access the font's @TT_HoriHeader structure. */
/* */
- /* FT_SFNT_VHEA :: To access the font's @TT_VertHeader structure. */
+ /* ft_sfnt_vhea :: To access the font's @TT_VertHeader structure. */
/* */
- /* FT_SFNT_POST :: To access the font's @TT_Postscript structure. */
+ /* ft_sfnt_post :: To access the font's @TT_Postscript structure. */
/* */
- /* FT_SFNT_PCLT :: To access the font's @TT_PCLT structure. */
+ /* ft_sfnt_pclt :: To access the font's @TT_PCLT structure. */
/* */
typedef enum FT_Sfnt_Tag_
{
- FT_SFNT_HEAD,
- FT_SFNT_MAXP,
- FT_SFNT_OS2,
- FT_SFNT_HHEA,
- FT_SFNT_VHEA,
- FT_SFNT_POST,
- FT_SFNT_PCLT,
+ ft_sfnt_head = 0,
+ ft_sfnt_maxp = 1,
+ ft_sfnt_os2 = 2,
+ ft_sfnt_hhea = 3,
+ ft_sfnt_vhea = 4,
+ ft_sfnt_post = 5,
+ ft_sfnt_pclt = 6,
- FT_SFNT_MAX
+ sfnt_max
} FT_Sfnt_Tag;
- /* these constants are deprecated; use the corresponding `FT_Sfnt_Tag' */
- /* values instead */
-#define ft_sfnt_head FT_SFNT_HEAD
-#define ft_sfnt_maxp FT_SFNT_MAXP
-#define ft_sfnt_os2 FT_SFNT_OS2
-#define ft_sfnt_hhea FT_SFNT_HHEA
-#define ft_sfnt_vhea FT_SFNT_VHEA
-#define ft_sfnt_post FT_SFNT_POST
-#define ft_sfnt_pclt FT_SFNT_PCLT
+#define FT_SFNT_HEAD ft_sfnt_head
+#define FT_SFNT_MAXP ft_sfnt_maxp
+#define FT_SFNT_OS2 ft_sfnt_os2
+#define FT_SFNT_HHEA ft_sfnt_hhea
+#define FT_SFNT_VHEA ft_sfnt_vhea
+#define FT_SFNT_POST ft_sfnt_post
+#define FT_SFNT_PCLT ft_sfnt_pclt
/*************************************************************************/
--- freetype-2.8/src/sfnt/sfdriver.c.api 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/sfnt/sfdriver.c 2018-06-04 16:53:29.964331392 +0200
@@ -867,16 +867,9 @@
SFNT_Service sfnt = (SFNT_Service)face->sfnt;
FT_Long instance = ( ( face->root.face_index & 0x7FFF0000L ) >> 16 ) - 1;
- FT_UInt psid = mm_var->namedstyle[instance].psid;
char* ps_name = NULL;
-
- /* try first to load the name string with index `postScriptNameID' */
- if ( psid == 6 ||
- ( psid > 255 && psid < 32768 ) )
- (void)sfnt->get_name( face, (FT_UShort)psid, &ps_name );
-
if ( ps_name )
{
result = ps_name;
--- freetype-2.8/src/sfnt/sfobjs.c.api 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/sfnt/sfobjs.c 2018-06-04 16:53:29.964331392 +0200
@@ -311,7 +311,7 @@
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_UCS_4, FT_ENCODING_UNICODE },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_UNICODE_CS, FT_ENCODING_UNICODE },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_SJIS, FT_ENCODING_SJIS },
- { TT_PLATFORM_MICROSOFT, TT_MS_ID_PRC, FT_ENCODING_PRC },
+ { TT_PLATFORM_MICROSOFT, TT_MS_ID_GB2312, FT_ENCODING_GB2312 },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_BIG_5, FT_ENCODING_BIG5 },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_WANSUNG, FT_ENCODING_WANSUNG },
{ TT_PLATFORM_MICROSOFT, TT_MS_ID_JOHAB, FT_ENCODING_JOHAB }
--- freetype-2.8/src/sfnt/ttload.c.api 2017-04-22 07:39:36.000000000 +0200
+++ freetype-2.8/src/sfnt/ttload.c 2018-06-04 16:53:29.965331393 +0200
@@ -1164,15 +1164,6 @@
FT_FRAME_END
};
- /* `OS/2' version 5 and newer */
- static const FT_Frame_Field os2_fields_extra5[] =
- {
- FT_FRAME_START( 4 ),
- FT_FRAME_USHORT( usLowerOpticalPointSize ),
- FT_FRAME_USHORT( usUpperOpticalPointSize ),
- FT_FRAME_END
- };
-
/* We now support old Mac fonts where the OS/2 table doesn't */
/* exist. Simply put, we set the `version' field to 0xFFFF */
@@ -1193,8 +1184,6 @@
os2->usDefaultChar = 0;
os2->usBreakChar = 0;
os2->usMaxContext = 0;
- os2->usLowerOpticalPointSize = 0;
- os2->usUpperOpticalPointSize = 0xFFFF;
if ( os2->version >= 0x0001 )
{
@@ -1207,13 +1196,6 @@
/* only version 2 tables */
if ( FT_STREAM_READ_FIELDS( os2_fields_extra2, os2 ) )
goto Exit;
-
- if ( os2->version >= 0x0005 )
- {
- /* only version 5 tables */
- if ( FT_STREAM_READ_FIELDS( os2_fields_extra5, os2 ) )
- goto Exit;
- }
}
}
--- freetype-2.8/src/truetype/ttgxvar.c.api 2017-05-02 14:37:55.000000000 +0200
+++ freetype-2.8/src/truetype/ttgxvar.c 2018-06-04 16:53:29.966331395 +0200
@@ -2155,7 +2155,7 @@
*c = FT_GET_LONG();
if ( usePsName )
- ns->psid = FT_GET_USHORT();
+ (void) FT_GET_USHORT();
ft_var_to_normalized( face,
fvar_head.axisCount,
@@ -2206,7 +2206,6 @@
ns = &mmvar->namedstyle[fvar_head.instanceCount];
ns->strid = strid;
- ns->psid = TT_NAME_ID_PS_NAME;
a = mmvar->axis;
c = ns->coords;
--- freetype-2.8/devel/ftoption.h.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/devel/ftoption.h 2018-06-07 11:30:34.431455285 +0200
@@ -903,7 +903,7 @@ FT_BEGIN_HEADER
* This macro is obsolete. Support has been removed in FreeType
* version 2.5.
*/
-/* #define FT_CONFIG_OPTION_OLD_INTERNALS */
+#define FT_CONFIG_OPTION_OLD_INTERNALS
/*
--- freetype-2.8/include/freetype/config/ftoption.h.orig 2017-05-01 09:39:06.000000000 +0200
+++ freetype-2.8/include/freetype/config/ftoption.h 2018-06-07 11:30:53.662506048 +0200
@@ -934,7 +934,7 @@ FT_BEGIN_HEADER
* This macro is obsolete. Support has been removed in FreeType
* version 2.5.
*/
-/* #define FT_CONFIG_OPTION_OLD_INTERNALS */
+#define FT_CONFIG_OPTION_OLD_INTERNALS
/*
--- freetype-2.8/include/freetype/ftcache.h.orig 2018-06-07 11:33:07.663882169 +0200
+++ freetype-2.8/include/freetype/ftcache.h 2018-06-07 11:33:23.127947502 +0200
@@ -1049,6 +1049,54 @@ FT_BEGIN_HEADER
/* */
+#ifdef FT_CONFIG_OPTION_OLD_INTERNALS
+
+ /*@***********************************************************************/
+ /* */
+ /* <Struct> */
+ /* FTC_FontRec */
+ /* */
+ /* <Description> */
+ /* A simple structure used to describe a given `font' to the cache */
+ /* manager. Note that a `font' is the combination of a given face */
+ /* with a given character size. */
+ /* */
+ /* <Fields> */
+ /* face_id :: The ID of the face to use. */
+ /* */
+ /* pix_width :: The character width in integer pixels. */
+ /* */
+ /* pix_height :: The character height in integer pixels. */
+ /* */
+ typedef struct FTC_FontRec_
+ {
+ FTC_FaceID face_id;
+ FT_UShort pix_width;
+ FT_UShort pix_height;
+
+ } FTC_FontRec;
+
+
+ /* */
+
+
+ typedef FTC_FontRec* FTC_Font;
+
+
+ FT_EXPORT( FT_Error )
+ FTC_Manager_Lookup_Face( FTC_Manager manager,
+ FTC_FaceID face_id,
+ FT_Face *aface );
+
+ FT_EXPORT( FT_Error )
+ FTC_Manager_Lookup_Size( FTC_Manager manager,
+ FTC_Font font,
+ FT_Face *aface,
+ FT_Size *asize );
+
+#endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
+
+
FT_END_HEADER
#endif /* FTCACHE_H_ */
--- freetype-2.8/src/cache/ftcmanag.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/cache/ftcmanag.c 2018-06-07 11:28:18.663096906 +0200
@@ -701,4 +701,55 @@
}
+#ifdef FT_CONFIG_OPTION_OLD_INTERNALS
+
+ FT_EXPORT_DEF( FT_Error )
+ FTC_Manager_Lookup_Face( FTC_Manager manager,
+ FTC_FaceID face_id,
+ FT_Face *aface )
+ {
+ return FTC_Manager_LookupFace( manager, face_id, aface );
+ }
+
+
+ FT_EXPORT( FT_Error )
+ FTC_Manager_Lookup_Size( FTC_Manager manager,
+ FTC_Font font,
+ FT_Face *aface,
+ FT_Size *asize )
+ {
+ FTC_ScalerRec scaler;
+ FT_Error error;
+ FT_Size size;
+ FT_Face face;
+
+
+ scaler.face_id = font->face_id;
+ scaler.width = font->pix_width;
+ scaler.height = font->pix_height;
+ scaler.pixel = TRUE;
+ scaler.x_res = 0;
+ scaler.y_res = 0;
+
+ error = FTC_Manager_LookupSize( manager, &scaler, &size );
+ if ( error )
+ {
+ face = NULL;
+ size = NULL;
+ }
+ else
+ face = size->face;
+
+ if ( aface )
+ *aface = face;
+
+ if ( asize )
+ *asize = size;
+
+ return error;
+ }
+
+#endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
+
+
/* END */
--- freetype-2.8/ft2demos-2.8/graph/x11/grx11.c.orig 2016-10-19 06:55:23.000000000 +0200
+++ freetype-2.8/ft2demos-2.8/graph/x11/grx11.c 2018-06-07 16:41:52.626432650 +0200
@@ -1404,8 +1404,8 @@ typedef unsigned long uint32;
RootWindow( display, screen ),
0,
0,
- (unsigned int)bitmap->width,
- (unsigned int)bitmap->rows,
+ bitmap->width,
+ bitmap->rows,
10,
format->x_depth,
InputOutput,
--- freetype-2.8/src/base/ftbitmap.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/base/ftbitmap.c 2018-06-07 18:26:08.488060315 +0200
@@ -90,7 +90,7 @@
if ( pitch < 0 )
pitch = -pitch;
- size = (FT_ULong)pitch * source->rows;
+ size = (FT_ULong)( pitch * source->rows );
if ( target->buffer )
{
@@ -100,7 +100,7 @@
if ( target_pitch < 0 )
target_pitch = -target_pitch;
- target_size = (FT_ULong)target_pitch * target->rows;
+ target_size = (FT_ULong)( target_pitch * target->rows );
if ( target_size != size )
(void)FT_QREALLOC( target->buffer, target_size, size );
@@ -156,7 +156,7 @@
int pitch;
int new_pitch;
FT_UInt bpp;
- FT_UInt i, width, height;
+ FT_Int i, width, height;
unsigned char* buffer = NULL;
@@ -194,17 +194,17 @@
if ( ypixels == 0 && new_pitch <= pitch )
{
/* zero the padding */
- FT_UInt bit_width = (FT_UInt)pitch * 8;
- FT_UInt bit_last = ( width + xpixels ) * bpp;
+ FT_Int bit_width = pitch * 8;
+ FT_Int bit_last = ( width + xpixels ) * bpp;
if ( bit_last < bit_width )
{
FT_Byte* line = bitmap->buffer + ( bit_last >> 3 );
FT_Byte* end = bitmap->buffer + pitch;
- FT_UInt shift = bit_last & 7;
+ FT_Int shift = bit_last & 7;
FT_UInt mask = 0xFF00U >> shift;
- FT_UInt count = height;
+ FT_Int count = height;
for ( ; count > 0; count--, line += pitch, end += pitch )
@@ -233,7 +233,7 @@
/* thus take care of the flow direction */
if ( bitmap->pitch > 0 )
{
- FT_UInt len = ( width * bpp + 7 ) >> 3;
+ FT_Int len = ( width * bpp + 7 ) >> 3;
for ( i = 0; i < bitmap->rows; i++ )
@@ -243,7 +243,7 @@
}
else
{
- FT_UInt len = ( width * bpp + 7 ) >> 3;
+ FT_Int len = ( width * bpp + 7 ) >> 3;
for ( i = 0; i < bitmap->rows; i++ )
@@ -275,8 +275,7 @@
{
FT_Error error;
unsigned char* p;
- FT_Int i, x, pitch;
- FT_UInt y;
+ FT_Int i, x, y, pitch;
FT_Int xstr, ystr;
@@ -420,8 +419,8 @@
p += bitmap->pitch;
}
- bitmap->width += (FT_UInt)xstr;
- bitmap->rows += (FT_UInt)ystr;
+ bitmap->width += xstr;
+ bitmap->rows += ystr;
return FT_Err_Ok;
}
@@ -506,8 +505,8 @@
case FT_PIXEL_MODE_LCD_V:
case FT_PIXEL_MODE_BGRA:
{
- FT_Int pad, old_target_pitch, target_pitch;
- FT_ULong old_size;
+ FT_Int pad, old_target_pitch, target_pitch;
+ FT_Long old_size;
old_target_pitch = target->pitch;
@@ -617,7 +616,7 @@
case FT_PIXEL_MODE_LCD:
case FT_PIXEL_MODE_LCD_V:
{
- FT_UInt width = source->width;
+ FT_Int width = source->width;
FT_UInt i;
--- freetype-2.8/src/pcf/pcfdrivr.c.orig 2018-06-07 11:42:57.757375204 +0200
+++ freetype-2.8/src/pcf/pcfdrivr.c 2018-06-07 16:59:25.832896549 +0200
@@ -523,10 +523,10 @@ THE SOFTWARE.
metric = face->metrics + glyph_index;
- bitmap->rows = (unsigned int)( metric->ascent +
- metric->descent );
- bitmap->width = (unsigned int)( metric->rightSideBearing -
- metric->leftSideBearing );
+ bitmap->rows = ( metric->ascent +
+ metric->descent );
+ bitmap->width = ( metric->rightSideBearing -
+ metric->leftSideBearing );
bitmap->num_grays = 1;
bitmap->pixel_mode = FT_PIXEL_MODE_MONO;
--- freetype-2.8/src/raster/ftraster.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/raster/ftraster.c 2018-06-07 18:07:14.977278387 +0200
@@ -2479,7 +2479,7 @@
{
e1 = TRUNC( e1 );
- if ( e1 >= 0 && (ULong)e1 < ras.target.rows )
+ if ( e1 >= 0 && e1 < ras.target.rows )
{
Byte f1;
PByte bits;
@@ -2589,7 +2589,7 @@
/* bounding box instead */
if ( pxl < 0 )
pxl = e1;
- else if ( (ULong)( TRUNC( pxl ) ) >= ras.target.rows )
+ else if ( ( TRUNC( pxl ) ) >= ras.target.rows )
pxl = e2;
/* check that the other pixel isn't set */
@@ -2604,9 +2604,9 @@
if ( ras.target.pitch > 0 )
bits += (Long)( ras.target.rows - 1 ) * ras.target.pitch;
- if ( e1 >= 0 &&
- (ULong)e1 < ras.target.rows &&
- *bits & f1 )
+ if ( e1 >= 0 &&
+ e1 < ras.target.rows &&
+ *bits & f1 )
goto Exit;
}
else
@@ -2615,7 +2615,7 @@
e1 = TRUNC( pxl );
- if ( e1 >= 0 && (ULong)e1 < ras.target.rows )
+ if ( e1 >= 0 && e1 < ras.target.rows )
{
FT_TRACE7(( " -> y=%d (drop-out)", e1 ));
--- freetype-2.8/src/sfnt/pngshim.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/sfnt/pngshim.c 2018-06-07 18:08:07.825359421 +0200
@@ -209,10 +209,10 @@
}
if ( !populate_map_and_metrics &&
- ( (FT_UInt)x_offset + metrics->width > map->width ||
- (FT_UInt)y_offset + metrics->height > map->rows ||
- pix_bits != 32 ||
- map->pixel_mode != FT_PIXEL_MODE_BGRA ) )
+ ( x_offset + metrics->width > map->width ||
+ y_offset + metrics->height > map->rows ||
+ pix_bits != 32 ||
+ map->pixel_mode != FT_PIXEL_MODE_BGRA ) )
{
error = FT_THROW( Invalid_Argument );
goto Exit;
@@ -270,7 +270,7 @@
map->num_grays = 256;
/* reject too large bitmaps similarly to the rasterizer */
- if ( map->rows > 0x7FFF || map->width > 0x7FFF )
+ if ( map->rows > 0x4FFF || map->width > 0x4FFF )
{
error = FT_THROW( Array_Too_Large );
goto DestroyExit;
@@ -346,7 +346,7 @@
if ( populate_map_and_metrics )
{
- /* this doesn't overflow: 0x7FFF * 0x7FFF * 4 < 2^32 */
+ /* this doesn't overflow: 0x4FFF * 0x4FFF * 4 < 2^31 */
FT_ULong size = map->rows * (FT_ULong)map->pitch;
--- freetype-2.8/src/sfnt/ttsbit.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/sfnt/ttsbit.c 2018-06-07 18:31:57.610612501 +0200
@@ -705,7 +705,7 @@
FT_Error error = FT_Err_Ok;
FT_Byte* line;
FT_Int pitch, width, height, line_bits, h;
- FT_UInt bit_height, bit_width;
+ FT_Int bit_height, bit_width;
FT_Bitmap* bitmap;
FT_UNUSED( recurse_count );
--- freetype-2.8/src/smooth/ftgrays.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/smooth/ftgrays.c 2018-06-07 17:01:09.008070697 +0200
@@ -1880,7 +1880,7 @@ typedef ptrdiff_t FT_PtrDist;
ras.target.origin = target_map->buffer;
else
ras.target.origin = target_map->buffer
- + ( target_map->rows - 1 ) * (unsigned int)target_map->pitch;
+ + (unsigned int) (( target_map->rows - 1 ) * target_map->pitch);
ras.target.pitch = target_map->pitch;
--- freetype-2.8/src/smooth/ftsmooth.c.orig 2017-05-01 09:35:12.000000000 +0200
+++ freetype-2.8/src/smooth/ftsmooth.c 2018-06-07 17:01:51.040141641 +0200
@@ -292,8 +292,8 @@
bitmap->pixel_mode = FT_PIXEL_MODE_GRAY;
bitmap->num_grays = 256;
- bitmap->width = (unsigned int)width;
- bitmap->rows = (unsigned int)height;
+ bitmap->width = width;
+ bitmap->rows = height;
bitmap->pitch = pitch;
/* translate outline to render it into the bitmap */
--- freetype-2.8/src/winfonts/winfnt.c.orig 2017-03-30 12:20:23.000000000 +0200
+++ freetype-2.8/src/winfonts/winfnt.c 2018-06-07 18:21:47.809648016 +0200
@@ -1038,7 +1038,7 @@
p = font->fnt_frame + offset;
- bitmap->width = FT_NEXT_USHORT_LE( p );
+ bitmap->width = FT_NEXT_SHORT_LE( p );
/* jump to glyph entry */
if ( new_format )
@@ -1079,7 +1079,7 @@
/* allocate and build bitmap */
{
FT_Memory memory = FT_FACE_MEMORY( slot->face );
- FT_UInt pitch = ( bitmap->width + 7 ) >> 3;
+ FT_Int pitch = ( bitmap->width + 7 ) >> 3;
FT_Byte* column;
FT_Byte* write;

46
SOURCES/freetype-2.8-avar-table-load.patch

@ -0,0 +1,46 @@ @@ -0,0 +1,46 @@
From 55bbb98f5c5a89230127d6b998a6e23e634b5d0e Mon Sep 17 00:00:00 2001
From: Behdad Esfahbod <behdad@behdad.org>
Date: Tue, 1 Aug 2017 09:17:02 +0200
Subject: [PATCH 077/132] [truetype] Fix loading of named instances.

* src/truetype/ttgxvar.c (TT_Get_MM_Var): Preserve file position
while loading the `avar' table.
---
ChangeLog | 7 +++++++
include/freetype/ftmm.h | 2 +-
src/truetype/ttgxvar.c | 11 ++++++++++-
3 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/src/truetype/ttgxvar.c b/src/truetype/ttgxvar.c
index 68458362e..df42b3bfd 100644
--- a/src/truetype/ttgxvar.c
+++ b/src/truetype/ttgxvar.c
@@ -2136,8 +2136,16 @@
goto Exit;
if ( fvar_head.instanceCount && !face->blend->avar_loaded )
+ {
+ FT_ULong offset = FT_STREAM_POS();
+
+
ft_var_load_avar( face );
+ if ( FT_STREAM_SEEK( offset ) )
+ goto Exit;
+ }
+
ns = mmvar->namedstyle;
nsc = face->blend->normalized_stylecoords;
for ( i = 0; i < fvar_head.instanceCount; i++, ns++ )
@@ -2171,7 +2179,7 @@
SFNT_Service sfnt = (SFNT_Service)face->sfnt;
FT_Int found, dummy1, dummy2;
- FT_UInt strid = 0xFFFFFFFFUL;
+ FT_UInt strid = ~0U;
/* the default instance is missing in array the */
--
2.13.5

39
SOURCES/freetype-2.8-getvariation.patch

@ -0,0 +1,39 @@ @@ -0,0 +1,39 @@
From 29c759284e305ec428703c9a5831d0b1fc3497ef Mon Sep 17 00:00:00 2001
From: Werner Lemberg <wl@gnu.org>
Date: Sat, 27 Jan 2018 14:43:43 +0100
Subject: [PATCH] * src/truetype/ttinterp.c (Ins_GETVARIATION): Avoid NULL
reference.

Reported as

https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=5736
---
src/truetype/ttinterp.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index d855aaaa9..551f14a2e 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -7470,8 +7470,16 @@
return;
}
- for ( i = 0; i < num_axes; i++ )
- args[i] = coords[i] >> 2; /* convert 16.16 to 2.14 format */
+ if ( coords )
+ {
+ for ( i = 0; i < num_axes; i++ )
+ args[i] = coords[i] >> 2; /* convert 16.16 to 2.14 format */
+ }
+ else
+ {
+ for ( i = 0; i < num_axes; i++ )
+ args[i] = 0;
+ }
}
--
2.14.3

36
SOURCES/freetype-2.8-loop-counter.patch

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
From 8d435c463d22f6de35015b244d6f9bb433beb7e6 Mon Sep 17 00:00:00 2001
From: Werner Lemberg <wl@gnu.org>
Date: Thu, 1 Jun 2017 07:09:44 +0200
Subject: [PATCH] * src/truetype/ttinterp.c (TT_RunIns): Adjust loop counter
again.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Problem reported by Marek Kašík <mkasik@redhat.com>.

The problematic font that exceeds the old limit is Padauk-Bold,
version 3.002, containing bytecode generated by a buggy version of
ttfautohint.
---
ChangeLog | 10 ++++++++++
src/truetype/ttinterp.c | 3 +--
2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index 0c48c256..775d1104 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -7649,8 +7649,7 @@
FT_MAX( 50,
exc->cvtSize / 10 );
else
- exc->loopcall_counter_max = FT_MAX( 100,
- 10 * exc->cvtSize );
+ exc->loopcall_counter_max = 300 + 8 * exc->cvtSize;
/* as a protection against an unreasonable number of CVT entries */
/* we assume at most 100 control values per glyph for the counter */
--
2.13.0

58
SOURCES/freetype-2.8-pcf-encoding.patch

@ -0,0 +1,58 @@ @@ -0,0 +1,58 @@
From 082f2faf5007812bac6a1f783c7dcc6f49d761fe Mon Sep 17 00:00:00 2001
From: Werner Lemberg <wl@gnu.org>
Date: Wed, 24 May 2017 07:40:46 +0200
Subject: [PATCH] [bdf, pcf] Support ISO646.1991-IRV character encoding (aka
ASCII).
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Problem reported by Marek Kašík <mkasik@redhat.com>, cf.

https://bugzilla.redhat.com/show_bug.cgi?id=1451795

* src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdrivr.c
(PCF_Face_Init): Implement it.
---
ChangeLog | 11 +++++++++++
src/bdf/bdfdrivr.c | 6 +++++-
src/pcf/pcfdrivr.c | 6 +++++-
3 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/src/bdf/bdfdrivr.c b/src/bdf/bdfdrivr.c
index a2242be0..c0a5a5c5 100644
--- a/src/bdf/bdfdrivr.c
+++ b/src/bdf/bdfdrivr.c
@@ -545,7 +545,11 @@ THE SOFTWARE.
if ( !ft_strcmp( s, "10646" ) ||
( !ft_strcmp( s, "8859" ) &&
!ft_strcmp( face->charset_encoding, "1" ) ) )
- unicode_charmap = 1;
+ unicode_charmap = 1;
+ /* another name for ASCII */
+ else if ( !ft_strcmp( s, "646.1991" ) &&
+ !ft_strcmp( face->charset_encoding, "IRV" ) )
+ unicode_charmap = 1;
}
{
diff --git a/src/pcf/pcfdrivr.c b/src/pcf/pcfdrivr.c
index 9f4d36d1..50530941 100644
--- a/src/pcf/pcfdrivr.c
+++ b/src/pcf/pcfdrivr.c
@@ -387,7 +387,11 @@ THE SOFTWARE.
if ( !ft_strcmp( s, "10646" ) ||
( !ft_strcmp( s, "8859" ) &&
!ft_strcmp( face->charset_encoding, "1" ) ) )
- unicode_charmap = 1;
+ unicode_charmap = 1;
+ /* another name for ASCII */
+ else if ( !ft_strcmp( s, "646.1991" ) &&
+ !ft_strcmp( face->charset_encoding, "IRV" ) )
+ unicode_charmap = 1;
}
}
--
2.13.0

65
SOURCES/freetype-multilib.patch

@ -0,0 +1,65 @@ @@ -0,0 +1,65 @@
--- freetype-2.8/builds/unix/freetype-config.in
+++ freetype-2.8/builds/unix/freetype-config.in
@@ -13,45 +13,25 @@ LC_ALL=C
export LC_ALL
-# if `pkg-config' is available, use values from `freetype2.pc'
-pkg-config --version >/dev/null 2>&1
-if test $? -eq 0 ; then
- # note that option `--variable' is not affected by the
- # PKG_CONFIG_SYSROOT_DIR environment variable
- if test "x$SYSROOT" != "x" ; then
- PKG_CONFIG_SYSROOT_DIR="$SYSROOT"
- export PKG_CONFIG_SYSROOT_DIR
- fi
-
- prefix=`pkg-config --variable prefix freetype2`
- exec_prefix=`pkg-config --variable exec_prefix freetype2`
-
- includedir=`pkg-config --variable includedir freetype2`
- libdir=`pkg-config --variable libdir freetype2`
-
- version=`pkg-config --modversion freetype2`
-
- cflags=`pkg-config --cflags freetype2`
- dynamic_libs=`pkg-config --libs freetype2`
- static_libs=`pkg-config --static --libs freetype2`
-else
- prefix="%prefix%"
- exec_prefix="%exec_prefix%"
-
- includedir="%includedir%"
- libdir="%libdir%"
-
- version=%ft_version%
-
- cflags="-I${SYSROOT}$includedir/freetype2"
- dynamic_libs="-lfreetype"
- static_libs="%LIBSSTATIC_CONFIG%"
- if test "${SYSROOT}$libdir" != "/usr/lib" &&
- test "${SYSROOT}$libdir" != "/usr/lib64" ; then
- libs_L="-L${SYSROOT}$libdir"
- fi
+# note that option `--variable' is not affected by the
+# PKG_CONFIG_SYSROOT_DIR environment variable
+if test "x$SYSROOT" != "x" ; then
+ PKG_CONFIG_SYSROOT_DIR="$SYSROOT"
+ export PKG_CONFIG_SYSROOT_DIR
fi
+prefix=`pkg-config --variable prefix freetype2`
+exec_prefix=`pkg-config --variable exec_prefix freetype2`
+
+includedir=`pkg-config --variable includedir freetype2`
+libdir=`pkg-config --variable libdir freetype2`
+
+version=`pkg-config --modversion freetype2`
+
+cflags=`pkg-config --cflags freetype2`
+dynamic_libs=`pkg-config --libs freetype2`
+static_libs=`pkg-config --static --libs freetype2`
+
orig_prefix=$prefix
orig_exec_prefix=$exec_prefix

14
SOURCES/ftconfig.h

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
#ifndef __FTCONFIG_H__MULTILIB
#define __FTCONFIG_H__MULTILIB

#include <bits/wordsize.h>

#if __WORDSIZE == 32
# include "ftconfig-32.h"
#elif __WORDSIZE == 64
# include "ftconfig-64.h"
#else
# error "unexpected value for __WORDSIZE macro"
#endif

#endif

916
SPECS/freetype.spec

@ -0,0 +1,916 @@ @@ -0,0 +1,916 @@
# Patented subpixel rendering disabled by default.
# Pass '--with subpixel_rendering' on rpmbuild command-line to enable.
%{!?_with_subpixel_rendering: %{!?_without_subpixel_rendering: %define _without_subpixel_rendering --without-subpixel_rendering}}

%{!?with_xfree86:%define with_xfree86 1}

Summary: A free and portable font rendering engine
Name: freetype
Version: 2.8
Release: 12%{?dist}
License: (FTL or GPLv2+) and BSD and MIT and Public Domain and zlib with acknowledgement
Group: System Environment/Libraries
URL: http://www.freetype.org
Source: http://download.savannah.gnu.org/releases/freetype/freetype-%{version}.tar.bz2
Source1: http://download.savannah.gnu.org/releases/freetype/freetype-doc-%{version}.tar.bz2
Source2: http://download.savannah.gnu.org/releases/freetype/ft2demos-%{version}.tar.bz2
Source3: ftconfig.h

Patch0: freetype-2.3.0-enable-spr.patch

# Enable otvalid and gxvalid modules
Patch1: freetype-2.2.1-enable-valid.patch

# https://bugzilla.redhat.com/show_bug.cgi?id=1197740
Patch2: freetype-2.4.11-inode-overflow.patch

# https://bugzilla.redhat.com/show_bug.cgi?id=1381678
Patch3: freetype-2.4.11-signed.patch

# Enable additional demos
Patch4: freetype-2.3.11-more-demos.patch

Patch5: freetype-2.4.11-libtool.patch

Patch6: freetype-2.8-pcf-encoding.patch

Patch7: freetype-2.8-loop-counter.patch

# https://bugzilla.redhat.com/show_bug.cgi?id=1497443
Patch8: freetype-multilib.patch

# https://bugzilla.redhat.com/show_bug.cgi?id=1544775
Patch9: freetype-2.8-getvariation.patch

# https://bugzilla.redhat.com/show_bug.cgi?id=1576504
Patch10: freetype-2.8-2.4.11-API.patch
Patch11: freetype-2.8-avar-table-load.patch

BuildRequires: libX11-devel
BuildRequires: libpng-devel
BuildRequires: zlib-devel
BuildRequires: bzip2-devel

Provides: %{name}-bytecode
%if %{?_with_subpixel_rendering:1}%{!?_with_subpixel_rendering:0}
Provides: %{name}-subpixel
%endif

%description
The FreeType engine is a free and portable font rendering
engine, developed to provide advanced font support for a variety of
platforms and environments. FreeType is a library which can open and
manages font files as well as efficiently load, hint and render
individual glyphs. FreeType is not a font server or a complete
text-rendering library.


%package demos
Summary: A collection of FreeType demos
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}

%description demos
The FreeType engine is a free and portable font rendering
engine, developed to provide advanced font support for a variety of
platforms and environments. The demos package includes a set of useful
small utilities showing various capabilities of the FreeType library.


%package devel
Summary: FreeType development libraries and header files
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: pkgconfig%{?_isa}

%description devel
The freetype-devel package includes the static libraries and header files
for the FreeType font rendering engine.

Install freetype-devel if you want to develop programs which will use
FreeType.


%prep
%setup -q -b 1 -a 2

%if %{?_with_subpixel_rendering:1}%{!?_with_subpixel_rendering:0}
%patch0 -p1 -b .enable-spr
%endif

%patch1 -p1 -b .enable-valid
%patch2 -p1 -b .inode-overflow
%patch3 -p1 -b .signed

pushd ft2demos-%{version}
%patch4 -p1 -b .more-demos
popd

%patch5 -p1 -b .libtool
%patch6 -p1 -b .pcf-encoding
%patch7 -p1 -b .loop-counter
%patch8 -p1 -b .multilib
%patch9 -p1 -b .getvariation
%patch10 -p1 -b .2.4.11-api
%patch11 -p1 -b .avar-table-load

%build

%configure --disable-static \
--with-zlib=yes \
--with-bzip2=yes \
--with-png=yes \
--with-harfbuzz=no \
CFLAGS="%optflags -D_FILE_OFFSET_BITS=64"

sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' builds/unix/libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' builds/unix/libtool
make %{?_smp_mflags}

%if %{with_xfree86}
# Build demos
pushd ft2demos-%{version}
make TOP_DIR=".."
popd
%endif

# Convert FTL.txt and example3.cpp to UTF-8
pushd docs
iconv -f latin1 -t utf-8 < FTL.TXT > FTL.TXT.tmp && \
touch -r FTL.TXT FTL.TXT.tmp && \
mv FTL.TXT.tmp FTL.TXT

iconv -f iso-8859-1 -t utf-8 < "tutorial/example3.cpp" > "tutorial/example3.cpp.utf8"
touch -r tutorial/example3.cpp tutorial/example3.cpp.utf8 && \
mv tutorial/example3.cpp.utf8 tutorial/example3.cpp
popd


%install

%make_install gnulocaledir=$RPM_BUILD_ROOT%{_datadir}/locale

{
for ftdemo in ftbench ftchkwd ftmemchk ftpatchk fttimer ftdump ftlint ftmemchk ftvalid ; do
builds/unix/libtool --mode=install install -m 755 ft2demos-%{version}/bin/$ftdemo $RPM_BUILD_ROOT/%{_bindir}
done
}
%if %{with_xfree86}
{
for ftdemo in ftdiff ftgamma ftgrid ftmulti ftstring fttimer ftview ; do
builds/unix/libtool --mode=install install -m 755 ft2demos-%{version}/bin/$ftdemo $RPM_BUILD_ROOT/%{_bindir}
done
}
%endif

# fix multilib issues
%define wordsize %{__isa_bits}

mv $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/config/ftconfig.h \
$RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/config/ftconfig-%{wordsize}.h
install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_includedir}/freetype2/freetype/config/ftconfig.h

# Don't package static a or .la files
rm -f $RPM_BUILD_ROOT%{_libdir}/*.{a,la}


%triggerpostun -- freetype < 2.0.5-3
{
# ttmkfdir updated - as of 2.0.5-3, on upgrades we need xfs to regenerate
# things to get the iso10646-1 encoding listed.
for I in %{_datadir}/fonts/*/TrueType /usr/share/X11/fonts/TTF; do
[ -d $I ] && [ -f $I/fonts.scale ] && [ -f $I/fonts.dir ] && touch $I/fonts.scale
done
exit 0
}

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%files
%{!?_licensedir:%global license %%doc}
%license docs/LICENSE.TXT docs/FTL.TXT docs/GPLv2.TXT
%{_libdir}/libfreetype.so.*
%doc README

%files demos
%{_bindir}/ftbench
%{_bindir}/ftchkwd
%{_bindir}/ftmemchk
%{_bindir}/ftpatchk
%{_bindir}/fttimer
%{_bindir}/ftdump
%{_bindir}/ftlint
%{_bindir}/ftvalid
%if %{with_xfree86}
%{_bindir}/ftdiff
%{_bindir}/ftgamma
%{_bindir}/ftgrid
%{_bindir}/ftmulti
%{_bindir}/ftstring
%{_bindir}/ftview
%endif
%doc ChangeLog README

%files devel
%doc docs/CHANGES docs/formats.txt docs/ft2faq.html
%dir %{_includedir}/freetype2
%{_datadir}/aclocal/freetype2.m4
%{_includedir}/freetype2/*
%{_libdir}/libfreetype.so
%{_bindir}/freetype-config
%{_libdir}/pkgconfig/freetype2.pc
%doc docs/design
%doc docs/glyphs
%doc docs/reference
%doc docs/tutorial
%{_mandir}/man1/*

%changelog
* Fri Jun 08 2018 Marek Kasik <mkasik@redhat.com> - 2.8-12
- Fix loading of avar tables
- Resolves: #1576504

* Thu Jun 07 2018 Marek Kasik <mkasik@redhat.com> - 2.8-11
- Preserve API/ABI compatibility for public symbols
- Resolves: #1576504

* Wed Jun 06 2018 Richard Hughes <rhughes@redhat.com> - 2.8-10
- Update to 2.8
- Resolves: #1576504

* Mon Feb 20 2017 Marek Kasik <mkasik@redhat.com> - 2.4.11-15
- Fix shellcheck warning (coverity)
- Related: #1368141

* Mon Feb 20 2017 Marek Kasik <mkasik@redhat.com> - 2.4.11-14
- Backport functions for reading signed values from stream
- Resolves: #1381678

* Fri Feb 17 2017 Marek Kasik <mkasik@redhat.com> - 2.4.11-13
- Don't show path of non-existing libtool file
- Resolves: #1368141

* Tue Mar 22 2016 Marek Kasik <mkasik@redhat.com> - 2.4.11-12
- Define _FILE_OFFSET_BITS=64 to handle inodes higher than or equal to 2^31
- Resolves: #1303268

* Tue Mar 10 2015 Marek Kasik <mkasik@redhat.com> - 2.4.11-11
- Fixes CVE-2014-9657
- Check minimum size of `record_size'.
- Fixes CVE-2014-9658
- Use correct value for minimum table length test.
- Fixes CVE-2014-9675
- New macro that checks one character more than `strncmp'.
- Fixes CVE-2014-9660
- Check `_BDF_GLYPH_BITS'.
- Fixes CVE-2014-9661
- Initialize `face->ttf_size'.
- Always set `face->ttf_size' directly.
- Exclusively use the `truetype' font driver for loading
the font contained in the `sfnts' array.
- Fixes CVE-2014-9663
- Fix order of validity tests.
- Fixes CVE-2014-9664
- Add another boundary testing.
- Fix boundary testing.
- Fixes CVE-2014-9667
- Protect against addition overflow.
- Fixes CVE-2014-9669
- Protect against overflow in additions and multiplications.
- Fixes CVE-2014-9670
- Add sanity checks for row and column values.
- Fixes CVE-2014-9671
- Check `size' and `offset' values.
- Fixes CVE-2014-9673
- Fix integer overflow by a broken POST table in resource-fork.
- Fixes CVE-2014-9674
- Fix integer overflow by a broken POST table in resource-fork.
- Additional overflow check in the summation of POST fragment lengths.
- Work around behaviour of X11's `pcfWriteFont' and `pcfReadFont' functions
- Resolves: #1197740

* Mon Aug 18 2014 Peter Robinson <pbrobinson@redhat.com> - 2.4.11-10
- Generic 32/64 bit platform detection (fix ppc64le build)
- Resolves: #1126099

* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 2.4.11-9
- Mass rebuild 2014-01-24

* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 2.4.11-8
- Mass rebuild 2013-12-27

* Thu Oct 3 2013 Marek Kasik <mkasik@redhat.com> - 2.4.11-7
- Fix vertical size of emboldened glyphs
- Resolves: #1010341

* Wed May 29 2013 Peter Robinson <pbrobinson@fedoraproject.org> 2.4.11-6
- Add aarch64 to 64 bit arch list

* Thu May 16 2013 Marek Kasik <mkasik@redhat.com> - 2.4.11-5
- Change encoding of "docs/tutorial/example3.cpp" to UTF-8

* Thu May 16 2013 Marek Kasik <mkasik@redhat.com> - 2.4.11-4
- Package ftconfig.h as source file

* Tue Mar 19 2013 Marek Kasik <mkasik@redhat.com> - 2.4.11-3
- Fix emboldening:
- split out MSB function
- fix integer overflows
- fix broken emboldening at small sizes
- Resolves: #891457

* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.11-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Wed Jan 2 2013 Marek Kasik <mkasik@redhat.com> - 2.4.11-1
- Update to 2.4.11
- Resolves: #889177

* Wed Oct 24 2012 Marek Kasik <mkasik@redhat.com> - 2.4.10-3
- Update License field

* Fri Jul 27 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.10-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Wed Jul 11 2012 Marek Kasik <mkasik@redhat.com> 2.4.10-1
- Update to 2.4.10
- Remove patches which are already included in upstream
- Resolves: #832651

* Fri Mar 30 2012 Marek Kasik <mkasik@redhat.com> 2.4.9-1
- Update to 2.4.9
- Fixes various CVEs
- Resolves: #806270

* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Tue Nov 15 2011 Marek Kasik <mkasik@redhat.com> 2.4.8-1
- Update to 2.4.8
- Remove an unneeded patch

* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.7-2
- Rebuilt for glibc bug#747377

* Thu Oct 20 2011 Marek Kasik <mkasik@redhat.com> 2.4.7-1
- Update to 2.4.7
- Fixes CVE-2011-3256
- Resolves: #747262

* Thu Aug 4 2011 Marek Kasik <mkasik@redhat.com> 2.4.6-1
- Update to 2.4.6

* Wed Jul 20 2011 Marek Kasik <mkasik@redhat.com> 2.4.5-2
- Add freetype-2.4.5-CVE-2011-0226.patch
(Add better argument check for `callothersubr'.)
- based on patches by Werner Lemberg,
Alexei Podtelezhnikov and Matthias Drochner
- Resolves: #723469

* Tue Jun 28 2011 Marek Kasik <mkasik@redhat.com> 2.4.5-1
- Update to 2.4.5

* Tue Mar 8 2011 Marek Kasik <mkasik@redhat.com> 2.4.4-4
- Fix autohinting fallback (#547532).
- Ignore CFF-based OTFs.

* Sun Feb 20 2011 Marek Kasik <mkasik@redhat.com> 2.4.4-3
- Enable bytecode interpreter (#547532).
- Fall back to autohinting if a TTF/OTF doesn't contain any bytecode.

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Thu Dec 2 2010 Marek Kasik <mkasik@redhat.com> 2.4.4-1
- Update to 2.4.4
- Remove freetype-2.4.3-CVE-2010-3855.patch
- Resolves: #659020

* Mon Nov 15 2010 Marek Kasik <mkasik@redhat.com> 2.4.3-2
- Add freetype-2.4.3-CVE-2010-3855.patch
(Protect against invalid `runcnt' values.)
- Resolves: #651764

* Tue Oct 26 2010 Marek Kasik <mkasik@redhat.com> 2.4.3-1
- Update to 2.4.3
- Resolves: #639906

* Wed Oct 6 2010 Marek Kasik <mkasik@redhat.com> 2.4.2-3
- Add freetype-2.4.2-CVE-2010-3311.patch
(Don't seek behind end of stream.)
- Resolves: #638522

* Fri Aug 6 2010 Matthias Clasen <mclasen@redhat.com> 2.4.2-2
- Fix a thinko, we still want to disable the bytecode interpreter
by default

* Fri Aug 6 2010 Matthias Clasen <mclasen@redhat.com> 2.4.2-1
- Update to 2.4.2
- Drop upstreamed patch, bytecode interpreter now on by default

* Thu Feb 23 2010 Behdad Esfahbod <behdad@redhat.com> 2.3.12-1
- Update to 2.3.12
- Drop mathlib patch

* Thu Dec 3 2009 Behdad Esfahbod <behdad@redhat.com> 2.3.11-2
- Drop upstreamed patch.
- Enable patented bytecode interpretter now that the patents are expired.

* Thu Oct 22 2009 Behdad Esfahbod <behdad@redhat.com> 2.3.11-1
- Update to 2.3.11.
- Add freetype-2.3.11-more-demos.patch
- New demo programs ftmemchk, ftpatchk, and fttimer

* Thu Oct 08 2009 Behdad Esfahbod <behdad@redhat.com> 2.3.10-1
- Drop freetype-2.3.9-aliasing.patch
- Update to 2.3.10.

* Thu Jul 30 2009 Behdad Esfahbod <behdad@redhat.com> 2.3.9-6
- Add freetype-2.3.9-aliasing.patch
- Resolves: 513582

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.9-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Thu May 7 2009 Matthias Clasen <mclasen@redhat.com> 2.3.9-4
- Don't own /usr/lib/pkgconfig

* Wed Mar 27 2009 Behdad Esfahbod <besfahbo@redhat.com> 2.3.9-3
- Disable subpixel hinting by default. Was turned on unintentionally.

* Wed Mar 25 2009 Behdad Esfahbod <besfahbo@redhat.com> 2.3.9-2
- Add Provides: freetype-bytecode and freetype-subpixel if built
with those options.
- Resolves: #155210

* Thu Mar 13 2009 Behdad Esfahbod <besfahbo@redhat.com> 2.3.9-1
- Update to 2.3.9.
- Resolves #489928

* Thu Mar 09 2009 Behdad Esfahbod <besfahbo@redhat.com> 2.3.8-2.1
- Preserve timestamp of FTL.TXT when converting to UTF-8.

* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Thu Jan 15 2009 Behdad Esfahbod <besfahbo@redhat.com> 2.3.8-1
- Update to 2.3.8
- Remove freetype-autohinter-ligature.patch

* Tue Dec 09 2008 Behdad Esfahbod <besfahbo@redhat.com> 2.3.7-3
- Add full source URL to Source lines.
- Add docs to main and devel package.
- rpmlint is happy now.
- Resolves: #225770

* Fri Dec 05 2008 Behdad Esfahbod <besfahbo@redhat.com> 2.3.7-2
- Add freetype-autohinter-ligature.patch
- Resolves: #368561

* Tue Aug 14 2008 Behdad Esfahbod <besfahbo@redhat.com> 2.3.7-1
- Update to 2.3.7

* Tue Jun 10 2008 Behdad Esfahbod <besfahbo@redhat.com> 2.3.6-1
- Update to 2.3.6

* Wed May 21 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2.3.5-5
- fix license tag
- add sparc64 to list of 64bit arches

* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.3.5-4
- Autorebuild for GCC 4.3

* Thu Aug 23 2007 Adam Jackson <ajax@redhat.com> - 2.3.5-3
- Rebuild for build ID

* Tue Jul 31 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.5-2
- Change spec file to permit enabling bytecode-interpreter and
subpixel-rendering without editing spec file.
- Resolves: 249986

* Wed Jul 25 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.5-1
- Update to 2.3.5.
- Drop freetype-2.3.4-ttf-overflow.patch

* Fri Jun 29 2007 Adam Jackson <ajax@redhat.com> 2.3.4-4
- Fix builds/unix/libtool to not emit rpath into binaries. (#225770)

* Thu May 31 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.4-3
- Add freetype-2.3.4-ttf-overflow.patch

* Thu Apr 12 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.4-2
- Add alpha to 64-bit archs (#236166)

* Tue Apr 05 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.4-1
- Update to 2.3.4.

* Thu Apr 05 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.3-2
- Include new demos ftgrid and ftdiff in freetype-demos. (#235478)

* Thu Apr 05 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.3-1
- Update to 2.3.3.

* Fri Mar 09 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.2-1
- Update to 2.3.2.

* Fri Feb 02 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.1-1
- Update to 2.3.1.

* Wed Jan 17 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.0-2
- Add without_subpixel_rendering.
- Drop X11_PATH=/usr. Not needed anymore.

* Wed Jan 17 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.3.0-1
- Update to 2.3.0.
- Drop upstream patches.
- Drop -fno-strict-aliasing, it should just work.
- Fix typo in ftconfig.h generation.

* Tue Jan 09 2007 Behdad Esfahbod <besfahbo@redhat.com> 2.2.1-16
- Backport binary-search fixes from HEAD
- Add freetype-2.2.1-ttcmap.patch
- Resolves: #208734

- Fix rendering issue with some Asian fonts.
- Add freetype-2.2.1-fix-get-orientation.patch
- Resolves: #207261

- Copy non-X demos even if not compiling with_xfree86.

- Add freetype-2.2.1-zero-item-size.patch, to fix crasher.
- Resolves #214048

- Add X11_PATH=/usr to "make"s, to find modern X.
- Resolves #212199

* Mon Sep 11 2006 Behdad Esfahbod <besfahbo@redhat.com> 2.2.1-10
- Fix crasher https://bugs.freedesktop.org/show_bug.cgi?id=6841
- Add freetype-2.2.1-memcpy-fix.patch

* Thu Sep 07 2006 Behdad Esfahbod <besfahbo@redhat.com> 2.2.1-9
- Add BuildRequires: libX11-devel (#205355)

* Tue Aug 29 2006 Behdad Esfahbod <besfahbo@redhat.com> 2.2.1-8
- Add freetype-composite.patch and freetype-more-composite.patch
from upstream. (#131851)

* Mon Aug 28 2006 Matthias Clasen <mclasen@redhat.com> - 2.2.1-7
- Require pkgconfig in the -devel package

* Fri Aug 18 2006 Jesse Keating <jkeating@redhat.com> - 2.2.1-6
- pass --disable-static to %%configure. (#172628)

* Thu Aug 17 2006 Jesse Keating <jkeating@redhat.com> - 2.2.1-5
- don't package static libs

* Sun Aug 13 2006 Matthias Clasen <mclasen@redhat.com> - 2.2.1-4.fc6
- fix a problem with the multilib patch (#202366)

* Thu Jul 27 2006 Matthias Clasen <mclasen@redhat.com> - 2.2.1-3
- fix multilib issues

* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 2.2.1-2.1
- rebuild

* Fri Jul 07 2006 Behdad Esfahbod <besfahbo@redhat.com> 2.2.1-2
- Remove unused BuildRequires

* Fri Jul 07 2006 Behdad Esfahbod <besfahbo@redhat.com> 2.2.1-1
- Update to 2.2.1
- Remove FreeType 1, to move to extras
- Install new demos ftbench, ftchkwd, ftgamma, and ftvalid
- Enable modules gxvalid and otvalid

* Wed May 17 2006 Karsten Hopp <karsten@redhat.de> 2.1.10-6
- add buildrequires libICE-devel, libSM-devel

* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 2.1.10-5.2.1
- bump again for double-long bug on ppc(64)

* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 2.1.10-5.2
- rebuilt for new gcc4.1 snapshot and glibc changes

* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt

* Fri Nov 18 2005 Bill Nottingham <notting@redhat.com> 2.1.10-5
- Remove references to obsolete /usr/X11R6 paths

* Tue Nov 1 2005 Matthias Clasen <mclasen@redhat.com> 2.1.10-4
- Switch requires to modular X

* Fri Oct 21 2005 Matthias Clasen <mclasen@redhat.com> 2.1.10-3
- BuildRequire gettext

* Wed Oct 12 2005 Jason Vas Dias <jvdias@redhat.com> 2.1.10-2
- fix 'without_bytecode_interpreter 0' build: freetype-2.1.10-enable-ft2-bci.patch

* Fri Oct 7 2005 Matthias Clasen <mclasen@redhat.com> 2.1.10-1
- Update to 2.1.10
- Add necessary fixes

* Tue Aug 16 2005 Kristian Høgsberg <krh@redhat.com> 2.1.9-4
- Fix freetype-config on 64 bit platforms.

* Thu Jul 07 2005 Karsten Hopp <karsten@redhat.de> 2.1.9-3
- BuildRequires xorg-x11-devel

* Fri Mar 4 2005 David Zeuthen <davidz@redhat.com> - 2.1.9-2
- Rebuild

* Wed Aug 4 2004 Owen Taylor <otaylor@redhat.com> - 2.1.9-1
- Upgrade to 2.1.9
- Since we are just using automake for aclocal, use it unversioned,
instead of specifying 1.4.

* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt

* Mon Apr 19 2004 Owen Taylor <otaylor@redhat.com> 2.1.7-4
- Add patch from freetype CVS to fix problem with eexec (#117743)
- Add freetype-devel to buildrequires and -devel requires
(Maxim Dzumanenko, #111108)

* Wed Mar 10 2004 Mike A. Harris <mharris@redhat.com> 2.1.7-3
- Added -fno-strict-aliasing to CFLAGS and CXXFLAGS to try to fix SEGV and
SIGILL crashes in mkfontscale which have been traced into freetype and seem
to be caused by aliasing issues in freetype macros (#118021)

* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com> 2.1.7-2.1
- rebuilt

* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com> 2.1.7-2
- rebuilt

* Fri Jan 23 2004 Owen Taylor <otaylor@redhat.com> 2.1.7-1
- Upgrade to 2.1.7

* Tue Sep 23 2003 Florian La Roche <Florian.LaRoche@redhat.de>
- allow compiling without the demos as that requires XFree86
(this allows bootstrapping XFree86 on new archs)

* Fri Aug 8 2003 Elliot Lee <sopwith@redhat.com> 2.1.4-4.1
- Rebuilt

* Tue Jul 8 2003 Owen Taylor <otaylor@redhat.com> 2.1.4-4.0
- Bump for rebuild

* Wed Jun 25 2003 Owen Taylor <otaylor@redhat.com> 2.1.4-3
- Fix crash with non-format-0 hdmx tables (found by David Woodhouse)

* Mon Jun 9 2003 Owen Taylor <otaylor@redhat.com> 2.1.4-1
- Version 2.1.4
- Relibtoolize to get deplibs right for x86_64
- Use autoconf-2.5x for freetype-1.4 to fix libtool-1.5 compat problem (#91781)
- Relativize absolute symlinks to fix the -debuginfo package
(#83521, Mike Harris)

* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt

* Thu May 22 2003 Jeremy Katz <katzj@redhat.com> 2.1.3-9
- fix build with gcc 3.3

* Tue Feb 25 2003 Owen Taylor <otaylor@redhat.com>
- Add a memleak fix for the gzip backend from Federic Crozat

* Thu Feb 13 2003 Elliot Lee <sopwith@redhat.com> 2.1.3-7
- Run libtoolize/aclocal/autoconf so that libtool knows to generate shared libraries
on ppc64.
- Use _smp_mflags (for freetype 2.x only)

* Tue Feb 4 2003 Owen Taylor <otaylor@redhat.com>
- Switch to using %%configure (should fix #82330)

* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt

* Mon Jan 6 2003 Owen Taylor <otaylor@redhat.com> 2.1.3-4
- Make FreeType robust against corrupt fonts with recursive composite
glyphs (#74782, James Antill)

* Thu Jan 2 2003 Owen Taylor <otaylor@redhat.com> 2.1.3-3
- Add a patch to implement FT_LOAD_TARGET_LIGHT
- Fix up freetype-1.4-libtool.patch

* Sat Dec 12 2002 Mike A. Harris <mharris@redhat.com> 2.1.3-2
- Update to freetype 2.1.3
- Removed ttmkfdir sources and patches, as they have been moved from the
freetype packaging to XFree86 packaging, and now to the ttmkfdir package
- Removed patches that are now included in 2.1.3:
freetype-2.1.1-primaryhints.patch, freetype-2.1.2-slighthint.patch,
freetype-2.1.2-bluefuzz.patch, freetype-2.1.2-stdw.patch,
freetype-2.1.2-transform.patch, freetype-2.1.2-autohint.patch,
freetype-2.1.2-leftright.patch
- Conditionalized inclusion of freetype 1.4 library.

* Wed Dec 04 2002 Florian La Roche <Florian.LaRoche@redhat.de>
- disable perl, it is not used at all

* Tue Dec 03 2002 Elliot Lee <sopwith@redhat.com> 2.1.2-11
- Instead of removing unpackaged file, include it in the package.

* Sat Nov 30 2002 Mike A. Harris <mharris@redhat.com> 2.1.2-10
- Attempted to fix lib64 issue in freetype-demos build with X11_LINKLIBS
- Cleaned up various _foodir macros throughtout specfile
- Removed with_ttmkfdir build option as it is way obsolete

* Fri Nov 29 2002 Tim Powers <timp@redhat.com> 2.1.2-8
- remove unpackaged files from the buildroot

* Wed Aug 28 2002 Owen Taylor <otaylor@redhat.com>
- Fix a bug with PCF metrics

* Fri Aug 9 2002 Owen Taylor <otaylor@redhat.com>
- Backport autohinter improvements from CVS

* Tue Jul 23 2002 Owen Taylor <otaylor@redhat.com>
- Fix from CVS for transformations (#68964)

* Tue Jul 9 2002 Owen Taylor <otaylor@redhat.com>
- Add another bugfix for the postscript hinter

* Mon Jul 8 2002 Owen Taylor <otaylor@redhat.com>
- Add support for BlueFuzz private dict value, fixing rendering
glitch for Luxi Mono.

* Wed Jul 3 2002 Owen Taylor <otaylor@redhat.com>
- Add an experimental FT_Set_Hint_Flags() call

* Mon Jul 1 2002 Owen Taylor <otaylor@redhat.com>
- Update to 2.1.2
- Add a patch fixing freetype PS hinter bug

* Fri Jun 21 2002 Mike A. Harris <mharris@redhat.com> 2.1.1-2
- Added ft rpm build time conditionalizations upon user requests

* Tue Jun 11 2002 Owen Taylor <otaylor@redhat.com> 2.1.1-1
- Version 2.1.1

* Mon Jun 10 2002 Owen Taylor <otaylor@redhat.com>
- Add a fix for PCF character maps

* Sun May 26 2002 Tim Powers <timp@redhat.com>
- automated rebuild

* Fri May 17 2002 Mike A. Harris <mharris@redhat.com> 2.1.0-2
- Updated freetype to version 2.1.0
- Added libtool fix for freetype 1.4 (#64631)

* Wed Mar 27 2002 Nalin Dahyabhai <nalin@redhat.com> 2.0.9-2
- use "libtool install" instead of "install" to install some binaries (#62005)

* Mon Mar 11 2002 Mike A. Harris <mharris@redhat.com> 2.0.9-1
- Updated to freetype 2.0.9

* Sun Feb 24 2002 Mike A. Harris <mharris@redhat.com> 2.0.8-4
- Added proper docs+demos source for 2.0.8.

* Sat Feb 23 2002 Mike A. Harris <mharris@redhat.com> 2.0.8-3
- Added compat patch so 2.x works more like 1.x
- Rebuilt with new build toolchain

* Fri Feb 22 2002 Mike A. Harris <mharris@redhat.com> 2.0.8-2
- Updated to freetype 2.0.8, however docs and demos are stuck at 2.0.7
on the freetype website. Munged specfile to deal with the problem by using
{oldversion} instead of version where appropriate. <sigh>

* Sat Feb 2 2002 Tim Powers <timp@redhat.com> 2.0.6-3
- bumping release so that we don't collide with another build of
freetype, make sure to change the release requirement in the XFree86
package

* Fri Feb 1 2002 Mike A. Harris <mharris@redhat.com> 2.0.6-2
- Made ttmkfdir inclusion conditional, and set up a define to include
ttmkfdir in RHL 7.x builds, since ttmkfdir is now moving to the new
XFree86-font-utils package.

* Wed Jan 16 2002 Mike A. Harris <mharris@redhat.com> 2.0.6-1
- Updated freetype to version 2.0.6

* Wed Jan 09 2002 Tim Powers <timp@redhat.com> 2.0.5-4
- automated rebuild

* Fri Nov 30 2001 Elliot Lee <sopwith@redhat.com> 2.0.5-3
- Fix bug #56901 (ttmkfdir needed to list Unicode encoding when generating
font list). (ttmkfdir-iso10646.patch)
- Use _smp_mflags macro everywhere relevant. (freetype-pre1.4-make.patch)
- Undo fix for #24253, assume compiler was fixed.

* Mon Nov 12 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.0.5-2
- Fix build with gcc 3.1 (#56079)

* Sun Nov 11 2001 Mike A. Harris <mharris@redhat.com> 2.0.5-1
- Updated freetype to version 2.0.5

* Sat Sep 22 2001 Mike A. Harris <mharris@redhat.com> 2.0.4-2
- Added new subpackage freetype-demos, added demos to build
- Disabled ftdump, ftlint in utils package favoring the newer utils in
demos package.

* Tue Sep 11 2001 Mike A. Harris <mharris@redhat.com> 2.0.4-1
- Updated source to 2.0.4
- Added freetype demo's back into src.rpm, but not building yet.

* Wed Aug 15 2001 Mike A. Harris <mharris@redhat.com> 2.0.3-7
- Changed package to use {findlang} macro to fix bug (#50676)

* Sun Jul 15 2001 Mike A. Harris <mharris@redhat.com> 2.0.3-6
- Changed freetype-devel to group Development/Libraries (#47625)

* Mon Jul 9 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.0.3-5
- Fix up FT1 headers to please Qt 3.0.0 beta 2

* Sun Jun 24 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.0.3-4
- Add ft2build.h to -devel package, since it's included by all other
freetype headers, the package is useless without it

* Thu Jun 21 2001 Nalin Dahyabhai <nalin@redhat.com> 2.0.3-3
- Change "Requires: freetype = name/ver" to "freetype = version/release",
and move the requirements to the subpackages.

* Mon Jun 18 2001 Mike A. Harris <mharris@redhat.com> 2.0.3-2
- Added "Requires: freetype = name/ver"

* Tue Jun 12 2001 Mike A. Harris <mharris@redhat.com> 2.0.3-1
- Updated to Freetype 2.0.3, minor specfile tweaks.
- Freetype2 docs are is in a separate tarball now. Integrated it.
- Built in new environment.

* Fri Apr 27 2001 Bill Nottingham <notting@redhat.com>
- rebuild for C++ exception handling on ia64

* Sat Jan 20 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Build ttmkfdir with -O0, workaround for Bug #24253

* Fri Jan 19 2001 Nalin Dahyabhai <nalin@redhat.com>
- libtool is used to build libttf, so use libtool to link ttmkfdir with it
- fixup a paths for a couple of missing docs

* Thu Jan 11 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Update ttmkfdir

* Wed Dec 27 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Update to 2.0.1 and 1.4
- Mark locale files as such

* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
- automatic rebuild

* Mon Jun 12 2000 Preston Brown <pbrown@redhat.com>
- move .la file to devel pkg
- FHS paths

* Thu Feb 17 2000 Preston Brown <pbrown@redhat.com>
- revert spaces patch, fix up some foundry names to match X ones

* Mon Feb 07 2000 Nalin Dahyabhai <nalin@redhat.com>
- add defattr, ftmetric, ftsbit, ftstrtto per bug #9174

* Wed Feb 02 2000 Cristian Gafton <gafton@redhat.com>
- fix description and summary

* Wed Jan 12 2000 Preston Brown <pbrown@redhat.com>
- make ttmkfdir replace spaces in family names with underscores (#7613)

* Tue Jan 11 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 1.3.1
- handle RPM_OPT_FLAGS

* Wed Nov 10 1999 Preston Brown <pbrown@redhat.com>
- fix a path for ttmkfdir Makefile

* Thu Aug 19 1999 Preston Brown <pbrown@redhat.com>
- newer ttmkfdir that works better, moved ttmkfdir to /usr/bin from /usr/sbin
- freetype utilities moved to subpkg, X dependency removed from main pkg
- libttf.so symlink moved to devel pkg

* Mon Mar 22 1999 Preston Brown <pbrown@redhat.com>
- strip binaries

* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
- auto rebuild in the new build environment (release 5)

* Thu Mar 18 1999 Cristian Gafton <gafton@redhat.com>
- fixed the doc file list

* Wed Feb 24 1999 Preston Brown <pbrown@redhat.com>
- Injected new description and group.

* Mon Feb 15 1999 Preston Brown <pbrown@redhat.com>
- added ttmkfdir

* Tue Feb 02 1999 Preston Brown <pbrown@redhat.com>
- update to 1.2

* Thu Jan 07 1999 Cristian Gafton <gafton@redhat.com>
- call libtoolize to sanitize config.sub and get ARM support
- dispoze of the patch (not necessary anymore)

* Wed Oct 21 1998 Preston Brown <pbrown@redhat.com>
- post/postun sections for ldconfig action.

* Tue Oct 20 1998 Preston Brown <pbrown@redhat.com>
- initial RPM, includes normal and development packages.
Loading…
Cancel
Save