freetype2/freetype2.spec

506 lines
21 KiB
RPMSpec

#
# spec file for package freetype2 (Version 2.3.5)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: freetype2
BuildRequires: zlib-devel
License: Other uncritical OpenSource License
Group: System/Libraries
AutoReqProv: on
Version: 2.3.5
Release: 19
Url: http://www.freetype.org
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
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
# pregenerated to avoid build-dependence on python:
Source2: freetype-doc-reference.tar.bz2
Patch3: freetype2-bitmap-foundry.patch
Patch4: ft2-stream-compat.diff
Patch5: revert-fix-bytecode.patch
Patch8: bugzilla-159166-reduce-embolden-distance.patch
Patch308961: bugzilla-308961-cmex-workaround.patch
Patch100: freetype2-bc.patch
Patch200: freetype2-subpixel.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This library features TrueType fonts for open source projects. This
version also contains an autohinter for producing improved output.
Authors:
--------
David Turner <david.turner@freetype.org>
Robert Wilhelm <robert.wilhelm@freetype.org>
Werner Lemberg <werner.lemberg@freetype.org>
%package devel
Summary: Development environment for the freetype2 TrueType font library
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}, zlib-devel
%description devel
This package contains all necessary include files, libraries and
documentation needed to develop applications that require the freetype2
TrueType font library.
It also contains a small tutorial for using that library.
Authors:
--------
David Turner <david.turner@freetype.org>
Robert Wilhelm <robert.wilhelm@freetype.org>
Werner Lemberg <werner.lemberg@freetype.org>
%prep
# The byte code interpreter is compiled in by default
# because of the following option.
# For most fonts it is disabled again by default in the
# fontconfig setup in /etc/fonts. But if it is already
# enabled at compilation time, it can be easily enabled
# at runtime. See also the variable BYTECODE_BW_MAX_PIXEL
# in /etc/sysconfig/fonts-config.
#
%define enable_bytecode_interpreter 1
%define enable_subpixel_rendering 0%{?opensuse_bs}
%setup -q -n freetype-%{version} -a 1
%patch3 -p 1 -b .bitmap-foundry
%patch4 -p 1 -b .ft2-stream-compat
#%patch5 -p 1
#%patch8 -p 1
%patch308961 -p 1
%if %{enable_bytecode_interpreter}
%patch100 -p 1 -b .bytecode
%endif
%if %{enable_subpixel_rendering}
%patch200 -p 1 -b .subpixel
%endif
pushd docs
tar xf $RPM_SOURCE_DIR/freetype-doc-reference.tar.bz2
popd
find . -name CVS -type d | xargs rm -rf
find . -name ".cvsignore" | xargs rm -f
%{?suse_update_config:%{suse_update_config -f}}
sh ./autogen.sh
export CFLAGS="$RPM_OPT_FLAGS -g -fno-strict-aliasing "
make setup CFG="--prefix=/usr --libdir=%{_libdir} --with-zlib"
%build
export CFLAGS="$RPM_OPT_FLAGS -g -fno-strict-aliasing "
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
%install
rm -rf $RPM_BUILD_ROOT;
# 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
%clean
rm -rf $RPM_BUILD_ROOT;
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root)
%doc ChangeLog README
%doc docs/*
%{_libdir}/libfreetype.so.*
%files devel
%defattr(-,root,root)
%doc freetype-%{version}/docs/*
/usr/include/*
%{_libdir}/libfreetype.*a
%{_libdir}/libfreetype.so
%{_libdir}/pkgconfig/freetype2.pc
/usr/bin/*
/usr/share/aclocal/*
%changelog
* Tue Oct 02 2007 - mfabian@suse.de
- Bugzilla #308961: add workaround for broken underlining
when using the CMEX fonts (by Peng Wu <pwu@novell.com>).
* Tue Jul 03 2007 - mfabian@suse.de
- update to 2.3.5. Extract from the doc/CHANGES file:
Some subglyphs in TrueType fonts were handled incorrectly due
to a missing graphics state reinitialization.
Large .Z files (as distributed with some X11 packages)
weren't handled correctly, making FreeType increase the heap
stack in an endless loop.
A large number of bugs have been fixed to avoid crashes and
endless loops with invalid fonts.
The two new cache functions `FTC_ImageCache_LookupScaler' and
`FTC_SBit_Cache_LookupScaler' have been added to allow lookup of
glyphs using an `FTC_Scaler' object; this makes it possible to
use fractional pixel sizes in the cache. The demo programs have
been updated accordingly to use this feature.
A new API `FT_Get_CMap_Format' has been added to get the
cmap format of a TrueType font. This is useful in handling
PDF files. The code has been contributed by Derek Clegg.
The auto-hinter now produces better output by default for
non-Latin scripts like Indic. This was done by using the CJK
hinting module as the default instead of the Latin one. Thanks
to Rahul Bhalerao for this suggestion.
A new API `FT_Face_CheckTrueTypePatents' has been added to find
out whether a given TrueType font uses patented bytecode
instructions. The `ft2demos' bundle contains a new program
called `ftpatchk' which demonstrates its usage.
A new API `FT_Face_SetUnpatentedHinting' has been added to
enable or disable the unpatented hinter.
Support for Windows FON files in PE format has been contributed
by Dmitry Timoshkov.
* Mon Jun 04 2007 - mfabian@suse.de
- Bugzilla #275072: (from upstream CVS):
Check for negative number of points in contours. Problem
reported by Victor Stinner <victor.stinner@haypocalc.com>.
* Tue May 22 2007 - mfabian@suse.de
- fix last patch to avoid crashes when loader->exec == NULL.
(caused crashes in xpdf, kpdf, acroread for me for many
.pdf files).
* Mon May 21 2007 - mfabian@suse.de
- Bugzilla #273714: ('¼', '½', and '¾' in "Albany AMT" are
rendered very badly): apply fix from upstream CVS, thanks
to Werner LEMBERG.
* Tue Apr 10 2007 - mfabian@suse.de
- update to 2.3.4. Extract from the doc/CHANGES file:
A serious bug in the handling of bitmap fonts (and bitmap
strikes of outline fonts) has been introduced in 2.3.3.
Remove a serious regression in the TrueType bytecode
interpreter that was introduced in version 2.3.2. Note that
this does not disable the improvements introduced to the
interpreter in version 2.3.2, only some ill cases that occurred
with certain fonts (though a few popular ones).
The auto-hinter now ignores single-point contours for
computing blue zones. This bug created `wavy' baselines when
rendering text with various fonts that use these contours to
model mark-attach points (these are points that are never
rasterized and are placed outside of the glyph's real
outline).
The `rsb_delta' and `lsb_delta' glyph slot fields are now set
to 0 for mono-spaced fonts. Otherwise code that uses them
would essentially ruin the fixed-advance property.
Fix CVE-2007-1351 which can cause an integer overflow while
parsing BDF fonts, leading to a potentially exploitable heap
overflow condition.
FreeType returned incorrect kerning information from TrueType
fonts when the bytecode interpreter was enabled. This
happened due to a typo introduced in version 2.3.0.
Negative kerning values from PFM files are now reported
correctly (they were read as 16-bit unsigned values from the
file).
Fixed a small memory leak when `FT_Init_FreeType' failed for
some reason.
The Postscript hinter placed and sized very thin and ghost
stems incorrectly.
The TrueType bytecode interpreter has been fixed to get rid
of most of the rare differences seen in comparison to the
Windows font loader.
A new demo program `ftdiff' has been added to compare
TrueType hinting, FreeType's auto hinting, and rendering
without hinting in three columns.
The auto-hinter now better deals with serifs and corner cases
(e.g., glyph '9' in Arial at 9pt, 96dpi). It also improves
spacing adjustments and doesn't change widths for non-spacing
glyphs.
* Mon Apr 02 2007 - rguenther@suse.de
- add zlib-devel BuildRequires
* Wed Mar 28 2007 - mfabian@suse.de
- Bugzilla #258335: fix buffer overflow in handling of bdf fonts.
* Mon Feb 05 2007 - mfabian@suse.de
- update to 2.3.1.
The TrueType interpreter sometimes returned incorrect
horizontal metrics due to a bug in the handling of the SHZ
instruction.
A typo in a security check introduced after
version 2.2.1 prevented FreeType to render some glyphs in CFF
fonts.
* Sun Jan 21 2007 - mfabian@suse.de
- update to 2.3.0 (from rc1 to final release)
* Fri Jan 12 2007 - mfabian@suse.de
- update to 2.2.1.20070112 (= 2.3.0rc1).
bugzilla #231417 fixed, see ChangeLog:
2007-01-10 David Turner <david at freetype.org>
[...]
* src/pshinter/pshalgo.c (psh_glyph_compute_inflections):
fixed a typo which created an endless loop with some malformed
font files
* Wed Jan 10 2007 - mfabian@suse.de
- update to 2.2.1.20070110.
- remove bugzilla-216793-local-variable-used-before-set.patch,
bugzilla-217388-fix-advance-handling-in-FT_GlyphSlot_Embolden.patch
(included upstream).
* Wed Nov 22 2006 - mfabian@suse.de
- Bugzilla #222693: disable bugzilla-159166-reduce-embolden-distance.patch
* Thu Nov 09 2006 - mfabian@suse.de
- Bugzilla #216793: "local variable used before set"
* Tue Nov 07 2006 - mfabian@suse.de
- Bugzilla #217388: fix advance handling in FT_GlyphSlot_Embolden()
* Fri Oct 27 2006 - mfabian@suse.de
- Bugzilla #158573: update to 2.2.1.20061027.
* Fri Oct 20 2006 - mfabian@suse.de
- disable the recent fixes of the byte code interpreter because
if breaks the rendering of "Luxi Mono"
(/usr/share/fonts/truetype/luximr.ttf) See also:
http://lists.gnu.org/archive/html/freetype/2006-10/msg00034.html
* Fri Oct 13 2006 - mfabian@suse.de
- update to 2.2.1.20061013
fixes bugzilla #207959.
autohinter improved
* Fri Aug 04 2006 - mfabian@suse.de
- Bugzilla #196931: add zlib-devel to Requires of freetype2-devel.
* Mon Jul 10 2006 - mfabian@suse.de
- Bugzilla #190902: add patch from upstream CVS to handle
bad PCF files.
* Mon Jun 26 2006 - mfabian@suse.de
- Bugzilla #188210: move development documents of into -devel
package.
* Tue Jun 20 2006 - mfabian@suse.de
- update to 2.2.1:
+ remove bugzilla-97202-fix-x-crash.patch
+ remove bugzilla-157441-autofit-cjk-cvs.patch
(was from upstream CVS).
+ remove bugzilla-158156-memory-leak.patch
(was from upstream CVS).
+ remove bugzilla-158573-fix-orientation-detection.patch
(included upstream).
+ remove bugzilla-133086-enable-kerning.patch
(was from upstream).
+ remove bugzilla-154928-integer-overflows.patch
(was from upstream).
+ remove bugzilla-159304-fix-ftview-glyph-index.patch
(fixed upstream).
+ remove enable_ft_optimize_memory.patch (is already enabled by
default now).
+ adapt bugzilla-159166-reduce-embolden-distance.patch a little
bit to achieve the same boldness effect as with the last
package.
* Thu Jun 01 2006 - mfabian@suse.de
- Bugzilla #154928: fix several integer overflows.
* Mon Apr 24 2006 - mfabian@suse.de
- Bugzilla #133086: enable kerning, see
http://lists.nongnu.org/archive/html/freetype-devel/2005-09/msg00027.html
* Tue Mar 21 2006 - dmueller@suse.de
- build parallel
* Mon Mar 20 2006 - zsu@suse.de
- Bugzilla #158573: fix corrupt embolden glyphs issue for CJK fonts.
- Bugzilla #159166: reduce embolden strength to get better rendering
effect.
* Wed Mar 15 2006 - mfabian@suse.de
- Bugzilla #157441: remove 0x0100-0xFFFF from CJK Unicode range,
as it might cause side effects for non-CJK scripts.
* Wed Mar 15 2006 - mfabian@suse.de
- Bugzilla #158156: fix a memory leak (by Zhe Su <zsu@novell.com>).
* Tue Mar 14 2006 - mfabian@suse.de
- Bugzilla #157441: instead of Takashi's patches, use a patch
from upstream CVS which renders slightly better.
* Tue Mar 14 2006 - mfabian@suse.de
- Bugzilla #157441: FZSongTi.ttf contains a lot more (CJK)-glyphs
than most other fonts, therefore we have to expand the cjk range
in Takashi Iwai's "ft2-autofit-02-cjk.diff" to render these
glyphs correctly as well.
- Bugzilla #157441: don't apply ft2-autofit-03-latin-baseline.diff
as it has some side effects.
* Wed Jan 25 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Jan 09 2006 - mfabian@suse.de
- Bugzilla #105626: add patches by Takashi IWAI <tiwai@suse.de>
to improve the autohinting (mainly for CJK fonts).
* Wed Jul 20 2005 - mfabian@suse.de
- Bugzilla #97202: apply workaround to avoid crashing the Xserver.
I need to disable FT_OPTIMIZE_MEMORY again to apply that
workaround.
* Tue Jul 19 2005 - mfabian@suse.de
- enable FT_OPTIMIZE_MEMORY.
- enable the byte code interpreter again.
* Tue Jul 12 2005 - mfabian@suse.de
- update to 2.1.10.
+ fixes serious bug introduced in 2.1.8 which caused many
distortions for TrueType fonts
+ amount of heap memory used is drastically reduced
For more details see /usr/share/doc/packages/freetype2/CHANGES.
- disable freetype-autohint-cjkfonts.patch for the moment, the
auto-hinter has been replaced with a new module called the
'auto-fitter' which is "prepared better to support non-latin1
scripts in next releases". Currently the rendering quality of
CJK fonts seems to have suffered though compared to 2.1.9
with the freetype-autohint-cjkfonts.patch.
* Mon Jul 04 2005 - meissner@suse.de
- Use system zlib.
* Wed Aug 25 2004 - kukuk@suse.de
- Avoid /bin/sh as PreRequires
* Tue Jul 06 2004 - mfabian@suse.de
- update to 2.1.9.
* Mon May 10 2004 - mfabian@suse.de
- update to 2.1.8.
remove the bdf-pcf fixes for bitmap font metric issues which
were backported from CVS, they are included in this release
* Fri Apr 16 2004 - mfabian@suse.de
- Bugzilla #38205:
add patch from http://www.kde.gr.jp/~akito/patch/freetype2/2.1.7
to improve the hinting results (mainly for CJK fonts).
* Wed Mar 24 2004 - mfabian@suse.de
- Add ft2-stream-compat.diff for binary compatibility when
upgrading from SLES8 to SLES9.
The FT_Stream functions have been renamed and although these
functions were declared for internal use only by the freetype
developers, they have been used in Qt (and possibly elsewhere).
Therefore, 3rd party which linked statically against Qt might
not work after upgrading from SLES8 to SLES9.
Fix this problem with a patch by Kurt Garloff <garloff@suse.de>
which defines appropriate weak symbols.
* Tue Mar 16 2004 - mfabian@suse.de
- fix Bugzilla# 36143: backport fixes for bitmap font metric issues
from CVS to fix crashes when using bitmap fonts caused by the
new libXft-2.1.5 from the X.org tree.
* Mon Jan 12 2004 - adrian@suse.de
- add %%defattr and %%run_ldconfig
* Fri Jan 09 2004 - mfabian@suse.de
- add "-fno-strict-aliasing" compile option to prevent crashes
for example in ftdump and mkfontscale.
* Tue Dec 16 2003 - mfabian@suse.de
- update to 2.1.7.
- remove freetype2-type1.patch (included upstream)
- add documentation.
* Thu Oct 09 2003 - schwab@suse.de
- Fix invalid free.
* Fri Sep 26 2003 - mfabian@suse.de
- update to 2.1.5.
- remove freetype-bdf-pcf-drivr.patch, freetype2-bitmap-style.patch
(included upstream).
- remove gzip-eof.patch.
* Mon Sep 01 2003 - mfabian@suse.de
- add gzip-eof.patch to fix the problem that some gzipped bitmap
fonts could not be opened by freetype2.
See also:
http://marc.theaimsgroup.com/?l=freetype-devel&m=105505219505600&w=2
and followups.
* Tue Aug 26 2003 - mfabian@suse.de
- add freetype2-bitmap-style.patch: check the bdf properties
WEIGHT_NAME and SLANT case insensitively. Without that,
these properties are not correctly recognized when the fonts
specify them in lower case.
* Tue Apr 08 2003 - mfabian@suse.de
- update to 2.1.4
* Fri Apr 04 2003 - mfabian@suse.de
- update to 2.1.4rc2
- freetype2-gzip-header.patch is obsolete -> removed
* Fri Mar 07 2003 - mfabian@suse.de
- Bug #24755: further improvement: add " Wide" to the family name
for fonts which have an average width >= point size, i.e. fonts
which have glyphs which are at least square (or maybe even
wider). This makes fonts which contain only double width
characters (for example the "misc-fixed" 18x18ja.bdf) clearly
distinct from single width fonts of the same family and
avoids that they get accidentally selected via freetype2/Xft2.
* Fri Mar 07 2003 - mfabian@suse.de
- Bug #24775: partly fixed by a patch to freetype which returns
"FOUNDRY FAMILY_NAME" as the family_name for bitmap fonts.
Without that change, all bitmap fonts which have "Fixed"
in FAMILY_NAME also had the same family_name "Fixed" via
freetype/Xft2 and it was not possible to distinguish between
them, therefore the selection of "Fixed" bitmap fonts produced
quite surprising results. After this change, the fonts show
up for example as "Misc Fixed", "Etl Fixed", etc. via
freetype2/Xft2, which makes it easy to select the right one.
* Mon Mar 03 2003 - mfabian@suse.de
- fix for the bug that caused FreeType to loop endlessly when
trying to read certain compressed gzip files. The following test
could be used to reveal the bug:
touch 0123456789 ; gzip 0123456789 ; ftdump 0123456789.gz
(from upstream CVS)
* Fri Feb 14 2003 - mfabian@suse.de
- freetype-bdf-pcf-drivr.patch: use FT_UShort instead of FT_Short
for the glyph number of bitmap fonts. The GNU Unicode font
has 34725 glyphs and because of the usage of signed short
all glyphs with an index above 2^15 couldn't be displayed.
Thanks to Gerd Knorr <kraxel@suse.de>.
* Thu Jan 30 2003 - mfabian@suse.de
- disable freetype2-bc.patch, see
http://www.freetype.org/freetype2/2.1.3-explained.html
* Wed Jan 29 2003 - mfabian@suse.de
- add freetype2-bc.patch
* Mon Jan 13 2003 - mfabian@suse.de
- split out ft2demos into extra package to avoid adding
x-devel-packages to '# neededforbuild' (XFree86 needs freetype2,
this would be a loop in the requirements)
- add doc files and license texts.
* Fri Jan 10 2003 - mfabian@suse.de
- fix checking of .gz header (fixes Bug #22712, i.e. fixes
the problem that freetype2 couldn't open .pcf.gz files which
contain the original file name or extra fields)
- add programs from ft2demos-2.1.3.
* Thu Nov 21 2002 - mfabian@suse.de
- update to 2.1.3.
* Tue Nov 05 2002 - mfabian@suse.de
- add /usr/share/aclocal/* to filelist
(thanks to <adrian@suse.de> for noticing the omission)
* Thu Oct 24 2002 - mfabian@suse.de
- update to 2.1.2. From the release notes:
That's probably the first release of FreeType in the 2.1.x
development branch that can safely replace 2.0.9 on any
system.
* Sat Aug 10 2002 - mfabian@suse.de
- freetype2-devel package should require freetype2 package
* Tue Apr 02 2002 - mfabian@suse.de
- upgrade to 2.0.9 (considerably improved rendering of Type1 fonts)
* Wed Mar 06 2002 - mfabian@suse.de
- use the byte code interpreter
* Mon Feb 11 2002 - mfabian@suse.de
- upgrade to 2.0.8
- remove freetype-config.patch (included upstream)
* Tue Feb 05 2002 - adrian@suse.de
- enable debug informations to debug a sig11 in inst-sys
* Tue Feb 05 2002 - pmladek@suse.cz
- fixed missing 'fi' in freetype-config
* Mon Feb 04 2002 - mfabian@suse.de
- update to 2.0.7
- remove freetype-2.0.6-gsf-segv.patch (included in 2.0.7 already)
* Tue Jan 29 2002 - mfabian@suse.de
- add freetype-2.0.6-gsf-segv.patch from upstream CVS to prevent
SEGV caused by gsf files.
* Tue Jan 22 2002 - mfabian@suse.de
- use %%{_libdir} instead of /usr/lib
* Wed Jan 16 2002 - adrian@suse.de
- updated to 2.0.6
* important fixes which causes crashes with pfb fonts
* improved rendering
* Fri Nov 09 2001 - mfabian@suse.de
- updated to 2.0.5
* Sat Jul 21 2001 - egger@suse.de
- Updated to version 2.0.4.
- Use RPM_OPT_FLAGS.
* Wed Jun 06 2001 - egger@suse.de
- Fix filelist.
* Mon Jun 04 2001 - egger@suse.de
- Updated to version 2.0.3.
* Mon Mar 26 2001 - ro@suse.de
- fix build-rooting
* Thu Dec 14 2000 - kukuk@suse.de
- split devel package
* Mon Dec 11 2000 - egger@suse.de
- Updated to version 2.0.1.
* Fri Nov 10 2000 - egger@suse.de
- Initial SuSE package.