diff --git a/bnc628213_1797.diff b/bnc628213_1797.diff deleted file mode 100644 index e23b8e8..0000000 --- a/bnc628213_1797.diff +++ /dev/null @@ -1,36 +0,0 @@ ---- - src/cff/cffgload.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -Index: freetype-2.4.2/src/cff/cffgload.c -=================================================================== ---- freetype-2.4.2.orig/src/cff/cffgload.c -+++ freetype-2.4.2/src/cff/cffgload.c -@@ -204,7 +204,7 @@ - 2, /* hsbw */ - 0, - 0, -- 0, -+ 1, - 5, /* seac */ - 4, /* sbw */ - 2 /* setcurrentpoint */ -@@ -2041,6 +2041,9 @@ - if ( Rand >= 0x8000L ) - Rand++; - -+ if ( args - stack >= CFF_MAX_OPERANDS ) -+ goto Stack_Overflow; -+ - args[0] = Rand; - seed = FT_MulFix( seed, 0x10000L - seed ); - if ( seed == 0 ) -@@ -2166,6 +2169,8 @@ - case cff_op_dup: - FT_TRACE4(( " dup\n" )); - -+ if ( args + 1 - stack >= CFF_MAX_OPERANDS ) -+ goto Stack_Overflow; - args[1] = args[0]; - args += 2; - break; diff --git a/bnc641580_CVE-2010-3311.diff b/bnc641580_CVE-2010-3311.diff deleted file mode 100644 index 69be102..0000000 --- a/bnc641580_CVE-2010-3311.diff +++ /dev/null @@ -1,38 +0,0 @@ -Index: freetype-2.4.2/src/base/ftstream.c -=================================================================== ---- freetype-2.4.2.orig/src/base/ftstream.c -+++ freetype-2.4.2/src/base/ftstream.c -@@ -70,8 +70,16 @@ - { - FT_Error error = FT_Err_Ok; - -+ /* note that seeking to the first position after the file is valid */ -+ if ( pos > stream->size ) -+ { -+ FT_ERROR(( "FT_Stream_Seek:" -+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n", -+ pos, stream->size )); -+ error = FT_Err_Invalid_Stream_Operation; -+ } - -- if ( stream->read ) -+ if ( !error && stream->read ) - { - if ( stream->read( stream, pos, 0, 0 ) ) - { -@@ -82,15 +90,6 @@ - error = FT_Err_Invalid_Stream_Operation; - } - } -- /* note that seeking to the first position after the file is valid */ -- else if ( pos > stream->size ) -- { -- FT_ERROR(( "FT_Stream_Seek:" -- " invalid i/o; pos = 0x%lx, size = 0x%lx\n", -- pos, stream->size )); -- -- error = FT_Err_Invalid_Stream_Operation; -- } - - if ( !error ) - stream->pos = pos; diff --git a/bnc704612_othersubr.diff b/bnc704612_othersubr.diff new file mode 100644 index 0000000..1f1f095 --- /dev/null +++ b/bnc704612_othersubr.diff @@ -0,0 +1,99 @@ +--- freetype-2.4.4/src/psaux/t1decode.c.orig 2011-07-21 16:44:40.000000000 +0000 ++++ freetype-2.4.4/src/psaux/t1decode.c 2011-07-21 17:00:05.000000000 +0000 +@@ -28,6 +28,8 @@ + + #include "psauxerr.h" + ++/* ensure proper sign extension */ ++#define Fix2Int( f ) ( (FT_Int)(FT_Short)( (f) >> 16 ) ) + + /*************************************************************************/ + /* */ +@@ -662,7 +664,7 @@ + if ( large_int ) + FT_TRACE4(( " %ld", value )); + else +- FT_TRACE4(( " %ld", (FT_Int32)( value >> 16 ) )); ++ FT_TRACE4(( " %ld", Fix2Int( value ) )); + #endif + + *top++ = value; +@@ -684,8 +686,8 @@ + + top -= 2; + +- subr_no = (FT_Int)( top[1] >> 16 ); +- arg_cnt = (FT_Int)( top[0] >> 16 ); ++ subr_no = Fix2Int( top[1] ); ++ arg_cnt = Fix2Int( top[0] ); + + /***********************************************************/ + /* */ +@@ -862,7 +864,7 @@ + if ( arg_cnt != 1 || blend == NULL ) + goto Unexpected_OtherSubr; + +- idx = (FT_Int)( top[0] >> 16 ); ++ idx = Fix2Int( top[0] ); + + if ( idx < 0 || + idx + blend->num_designs > decoder->len_buildchar ) +@@ -930,7 +932,7 @@ + if ( arg_cnt != 2 || blend == NULL ) + goto Unexpected_OtherSubr; + +- idx = (FT_Int)( top[1] >> 16 ); ++ idx = Fix2Int( top[1] ); + + if ( idx < 0 || (FT_UInt) idx >= decoder->len_buildchar ) + goto Unexpected_OtherSubr; +@@ -951,7 +953,7 @@ + if ( arg_cnt != 1 || blend == NULL ) + goto Unexpected_OtherSubr; + +- idx = (FT_Int)( top[0] >> 16 ); ++ idx = Fix2Int( top[0] ); + + if ( idx < 0 || (FT_UInt) idx >= decoder->len_buildchar ) + goto Unexpected_OtherSubr; +@@ -1009,11 +1011,15 @@ + break; + + default: +- FT_ERROR(( "t1_decoder_parse_charstrings:" +- " unknown othersubr [%d %d], wish me luck\n", +- arg_cnt, subr_no )); +- unknown_othersubr_result_cnt = arg_cnt; +- break; ++ if ( arg_cnt >= 0 && subr_no >= 0 ) ++ { ++ FT_ERROR(( "t1_decoder_parse_charstrings:" ++ " unknown othersubr [%d %d], wish me luck\n", ++ arg_cnt, subr_no )); ++ unknown_othersubr_result_cnt = arg_cnt; ++ break; ++ } ++ /* fall through */ + + Unexpected_OtherSubr: + FT_ERROR(( "t1_decoder_parse_charstrings:" +@@ -1139,8 +1145,8 @@ + top[0], + top[1], + top[2], +- (FT_Int)( top[3] >> 16 ), +- (FT_Int)( top[4] >> 16 ) ); ++ Fix2Int( top[3] ), ++ Fix2Int( top[4] ) ); + + case op_sbw: + FT_TRACE4(( " sbw" )); +@@ -1324,7 +1330,7 @@ + + FT_TRACE4(( " callsubr" )); + +- idx = (FT_Int)( top[0] >> 16 ); ++ idx = Fix2Int( top[0] ); + if ( idx < 0 || idx >= (FT_Int)decoder->num_subrs ) + { + FT_ERROR(( "t1_decoder_parse_charstrings:" diff --git a/freetype-2.4.4.tar.bz2 b/freetype-2.4.4.tar.bz2 deleted file mode 100644 index 3a7aa54..0000000 --- a/freetype-2.4.4.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4b8281c7dc4d375c6b65d3c6f4808e488a313fab47d7be82aad2c871c8480fef -size 1442053 diff --git a/freetype-2.4.5.tar.bz2 b/freetype-2.4.5.tar.bz2 new file mode 100644 index 0000000..fa32818 --- /dev/null +++ b/freetype-2.4.5.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73e835881b3413df8a0653b046048932794df0cfec9c4dd5adf28f64de445af2 +size 1483537 diff --git a/freetype-doc-2.4.4.tar.bz2 b/freetype-doc-2.4.4.tar.bz2 deleted file mode 100644 index 14ffa04..0000000 --- a/freetype-doc-2.4.4.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9205ea8899ae005ceede2c7d4ab6dfac6d669b16a9e4a0d49f90c081bc916ae3 -size 104304 diff --git a/freetype-doc-2.4.5.tar.bz2 b/freetype-doc-2.4.5.tar.bz2 new file mode 100644 index 0000000..ff8aca0 --- /dev/null +++ b/freetype-doc-2.4.5.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dc5dcb35a8c7f51ce885fc908c9c9b164ca65727926d9d5c7bff91fad0d3c9c +size 106683 diff --git a/freetype2-no_rpath.patch b/freetype2-no_rpath.patch index 334fad8..dcffe85 100644 --- a/freetype2-no_rpath.patch +++ b/freetype2-no_rpath.patch @@ -16,6 +16,6 @@ - if test "$enable_shared" = "yes" ; then - eval "rpath=\"$hardcode_libdir_flag_spec\"" - fi - libs="-lfreetype @LIBZ@ @FT2_EXTRA_LIBS@" + libs="-lfreetype @LIBZ@ @LIBBZ2@ @FT2_EXTRA_LIBS@" if test "${SYSROOT}$libdir" != "/usr/lib" && test "${SYSROOT}$libdir" != "/usr/lib64"; then echo -L${SYSROOT}$libdir $libs diff --git a/freetype2.changes b/freetype2.changes index afad63b..bdbc6b1 100644 --- a/freetype2.changes +++ b/freetype2.changes @@ -1,3 +1,46 @@ +------------------------------------------------------------------- +Fri Jul 22 13:41:02 CEST 2011 - ke@suse.de + +- added bnc704612_othersubr.diff, CVE-2011-0226, bnc#704612. + +------------------------------------------------------------------- +Thu Jul 7 13:16:05 UTC 2011 - idonmez@novell.com + +- Clean spec file +- Disable static libraries +- Drop unneeded use_unix.diff +- Disable newly introduced bzip2 support, it seems to create + problems with subpixel rendering + +------------------------------------------------------------------- +Sat Jun 25 08:37:55 UTC 2011 - idonmez@novell.com + +- Update to version 2.4.5 + * A rendering regression for second-order Bézier curves has been + fixed, introduced in 2.4.3. + * If autohinting is not explicitly disabled, FreeType now uses + the autohinter if a TrueType based font doesn't contain native + hints. + * The load flag FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH has been made + redundant and is simply ignored; this means that FreeType now + ignores the global advance width value in TrueType fonts. + * `FT_Sfnt_Table_Info' can now return the number of SFNT tables of + a font. + * Support for PCF files compressed with bzip2 has been contributed + by Joel Klinghed. To make this work, the OS must provide a + bzip2 library. + * Again some fixes to better handle broken fonts. + * Some improvements to the B/W rasterizer. + * Fixes to the cache module to improve robustness. + * Just Fill Bugs contributed (experimental) code to compute blue + zones for CJK Ideographs, improving the alignment of horizontal + stems at the top or bottom edges. +- Dropped the following patches: + * bnc628213_1797.diff (fixed upstream) + * bnc641580_CVE-2010-3311.diff (fixed upstream) + * ft2-stream-compat.diff (only needed for SLE8->SLE9 update) +- Add libbz2-devel to BuildRequires to enable bzip2 support + ------------------------------------------------------------------- Mon Feb 28 16:36:35 UTC 2011 - jw@novell.com diff --git a/freetype2.spec b/freetype2.spec index 472accf..1b40871 100644 --- a/freetype2.spec +++ b/freetype2.spec @@ -15,42 +15,31 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild Name: freetype2 -BuildRequires: pkg-config zlib-devel License: Freetype License (BSD-like). See http://freetype.sourceforge.net/FTL.TXT Group: System/Libraries -AutoReqProv: on +BuildRequires: pkg-config +BuildRequires: zlib-devel # bug437293 %ifarch ppc64 Obsoletes: freetype2-64bit %endif # -Version: 2.4.4 -Release: 9 -Url: http://www.freetype.org +Version: 2.4.5 +Release: 1 Summary: A TrueType Font Library -# CVS repository: -# cvs -d :pserver:anonymous@cvs.savannah.nongnu.org:/sources/freetype login -# cvs -d :pserver:anonymous@cvs.savannah.nongnu.org:/sources/freetype co freetype2 -# cvs -d :pserver:anonymous@cvs.savannah.nongnu.org:/sources/freetype co ft2demos +Url: http://www.freetype.org Source0: http://download.savannah.gnu.org/releases/freetype/freetype-%{version}.tar.bz2 Source1: http://download.savannah.gnu.org/releases/freetype/freetype-doc-%{version}.tar.bz2 Source3: baselibs.conf Patch3: freetype2-bitmap-foundry.patch -Patch4: ft2-stream-compat.diff Patch9: fix-build.patch Patch10: freetype2-no_rpath.patch Patch308961: bugzilla-308961-cmex-workaround.patch Patch200: freetype2-subpixel.patch -Patch201: use_unix.diff - -Patch1000: bnc628213_1797.diff -Patch1015: bnc641580_CVE-2010-3311.diff -Source1015: bug-641580_CVE-2010-3311.cff - +Patch1018: bnc704612_othersubr.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -72,12 +61,14 @@ version also contains an autohinter for producing improved output. License: GPLv2+ ; Freetype License (BSD-like). See http://freetype.sourceforge.net/FTL.TXT Summary: Development environment for the freetype2 TrueType font library Group: Development/Libraries/C and C++ -Requires: libfreetype6 = %{version}, zlib-devel +Requires: libfreetype6 = %{version} +Requires: zlib-devel # bug437293 %ifarch ppc64 Obsoletes: freetype2-devel-64bit %endif -# +# there is no freetype-devel on suse: +Provides: freetype-devel %description devel This package contains all necessary include files, libraries and @@ -90,58 +81,30 @@ It also contains a small tutorial for using that library. %define enable_subpixel_rendering 0 %setup -q -n freetype-%{version} -a 1 %patch3 -p 1 -b .bitmap-foundry -%patch4 -p 1 -b .ft2-stream-compat -#%patch8 -p 1 %patch9 -p 1 %patch10 %patch308961 -p 1 %if %{enable_subpixel_rendering} %patch200 -p 1 -b .subpixel %endif -%patch201 -p1 +%patch1018 -p 1 -b .othersubr -# bnc628213_1797.diff -%patch1000 -p1 -# bnc629447_CVE-2010-2805..8.diff -#%patch1001 -p1 -#%patch1002 -p1 -#%patch1003 -p1 -#%patch1004 -p1 -# bnc619562_CVE-2010-2497..2541.diff -#%patch1005 -p1 -#%patch1006 -p1 -#%patch1007 -p1 -#%patch1008 -p1 -#%patch1009 -p1 -#%patch1010 -p1 -# bnc633938_CVE-2010-3053.diff -#%patch1013 -p1 -# bnc641580_CVE-2010-3311.diff -%patch1015 -p1 - -find . -name CVS -type d | xargs rm -rf -find . -name ".cvsignore" | xargs rm -f -cp /usr/share/automake*/config.{guess,sub} builds/unix rm docs/reference/.gitignore %build -export CFLAGS="$RPM_OPT_FLAGS -g -fno-strict-aliasing" %ifarch arm export CFLAGS="$CFLAGS -std=gnu99" %endif -ln -s /usr/bin/libtool ./builds/unix/libtool -make setup CFG="--prefix=/usr --libdir=%{_libdir} --with-zlib" -make prefix=/usr libdir=%{_libdir} %{?jobs:-j %jobs} -# build the documentation in the references subdirectory: -# (this needs python and we cannot have python in the BuildRequires of -# a basic package like freetype2, therefore we cannot do it here but we have -# to generate this documentation manually) -#make refdoc +%configure --without-bzip2 \ + --disable-static +make %{_smp_mflags} %install +%makeinstall + # these development documents should go into the freetype2-devel package: mv docs/reference freetype-%{version}/docs -make prefix=$RPM_BUILD_ROOT/usr libdir=$RPM_BUILD_ROOT/%{_libdir} install + # remove documentation that does not belong in an rpm rm docs/INSTALL* @@ -161,11 +124,11 @@ rm -rf %{buildroot} %files devel %defattr(-,root,root) %doc freetype-%{version}/docs/* -/usr/include/* +%{_includedir}/* %exclude %{_libdir}/libfreetype.*a %{_libdir}/libfreetype.so %{_libdir}/pkgconfig/freetype2.pc -/usr/bin/* -/usr/share/aclocal/* +%{_bindir}/* +%{_datadir}/aclocal/* %changelog diff --git a/ft2-stream-compat.diff b/ft2-stream-compat.diff deleted file mode 100644 index 4116f5b..0000000 --- a/ft2-stream-compat.diff +++ /dev/null @@ -1,218 +0,0 @@ ---- - src/base/ftstream.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++-- - 1 file changed, 56 insertions(+), 2 deletions(-) - -Index: freetype-2.4.2/src/base/ftstream.c -=================================================================== ---- freetype-2.4.2.orig/src/base/ftstream.c -+++ freetype-2.4.2/src/base/ftstream.c -@@ -44,6 +44,17 @@ - stream->close = 0; - } - -+ FT_BASE_DEF( void ) -+ FT_New_Memory_Stream( FT_Library, FT_Byte*, FT_ULong, FT_Stream ) __attribute__((weak)); -+ FT_BASE_DEF( void ) -+ FT_New_Memory_Stream( FT_Library library, -+ FT_Byte* base, -+ FT_ULong size, -+ FT_Stream stream ) -+ { -+ stream->memory = library->memory; -+ FT_Stream_OpenMemory( stream, (const FT_Byte*) base, size ); -+ } - - FT_BASE_DEF( void ) - FT_Stream_Close( FT_Stream stream ) -@@ -87,6 +98,8 @@ - return error; - } - -+ FT_BASE_DEF( FT_Error ) -+ FT_Seek_Stream(FT_Stream, FT_ULong) __attribute__((weak, alias("FT_Stream_Seek"))); - - FT_BASE_DEF( FT_Error ) - FT_Stream_Skip( FT_Stream stream, -@@ -98,6 +111,8 @@ - return FT_Stream_Seek( stream, (FT_ULong)( stream->pos + distance ) ); - } - -+ FT_BASE_DEF( FT_Error ) -+ FT_Skip_Stream(FT_Stream, FT_Long) __attribute__((weak, alias("FT_Stream_Skip"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_Pos( FT_Stream stream ) -@@ -114,6 +129,8 @@ - return FT_Stream_ReadAt( stream, stream->pos, buffer, count ); - } - -+ FT_BASE_DEF( FT_Error ) -+ FT_Read_Stream( FT_Stream, FT_Byte*, FT_ULong ) __attribute__((weak, alias("FT_Stream_Read"))); - - FT_BASE_DEF( FT_Error ) - FT_Stream_ReadAt( FT_Stream stream, -@@ -188,6 +205,8 @@ - return read_bytes; - } - -+ FT_BASE_DEF( FT_Error ) -+ FT_Read_Stream_At( FT_Stream, FT_ULong, FT_Byte*, FT_ULong) __attribute__((weak, alias("FT_Stream_ReadAt"))); - - FT_BASE_DEF( FT_Error ) - FT_Stream_ExtractFrame( FT_Stream stream, -@@ -210,7 +229,9 @@ - return error; - } - -- -+ FT_BASE_DEF( FT_Error ) -+ FT_Extract_Frame( FT_Stream, FT_ULong, FT_Byte** ) __attribute__((weak, alias("FT_Stream_ExtractFrame"))); -+ - FT_BASE_DEF( void ) - FT_Stream_ReleaseFrame( FT_Stream stream, - FT_Byte** pbytes ) -@@ -229,6 +250,8 @@ - *pbytes = 0; - } - -+ FT_BASE_DEF( void ) -+ FT_Release_Frame( FT_Stream, FT_Byte** ) __attribute__((weak, alias("FT_Stream_ReleaseFrame"))); - - FT_BASE_DEF( FT_Error ) - FT_Stream_EnterFrame( FT_Stream stream, -@@ -307,6 +330,8 @@ - return error; - } - -+ FT_BASE_DEF( FT_Error ) -+ FT_Access_Frame( FT_Stream, FT_ULong ) __attribute__((weak, alias("FT_Stream_EnterFrame"))); - - FT_BASE_DEF( void ) - FT_Stream_ExitFrame( FT_Stream stream ) -@@ -337,6 +362,8 @@ - stream->limit = 0; - } - -+ FT_BASE_DEF( void ) -+ FT_Forget_Frame( FT_Stream ) __attribute__((weak, alias("FT_Stream_ExitFrame"))); - - FT_BASE_DEF( FT_Char ) - FT_Stream_GetChar( FT_Stream stream ) -@@ -353,6 +380,8 @@ - return result; - } - -+ FT_BASE_DEF( FT_Char ) -+ FT_Get_Char( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetChar"))); - - FT_BASE_DEF( FT_Short ) - FT_Stream_GetShort( FT_Stream stream ) -@@ -372,6 +401,8 @@ - return result; - } - -+ FT_BASE_DEF( FT_Short ) -+ FT_Get_Short( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetShort"))); - - FT_BASE_DEF( FT_Short ) - FT_Stream_GetShortLE( FT_Stream stream ) -@@ -391,6 +422,8 @@ - return result; - } - -+ FT_BASE_DEF( FT_Short ) -+ FT_Get_ShortLE( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetShortLE"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_GetOffset( FT_Stream stream ) -@@ -409,6 +442,8 @@ - return result; - } - -+ FT_BASE_DEF( FT_Long ) -+ FT_Get_Offset( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetOffset"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_GetLong( FT_Stream stream ) -@@ -427,6 +462,8 @@ - return result; - } - -+ FT_BASE_DEF( FT_Long ) -+ FT_Get_Long( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetLong"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_GetLongLE( FT_Stream stream ) -@@ -445,6 +482,8 @@ - return result; - } - -+ FT_BASE_DEF( FT_Long ) -+ FT_Get_LongLE( FT_Stream ) __attribute__((weak, alias("FT_Stream_GetLongLE"))); - - FT_BASE_DEF( FT_Char ) - FT_Stream_ReadChar( FT_Stream stream, -@@ -482,6 +521,8 @@ - return 0; - } - -+ FT_BASE_DEF( FT_Char ) -+ FT_Read_Char( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadChar"))); - - FT_BASE_DEF( FT_Short ) - FT_Stream_ReadShort( FT_Stream stream, -@@ -529,6 +570,9 @@ - return 0; - } - -+ FT_BASE_DEF( FT_Short ) -+ FT_Read_Short( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadShort"))); -+ - - FT_BASE_DEF( FT_Short ) - FT_Stream_ReadShortLE( FT_Stream stream, -@@ -576,6 +620,8 @@ - return 0; - } - -+ FT_BASE_DEF( FT_Short ) -+ FT_Read_ShortLE( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadShortLE"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_ReadOffset( FT_Stream stream, -@@ -623,6 +669,8 @@ - return 0; - } - -+ FT_BASE_DEF( FT_Long ) -+ FT_Read_Offset( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadOffset"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_ReadLong( FT_Stream stream, -@@ -670,6 +718,8 @@ - return 0; - } - -+ FT_BASE_DEF( FT_Long ) -+ FT_Read_Long( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadLong"))); - - FT_BASE_DEF( FT_Long ) - FT_Stream_ReadLongLE( FT_Stream stream, -@@ -717,6 +767,9 @@ - return 0; - } - -+ FT_BASE_DEF( FT_Long ) -+ FT_Read_LongLE( FT_Stream, FT_Error* ) __attribute__((weak, alias("FT_Stream_ReadLongLE"))); -+ - - FT_BASE_DEF( FT_Error ) - FT_Stream_ReadFields( FT_Stream stream, -@@ -860,5 +913,6 @@ - return error; - } - -- -+ FT_BASE_DEF( FT_Error ) -+ FT_Read_Fields( FT_Stream, const FT_Frame_Field*, void* ) __attribute__((weak, alias("FT_Stream_ReadFields"))); - /* END */ diff --git a/ft2demos-2.4.4.tar.bz2 b/ft2demos-2.4.4.tar.bz2 deleted file mode 100644 index c75fd92..0000000 --- a/ft2demos-2.4.4.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:176091eacbc0a27a420f097ebc997b7d2b96c12143bf3a41d470a66879ca02c4 -size 161949 diff --git a/ft2demos-2.4.5.tar.bz2 b/ft2demos-2.4.5.tar.bz2 new file mode 100644 index 0000000..ed4a8a6 --- /dev/null +++ b/ft2demos-2.4.5.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b305408ef319414b89e387342f440c96736532795272186f02dd0968fb15ae5 +size 162976 diff --git a/ft2demos.changes b/ft2demos.changes index 445abaa..d999a5b 100644 --- a/ft2demos.changes +++ b/ft2demos.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Fri Jul 22 13:41:52 CEST 2011 - ke@suse.de + +- added bnc704612_othersubr.diff, CVE-2011-0226, bnc#704612. + +------------------------------------------------------------------- +Thu Jul 7 13:20:45 UTC 2011 - idonmez@novell.com + +- Cleanup spec file +- Drop unneeded use_unix.diff + +------------------------------------------------------------------- +Sat Jun 25 08:43:59 UTC 2011 - idonmez@novell.com + +- Update to version 2.4.5 + * The `ftgrid' demo program can now display autohinter segments, + to be toggled on and off with key `s'. + ------------------------------------------------------------------- Fri Feb 25 12:06:26 UTC 2011 - jw@novell.com diff --git a/ft2demos.spec b/ft2demos.spec index 3a94547..4359356 100644 --- a/ft2demos.spec +++ b/ft2demos.spec @@ -15,42 +15,31 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild Name: ft2demos -BuildRequires: xorg-x11-devel -License: GPLv2+ -Group: Productivity/Publishing/Other -AutoReqProv: on -Supplements: fonts-config -Version: 2.4.4 +Version: 2.4.5 Release: 4 +License: GPLv2+ +Summary: Freetype2 Utilities and Demo Programs %define freetype_version %{version} Url: http://www.freetype.org -Summary: Freetype2 Utilities and Demo Programs -# CVS repository: -# cvs -d :pserver:anonymous@cvs.savannah.nongnu.org:/sources/freetype login -# cvs -d :pserver:anonymous@cvs.savannah.nongnu.org:/sources/freetype co freetype2 -# cvs -d :pserver:anonymous@cvs.savannah.nongnu.org:/sources/freetype co ft2demos +Group: Productivity/Publishing/Other Source0: http://savannah.nongnu.org/download/freetype/freetype-%{version}.tar.bz2 -# Uncomment to save space: -#NoSource: 0 Source1: http://savannah.nongnu.org/download/freetype/ft2demos-%{version}.tar.bz2 -Patch4: ft2-stream-compat.diff Patch9: fix-build.patch Patch308961: bugzilla-308961-cmex-workaround.patch Patch50: ft2demos-build-testname.patch Patch200: freetype2-subpixel.patch -Patch201: use_unix.diff +BuildRequires: xorg-x11-devel +Supplements: fonts-config -Patch1000: bnc628213_1797.diff Source1000: bnc628213_test.otf Source1004: bnc629447_sigsegv31.ttf Source1013: bnc633938_badbdf.0 -Patch1015: bnc641580_CVE-2010-3311.diff Source1015: bug-641580_CVE-2010-3311.cff Source1016: bug-647375_tt2.ttf +Patch1018: bnc704612_othersubr.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -60,9 +49,6 @@ Freetype2 utilities and demo programs. %prep %define enable_subpixel_rendering 0%{?opensuse_bs} %setup -n freetype-%{freetype_version} -b 1 -%patch4 -p 1 -b .ft2-stream-compat -#%patch5 -p 1 -#%patch8 -p 1 %patch9 -p 1 %patch308961 -p 1 pushd ../ft2demos-%{version} @@ -71,66 +57,30 @@ popd %if %{enable_subpixel_rendering} %patch200 -p 1 -b .subpixel %endif -%patch201 -p1 - -# bnc628213_1797.diff -%patch1000 -p1 -# bnc629447_CVE-2010-2805..8.diff -#%patch1001 -p1 -#%patch1002 -p1 -#%patch1003 -p1 -#%patch1004 -p1 -# bnc619562_CVE-2010-2497..2541.diff -#%patch1005 -p1 -#%patch1006 -p1 -#%patch1007 -p1 -#%patch1008 -p1 -#%patch1009 -p1 -#%patch1010 -p1 -pushd ../ft2demos-%{version} -#%patch1011 -p1 -#%patch1012 -p1 -popd -# bnc633938_CVE-2010-3053.diff -#%patch1013 -p1 -# bnc641580_CVE-2010-3311.diff -%patch1015 -p1 - -find . -name CVS -type d | xargs rm -rf -find . -name ".cvsignore" | xargs rm -f -cp /usr/share/automake*/config.{guess,sub} builds/unix +%patch1018 -p 1 -b .othersubr %build -export CFLAGS="$RPM_OPT_FLAGS -g -fno-strict-aliasing " -ln -s /usr/bin/libtool ./builds/unix/libtool -make setup CFG="--prefix=/usr --libdir=%{_libdir} --with-zlib" -make prefix=/usr libdir=%{_libdir} %{?jobs:-j %jobs} -# build the documentation in the references subdirectory: -# (this needs python and we cannot have python in the BuildRequires of -# a basic package like freetype2, therefore we cannot do it here but we have -# to generate this documentation manually) -# make refdoc +%configure --without-bzip2 +make %{_smp_mflags} + pushd .. ln -s freetype-%{freetype_version} freetype2 cd ft2demos-%{version} - make prefix=/usr libdir=%{_libdir} \ - X11_PATH="/usr/X11R6" \ - LDFLAGS="-L/usr/X11R6/%{_lib} -lm " + make %{_smp_mflags} popd %install -#make prefix=$RPM_BUILD_ROOT/usr libdir=$RPM_BUILD_ROOT/%{_libdir} install -mkdir -p $RPM_BUILD_ROOT%{_bindir} +mkdir -p %{buildroot}%{_bindir} pushd ../ft2demos-%{version}/bin/.libs - install -m 755 ft* $RPM_BUILD_ROOT%{_bindir} + install -m 755 ft* %{buildroot}%{_bindir} popd %check -$RPM_BUILD_ROOT/usr/bin/ftbench -c 1 %{S:1000} -$RPM_BUILD_ROOT/usr/bin/ftbench -c 1 %{S:1004} |& grep -v "couldn't load font resource" && echo "should fail" -$RPM_BUILD_ROOT/usr/bin/ftbench -c 1 %{S:1013} |& grep -v "couldn't load font resource" && echo "should fail" -$RPM_BUILD_ROOT/usr/bin/ftbench -c 1 %{S:1015} |& grep -v "couldn't load font resource" && echo "should fail" -$RPM_BUILD_ROOT/usr/bin/ftbench -c 1 %{S:1016} +%{buildroot}%{_bindir}/ftbench -c 1 %{S:1000} +%{buildroot}%{_bindir}/ftbench -c 1 %{S:1004} |& grep -v "couldn't load font resource" && echo "should fail" +%{buildroot}%{_bindir}/ftbench -c 1 %{S:1013} |& grep -v "couldn't load font resource" && echo "should fail" +%{buildroot}%{_bindir}/ftbench -c 1 %{S:1015} |& grep -v "couldn't load font resource" && echo "should fail" +%{buildroot}%{_bindir}/ftbench -c 1 %{S:1016} %clean diff --git a/use_unix.diff b/use_unix.diff deleted file mode 100644 index 9da3d51..0000000 --- a/use_unix.diff +++ /dev/null @@ -1,31 +0,0 @@ ---- - builds/toplevel.mk | 2 +- - builds/unix/detect.mk | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -Index: freetype-2.4.2/builds/toplevel.mk -=================================================================== ---- freetype-2.4.2.orig/builds/toplevel.mk -+++ freetype-2.4.2/builds/toplevel.mk -@@ -120,7 +120,7 @@ ifdef check_platform - # - # Note: This test is duplicated in `builds/unix/detect.mk'. - # -- is_unix := $(strip $(wildcard /sbin/init) \ -+ is_unix := $(strip $(wildcard /bin/ls) \ - $(wildcard /usr/sbin/init) \ - $(wildcard /hurd/auth)) - ifneq ($(is_unix),) -Index: freetype-2.4.2/builds/unix/detect.mk -=================================================================== ---- freetype-2.4.2.orig/builds/unix/detect.mk -+++ freetype-2.4.2/builds/unix/detect.mk -@@ -18,7 +18,7 @@ ifeq ($(PLATFORM),ansi) - - # Note: this test is duplicated in "builds/toplevel.mk". - # -- is_unix := $(strip $(wildcard /sbin/init) \ -+ is_unix := $(strip $(wildcard /bin/ls) \ - $(wildcard /usr/sbin/init) \ - $(wildcard /hurd/auth)) - ifneq ($(is_unix),)