texlive[60360] Build/source/libs/freetype2: revert freetype to 2.10.4

commits+kakuto at tug.org commits+kakuto at tug.org
Sun Aug 29 08:19:45 CEST 2021


Revision: 60360
          http://tug.org/svn/texlive?view=revision&revision=60360
Author:   kakuto
Date:     2021-08-29 08:19:44 +0200 (Sun, 29 Aug 2021)
Log Message:
-----------
revert freetype to 2.10.4

Modified Paths:
--------------
    trunk/Build/source/libs/freetype2/ChangeLog
    trunk/Build/source/libs/freetype2/TLpatches/ChangeLog
    trunk/Build/source/libs/freetype2/TLpatches/TL-Changes
    trunk/Build/source/libs/freetype2/configure
    trunk/Build/source/libs/freetype2/freetype-src/CMakeLists.txt
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog
    trunk/Build/source/libs/freetype2/freetype-src/Makefile
    trunk/Build/source/libs/freetype2/freetype-src/README
    trunk/Build/source/libs/freetype2/freetype-src/README.git
    trunk/Build/source/libs/freetype2/freetype-src/autogen.sh
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/README
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/include/config/ftconfig.h
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/include/config/ftmodule.h
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/makefile
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/makefile.os4
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/smakefile
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/src/base/ftdebug.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/amiga/src/base/ftsystem.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/ansi/ansi-def.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/ansi/ansi.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/atari/README.TXT
    trunk/Build/source/libs/freetype2/freetype-src/builds/beos/beos-def.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/beos/beos.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/beos/detect.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/cmake/FindBrotliDec.cmake
    trunk/Build/source/libs/freetype2/freetype-src/builds/cmake/FindHarfBuzz.cmake
    trunk/Build/source/libs/freetype2/freetype-src/builds/cmake/iOS.cmake
    trunk/Build/source/libs/freetype2/freetype-src/builds/cmake/testbuild.sh
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/ansi-cc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/bcc-dev.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/bcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/emx.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/gcc-dev.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/gcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/intelc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/unix-lcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/visualage.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/visualc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/watcom.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/compiler/win-lcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/detect.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/dos/detect.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/dos/dos-def.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/dos/dos-emx.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/dos/dos-gcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/dos/dos-wat.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/exports.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/freetype.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/link_dos.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/link_std.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/mac/ftmac.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/meson/extract_freetype_version.py
    trunk/Build/source/libs/freetype2/freetype-src/builds/meson/extract_libtool_version.py
    trunk/Build/source/libs/freetype2/freetype-src/builds/meson/generate_reference_docs.py
    trunk/Build/source/libs/freetype2/freetype-src/builds/meson/parse_modules_cfg.py
    trunk/Build/source/libs/freetype2/freetype-src/builds/meson/process_ftoption_h.py
    trunk/Build/source/libs/freetype2/freetype-src/builds/modules.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/os2/detect.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/os2/os2-def.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/os2/os2-dev.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/os2/os2-gcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/symbian/bld.inf
    trunk/Build/source/libs/freetype2/freetype-src/builds/symbian/freetype.mmp
    trunk/Build/source/libs/freetype2/freetype-src/builds/toplevel.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/aclocal.m4
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/config.sub
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/configure
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/configure.ac
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/configure.raw
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/detect.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/freetype-config.in
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/freetype2.m4
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/ft-munmap.m4
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/ftconfig.h.in
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/ftsystem.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/install-sh
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/install.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/unix-cc.in
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/unix-def.in
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/unix-dev.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/unix-lcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/unix.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/unixddef.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/vms/ftconfig.h
    trunk/Build/source/libs/freetype2/freetype-src/builds/vms/ftsystem.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/wince/ftdebug.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/wince/vc2005-ce/index.html
    trunk/Build/source/libs/freetype2/freetype-src/builds/wince/vc2008-ce/index.html
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/detect.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/ftdebug.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/vc2010/freetype.vcxproj
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/vc2010/freetype.vcxproj.filters
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/vc2010/index.html
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/visualc/freetype.vcproj
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/visualc/index.html
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/visualce/index.html
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-bcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-bccd.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-dev.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-gcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-icc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-intl.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-lcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-mingw32.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-vcc.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/w32-wat.mk
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/win32-def.mk
    trunk/Build/source/libs/freetype2/freetype-src/configure
    trunk/Build/source/libs/freetype2/freetype-src/devel/ft2build.h
    trunk/Build/source/libs/freetype2/freetype-src/devel/ftoption.h
    trunk/Build/source/libs/freetype2/freetype-src/docs/CHANGES
    trunk/Build/source/libs/freetype2/freetype-src/docs/CUSTOMIZE
    trunk/Build/source/libs/freetype2/freetype-src/docs/DEBUG
    trunk/Build/source/libs/freetype2/freetype-src/docs/DOCGUIDE
    trunk/Build/source/libs/freetype2/freetype-src/docs/INSTALL
    trunk/Build/source/libs/freetype2/freetype-src/docs/INSTALL.ANY
    trunk/Build/source/libs/freetype2/freetype-src/docs/INSTALL.CROSS
    trunk/Build/source/libs/freetype2/freetype-src/docs/INSTALL.GNU
    trunk/Build/source/libs/freetype2/freetype-src/docs/INSTALL.UNIX
    trunk/Build/source/libs/freetype2/freetype-src/docs/INSTALL.VMS
    trunk/Build/source/libs/freetype2/freetype-src/docs/TODO
    trunk/Build/source/libs/freetype2/freetype-src/docs/VERSIONS.TXT
    trunk/Build/source/libs/freetype2/freetype-src/docs/formats.txt
    trunk/Build/source/libs/freetype2/freetype-src/docs/freetype-config.1
    trunk/Build/source/libs/freetype2/freetype-src/docs/raster.txt
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/404.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/images/favicon.png
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/tinyseg.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/wordcut.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-auto_hinter.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-base_interface.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-basic_types.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-bdf_fonts.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-bitmap_handling.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-bzip2.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-cache_subsystem.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-cff_driver.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-cid_fonts.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-color_management.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-computations.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-error_code_values.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-error_enumerations.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-font_formats.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-gasp_table.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-glyph_management.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-glyph_stroker.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-glyph_variants.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-gx_validation.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-gzip.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-header_file_macros.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-header_inclusion.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-incremental.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-index.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-layer_management.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-lcd_rendering.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-list_processing.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-lzw.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-mac_specific.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-module_management.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-multiple_masters.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-ot_validation.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-outline_processing.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-parameter_tags.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-pcf_driver.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-pfr_fonts.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-properties.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-quick_advance.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-raster.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-sfnt_names.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-sizes_management.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-system_interface.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-t1_cid_driver.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-truetype_engine.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-truetype_tables.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-tt_driver.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-type1_tables.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-user_allocation.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-version.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-winfnt_fonts.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/index.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/search/search_index.json
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/sitemap.xml
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/sitemap.xml.gz
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/stylesheets/extra.css
    trunk/Build/source/libs/freetype2/freetype-src/docs/release
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/ftconfig.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/ftheader.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/ftmodule.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/ftoption.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/ftstdlib.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/integer-types.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/mac-support.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/config/public-macros.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/freetype.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftadvanc.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftbbox.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftbdf.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftbitmap.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftbzip2.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftcache.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftchapters.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftcid.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftcolor.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftdriver.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/fterrdef.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/fterrors.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftfntfmt.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftgasp.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftglyph.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftgxval.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftgzip.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftimage.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftincrem.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftlcdfil.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftlist.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftlzw.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftmac.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftmm.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftmodapi.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftmoderr.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftotval.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftoutln.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftparams.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftpfr.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftrender.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftsizes.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftsnames.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftstroke.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftsynth.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftsystem.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/fttrigon.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/fttypes.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftwinfnt.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/autohint.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/cffotypes.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/cfftypes.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/compiler-macros.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftcalc.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftdebug.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftdrv.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftgloadr.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftmemory.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftpsprop.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftrfork.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftserv.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftstream.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/fttrace.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/ftvalid.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/psaux.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/pshints.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svbdf.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svcfftl.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svcid.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svfntfmt.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svgldict.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svgxval.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svkern.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svmetric.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svmm.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svotval.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svpfr.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svpostnm.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svprop.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svpscmap.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svpsinfo.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svsfnt.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svttcmap.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svtteng.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svttglyf.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/services/svwinfnt.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/sfnt.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/t1types.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/tttypes.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/internal/wofftypes.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/t1tables.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ttnameid.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/tttables.h
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/tttags.h
    trunk/Build/source/libs/freetype2/freetype-src/include/ft2build.h
    trunk/Build/source/libs/freetype2/freetype-src/meson.build
    trunk/Build/source/libs/freetype2/freetype-src/meson_options.txt
    trunk/Build/source/libs/freetype2/freetype-src/modules.cfg
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afblue.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afblue.cin
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afblue.dat
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afblue.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afblue.hin
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afcjk.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afcjk.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afcover.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afdummy.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afdummy.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/aferrors.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afglobal.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afglobal.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afhints.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afhints.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afindic.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afindic.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/aflatin.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/aflatin.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afloader.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afloader.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afmodule.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afmodule.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afranges.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afranges.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afscript.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afshaper.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afshaper.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afstyles.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/aftypes.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afwrtsys.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/autofit.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftadvanc.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftbase.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftbase.h
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftbbox.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftbdf.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftbitmap.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftcalc.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftcid.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftcolor.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftdbgmem.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftdebug.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/fterrors.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftfntfmt.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftfstype.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftgasp.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftgloadr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftglyph.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftgxval.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftinit.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftlcdfil.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftmac.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftmm.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftotval.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftoutln.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftpatent.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftpfr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftpsprop.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftrfork.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftsnames.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftstream.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftstroke.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftsynth.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftsystem.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/fttrigon.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/fttype1.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftutil.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftver.rc
    trunk/Build/source/libs/freetype2/freetype-src/src/base/ftwinfnt.c
    trunk/Build/source/libs/freetype2/freetype-src/src/base/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/bdf/bdfdrivr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/bdf/bdflib.c
    trunk/Build/source/libs/freetype2/freetype-src/src/bzip2/ftbzip2.c
    trunk/Build/source/libs/freetype2/freetype-src/src/bzip2/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcache.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcbasic.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftccache.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftccache.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftccback.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftccmap.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcerror.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcglyph.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcglyph.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcimage.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcimage.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcmanag.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcmanag.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcmru.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcmru.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcsbits.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/ftcsbits.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cache/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cff.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cfferrs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/cfftoken.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/cff/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/ciderrs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidgload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidgload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidparse.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidparse.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidriver.c
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidriver.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/cidtoken.h
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/cid/type1cid.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/README
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvalid.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvalid.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvbsln.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvcommn.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvcommn.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxverror.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvfeat.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvfeat.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvfgen.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvjust.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvkern.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvlcar.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmod.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmod.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort0.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort1.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort2.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort4.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmort5.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx.h
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx0.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx1.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx2.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx4.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvmorx5.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvopbd.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvprop.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/gxvtrak.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/gxvalid/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/gzip/ftgzip.c
    trunk/Build/source/libs/freetype2/freetype-src/src/gzip/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/lzw/ftlzw.c
    trunk/Build/source/libs/freetype2/freetype-src/src/lzw/ftzopen.c
    trunk/Build/source/libs/freetype2/freetype-src/src/lzw/ftzopen.h
    trunk/Build/source/libs/freetype2/freetype-src/src/lzw/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvalid.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvalid.h
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvbase.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvcommn.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvcommn.h
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otverror.h
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvgdef.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvgpos.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvgpos.h
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvgsub.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvjstf.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvmath.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvmod.c
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/otvmod.h
    trunk/Build/source/libs/freetype2/freetype-src/src/otvalid/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/pcf/pcfdrivr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pcf/pcfread.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrcmap.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrcmap.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrdrivr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrdrivr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrerror.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrgload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrgload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrsbit.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrsbit.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/pfrtypes.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pfr/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psaux.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psauxerr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psblues.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/pshints.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psintrp.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshalgo.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshalgo.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshglob.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshglob.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshinter.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshmod.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshmod.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshnterr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshrec.c
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/pshrec.h
    trunk/Build/source/libs/freetype2/freetype-src/src/pshinter/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/psmodule.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/psmodule.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/psnamerr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/psnames.c
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/pstables.h
    trunk/Build/source/libs/freetype2/freetype-src/src/psnames/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/ftmisc.h
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/ftraster.c
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/ftraster.h
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/ftrend1.c
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/ftrend1.h
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/raster.c
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/rasterrs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/raster/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/pngshim.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/pngshim.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfdriver.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfdriver.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sferrors.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfnt.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfwoff.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfwoff.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfwoff2.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/sfwoff2.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttbdf.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttbdf.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcmap.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcmap.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcmapc.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcolr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcolr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcpal.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttcpal.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttkern.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttkern.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttmtx.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttmtx.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttpost.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttpost.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/ttsbit.h
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/woff2tags.c
    trunk/Build/source/libs/freetype2/freetype-src/src/sfnt/woff2tags.h
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.c
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/ftgrays.h
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/ftsmerrs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/ftsmooth.c
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/ftsmooth.h
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/smooth/smooth.c
    trunk/Build/source/libs/freetype2/freetype-src/src/tools/afblue.pl
    trunk/Build/source/libs/freetype2/freetype-src/src/tools/chktrcmp.py
    trunk/Build/source/libs/freetype2/freetype-src/src/tools/glnames.py
    trunk/Build/source/libs/freetype2/freetype-src/src/tools/no-copyright
    trunk/Build/source/libs/freetype2/freetype-src/src/tools/update-copyright-year
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/truetype.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttdriver.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttdriver.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/tterrors.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttgload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttgload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttgxvar.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttgxvar.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttinterp.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttobjs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttobjs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttpload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttpload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttsubpix.c
    trunk/Build/source/libs/freetype2/freetype-src/src/truetype/ttsubpix.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1afm.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1afm.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1driver.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1driver.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1errors.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1gload.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1gload.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1load.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1load.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1objs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1objs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1parse.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1parse.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/t1tokens.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type1/type1.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42drivr.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42drivr.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42error.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42objs.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42objs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42parse.c
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42parse.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/t42types.h
    trunk/Build/source/libs/freetype2/freetype-src/src/type42/type42.c
    trunk/Build/source/libs/freetype2/freetype-src/src/winfonts/fnterrs.h
    trunk/Build/source/libs/freetype2/freetype-src/src/winfonts/module.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/winfonts/rules.mk
    trunk/Build/source/libs/freetype2/freetype-src/src/winfonts/winfnt.c
    trunk/Build/source/libs/freetype2/freetype-src/src/winfonts/winfnt.h
    trunk/Build/source/libs/freetype2/freetype-src/vms_make.com
    trunk/Build/source/libs/freetype2/version.ac

Added Paths:
-----------
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.20
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.21
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.22
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.23
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.24
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.25
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.26
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.27
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.28
    trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.29
    trunk/Build/source/libs/freetype2/freetype-src/docs/LICENSE.TXT
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/fonts/
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/images/icons/
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/application.c33a9706.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.ar.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.da.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.de.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.du.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.es.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.fi.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.fr.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.hu.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.it.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.ja.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.jp.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.multi.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.nl.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.no.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.pt.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.ro.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.ru.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.stemmer.support.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.sv.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.th.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.tr.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/lunr.vi.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/stylesheets/application.adb8469c.css
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afangles.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afangles.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/aflatin2.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/aflatin2.h
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afwarp.c
    trunk/Build/source/libs/freetype2/freetype-src/src/autofit/afwarp.h
    trunk/Build/source/libs/freetype2/freetype-src/version.sed

Removed Paths:
-------------
    trunk/Build/source/libs/freetype2/freetype-src/LICENSE.TXT
    trunk/Build/source/libs/freetype2/freetype-src/builds/unix/ax_pthread.m4
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/ftsystem.c
    trunk/Build/source/libs/freetype2/freetype-src/builds/windows/vc2010/script.bat
    trunk/Build/source/libs/freetype2/freetype-src/docs/oldlogs/
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/bundle.82b56eb2.min.js
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/bundle.82b56eb2.min.js.map
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/lunr/min/
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/javascripts/workers/
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/stylesheets/main.ca7ac06f.min.css
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/stylesheets/main.ca7ac06f.min.css.map
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/stylesheets/palette.f1a3b89f.min.css
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/assets/stylesheets/palette.f1a3b89f.min.css.map
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-debugging_apis.html
    trunk/Build/source/libs/freetype2/freetype-src/docs/reference/ft2-preamble.html
    trunk/Build/source/libs/freetype2/freetype-src/include/dlg/
    trunk/Build/source/libs/freetype2/freetype-src/include/freetype/ftlogging.h
    trunk/Build/source/libs/freetype2/freetype-src/src/dlg/
    trunk/Build/source/libs/freetype2/freetype-src/src/sdf/
    trunk/Build/source/libs/freetype2/freetype-src/tests/

Modified: trunk/Build/source/libs/freetype2/ChangeLog
===================================================================
--- trunk/Build/source/libs/freetype2/ChangeLog	2021-08-29 05:02:46 UTC (rev 60359)
+++ trunk/Build/source/libs/freetype2/ChangeLog	2021-08-29 06:19:44 UTC (rev 60360)
@@ -1,8 +1,3 @@
-2021-08-29  Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
-
-	Import freetype-2.11.0.
-	* version.ac: Adjusted.
-
 2021-01-03  Karl Berry  <karl at freefriends.org>
 
 	* Makefile.am (ft-config): pass --without-brotli, in hopes

Modified: trunk/Build/source/libs/freetype2/TLpatches/ChangeLog
===================================================================
--- trunk/Build/source/libs/freetype2/TLpatches/ChangeLog	2021-08-29 05:02:46 UTC (rev 60359)
+++ trunk/Build/source/libs/freetype2/TLpatches/ChangeLog	2021-08-29 06:19:44 UTC (rev 60360)
@@ -1,8 +1,3 @@
-2021-08-29  Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
-
-	Imported freetype-2.11.0 source tree from:
-	  http://download.savannah.gnu.org/releases/freetype/
-
 2020-10-21  Akira Kakuto  <kakuto at w32tex.org>
 
 	Imported freetype-2.10.4 source tree from:

Modified: trunk/Build/source/libs/freetype2/TLpatches/TL-Changes
===================================================================
--- trunk/Build/source/libs/freetype2/TLpatches/TL-Changes	2021-08-29 05:02:46 UTC (rev 60359)
+++ trunk/Build/source/libs/freetype2/TLpatches/TL-Changes	2021-08-29 06:19:44 UTC (rev 60360)
@@ -1,2 +1,2 @@
-Changes applied to the freetype-2.11.0/ tree as obtained from:
-	http://download.savannah.gnu.org/releases/freetype/
+Changes applied to the freetype-2.10.4/ tree as obtained from:
+	http://savannah.nongnu.org/download/freetype/.

Modified: trunk/Build/source/libs/freetype2/configure
===================================================================
--- trunk/Build/source/libs/freetype2/configure	2021-08-29 05:02:46 UTC (rev 60359)
+++ trunk/Build/source/libs/freetype2/configure	2021-08-29 06:19:44 UTC (rev 60360)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for FreeType (TeX Live) 2.11.0.
+# Generated by GNU Autoconf 2.71 for FreeType (TeX Live) 2.10.4.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -610,8 +610,8 @@
 # Identity of this package.
 PACKAGE_NAME='FreeType (TeX Live)'
 PACKAGE_TARNAME='freetype--tex-live-'
-PACKAGE_VERSION='2.11.0'
-PACKAGE_STRING='FreeType (TeX Live) 2.11.0'
+PACKAGE_VERSION='2.10.4'
+PACKAGE_STRING='FreeType (TeX Live) 2.10.4'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1278,7 +1278,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures FreeType (TeX Live) 2.11.0 to adapt to many kinds of systems.
+\`configure' configures FreeType (TeX Live) 2.10.4 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1346,7 +1346,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of FreeType (TeX Live) 2.11.0:";;
+     short | recursive ) echo "Configuration of FreeType (TeX Live) 2.10.4:";;
    esac
   cat <<\_ACEOF
 
@@ -1443,7 +1443,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-FreeType (TeX Live) configure 2.11.0
+FreeType (TeX Live) configure 2.10.4
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -1566,7 +1566,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by FreeType (TeX Live) $as_me 2.11.0, which was
+It was created by FreeType (TeX Live) $as_me 2.10.4, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4100,7 +4100,7 @@
 
 # Define the identity of the package.
  PACKAGE='freetype--tex-live-'
- VERSION='2.11.0'
+ VERSION='2.10.4'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -5834,7 +5834,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by FreeType (TeX Live) $as_me 2.11.0, which was
+This file was extended by FreeType (TeX Live) $as_me 2.10.4, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -5893,7 +5893,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-FreeType (TeX Live) config.status 2.11.0
+FreeType (TeX Live) config.status 2.10.4
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 

Modified: trunk/Build/source/libs/freetype2/freetype-src/CMakeLists.txt
===================================================================
--- trunk/Build/source/libs/freetype2/freetype-src/CMakeLists.txt	2021-08-29 05:02:46 UTC (rev 60359)
+++ trunk/Build/source/libs/freetype2/freetype-src/CMakeLists.txt	2021-08-29 06:19:44 UTC (rev 60360)
@@ -1,6 +1,6 @@
 # CMakeLists.txt
 #
-# Copyright (C) 2013-2021 by
+# Copyright (C) 2013-2020 by
 # David Turner, Robert Wilhelm, and Werner Lemberg.
 #
 # Written originally by John Cary <cary at txcorp.com>
@@ -103,9 +103,6 @@
   # Allow symbol visibility settings also on static libraries. CMake < 3.3
   # only sets the property on a shared library build.
   cmake_policy(SET CMP0063 NEW)
-
-  # Support new IN_LIST if() operator.
-  cmake_policy(SET CMP0057 NEW)
 endif ()
 
 include(CheckIncludeFile)
@@ -149,8 +146,8 @@
 project(freetype C)
 
 set(VERSION_MAJOR "2")
-set(VERSION_MINOR "11")
-set(VERSION_PATCH "0")
+set(VERSION_MINOR "10")
+set(VERSION_PATCH "4")
 
 # Generate LIBRARY_VERSION and LIBRARY_SOVERSION.
 set(LIBTOOL_REGEX "version_info='([0-9]+):([0-9]+):([0-9]+)'")
@@ -208,7 +205,7 @@
 
 
 # Find dependencies
-set(HARFBUZZ_MIN_VERSION "2.0.0")
+set(HARFBUZZ_MIN_VERSION "1.8.0")
 if (FT_WITH_HARFBUZZ)
   find_package(HarfBuzz ${HARFBUZZ_MIN_VERSION} REQUIRED)
 else ()
@@ -350,7 +347,6 @@
   src/pshinter/pshinter.c
   src/psnames/psnames.c
   src/raster/raster.c
-  src/sdf/sdf.c
   src/sfnt/sfnt.c
   src/smooth/smooth.c
   src/truetype/truetype.c
@@ -361,8 +357,6 @@
 
 if (UNIX)
   list(APPEND BASE_SRCS "builds/unix/ftsystem.c")
-elseif (WIN32)
-  list(APPEND BASE_SRCS "builds/windows/ftsystem.c")
 else ()
   list(APPEND BASE_SRCS "src/base/ftsystem.c")
 endif ()
@@ -446,7 +440,6 @@
 
 
 set(PKG_CONFIG_REQUIRED_PRIVATE "")
-set(PKG_CONFIG_LIBS_PRIVATE "")
 
 if (ZLIB_FOUND)
   target_link_libraries(freetype PRIVATE ${ZLIB_LIBRARIES})
@@ -456,7 +449,7 @@
 if (BZIP2_FOUND)
   target_link_libraries(freetype PRIVATE ${BZIP2_LIBRARIES})
   target_include_directories(freetype PRIVATE ${BZIP2_INCLUDE_DIR}) # not BZIP2_INCLUDE_DIRS
-  list(APPEND PKG_CONFIG_LIBS_PRIVATE "-lbz2")
+  list(APPEND PKG_CONFIG_REQUIRED_PRIVATE "bzip2")
 endif ()
 if (PNG_FOUND)
   target_link_libraries(freetype PRIVATE ${PNG_LIBRARIES})
@@ -464,9 +457,9 @@
   target_include_directories(freetype PRIVATE ${PNG_INCLUDE_DIRS})
   list(APPEND PKG_CONFIG_REQUIRED_PRIVATE "libpng")
 endif ()
-if (HarfBuzz_FOUND)
-  target_link_libraries(freetype PRIVATE ${HarfBuzz_LIBRARY})
-  target_include_directories(freetype PRIVATE ${HarfBuzz_INCLUDE_DIRS})
+if (HARFBUZZ_FOUND)
+  target_link_libraries(freetype PRIVATE ${HARFBUZZ_LIBRARIES})
+  target_include_directories(freetype PRIVATE ${HARFBUZZ_INCLUDE_DIRS})
   list(APPEND PKG_CONFIG_REQUIRED_PRIVATE "harfbuzz >= ${HARFBUZZ_MIN_VERSION}")
 endif ()
 if (BROTLIDEC_FOUND)
@@ -498,40 +491,42 @@
 
 if (NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL)
   # Generate the pkg-config file
-  file(READ "${PROJECT_SOURCE_DIR}/builds/unix/freetype2.in" FREETYPE2_PC_IN)
+  if (UNIX)
+    file(READ "${PROJECT_SOURCE_DIR}/builds/unix/freetype2.in" FREETYPE2_PC_IN)
 
-  string(REPLACE ";" ", " PKG_CONFIG_REQUIRED_PRIVATE "${PKG_CONFIG_REQUIRED_PRIVATE}")
+    string(REPLACE ";" ", " PKG_CONFIG_REQUIRED_PRIVATE "${PKG_CONFIG_REQUIRED_PRIVATE}")
 
-  string(REPLACE "%prefix%" ${CMAKE_INSTALL_PREFIX}
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
-  string(REPLACE "%exec_prefix%" "\${prefix}"
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
-  string(REPLACE "%libdir%" "\${prefix}/${CMAKE_INSTALL_LIBDIR}"
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
-  string(REPLACE "%includedir%" "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}"
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
-  string(REPLACE "%ft_version%" "${LIBTOOL_CURRENT}.${LIBTOOL_REVISION}.${LIBTOOL_AGE}"
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
-  string(REPLACE "%REQUIRES_PRIVATE%" "${PKG_CONFIG_REQUIRED_PRIVATE}"
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
-  string(REPLACE "%LIBS_PRIVATE%" "${PKG_CONFIG_LIBS_PRIVATE}"
-          FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%prefix%" ${CMAKE_INSTALL_PREFIX}
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%exec_prefix%" "\${prefix}"
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%libdir%" "\${prefix}/${CMAKE_INSTALL_LIBDIR}"
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%includedir%" "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}"
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%ft_version%" "${LIBTOOL_CURRENT}.${LIBTOOL_REVISION}.${LIBTOOL_AGE}"
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%REQUIRES_PRIVATE%" "${PKG_CONFIG_REQUIRED_PRIVATE}"
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
+    string(REPLACE "%LIBS_PRIVATE%" ""  # All libs support pkg-config
+           FREETYPE2_PC_IN ${FREETYPE2_PC_IN})
 
-  set(FREETYPE2_PC_IN_NAME "${PROJECT_BINARY_DIR}/freetype2.pc")
-  if (EXISTS "${FREETYPE2_PC_IN_NAME}")
-    file(READ "${FREETYPE2_PC_IN_NAME}" ORIGINAL_FREETYPE2_PC_IN)
-  else ()
-    set(ORIGINAL_FREETYPE2_PC_IN "")
+    set(FREETYPE2_PC_IN_NAME "${PROJECT_BINARY_DIR}/freetype2.pc")
+    if (EXISTS "${FREETYPE2_PC_IN_NAME}")
+      file(READ "${FREETYPE2_PC_IN_NAME}" ORIGINAL_FREETYPE2_PC_IN)
+    else ()
+      set(ORIGINAL_FREETYPE2_PC_IN "")
+    endif ()
+    if (NOT (ORIGINAL_FREETYPE2_PC_IN STREQUAL FREETYPE2_PC_IN))
+      file(WRITE "${FREETYPE2_PC_IN_NAME}" ${FREETYPE2_PC_IN})
+    endif ()
+
+    install(
+      FILES ${PROJECT_BINARY_DIR}/freetype2.pc
+      DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
+      COMPONENT pkgconfig)
   endif ()
-  if (NOT (ORIGINAL_FREETYPE2_PC_IN STREQUAL FREETYPE2_PC_IN))
-    file(WRITE "${FREETYPE2_PC_IN_NAME}" ${FREETYPE2_PC_IN})
-  endif ()
 
-  install(
-    FILES ${PROJECT_BINARY_DIR}/freetype2.pc
-    DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
-    COMPONENT pkgconfig)
-
   include(CMakePackageConfigHelpers)
   write_basic_package_version_file(
     ${PROJECT_BINARY_DIR}/freetype-config-version.cmake
@@ -562,7 +557,7 @@
 set(CPACK_PACKAGE_NAME ${CMAKE_PROJECT_NAME})
 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The FreeType font rendering library.")
 set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
-set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.TXT")
+set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/docs/LICENSE.TXT")
 
 set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
 set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})

Modified: trunk/Build/source/libs/freetype2/freetype-src/ChangeLog
===================================================================
--- trunk/Build/source/libs/freetype2/freetype-src/ChangeLog	2021-08-29 05:02:46 UTC (rev 60359)
+++ trunk/Build/source/libs/freetype2/freetype-src/ChangeLog	2021-08-29 06:19:44 UTC (rev 60360)
@@ -1,2752 +1,3 @@
-2021-07-18  Werner Lemberg  <wl at gnu.org>
-
-	* Version 2.11.0 released.
-	==========================
-
-
-	Tag sources with `VER-2-11-0'.
-
-	* docs/VERSION.TXT: Add entry for version 2.11.0.
-	* docs/CHANGES: Updated.
-
-	* README, src/base/ftver.rc, builds/windows/vc2010/index.html,
-	builds/windows/visualc/index.html,
-	builds/windows/visualce/index.html,
-	builds/wince/vc2005-ce/index.html,
-	builds/wince/vc2008-ce/index.html, docs/freetype-config.1:
-	s/2.10.4/2.11.0/, s/2104/2110/.
-
-	* include/freetype/freetype.h (FREETYPE_MINOR): Set to 11.
-	(FREETYPE_PATCH): Set to 0.
-
-	* builds/unix/configure.raw (version_info): Set to 24:0:18.
-	* CMakeLists.txt (VERSION_MINOR): Set to 11.
-	(VERSION_PATCH): Set to 0.
-
-	* builds/toplevel.mk (dist): Ignore more git-related files.
-
-2021-07-17  David Turner  <david at freetype.org>
-
-	* src/smooth/ftgrays.c: Fix compilation if `FT_LONG64` is undefined.
-
-	The code assumed that if `__SSE2__` is defined, then 64-bit integer
-	types are available.  This is not the case apparently for certain
-	multilib compiler targets like 'x86_32.x86' used by Gentoo.
-
-	This patch fixes the issue by disabling the special code path when
-	64-bit integer types are not available.
-
-	Fixes #1071.
-
-2021-07-16  Alex Richardson  <Alexander.Richardson at cl.cam.ac.uk>
-
-	[tests] Allow arbitrary build directories.
-
-	* tests/issue-1063/main.c (main): I am building with a build
-	directory that is not directly inside the source tree, so the path
-	`../tests/data/As.I.Lay.Dying.ttf` does not resolve to the test
-	input file.  This change passes the test data directory as an
-	environment variable to allow arbitrary build directories.
-
-	* tests/meson.build: Updated.
-
-2021-07-16  Alex Richardson  <Alexander.Richardson at cl.cam.ac.uk>
-
-	* tests/issue-1063/main.c (main): Fix uninitialized variable.
-
-	I tried running `meson test` but the test just crashed and gdb
-	reported that the face argument to `FT_Get_Char_Index` was nonsense. 
-	With this change the test prints 'Could not open file: ' as it
-	should.
-
-2021-07-16  Werner Lemberg  <wl at gnu.org>
-
-	[smooth] Minor fixes.
-
-	* src/smooth/ftgrays.c (gray_render_conic): Move variable and
-	structure declarations to beginning of function.  Inspite of C99
-	compliance we still do this for the sake of backward compatibility.
-	This also avoids a shadowing declaration of `count`.
-	(gray_convert_glyph_inner): Fix typo.
-
-2021-07-15  Ben Wagner  <bungeman at chromium.org>
-
-	* src/smooth/ftgrays.c: Guard inclusion of `emmintrin.h`.
-
-	Guard inclusion of `emmintrin.h` with `#ifdef __SSE2__`.  The gcc
-	version of this header, `xmmintrin.h`, and `mmintrin.h` check that
-	the appropriate defines are set before defining anything (are
-	internally guarded).  However, the clang versions of these includes
-	are not internally guarded.  As a result of this, externally guard
-	the inclusion of these headers.
-
-2021-07-15  David Turner  <david at freetype.org>
-
-	[smooth] Implement Bézier quadratic arc flattening with DDA.
-
-	Benchmarking shows that this provides a very slighty performance
-	boost when rendering fonts with lots of quadratic Bézier arcs,
-	compared to the recursive arc splitting, but only when SSE2 is
-	available, or on 64-bit CPUs.
-
-	On a 2017 Core i5-7300U CPU on Linux/x86_64:
-
-	  ftbench -p -s10 -t5 -cb DroidSansFallbackFull.ttf
-
-	  Before: 4.033 us/op  (best of 5 runs for all numbers)
-	  After:  3.876 us/op
-
-	  ftbench -p -s60 -t5 -cb DroidSansFallbackFull.ttf
-
-	  Before: 13.467 us/op
-	  After:  13.385 us/op
-
-	* src/smooth/ftgrays.c (gray_render_conic): New implementation
-	based on DDA and optionally SSE2.
-
-2021-07-15  David Turner  <david at freetype.org>
-
-	[smooth] Minor speedup to smooth rasterizer.
-
-	This speeds up the smooth rasterizer by avoiding conditional
-	branches in the hot path.
-
-	- Define a fixed 'null cell', which will be pointed to whenever the
-	  current cell is outside of the current target region.  This avoids
-	  a `ras.cell != NULL` check in the `FT_INTEGRATE` macro.
-
-	- Also use the null cell as a sentinel at the end of all `ycells`
-	  linked-lists, by setting its x coordinate to `INT_MAX`.  This
-	  avoids a `if (!cell)` check in `gray_set_cell` as well.
-
-	- Slightly change the worker struct fields to perform a little less
-	  operations during rendering.
-
-	Example results (on a 2013 Corei5-3337U CPU)
-
-	  out/ftbench -p -s10 -t5 -bc DroidSansFallbackFull.ttf
-
-	  Before: 5.472 us/op
-	  After:  5.275 us/op
-
-	  out/ftbench -p -s60 -t5 -bc DroidSansFallbackFull.ttf
-
-	  Before: 17.988 us/op
-	  After:  17.389 us/op
-
-	* src/smooth/ftgrays.c (grat_TWorker): Replace `num_cells` field with
-	`cell_free` and `cell_limit`.
-	(NULL_CELL_PTR, CELL_MAX_X_VALUE, CELL_IS_NULL): New macros.
-	(gray_dump_cells, gray_set_cell, gray_sweep, gray_sweep_direct,
-	gray_convert_glyph_inner, gray_convert_glyph): Updated.
-
-2021-07-15  David Turner  <david at freetype.org>
-
-	[tests] Rewrite download script in Python3.
-
-	This commit replaces the bash script with a Python script that does
-	the same work, plus avoiding to download anything if the files are
-	already installed with the right content.
-
-	We now use the first 8 bytes of each file's sha256 hash for the
-	digest.
-
-	* tests/scripts/download-test-fonts.sh: Removed.
-	* tests/scripts/download-test-fonts.py: New script.
-	* tests/README.md: Updated.
-
-2021-07-15  Alex Richardson  <Alexander.Richardson at cl.cam.ac.uk>
-
-	Support architectures where `long` is smaller than pointers.
-
-	I am currently trying to compile FreeType for CHERI-extended ISAs
-	(CHERI-RISC-V and Arm's Morello), but I am getting compiler warnings
-	from the `FT_UINT_TO_POINTER` macro.  When compiling with the CHERI
-	Clang compiler, not using `uinptr_t` for casts between integers an
-	pointers results in the following `-Werror` build failures:
-
-	```
-	In file included from .../src/truetype/truetype.c:22:
-	  .../src/truetype/ttgload.c:1925:22: error:
-	    cast from provenance-free integer type to pointer type will
-	    give pointer that can not be dereferenced
-	    [-Werror,-Wcheri-capability-misuse]
-	  node->data = FT_UINT_TO_POINTER( glyph_index );
-	               ^
-	  .../include/freetype/internal/compiler-macros.h:79:34: note:
-	    expanded from macro 'FT_UINT_TO_POINTER'
-	```
-
-	* include/freetype/internal/compiler-macros.h (FT_UINT_TO_POINTER):
-	The ISO C standard compliant fix for this would be to use
-	`uintptr_t` from `stdint.h`, but I am not sure if this is supported
-	by the minimum compiler version.  Therefore, use the
-	compiler-defined `__UINTPTR_TYPE__` macro (supported in GCC 4.6+ and
-	Clang since about 3.0) before checking for `_WIN64` and falling back
-	to `unsigned long`.
-
-2021-07-13  Oleg Oshmyan  <chortos at inbox.lv>
-
-	[base] Fix `FT_Open_Face`'s handling of user-supplied streams.
-
-	This was already true (though undocumented) most of the time, but
-	not if `FT_NEW` inside `FT_Stream_New` failed or if the
-	`FT_OPEN_XXX` flags were bad.
-
-	Normally, `FT_Open_Face` calls `FT_Stream_New`, which returns the
-	user-supplied stream unchanged, and in case of any subsequent error
-	in `FT_Open_Face`, the stream is closed via `FT_Stream_Free`.
-
-	Up to now, however, `FT_Stream_New` allocates a new stream even if
-	it is already given one by the user.  If this allocation fails, the
-	user-supplied stream is not returned to `FT_Open_Face` and never
-	closed.  Moreover, the user cannot detect this situation: all they
-	see is that `FT_Open_Face` returns `FT_Err_Out_Of_Memory`, but that
-	can also happen after a different allocation fails within the main
-	body of `FT_Open_Face`, when the user's stream has already been
-	closed by `FT_Open_Face`.  It is plausible that the user stream's
-	`close` method frees memory allocated for the stream object itself,
-	so the user cannot defensively free it upon `FT_Open_Face` failure
-	lest it ends up doubly freed.  All in all, this ends up leaking the
-	memory/resources used by user's stream.
-
-	Furthermore, `FT_Stream_New` simply returns an error if the
-	`FT_OPEN_XXX` flags are unsupported, which can mean either an
-	invalid combination of flags or a perfectly innocent
-	`FT_OPEN_STREAM` on a FreeType build that lacks stream support.
-	With this patch, the user-supplied stream is closed even in these
-	cases, so the user can be sure that if `FT_Open_Face` failed, the
-	stream is definitely closed.
-
-	* src/base/ftobjs.c (FT_Stream_New): Don't allocate a buffer
-	unnecessarily.
-	Move error-handling code to make the control flow more obvious.
-	Close user-supplied stream if the flags are unsupported.
-	`FT_Stream_Open` always sets `pathname.pointer`, so remove the
-	redundant (re)assignment.  None of the `FT_Stream_Open...` functions
-	uses `stream->memory`, so keep just one assignment at the end,
-	shared among all possible control flow paths.
-	('Unsupported flags' that may need a stream closure can be either an
-	invalid combination of multiple `FT_OPEN_XXX` mode flags or a clean
-	`FT_OPEN_STREAM` flag on a FreeType build that lacks stream
-	support.)
-
-2021-07-13  Oleg Oshmyan  <chortos at inbox.lv>
-
-	[base] Reject combinations of incompatible `FT_OPEN_XXX` flags.
-
-	The three modes are mutually exclusive, and the documentation of the
-	`FT_OPEN_XXX` constants notes this.  However, there was no check to
-	validate this in the code, and the documentation on `FT_Open_Args`
-	claimed that the corresponding bits were checked in a well-defined
-	order, implying it was valid (if useless) to specify more than one.
-	Ironically, this documented order did not agree with the actual
-	code, so it could not be relied upon; hopefully, nobody did this and
-	nobody will be hurt by the new validation.
-
-	Even if multiple mode bits were allowed, they could cause memory
-	leaks: if both `FT_OPEN_STREAM` and `stream` are set along with
-	either `FT_OPEN_MEMORY` or `FT_OPEN_PATHNAME`, then `FT_Stream_New`
-	allocated a new stream but `FT_Open_Face` marked it as an 'external'
-	stream, so the stream object was never released.
-
-	* src/base/ftobjs.c (FT_Stream_New): Reject incompatible
-	`FT_OPEN_XXX` flags.
-
-2021-07-12  Alex Richardson  <Alexander.Richardson at cl.cam.ac.uk>
-
-	* meson.build: Fix build for other UNIX systems (e.g., FreeBSD).
-
-	Without this change the build of `unix/ftsystem.c` fails because the
-	`ftconfig.h` header that defines macros such as `HAVE_UNISTD_H` and
-	`HAVE_FCNTL_H` is only being generated for Linux, macOS, and Cygwin
-	systems:
-
-	```
-	.../builds/unix/ftsystem.c:258:32: error:
-	    use of undeclared identifier 'O_RDONLY'
-	file = open( filepathname, O_RDONLY );
-	```
-
-	Instead of hardcoding a list of operating systems for this check,
-	update the logic that decides whether to build the file and set a
-	boolean flag that can be checked instead.
-
-2021-07-12  Werner Lemberg  <wl at gnu.org>
-
-	[autofit] More clean-ups.
-
-	* src/autofit/afhints.h (AF_GlyphHintsRec): Remove the no longer
-	needed fields `xmin_delta` and `xmax_delta`.
-
-	* src/autofit/afhints.c (af_glyph_hints_reload),
-	src/autofit/afloader.c (af_loader_load_glyph): Updated.
-
-2021-07-12  Werner Lemberg  <wl at gnu.org>
-
-	Small clean-ups for the last few commits.
-
-	* include/freetype/fttrace.h (afwarp): Removed.
-
-2021-07-12  David Turner  <david at freetype.org>
-
-	Remove obsolete `AF_Angle` type and related sources.
-
-	* src/autofit/afangles.c: File removed.  Functions related to
-	sorting moved to...
-	* src/autofit/afhints.c (af_sort_pos, af_sort_and_quantize_widths):
-	This file.
-	* src/autofit/afangles.h: File removed.
-	* src/autofit/aftypes.h: Updated.
-	* src/autofit/autofit.c: Updated.
-
-	* src/autofit/rules.mk (AUTOF_DRV_SRC): Updated.
-
-2021-07-12  David Turner  <david at freetype.org>
-
-	Remove experimental auto-hinting 'warp' mode.
-
-	This feature was always experimental, and probably never worked
-	properly.  This patch completely removes it from the source code,
-	except for a documentation block describing it for historical
-	purposes.
-
-	* devel/ftoption.h, include/freetype/config/ftoption.h: Remove
-	`AF_CONFIG_OPTION_USE_WARPER`.
-
-	* include/freetype/ftdriver.h: Document 'warping' property as
-	obsolete.
-
-	* src/autofit/afwarp.c, src/autofit/afwarp.h: Files removed.
-	* src/autofit/*: Remove any code related to warp mode.
-
-2021-07-12  David Turner  <david at freetype.org>
-
-	Remove experimental 'Latin2' writing system (`FT_OPTION_AUTOFIT2`).
-
-	This code has always been experimental and was never compiled anyway
-	(`FT_OPTION_AUTOFIT2` does not appear in `ftoption.h` or even any of
-	our build files).
-
-	* include/freetype/internal/fttrace.h (aflatin2): Removed.
-	* src/autofit/aflatin2.h, src/autofit/aflatin2.c: Files removed.
-	* src/autofit/afloader.c: Remove undocumented hook to activate
-	Latin2 system.
-	* src/autofit/afstyles.h: Remove `ltn2_dflt` style definition.
-	* src/autofit/afwrtsys.h: Remove `LATIN2` writing system definition.
-	* src/autofit/autofit.c: Updated.
-
-2021-07-05  Werner Lemberg  <wl at gnu.org>
-
-	* src/base/ftlcdfil.c (FT_Library_SetLcdGeometry): Fix argument.
-
-	Reported by Hin-Tak.
-
-2021-07-03  Werner Lemberg  <wl at gnu.org>
-
-	* meson_options.txt: Sort alphabetically; no final full stops.
-
-2021-07-01  Ben Wagner  <bungeman at chromium.org>
-
-	* src/truetype/ttgxvar.c (tt_set_mm_blend): Test `coords`.
-
-	It is undefined behavior to pass `NULL` to `memcpy`.  `coords' is
-	passed to `memcpy` but `TT_Get_MM_Blend` and `TT_Get_Var_Design`
-	explictly call `tt_set_mm_blend` with `coords` as `NULL`.  In
-	addition, `TT_Set_MM_Blend` has a similar possible issue.
-
-2021-06-30  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Support PaintScale in 'COLR' v1 parsing.
-
-	* include/freetype/ftcolor.h (FT_PaintFormat): Renumber values, add
-	`FT_COLR_PAINTFORMAT_SCALE`.
-	(FT_PaintScale): New structure to represent 'PaintScale*' tables.
-	(FT_COLR_Paint): Updated.
-
-	* src/sfnt/ttcolr.c (FT_PaintFormat_Internal): New enumeration.
-	(read_paint): Parse 'PaintScale' and friends.
-
-2021-06-30  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Handle fonts without layer list in 'COLR' v1.
-
-	'COLR' v1 fonts do not necessarily need to have a layer list; for
-	this reason, 'fontTools' recently started generating fonts in a way
-	that drops the layer list if there are no layers in it.  This
-	results in the layer list offset becoming zero, which FreeType
-	treated as an invalid table.  Fix that and handle the case for layer
-	list offset being 0.  This slightly changes how we need to calculate
-	the starting offset for paints.
-
-	* src/sfnt/ttcolr.c (tt_face_load_colr): Handle case of layer list
-	offset being zero without outright rejecting table.
-
-2021-06-30  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/raster/ftraster.c (Render_Single_Pass): Simplify `band_stack'.
-
-2021-06-29  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[raster] Do not skip the second pass without dropout control.
-
-	The second pass also fixes horizontal lines through the pixel centers.
-
-	* src/raster/ftraster.c (black_TWorker): Do not use `second_pass'.
-	(Render_Glyph): Skip the second pass only with the appropriate flag.
-
-2021-06-29  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[raster] Handle sub-band stack locally.
-
-	* src/raster/ftraster.c (black_TWorker): Move `band_stack' from here..
-	(Render_Single_Pass): ... to here and accept limit arguments.
-	(Render_Glyph): Updated.
-
-2021-06-25  Anurag Thakur  <anuthadev at gmail.com>
-
-	[CI] Introduce linux CI and refactor job names.
-
-	* .gitlab-ci.yml: Added jobs for building freetype on linux.
-
-2021-06-28  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[raster] Handle Bézier stack locally.
-
-	* src/raster/ftraster.c (black_TWorker): Move `arcs' from here...
-	(Conic_To, Cubic_To): ... to here to tighten their scope.
-	(Bezier_Up, Bezier_Down): ... Take the current `arc' argument.
-
-2021-06-28  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Improve paint limit checks
-
-	Paint tables can appear before the `base_glyphs_v1` offset if the
-	font is produced with the layer list before the base glyph list.  In
-	this case paint tables can occur after the layer list but before the
-	base glyph list.  Checks in the 'COLR' v1 code were rejecting fonts
-	with this layout.  Improve these checks by calculating a minimum
-	offset after which paint tables can occur and use that in safety
-	checks.
-
-	* src/sfnt/ttcolr.c (Colr, tt_face_load_colr): Declare
-	`paint_start_v1` and calculate that as the minimum of the end of
-	layer list and base glyph list.
-	(get_child_table_pointer, read_paint, tt_face_get_paint_layers):
-	Use that in safety checks.
-
-2021-06-28  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[raster] Clean up vertical sweep.
-
-	* src/raster/ftraster.c (black_TWorker): Replace the current line
-	offset with the pointer and drop the increment.
-	(Function_Sweep_Init): Take values as arguments instead of pointers.
-	(Vertical_Sweep_*, Horizontal_Sweep_Init, Draw_Sweep): Updated.
-
-2021-06-25  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[raster] Make `band_top' local variable.
-
-	* src/raster/ftraster.c (black_TWorker): Move `band_top' from here...
-	(Render_Single_Pass): ... to here, and refactor.
-	(Render_Glyph): Updated.
-
-2021-06-25  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[raster] Adjust sub-band bisecting limits.
-
-	We can bisect a band until it is just a single scan line.  This might
-	be slow and cause time-outs but if we need to impose limits it should
-	be elsewhere.
-
-	* src/raster/ftraster.c (Render_Single_Pass): Tweak sub-banding.
-
-2021-06-25  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/raster/ftraster.c (Render_Single_Pass): Remove dead code.
-
-2021-06-25  Werner Lemberg  <wl at gnu.org>
-
-	[base] Add trace level to logging output.
-
-	Some practical debugging work has shown that displaying level X of
-	an `FT_TRACEX` macro in the output of `FT2_DEBUG="...  -v"` would be
-	very helpful to find out which trace level should be selected.  As
-	an example, we now get output like
-
-	```
-	[ttobjs:2]    TTF driver
-	[ttobjs:2]      SFNT driver
-	[sfobjs:2]      not a font using the SFNT container format
-	[t1objs:2]    Type 1 driver
-	[stream:7]    FT_Stream_EnterFrame: 14 bytes
-	```
-
-	* include/freetype/internal/ftdebug.h (FT_LOGGING_TAGX): New macro.
-	(FT_LOG): Use it to add the trace level to the logging tag.
-
-	* include/freetype/internal/fttrace.h (FT_MAX_TRACE_LEVEL_LENGTH):
-	Adjust.
-
-	* docs/DEBUG: Updated.
-
-2021-06-24  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[smooth, raster] Fix up and align error codes.
-
-	FT_Render_Glyph picked up FAILURE or 1 returned from the raster
-	function, which became a confusing error code. Instead, return
-	Raster_Overflow in the unlikely event that banding does not help or
-	another meaningful error.
-
-	* src/smooth/ftgrays.c (gray_convert_glyph_inner, gray_convert_glyph):
-	Use Raster_Overflow when the rendering pool is exhausted and return it
-	if banding does not help.
-	(gray_raster_render): Use Smooth_Err_Ok.
-
-	* src/raster/ftraster.c (Render_Single_Pass): Return Raster_Overflow
-	if banding does not help or another error code.
-
-2021-06-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[smooth, raster] Remove synonymous error macros.
-
-	* src/smooth/ftgays.c [STANDALONE_]: s/ErrRaster_/Smooth_Err_/.
-	(gray_convert_glyph_inner): Updated accordingly.
-
-	* src/raster/ftraster.c [STANDALONE_]: Do not abbreviate error macros.
-	(New_Profile, End_Profile, Insert_Y_Turn, Line_Up, Bezier_Up,
-	Decompose_Curve, Draw_Sweep, Render_Single_Pass, ft_black_render):
-	Updated accordingly.
-
-2021-06-22  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] s/PaintTransformed/PaintTransform/, s/transformed/transform/.
-
-	* include/freetype/ftcolor.h (FT_PaintTransformed, FT_PaintFormat,
-	FT_COLR_Paint): Do it to make it harmonize with other names such as
-	'PaintTranslate'.
-
-	* src/sfnt/ttcolr.c (read_paint, tt_face_get_paint): Ditto.
-
-2021-06-22  Dominik Röttsches  <drott at chromium.org>
-
-	Move 'COLR' API to `ftcolor.h`.
-
-	* include/freetype/freetype.h: Cut section layer managament
-	containing 'COLR' v0 and v1 API and move it to `ftcolor.h` as
-	requested by Werner on freetype-devel.
-	* include/freetype/ftcolor.h: Paste that section.
-
-2021-06-19  Werner Lemberg  <david at freetype.org>
-
-	[truetype] Fix integer overflow.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=35312
-
-	* src/truetype/ttinterp.c (Ins_JMPR): Use `ADD_LONG`.
-
-2021-06-19  Werner Lemberg  <david at freetype.org>
-
-	[autofit] Prevent hinting if there are too many segments.
-
-	This speeds up handling of broken glyphs.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=35309
-
-	* src/autofit/aflatin.c (af_latin_hints_compute_segments): Implement
-	it.
-
-2021-06-18  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sdf/ftsdfrend.c (ft_(b)sdf_render): Do not FT_ERROR routinely.
-
-2021-06-16  David Turner  <david at freetype.org>
-
-	[autofit] Fix return value of `FT_Load_Glyph`.
-
-	* src/autofit/afglobal.c (af_face_globals_get_metrics): The issue is
-	that `style_metrics_init` sometimes returns -1 without clearing
-	`error`.  While looping to `Again`, the next operation is
-	successful, but -1 is still returned by the function.  The fix is to
-	set `error` to 0 appropriately.
-
-	Fixes #1063.
-
-2021-06-15  David Turner  <david at freetype.org>
-
-	[meson] Add first regression test to FreeType.
-
-	* tests/README.md: New file that explains how to build and run the
-	tests with the Meson build.
-
-	* tests/scripts/download-test-fonts.sh: New bash script to download
-	test font files to the `tests/data` folder.
-
-	* meson.build, meson_options.txt: Add 'tests' option to enable
-	building and running the test programs (disabled by default).
-
-	* tests/meson.build: New file.
-
-	* tests/issue-1063/main.c: Simple regression test to exhibit issue
-	1063.
-
-	* .gitignore: Ignore the content of the `tests/data` folder for
-	now.
-
-2021-06-12  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[type42] Fix new memory leak.
-
-	We need to inverse inheritance of FT_GlyphSlot_Internal so that we
-	have a chance to free the rendered bitmap from the parent slot.
-
-	* src/type42/t42objs.c (T42_GlyphSlot_Init): Remove the internal parts
-	of the child `ttslot' and replace it with the parent structure.
-	(T42_GlyphSlot_Done): Updated accordingly.
-
-2021-06-12  Werner Lemberg  <wl at gnu.org>
-
-	[psaux] Fix another assertion.
-
-	* src/psaux/psintrp.c (cf2_interpT2CharString)
-	<cf2_escCALLOTHERSUBR>: Convert assertion into error, since the
-	problem can happen with invalid user input.
-
-	Test case is file
-
-	  fuzzing/corpora/legacy/oss-fuzz/5754332360212480-unknown-read
-
-	in the `freetype2-testing` repository.
-
-2021-06-12  Werner Lemberg  <wl at gnu.org>
-
-	[psaux] Fix assertions.
-
-	* src/psaux/pshints.c (cf2_hintmap_adjustHints): Check for overflow
-	before emitting an assertion error.
-
-	Test case is file
-
-	 fuzzing/corpora/legacy/oss-fuzz/4594115297673216-integer-overflow
-
-	in the `freetype2-testing` repository.
-
-2021-06-09  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/truetype/ttinterp.c (TT_RunIns): Optimize tracing.
-
-2021-06-09  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[sdf] Fix SDF positioning.
-
-	* src/sdf/ftsdfrend.c (ft_sdf_render, ft_bsdf_render): Add padding to
-	`bitmap_top' and `bitmap_left'.
-
-	* sdf/sdf/ftsdf.c (sdf_generate_with_overlaps): Fix VC++ warning.
-
-2021-06-08  Werner Lemberg  <wl at gnu.org>
-
-	Fix 'devel' build for 'COLR' v1.
-
-	* devel/ftoption.h: Synchronize with
-	  `include/freetype/config/ftoption.h`.
-
-2021-06-08  Werner Lemberg  <wl at gnu.org>
-
-	[sfnt] Sanitize cmap4 table better.
-
-	Fixes #1062.
-
-	* src/sfnt/ttcmap.c (tt_cmap4_validate): Handle a too-small value of
-	`length` gracefully.
-
-2021-06-08  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Pointer validity check when reading 'COLR' v1 layers
-
-	* src/sfnt/ttcolr.c (tt_face_get_paint_layers): In addition to the
-	existing sanity checks, ensure that the pointer to the layer to be
-	read is within the 'COLR' v1 table.
-
-2021-06-08  Werner Lemberg  <wl at gnu.org>
-
-	* src/sdf/ftsdfcommon.c: Fix inclusion of header files.
-
-2021-06-08  Werner Lemberg  <wl at gnu.org>
-
-	[sdf] Make `make multi` work.
-
-	* src/sdf/ftsdf.c: Include `ftbitmap.h`.
-
-	* src/sdf/ftsdfcommon.h: Move function bodies to `ftsdfcommon.c`.
-	Include `ftobjs.h` to get definitions of `FT_LOCAL` and friends.
-
-	* src/sdf/ftsdfcommon.c: New file.
-
-	* src/sdf/rules.mk, src/sdf/sdf.c: Updated.
-
-2021-06-08  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Use 8 bits for final SDF output instead of 16bits.
-
-	Since 8-bits is enough to represent SDF data we no longer require
-	16-bits for this purpose.  Also, we now normalize the output data
-	to use the entire 8-bit range efficiently.  For example: if we use
-	3.5 format with a spread of 1 we basically only use the starting
-	5-bits.  By normalizing we can use the entire 8-bit range.
-
-	* include/freetype/freetype.h (FT_Render_Mode): Updated description
-	for `FT_RENDER_MODE_SDF` regarding this change.
-
-	* include/freetype/ftimage.h (FT_Pixel_Mode): Removed
-	`FT_PIXEL_MODE_GRAY16` since no longer required.
-
-	* include/freetype/fttypes.h (FT_F6Dot10): Removed since no longer
-	required.
-
-	* src/sdf/ftsdfrend.c (ft_sdf_render, ft_bsdf_render): Allocate 8-bit
-	bitmap instead of 16-bit buffer.
-
-	* src/sdf/ftsdfcommon.h (map_fixed_to_sdf): Added function to convert
-	16.16 distance value to our desired format.
-
-	* src/sdf/ftsdf.c (sdf_generate_with_overlaps,
-	sdf_generate_bounding_box): Use the new `map_fixed_to_sdf` function
-	and also use 8-bit output buffer.
-
-	* src/sdf/ftbsdf.c (finalize_sdf): Output to a 8-bit buffer instead
-	of 16-bit buffer.
-
-2021-06-02  Ben Wagner  <bungeman at chromium.org>
-	    Werner Lemberg  <wl at gnu.org>
-
-	[sfnt] Fix fallout from 2021-05-29 change.
-
-	* src/sfnt/ttcolr.c (find_base_glyph_record,
-	find_base_glyph_v1_record): Adjust binary search.
-
-	Needs to be updated with change to unsigned.
-
-2021-06-02  Werner Lemberg  <wl at gnu.org>
-
-	* src/autofit/aflatin.c (af_latin_metrics_scale_dim): Fix tracing.
-
-	Problem reported by Alexei.
-
-2021-06-02  Werner Lemberg  <wl at gnu.org>
-
-	[psaux] Fix MSVC compiler warnings.
-
-	* src/psaux/afmparse.c (afm_parse_track_kern, afm_parse_kern_pairs):
-	Add cast.
-
-2021-05-29  Werner Lemberg  <wl at gnu.org>
-
-	Fix compilation errors and (some) warnings for clang++.
-
-	* src/autofit/afmodule.c (AF_GlyphHintsRec): Make it static.
-
-	* src/cache/ftcache.c (FTC_Cache_NewNode), src/cache/ftcsbits.c
-	(ftc_snode_compare): Remove semicolon.
-
-	* src/cff/cffparse.c (cff_parser_run): Add `break` statement.
-
-	* src/cid/cidload.c (cid_hex_to_binary): Add cast.
-
-	* src/sdf/ftbsdf.c (CHECK_NEIGHBOR): Use `do {} while(0)` loop.
-	(bsdf_init_distance_map, finalize_sdf, bsdf_raster_render): Add
-	casts.
-	* src/sdf/ftsdf.c (sdf_generate_bounding_box,
-	sdf_generate_with_overlaps): Ditto.
-	* src/sdf/ftsdfcommon.h (square_root): Ditto.
-	* src/sdf/ftsdfrend.c (sdf_property_get, ft_sdf_render,
-	ft_bsdf_render): Ditto.
-
-	* src/sfnt/ttcolr.c (find_base_glyph_record,
-	find_base_glyph_v1_record): Fix variable signedness.
-	(read_color_line): Add cast.
-	(read_paint): Add casts.
-	Fix signedness issue.
-	(tt_face_get_colorline_stops) Fix signedness issues.
-
-	* src/sfnt/ttpost.c (load_format_20): Add casts.
-
-	* src/truetype/ttsubpix.c (TWEAK_RULES, TWEAK_RULES_EXCEPTIONS):
-	Remove final semicolons.
-
-2021-05-29  Werner Lemberg  <wl at gnu.org>
-
-	[build] Allow overriding of `ANSIFLAGS` for GNU make build.
-
-	* builds/*: Implement it.
-
-2021-05-27  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[type42] Fix auto-hinting.
-
-	The autohinter could not access the base (unscaled) outline in the
-	child TrueType glyph slot. We now share the internal parts between
-	the parent and child glyph slots. Fixes #1057.
-
-	* src/type42/t42objs.c (T42_GlyphSlot_Init): Remove the internal parts
-	of `T42_GlyphSlot' and replace it with the child TrueType structure.
-	(T42_GlyphSlot_Done): Updated accordingly.
-
-2021-05-25  Werner Lemberg  <wl at gnu.org>
-
-	[psaux] Guard and trace AFM kern data allocation.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=31543
-
-	* include/freetype/internal/fttrace.h: Add 'afmparse' trace
-	component.
-
-	* src/psaux/afmparse.c (FT_COMPONENT): Define.
-	(afm_parse_track_kern, afm_parse_kern_pairs): Protect against
-	allocations bombs.
-	Add tracing.
-	(afm_parse_kern_data): Don't allow multiple kern data sections.
-
-2021-05-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* meson.build (ft2_public_headers): Add missing `ftcid.h'.
-
-	Fixes #1058.
-
-2021-05-20  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[type42] Avoid some memory zeroing.
-
-	* src/type42/t42objs.c (T42_Open_Face): Tweak allocation macro.
-	* src/type42/t42parse.c (t42_parse_sfnts): Ditto.
-
-2021-05-19  Nikolaus Waxweiler  <madigens at gmail.com>
-
-	[CMake] Update dependency finders.
-
-	1. Fixes CMake using any found HarfBuzz version lower than the minimum
-	required. This is based on HALX99's merge request at
-	https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/31
-	2. Update FindHarfBuzz.cmake from
-	https://github.com/WebKit/WebKit/blob/1ce32454/Source/cmake/FindHarfBuzz.cmake
-	and guard post-CMake-3.1 features to keep the minimum version unchanged
-	3. Update FindBrotliDec.cmake to stop the warnings, based on what
-	https://github.com/google/woff2/blob/a0d0ed7d/cmake/FindBrotliDec.cmake
-	is doing
-
-	* CMakeLists.txt, builds/cmake/FindHarfBuzz.cmake: Implement 1 and 2.
-	* builds/cmake/FindBrotliDec.cmake: Implement 3.
-
-2021-05-19  Ben Wagner  <bungeman at chromium.org>
-
-	[gzip] Use exact type for `ft_gzip_alloc` and `ft_gzip_free`.
-
-	While a function pointer may be cast to another function pointer
-	type, it is required to cast the function pointer back to the
-	original function pointer type before calling it.  If a parameter is
-	a pointer the exact pointer type is required.  Using a pointer to a
-	different underlying type is technically undefined behavior.  The
-	wrapper functions `ft_gzip_alloc` and `ft_gzip_free` took
-	`FT_Memory` (a `FT_MemoryRec_*`) instead of `voidpf` (`void*`), so
-	when gzip calls these callbacks through `alloc_func` or `free_func`
-	it invokes undefined behavior.  On most platforms this works out as
-	expected, but newer undefined behavior detectors and targets like
-	wasm can detect this and will produce an error.
-
-	* src/gzip/ftgzip.c (ft_gzip_alloc, ft_gzip_free): Update signatures
-	to exactly match `alloc_func` and `free_func`, respectively.
-	Internally, cast the `void*` opaque pointer to `FT_Memory`.
-
-2021-05-18  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	Prioritize the anti-aliasing renderer module.
-
-	* modules.cfg: Reorder the renderers.
-	* include/freetype/config/ftmodule.h: Ditto.
-
-2021-05-16  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[sfnt] Additional guards on the POST table.
-
-	Fixes timeout (#1055) analyzed by Ben Wagner, reported as
-
-	  https://crbug.com/1194092
-
-	* src/sfnt/ttload.c (tt_face_load_post): Check POST format.
-	* src/sfnt/sfobjs.c (sfnt_load_face): Synthesize the missing unicode
-	charmap only if the glyph names exist.
-	* src/psnames/psmodule.c (ps_unicode_value): Short cut ".notdef" and
-	".null".
-
-2021-05-13  Daniel McArdle  <dmcardle at chromium.org>
-
-	[psaux] Use doubling allocation strategy for CF2_ArrStack.
-
-	Fixes timeout reported as
-
-	  https://crbug.com/1206181
-
-	* src/psaux/psarrst.c (cf2_arrstack_{push,init}): Implement it.
-	* src/psaux/psarrst.h (CF2_ArrStackiRec): Drop `chunk'.
-
-2021-05-12  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/smooth/ftgrays.c (FT_MAX_GRAY_SPANS): Increase from 10 to 16.
-
-	Ten was barely enough for two slanted stems. Sixteen can actually fit
-	a bit more complicated scanlines.
-
-2021-05-11  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/smooth/ftgrays.c (FT_GRAY_SET): Adjust for better code.
-
-2021-05-11  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[smooth] Faster bitmap sweeping.
-
-	Selecting the fill rule or checking the direct mode each time we call
-	`gray_hline' is sub-optimal.  This effectively splits the direct mode
-	into a separate code path while inlining `gray_hline' and saving 5-7%
-	of rendering time.
-
-	* src/smooth/ftgrays.c (gray_hline): Eliminated in favor of...
-	(FT_FILL_RULE, FT_GRAY_SET): ... these new macros...
-	(gray_sweep): ... inlined here.
-	(gray_sweep_direct): New function that handles the direct span buffer.
-	(gray_TWorker): Remove the span buffer.
-	(gray_raster_render, gray_convert_glyph): Updated.
-
-2021-05-10  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/smooth/ftgrays.c (gray_hline): Simplify even-odd computations.
-
-	It is too bad the even-odd rule is not used much.
-
-2021-05-07  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[type1] Avoid MM memory zeroing.
-
-	* src/type1/t1load.c (t1_allocate_blend, parse_blend_design_map):
-	Tweak allocation macros.
-	* src/type1/t1objs.c (T1_Face_Done): Minor.
-
-2021-05-07  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/bdf/bdflib.c (_bdf_list_ensure): Tweak allocation macro.
-
-2021-05-06  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/psaux/psobjs.c (ps_parser_load_field): Tweak allocation macro.
-
-2021-05-06  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sfnt/sfobjs.c (sfnt_load_face): Tweak allocation macro.
-
-2021-05-06  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/cid/cidload.c (cid_read_subrs): Tweak allocation macro.
-
-2021-05-06  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/base/ftrfork.c (FT_Raccess_Get_DataOffsets): Tweak allocation.
-
-2021-05-05  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cff,psaux] Avoid memory zeroing (contd.).
-
-	* src/cff/cffload.c (cff_blend_doBlend, cff_blend_build_vector): Tweak
-	allocation macros.
-	* src/psaux/psarrst.c (cf2_arrstack_setNumElements): Ditto.
-	* src/psaux/psstack.c (cf2_stack_init): Ditto.
-
-2021-05-04  Ben Wagner  <bungeman at chromium.org>
-
-	* src/cid/cidload.c (cid_hex_to_binary): Improve return value.
-
-	Add argument to return the actual number of bytes that were decoded.
-	The actual number of bytes decoded can be quite variable depending
-	on the number of ignored 'whitespace' bytes or early termination
-	with `>`.
-	(cid_face_open): Updated to use this calculated value.  This avoids
-	trusting `parser->binary_length` is always be correct and reading
-	uninitialized bits if fewer are actually decoded.
-
-	First reported as
-
-	  https://crbug.com/1203240
-
-2021-05-03  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[sfnt] Streamline POST format 2.0 handing.
-
-	To reduce memory allocations, we read an entire Pascal-string buffer
-	and convert it to a C-string buffer.  We also reject tables with
-	Postscript glyph names exceeding 63 bytes.
-
-	* src/sfnt/ttpost.c (load_format20): Implement it.
-	(load_post_names): Check the minimal POST table size.
-	(load_format25, tt_face_free_ps_names): Updated accordingly.
-
-2021-05-02  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[bdf,pcf] Avoid memory zeroing (contd.).
-
-	* src/bdf/bdflib.c (bdf_create_property, _bdf_add_comment,
-	_bdf_add_property, bdf_load_font): Tweak allocation macros.
-	* src/pcf/pcfread.c (pcf_get_properties, pcf_get_metrics): Ditto.
-
-2021-05-01  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/cid/cidload.c (cid_read_subrs): Tweak allocaton macro.
-
-2021-05-01  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[sfnt] Avoid some memory zeroing.
-
-	* src/sfnt/sfobjs.c (sfnt_open_font, sfnt_init_face,
-	tt_name_ascii_from_{utf16,other}): Tweak allocaton macros.
-	* src/sfnt/ttload.c (tt_face_load_name): Ditto.
-
-2021-05-01  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sfnt/ttpost.c (load_format_{20,25}): Tweak allocaton macros.
-
-2021-05-01  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sfnt/pngshim.c (Load_SBit_Png): Tweak allocaton macro.
-
-2021-05-01  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[truetype] Avoid some memory zeroing.
-
-	* src/truetype/ttinterp.c (Init_Context): Tweak allocation macro.
-	* src/truetype/ttpload.c (tt_face_load_cvt): Ditto.
-
-2021-05-01  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[woff2] Avoid some memory zeroing.
-
-	* src/sfnt/sfwoff2.c (store_loca, woff2_open_font): Tweak macros.
-
-2021-04-30  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/gzip/ftgzip.c (ft_gzip_alloc): Zero out memory again.
-
-2021-04-27  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[lzw] Preserve decompression stack when relocating to heap.
-
-	* src/lzw/ftzopen.c (ft_lzwstate_stack_grow): Copy stack when
-	relocating to heap.
-
-2021-04-27  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/cid/cidgload.c (cid_load_glyph): Restore the glyph_length check.
-
-2021-04-27  Werner Lemberg  <wl at gnu.org>
-
-	* src/psmodule.c (ps_unicodes_init): Ignore empty glyph names.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=33637
-
-2021-04-26  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sfnt/sfobjs.c (sfnt_init_face): Revert macro change.
-
-2021-04-26  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cff] Avoid some memory zeroing.
-
-	* src/cff/cffparse.c (cff_parser_init): Tweak memory macro.
-	* src/cff/cffload.c (cff_index_load_offsets, cff_index_get_pointers,
-	cff_charset_load, cff_vstore_load): Ditto.
-
-2021-04-26  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[pfr] Avoid some memory zeroing.
-
-	* src/pfr/pfrobjs.c (pfr_face_init) : Tweak memory macro.
-	* src/pfr/pfrload.c (pfr_extra_item_load_stem_snaps,
-	pfr_phy_font_load): Ditto.
-
-2021-04-26  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/winfonts/winfnt.c (FNT_Face_Init): Tweak memory macro.
-
-2021-04-26  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[psaux,psnames] Avoid some memory zeroing.
-
-	* src/psaux/psstack.c (cf2_stack_init): Tweak memory macro.
-	* src/psnames/psmodule.c (ps_unicodes_init): Ditto.
-
-2021-04-25  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[base] Avoid some memory zeroing.
-
-	* src/base/ftrfork.c (FT_Raccess_Get_DataOffsets): Use FT_QNEW_ARRAY.
-	* src/base/ftsnames.c (FT_Get_Sfnt_{Name,LangTag}): Ditto.
-
-2021-04-25  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[bdf,pcf] Avoid some memory zeroing.
-
-	* src/pcf/pcfread.c (pcf_read_TOC, pcf_get_properties, pcf_load_font):
-	Tweak memory macros.
-	* src/bdf/bdfdrivr.c (BDF_Face_Init): Ditto.
-	* src/bdf/bdflib.c (_bdf_readstreami, bdf_create_property,
-	_bdf_parse_glyphs, _bdf_parse_start): Ditto.
-	(_bdf_add_property): Do not handle zero size.
-
-2021-04-25  Issam E. Maghni  <issam.e.maghni at mailbox.org>
-
-	* builds/meson/process_ftoption_h.py: Add LF at EOF.
-
-	This fixes
-
-	  .../ftoption.h:1030:10: error:
-	    no newline at end of file [-Werror,-Wnewline-eof]
-
-	for the generated `ftoption.h` file.
-
-2021-04-24  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/cff/cffload.c (cff_index_get_pointers): s/FT_QALLOC/FT_ALLOC/.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/base/ftobjs.c (Mac_Read_POST_Resource): s/FT_ALLOC/FT_QALLOC/.
-	* builds/mac/ftmac.c (FT_New_Face_From_SFNT, read_lwfn): Ditto.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sdf/ftsdf.c (sdf_{edge,contour,shape}_new): Use FT_QALLOC.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[sfnt] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/sfnt/sfdriver.c (get_win_string, get_apple_string,
-	sfnt_get_var_ps_name): Do not zero out the buffer.
-	* src/sfnt/sfobjs.c (sfnt_init_face): Ditto.
-	* src/sfnt/sfwoff.c (woff_open_font): Ditto.
-	* src/sfnt/sfwoff2.c (woff2_open_font): Ditto.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cff,type1,type42] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/cff/cffload.c (cff_index_get_pointers, cff_index_get_name):
-	Do not zero out the buffer.
-	* src/cff/cffdrivr.c (cff_ps_get_font_info): Ditto.
-	* src/type1/t1load.c (parse_subrs, parse_charstrings,
-	parse_blend_axis_types): Ditto.
-	* src/type1/t1parse.c (T1_New_Parser, T1_Get_Private_Dict): Ditto.
-	* src/type42/t42parse.c (t42_parser_init): Ditto.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cid] s/FT_ALLOC/FT_QALLOC/ and clean up.
-
-	* src/cid/cidgload.c (cid_load_glyph): Do not zero out the buffer.
-	* src/cid/cidload.c (cid_face_open, cid_read_subrs): Ditto.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[pfr] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/pfr/pfrload.c (pfr_extra_item_load_font_id, pfr_aux_name_load):
-	Do not zero out the buffer.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[bzip2,gzip] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/bzip2/ftbzip2.c (ft_bzip2_alloc): Do not zero out the buffer.
-	* src/gzip/ftgzip.c (ft_gzip_alloc, FT_Stream_OpenGzip): Ditto.
-
-2021-04-23  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[pcf,bdf,winfonts] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/pcf/pcfread.c (pcf_interpret_style): Do not zero out the buffer.
-	* src/bdf/bdfdrivr.c (bdf_interpret_style): Ditto.
-	* src/winfonts/winfnt.c (FNT_Face_Init, FNT_Load_Glyph): Ditto.
-
-2021-04-22  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cache] Optimize SBit copying.
-
-	* src/cache/ftcsbits.c (ftc_snode_load): Do not initialize the buffer.
-	(ftc_sbit_copy_bitmap): Accept zero size, s/FT_ALLOC/FT_QALLOC/.
-
-2021-04-22  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[gxvalid,otvalid] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/gxvalid/gxvmod.c (gxv_load_table): Do not zero out the buffer.
-	* src/otvalid/otvmod.c (otv_load_table): Ditto.
-
-2021-04-22  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[psaux] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/psaux/psobjs.c (ps_table_done, ps_parser_load_field): Do not
-	zero out the buffer.
-
-2021-04-22  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[base] s/FT_ALLOC/FT_QALLOC/ for initialized buffers.
-
-	* src/base/ftobjs.c (open_face_PS_from_sfnt_stream,
-	Mac_Read_sfnt_Resource): Do not zero out the buffer.
-	* src/base/ftmac.c (FT_New_Face_From_SFNT, read_lwfn): Ditto.
-	* src/base/ftrfork.c (raccess_make_file_name,
-	raccess_guess_darwin_hfsplus, raccess_guess_darwin_newvfs): Ditto.
-
-2021-04-20  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cache] Restore SBit copying for unowned (BDF) bitmaps.
-
-	* src/cache/ftcsbits.c (ftc_sbit_copy_bitmap): Restore.
-	(ftc_snode_load): Check ownership and copy unowned bitmaps.
-
-2021-04-19  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Return in 'COLR' v1 when layer pointer outside table
-
-	* src/sfnt/ttcolr.c (tt_face_get_paint_layers): Add missing return
-	when paint pointer outside table.
-	(read_paint): Add missing return when paint pointer outside table.
-
-2021-04-18  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cache] Switch to lazy SBit setting.
-
-	* src/cache/ftcsbits.c (ftc_sbit_copy_bitmap): Removed.
-	(ftc_snode_load): Take the bitmap ownership instead of copying.
-
-2021-04-16  Daniel Welty  <@danielwelty>
-
-	* src/cache/ftcsbits.c (ftc_snode_load): Properly handle short pitch.
-
-2021-04-16  Werner Lemberg  <wl at gnu.org>
-
-	* builds/unix/freetype2.m4: Fix help string formatting.
-
-	The indented `dnl` macros inserted unwanted horizontal space.
-
-	Problem reported by Ozkan Sezer <sezeroz at gmail.com>.
-
-2021-04-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Safeguard 'COLR' v1 layer extraction
-
-	* src/sfnt/ttcolr.c (tt_face_get_paint_layers): Do not output
-	layer pointer to iterator if it is outside the 'COLR' table.
-	(read_paint): Do not attempt to read layers that are outside the
-	table.
-
-2021-04-02  Ben Wagner  <bungeman at chromium.org>
-
-	[base] Complete `ft_glyphslot_clear`.
-
-	* src/base/ftobjs.c (ft_glyphslot_clear): This function is intended
-	to reset all the values of a glyph slot.  However, it was not
-	resetting the values of the advances and `glyph_index`.  Reset the
-	advances and `glyph_index` to zero.
-
-2021-04-02  Ben Wagner  <bungeman at chromium.org>
-
-	[truetype] Prevent glyph program state from persisting.
-
-	`FDEF` instructions are specified as allowed only in 'prep' or
-	'fpgm'.  FreeType has attempted to prevent their use in the glyph
-	program, but they were still allowed in glyph programs if defined in
-	a function defined in 'prep' or 'fpgm' and called from the glyph
-	program.
-
-	Similarly, `IDEF` instructions are specified not to be able to
-	modify any existing instruction.  FreeType has attempted to prevent
-	their use in the glyph program, but they can still be used like
-	`FDEF`.
-
-	This change stores the initial bytecode range type and disallows the
-	use of `FDEF` and `IDEF` while running the glyph program.
-
-	Most other state is copied from the `TT_Size` into the execution
-	context.  However, it is possible for a glyph program to use `WS` to
-	write to the storage area or `WCVTP`, `WCVTF`, and `DELTAC[123]` to
-	write to the control value table.
-
-	Allowing any change to the global state from the glyph program is
-	problematic as the outlines of any given glyph may change based on
-	the order the glyphs are loaded or even how many times they are
-	loaded.  There exist fonts that write to the storage area or the
-	control value table in the glyph program, so their use should not be
-	an error.
-
-	Possible solutions to using these in the glyph program are
-
-	  * ignore the writes;
-	  * value-level copy on write, discard modified values when finished;
-	  * array-level copy on write, discard the copy when finished;
-	  * array-level copy up-front.
-
-	Ignoring the writes may break otherwise good uses.  A full copy
-	up-front was implemented, but was quite heavy as even well behaved
-	fonts required a full copy and the memory management that goes along
-	with it.  Value-level copy on write could use less memory but
-	requires a great deal more record keeping and complexity.  This
-	change implements array-level copy on write.  If any attempt is made
-	to write to the control value table or the storage area when the
-	initial bytecode range was in a glyph program, the relevant array
-	will be copied to a designated storage area and the copy used for
-	the rest of the glyph program's execution.
-
-	* src/truetype/ttinterp.h (TT_ExecContextRec): New fields
-	`iniRange`, `glyfCvtSize`, `glyfCvt`, `origCvt`, `glyfStoreSize`,
-	`glyfStorage`, and `origStorage`.
-
-	* src/truetype/ttinterp.c (Modify_CVT_Check): New function to handle
-	`exc->glyfCvt`.
-	(Write_CVT, Write_CVT_Stretched, Move_CVT, Move_CVT_Stretched): Use
-	it.
-	(Ins_WS): Handle `exc->glyfStorage`.
-	(Ins_FDEF, Ins_IDEF): Updated.
-	(TT_RunIns): Updated.
-	(TT_Done_Context): Free 'glyf' CVT working and storage area.
-	(TT_Load_Context): Fix/add casts.
-
-	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Fix cast.
-
-2021-03-30  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Check validity of pointer location of `read_color_line`.
-
-	* src/sfnt/ttcolr.c (get_child_table_pointer): New function to fetch
-	child table pointer early for all paint formats that compute a child
-	table pointer.
-	(read_color_line, read_paint): Updated.
-	(tt_face_get_colorline_stops): Check `colr->table`.
-
-2021-03-28  Nikhil Ramakrishnan  <ramakrishnan.nikhil at gmail.com>
-
-	[docs] Update docwriter stylesheet for 1.3.1.
-
-	This change is required to support docwriter 1.3.1.
-
-	See
-
-	  https://gitlab.freedesktop.org/freetype/docwriter/-/merge_requests/101
-
-	for more information.
-
-	* docs/markdown/stylesheets/extra.css:
-	(.wy-nav-content, .md-sidebar--secondary): Remove.
-
-2021-03-16  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/sfnt/pngshim.c (Load_SBit_Png): Free `rows` once later.
-
-2021-03-16  Ben Wagner  <bungeman at google.com>
-
-	[sfnt] Fix memory leak in png loading.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/chromium/issues/detail?id=1182552
-
-	Memory is allocated and the pointer assigned to `rows` inside a
-	'setjmp' scope.  This memory must be freed outside the 'setjmp'
-	scope after a 'longjmp'.  Since `rows` is a local and modified
-	inside the 'setjmp' scope it must be marked volatile or it will have
-	an indeterminate value after the 'longjmp'.
-
-	* src/sfnt/pngshim.c (Load_SBit_Png): Fix memory leak of `rows`.
-
-2021-03-16  Christopher Degawa  <ccom at randomderp.com>
-
-	* CMakeLists.txt: Don't limit generation of 'pkg-config' file to UNIX.
-
-	mingw-w64 uses the 'pkg-config' files but does not set UNIX.
-
-2021-03-11  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/smooth/ftgrays.c (gray_set_cell): Refactor to fix VC++ warning.
-
-2021-03-13  Werner Lemberg  <wl at gnu.org>
-
-	Handle various VC++ compiler warnings.
-
-	Fixes #1039.
-
-	* src/base/ftstroke.c (ft_stroker_inside, ft_stroker_outside):
-	Initialize `sigma`.
-
-	* src/sdf/ftsdf.c (sdf_generate_with_overlaps): Exit immediately if
-	function arguments are invalid.
-	* src/sdf/ftsdfrend.c (sdf_property_set) <"overlaps">: Fix cast.
-
-	* src/sfnt/sfwoff2.c (woff2_decompress)
-	[!FT_CONFIG_OPTION_USE_BROTLI]: Use `FT_UNUSED`.
-
-	* src/truetype/ttgxvar.c (TT_Get_MM_Var): Initialize `fvar_head`.
-
-2021-03-11  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[smooth] Reduce copying during integration phase.
-
-	We now record `cover' and `area' directly into the linked list. This
-	makes rendering faster by 10% or even more at larger sizes.
-
-	* src/smooth/ftgrays.c (FT_INTEGRATE): Write directly.
-	(gray_TWorker): Add direct cell reference and remove unused fields.
-	(gray_set_cell): Consolidate the linked list management and pointers.
-	(gray_convert_glyph, gray_convert_glyph_inner): Updated.
-
-2021-03-10  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/smooth/ftgrays.c (FT_INTEGRATE): New convenience macro.
-	(gray_render_line, gray_render_scanline): Use it.
-
-2021-03-09  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/smooth/ftgrays.c (gray_render_line): Rearrange conditionals.
-
-	These produce faster or more optimizable code.
-
-2021-03-08  Tim-Philipp Müller  <tim at centricular.com>
-
-	[meson] Fix 'mmap' handling on Windows.
-
-	* meson.build (ft2_sources): Always use `windows/ftsystem.c` on
-	Windows unless mmap has been disabled.
-
-	  https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/5#note_829289
-
-2021-03-07  Tim-Philipp Müller  <tim at centricular.com>
-
-	[ci] Add basic support for Meson builds with MSVC on Windows.
-
-	This adds meson jobs for VS2017 (x86 and x86_64).
-
-	* .gitlab-ci.yml: New file.
-
-2021-03-07  Tim-Philipp Müller  <tim at centricular.com>
-
-	[meson] Add subproject fallbacks for 'libpng' and 'zlib'.
-
-	* subprojects/libpng.wrap, subprojects/zlib.wrap: New files.
-
-	* meson.build: Updated.
-
-2021-03-07  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	[meson] Make it work with Windows.
-
-	* meson.build: Do not process `ftconfig.h` when not using
-	`ftconfig.h.in`.
-
-	Fixes #1029.
-
-2021-02-25  Werner Lemberg  <wl at gnu.org>
-
-	[woff2] Fix memory leak.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28148
-
-	* src/sfnt/sfwoff2.c (woff2_open_font): Reject fonts that have
-	multiple tables with the same tag.  While not explicitly forbidden
-	in the OpenType specification, it is implicitly forbidden by
-	describing a binary search algorithm for tables that only works
-	reliably if table tags are unique.
-
-2021-02-22  Werner Lemberg  <wl at gnu.org>
-
-	* CMakeLists.txt: Update location of `LICENSE.TXT`.
-
-	Fixes #1035.
-
-2021-02-19  Werner Lemberg  <wl at gnu.org>
-
-	* builds/unix/ax_pthread.m4: Update from 'autoconf-archive'.
-
-	A bunch of fixes were added recently to its git repository.
-
-2021-02-17  Werner Lemberg  <wl at gnu.org>
-
-	[unix] Updates for autoconf 2.71.
-
-	This fixes warnings reported by autoupdate.
-
-	* builds/unix/ax_pthread.m4: Replace `as_echo` with `AS_ECHO`.
-
-	* builds/unix/configure.raw: Remove obsolete `AC_HEADER_STDC`.
-	Don't escape back quotes in messages for `AC_MSG_WARN`.
-
-2021-02-16  Werner Lemberg  <wl at gnu.org>
-
-	* builds/toplevel.mk: Fix previous commit.
-
-	<top_level>: Use `TOP_DIR` in `wildcard` function.
-	(check_out_submodule, copy_submodule): Move down to come after
-	definition of `all` rule.
-	Call `mkdir` conditionally.
-
-2021-02-16  Werner Lemberg  <wl at gnu.org>
-
-	* builds/toplevel.mk: Use rules for handling 'dlg'.
-
-	Suggested by Alexei.
-
-	(check_out_submodule, copy_submodule): New targets.
-	<top-level>: Replace calls to `shell` with rules.
-
-2021-02-16  Werner Lemberg  <wl at gnu.org>
-
-	* builds/toplevel.mk: Avoid side effects of `shell`.
-
-	We use a dummy variable to catch its output.  Otherwise the `make`
-	program is going to interpret the return value of `shell`; this can
-	cause obscure warning or error messages or even be harmful.
-
-2021-02-16  Werner Lemberg  <wl at gnu.org>
-
-	Move 'dlg' submodule to `subprojects` directory.
-
-	This is for future changes with Meson, which doesn't allow a
-	different name for its `subprojects` directory.  Having both a
-	`submodules` and a `subprojects` directory is confusing.
-
-	* .gitmodules, autogen.sh (copy_submodule_files, DLG_INC_DIR,
-	DLG_SRC_DIR): Updated.
-
-	* builds/toplevel.mk (<top-level>, do-dist),
-	builds/windows/vc2010/script.bat: Updated.
-
-	* src/tools/no-copyright: Updated.
-
-2021-02-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Update paint format values to support non-variable paints.
-
-	* freetype.h (FT_PaintFormat): Update paint format identifiers after
-	a specification change.  The specification was updated to have
-	sibling formats, variable and non-variable variants for each.
-	Reflect that here.
-
-	* sfnt/ttcolr.c (read_paint): Remove parsing of variable indices as
-	the non-variable formats no longer have them.
-
-2021-02-15  Daniel E  <daniel.engberg.lists at pyret.net>
-
-	* CMakeLists.txt: Improve 'bz2' support.
-
-	Not all distributions such as FreeBSD provide a `.pc` file for
-	'(lib)bz2' so follow autotools and add it to `Libs.private` instead.
-
-2021-02-13  Werner Lemberg  <wl at gnu.org>
-
-	* src/tools/update-copyright-year: Fix single-year entry handling.
-
-	The fix from 2021-01-17 didn't cover the case where the year to be
-	updated is identical to the current year.
-
-2021-02-13  Werner Lemberg  <wl at gnu.org>
-
-	Add new function `FT_Get_Transform`.
-
-	See
-
-	  https://github.com/harfbuzz/harfbuzz/issues/2428
-
-	for some reasons to introduce this function.
-
-	* include/freetype/freetype.h, src/base/ftobjs.c (FT_Get_Transform):
-	Implement it.
-
-2021-02-12  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	Decorate `qsort` callbacks with `cdecl`.
-
-	* include/freetype/internal/compiler-macros.h (FT_COMPARE_DEF):
-	Add new macro.
-
-	* src/base/ftrfork.c, src/bdf/bdflib.c, src/gxvalid/gxvcommn.c,
-	src/psaux/afmparse.c, src/psnames/psmodule.c, src/type1/t1afm.c,
-	src/sfnt/sfwoff.c, src/sfnt/sfwoff2.c: Update `qsort` callbacks.
-
-	Fixes #1026 when compiling FreeType with an unusual calling
-	convention while the C library function `qsort` still expects
-	`cdecl`.
-
-2021-02-10  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Implement 'COLR' v1 sweep gradients.
-
-	* freetype.h (FT_PaintSweepGradient): Add `FT_PaintSweepGradient` to
-	represent a 'COLR' v1 sweep gradient.
-	Update format.
-	(FT_PaintFormat): Update shifted paint formats.
-	Sync with spec.
-	* sfnt/ttcolr.c (read_paint): Logic to parse sweep gradients.
-	Fix struct access in radial gradient implementation.
-
-2021-02-09  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Provide optional root transform for 'COLR' v1 glyph graph.
-
-	* include/freetype/freetype.h (FT_Get_Color_Glyph_Paint):
-	Additional function argument `root_transform` to control whether
-	root transform should be returned.
-	(FT_OpaquePaint): Additional tracking field to denote whether
-	root transform is to be returned.
-	* include/freetype/internal/sfnt.h
-	(TT_Get_Color_Glyph_Paint_Func): Propagate additional argument.
-	* src/base/ftobjs.c (FT_Get_Color_Glyph_Paint): Ditto.
-	* src/sfnt/ttcolr.c (tt_face_get_colr_glyph_paint): Return root
-	transform reflecting the size and tranform configured on
-	`FT_Face`.
-	(read_paint): Initialize and track status of insert_root_transform
-	flag.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	* meson.build: s/freetype2_dep/freetype_dep/.
-
-	Many projects (e.g., fontconfig, cairo) hardcode the `freetype_dep`
-	variable name to use FreeType as subproject because that was the
-	variable name in Centricular's Meson port of FreeType.  While they
-	should stop hardcoding that variable name, it does not cost us
-	anything to keep using that name to ease transition.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	[meson] Fix handling of HarfBuzz library.
-
-	* meson.build (harfbuzz_dep): Do not fall back to HarfBuzz by
-	default.
-
-	Otherwise it causes a dependency cycle:
-
-	  cairo => fontconfig => freetype2 => harfbuzz => cairo
-
-	Meson will still fall back to HarfBuzz subprojects if the `harfbuzz`
-	option is set to `enabled` instead of `auto` and a
-	`subprojects/harfbuzz.wrap` file is present.  In that case it is the
-	responsibility of the main project to set the proper options on each
-	subproject to break the dependency cycle.
-
-	Fixes: #1028.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	[meson] Fix dependency lookup and generate `ftconfig.h`.
-
-	- zlib: If not found on the system, meson can build it as a
-	  subproject.  We thus never use the (outdated) zlib support that
-	  comes with FreeType.  Doing so has the additional advantage that
-	  the zlib code can be shared with other projects like GLib if both
-	  are subprojects of an application.
-	- harfbuzz: Build as a subproject if not found on the system.
-	- 'QUESTION: What if the compiler doesn't support `-D` but uses `/D`
-	  instead as on Windows?'  Answer: Meson translate arguments for us.
-	- visibility: Replace self-made code with meson-specific solution.
-
-	* meson.build (ft2_defines): Rewrite logic to set and handle it.
-	(process_header_command): New variable, previously called
-	`ftoption_command`.
-	(ftoption_command, ftconfig_command): New variables.
-	(zlib_option): Removed.
-	(zlib_dep): New variable.
-	(ft2_deps): Updated.
-	(harfbuzz_dep): Updated.
-	(ftconfig_h_in, ftconfig_h): New variables.
-	(ft2_sources): Updated.
-	(ft2_lib): Updated, handle visibility.
-	(summary): Updted.
-
-	* meson_options.txt (zlib): Updated.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	* meson.build: Fix resource compilation on Windows.
-
-	This is copied from GStreamer's meson port of FreeType.
-
-	(ft2_sources): Add both debug and resource file (the latter for
-	Windows only).
-	(ft2_debug_src): Removed.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	* meson.build: s/ft2_libtool_version/ft2_pkgconfig_version/.
-
-	(freetype2_dep): Use it.
-
-	`ft2_libtool_version` would be the shared library version, not the
-	one we should use in file `freetype2.pc`.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	* meson.build: Use `meson.override_dependency`.
-
-	This is a new meson mechanism to avoid other projects to hard-code
-	the `freetype2_dep` variable name in their build definition.  It
-	also ensures that meson does not mix system and subproject versions
-	of FreeType inside of the same project.
-
-	Also remove outdated TODO because `declare_dependency` was already
-	there.
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	* meson.build (bzip2_dep): Simplify.
-
-	We remove `static:false` from `find_library('bz2')`.
-
-	I don't know whether the previous code was a workaround for an old
-	meson bug, but at least with version >=0.55.0 (which FreeType uses)
-	it picks the shared library when both are available.
-
-	File `freetype2.pc` still contains the full path to file `libbz2.so`
-	instead of `-lbz2` – that we need to do this is a meson bug even
-	present in the current version (0.57.0).
-
-2021-02-09  Xavier Claessens  <xavier.claessens at collabora.com>
-
-	* meson.build: Set project version.
-
-2021-02-04  Werner Lemberg  <wl at gnu.org>
-
-	[base] Fix Netpbm tracing message.
-
-	* src/base/ftobjs.c (FT_Render_Glyph_Internal): Don't emit Netpbm
-	warning if there is nothing to output.
-
-2021-02-04  Werner Lemberg  <wl at gnu.org>
-
-	* src/*: Don't use more than one '\n' in `FT_TRACE` and `FT_ERROR`.
-
-	This ensures good logging output, with all lines having a proper
-	prefix (if requested).
-
-	This is a continuation of a similar patch from 2020-12-02, which
-	missed some locations.
-
-2021-02-03  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* builds/unix/configure.raw [mmap]: Restore default path.
-
-	Fixes #1023.
-
-2021-02-03  Werner Lemberg  <wl at gnu.org>
-
-	[psaux] Fix integer overflow.
-
-	Reported as
-
-	  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=30154
-
-	* src/psaux/psblues.c (cf2_blues_capture): Use `SUB_INT32`.
-
-2021-02-02  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* builds/unix/configure.raw [mmap support]: Explicitly handle Windows.
-
-	Fixes #1024.
-
-2021-01-31  Werner Lemberg  <wl at gnu.org>
-
-	* builds/unix/configure.raw [mmap support]: Correctly handle Windows.
-
-	Fixes #1024.
-
-2021-01-31  Werner Lemberg  <wl at gnu.org>
-
-	* builds/windows/ftdebug.c: Synchronize with `src/base/ftdebug.c`.
-
-2021-01-31  Werner Lemberg  <wl at gnu.org>
-
-	Always provide logging API.
-
-	It's easier to have stubs if FT_DEBUG_LOGGING is undefined than to
-	modify `ftexport.sym` conditionally.
-
-	Problem reported by Alexei.
-
-	* src/base/ftdebug.c: Include `ftlogging.h`.
-	(FT_Trace_Set_Level, FT_Trace_Set_Default_Level, FT_Set_Log_Handler,
-	FT_Set_Default_Log_Handler) [!FT_DEBUG_LOGGING]: Provide stubs.
-
-2021-01-31  Werner Lemberg  <wl at gnu.org>
-
-	* builds/unix/configure.raw: Fix typo.
-
-	Bug introduced in Vincent's last commit bb33f03.
-
-	Fixes issue #1021.
-
-2021-01-27  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* src/base/ftstroke.c (FT_Stroker_EndSubPath): Ignore tiny gaps.
-
-	Fixes bug #1020.
-
-2021-01-27  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[stroker] Minor clean-up.
-
-	* src/base/ftstroke.c (FT_Stroker_{ConicTo,CubicTo}): Reset the last
-	line length.
-	(FT_Stroker_EndSubPath): Call `ft_stroker_process_corner'.
-
-2021-01-27  Vincent Torri  <vincent.torri at gmail.com>
-
-	* builds/windows/ftsystem.c: Add shared memory support on Windows.
-
-	* CMakeLists.txt (BASE_SRCS), builds/unix/configure.raw (FTSYS_SRC),
-	builds/windows/vc2010/freetype.vcxproj,
-	builds/windows/visualc/freetype.vcproj, meson.build (ft2_sources):
-	Add it (conditionally).
-
-2021-01-23  Werner Lemberg  <wl at gnu.org>
-
-	Require HarfBuzz 2.0.0.
-
-	This is needed to make commit f1f9705f9 work.
-
-	* CMakeLists.txt (HARFBUZZ_MIN_VERSION), builds/unix/configure.raw
-	(harfbuzz_pkg), meson.build (harfbuzz_dep): Updated.
-
-2021-01-22  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* autogen.sh: Absorb `version.sed'.
-	* version.sed: Removed.
-
-2021-01-19  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* srd/base/ftlcdfil.c (FT_Library_SetLcdGeometry): Fix return value.
-
-2021-01-15  Nikolaus Waxweiler  <madigens at gmail.com>
-
-	[afshaper] Fix hb_ot_tags_from_script deprecation warning.
-
-	* autofit/afshaper.c (af_shaper_get_coverage): Copy the source code
-	of the function as suggested in
-	https://github.com/harfbuzz/harfbuzz/issues/2737 and adjust to handle
-	at most three tags.
-
-2021-01-17  Werner Lemberg  <wl at gnu.org>
-
-	* src/tools/update-copyright-year: Fix single-year entry handling.
-
-2021-01-16  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* builds/unix/unixddef.mk: Remove the second DEVEL_DIR definition.
-
-2021-01-14  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Additional checks for 'colr' table presence.
-
-	* sfnt/ttcolr.c (tt_face_get_colr_glyph_paint,
-	tt_face_get_colorline_stops, tt_face_get_paint): Additional checks
-	for whether colr table is present.  Prevents crashes when these
-	methods are called on non-COLR fonts.
-
-2021-01-13  Dominik Röttsches  <drott at chromium.org>
-
-	Add config option to test for 'COLR' v1 support in headers.
-
-	* include/freetype/config/ftoption.h (TT_SUPPORT_COLRV1): New macro
-	so that clients can test whether the FreeType checkout that they are
-	building against supports the 'COLR' v1 API.  This is intended to be
-	a temporary solution until 'COLR' v1 support is released in a
-	FreeType version and such a check can be made by using the version
-	number instead.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	[base] Fill 'COLR' v1 API templates to make them work (#59703).
-
-	* src/base/ftobjs.c (FT_Get_Color_Glyph_Paint, FT_Get_Paint_Layers,
-	FT_Get_Paint, FT_Get_Colorline_Stops): Add basic sanity checks,
-	check for existence of `FT_Face`, check arguments and delegate calls
-	for the respective 'COLR' v1 API to the SFNT driver.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Register 'COLR' v1 API in driver (#59703).
-
-	* include/freetype/internal/sfnt.h (TT_Get_Color_Glyph_Paint_Func,
-	TT_Get_Paint_Layers_Func, TT_Get_Colorline_Stops_Func,
-	TT_Get_Paint_Func): New function pointer types.
-	(SFNT_Interface): Add them.
-	(FT_DEFINE_SFNT_INTERFACE): Updated.
-
-	* src/sfnt/sfdriver.c (PUT_COLOR_LAYERS_V1): New macro.
-	(sfnt_interface): Add new function pointers.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Add 'COLR' v1 API to retrieve color layers (#59703).
-
-	* src/sfnt/ttcolr.c (tt_face_get_paint_layers): New function to get
-	the layers of a `PaintColrLayers` table in the font, using an
-	`FT_LayerIterator` from an `FT_PaintColrLayers` object retrieved via
-	`tt_face_get_paint`.
-
-	* src/sfnt/ttcolr.h: Updated.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Add 'COLR' v1 API to iterate color stops (#59703).
-
-	* src/sfnt/ttcolr.c (tt_face_get_colorline_stops): New function to
-	return the current `FT_ColorStop` object from `FT_ColorStopIterator`.
-	Also increment the iterator.
-
-	* src/sfnt/ttcolr.h: Updated.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Add API to get actual paint from `FT_OpaquePaint` (#59703).
-
-	* src/sfnt/ttcolr.c (tt_face_get_paint): New function to resolve an
-	`FT_OpaquePaint` paint reference into an `FT_COLR_Paint` object of a
-	certain format, which contains the detailed information stored in a
-	paint of the respective format.
-	(read_paint): New function to provide the format specific parsing
-	and to populate the data members of each specific `FT_COLR_Paint`
-	subtype.
-	(read_color_line): New function to parse retrieved color line
-	information into an `FT_ColorLine` object, which has information
-	about the color line extend mode as well as an
-	`FT_ColorStopIterator` object.
-
-	* src/sfnt/ttcolr.h: Updated.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	[sfnt] Add API to retrieve 'COLR' v1 root paint (#59703).
-
-	* src/sfnt/ttcolr.c (BaseGlyphV1Record): New structure.
-	(tt_face_load_colr): Handle version 1 table header.
-	(find_base_glyph_v1_record): New auxiliary function.
-	(tt_face_get_colr_glyph_paint): New function to find the root
-	`FT_OpaquePaint` object for a given glyph ID.
-
-	* src/sfnt/ttcolr.h: Updated.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	Add new methods required for 'COLR' v1 to public API (#59703).
-
-	* include/freetype/freetype.h (FT_Get_Color_Glyph_Paint): New method
-	for retrieving the root paint object for a color glyph by specifying
-	a glyph ID.
-	(FT_Get_Paint_Layers): New method for retrieving the layers of a
-	`PaintColorGlyph`.
-	(FT_Get_ColorLine_Stops): New method for retrieving the stops of a
-	color.
-	(FT_Get_Paint): New method for resolving an `FT_OpaquePaint` into an
-	`FT_COLR_Paint` object.
-
-2020-12-16  Dominik Röttsches  <drott at chromium.org>
-
-	Add types required for 'COLR' v1 to public API (#59703).
-
-	* include/freetype/freetype.h (FT_PaintFormat, FT_ColorStopIterator,
-	FT_ColorIndex, FT_ColorStop, FT_PaintExtend, FT_ColorLine,
-	FT_Affine23, FT_CompositeMode, FT_OpaquePaint, FT_PaintColrLayers,
-	FT_PaintSolid, FT_PaintLinearGradient, FT_PaintRadialGradient,
-	FT_PaintGlyph, FT_PaintColrGlyph, FT_PaintTransformed,
-	FT_PaintTranslate, FT_PaintRotate, FT_PaintSkew, FT_PaintComposite,
-	FT_COLR_Paint): Adding structs and enum to represent paint format,
-	color stop information, gradient extend information, structs to
-	reference paint offsets, and to define transforms and compositions.
-	Adding a union type to represent the union of the structs,
-	distinguished by `FT_PaintFormat`.
-
-2021-01-10  Werner Lemberg  <wl at gnu.org>
-
-	* builds/*: s/BUILD_DIR/PLATFORM_DIR/.
-
-	The old variable name caused confusion.
-
-2021-01-08  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[builds] Revert `FTMODULE_H' changes.
-
-	* builds/toplevel.mk, builds/freetype.mk: Revert changes.
-
-2021-01-07  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[builds/windows] Fix up DLG build with VC++.
-
-	* builds/windows/vc2010/script.bat: Copy headers to include/.
-	* builds/windows/vc2010/freetype.vcxproj: Remove DLG paths.
-
-2021-01-07  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[builds] Relocate `FTMODULE_H'.
-
-	* builds/toplevel.mk: Place `FTMODULE_H' in include/.
-	* builds/freetype.mk: Simplify included path.
-
-2021-01-07  Werner Lemberg  <wl at gnu.org>
-
-	Fix ABI incompatibility.
-
-	* include/freetype/ftimage.h (FT_Pixel_Mode): Don't insert
-	`FT_PIXEL_MODE_GRAY16' but append it.
-
-	* src/base/ftobjs.c (pixel_modes): Updated.
-
-2021-01-07  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[dlg] Move the headers to include/dlg to simplify their use.
-
-	* autogen.sh, builds/toplevel.mk: Copy headers to include/dlg.
-	* builds/freetype.mk, builds/windows/vc2010/freetype.vcxproj:
-	Simplify included path.
-	* include/freetype/internal/ftdebug.h: Simplify #include.
-	* src/dlg/rules.mk, .gitignore: Updated.
-
-2021-01-06  Werner Lemberg  <wl at gnu.org>
-
-	* meson.build: Add summary.
-
-	Based on a patch from Vincent Torri <vincent.torri at gmail.com>.
-
-2021-01-06  Torsten Hilbrich  <emacs.nolkaf at hilbrich.tk>
-
-	* meson.build: Fix 'png' build option (#59458).
-
-	Without this patch, 'png' is always required.
-
-2021-01-04  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[builds/windows] Add SDF to VC2010 project.
-
-	* builds/windows/vc2010/freetype.vcxproj: Updated;
-	AfterBuild conveniences.
-
-2020-12-26  Werner Lemberg  <wl at gnu.org>
-
-	[sdf] Use 'counter-clockwise', not 'anti-clockwise'.
-
-	We prefer US nomenclature.
-
-	* src/sdf/ftsdf.c (SDF_Contour_Orientation):
-	s/SDF_ORIENTATION-ACW/SDF_ORIENTATION_CCW/.
-	Update all users.
-
-2020-12-26  Werner Lemberg  <wl at gnu.org>
-
-	* src/base/ftobjs.c (pixel_modes): Updated.
-
-2020-12-26  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Remove custom memory tracker.
-
-	The internal FreeType memory tracker is sufficient.
-
-	* src/sdf/ftsdf.c (FT_DEBUG_INNER, FT_ASSIGNP_INNER, SDF_MemoryUser,
-	sdf_alloc, sdf_free, SDF_ALLOC, SDF_FREE,
-	SDF_MEMORY_TRACKER_DECLARE, SDF_MEMORY_TRACKER_SETUP,
-	SDF_MEMORY_TRACKER_DONE): Removed.
-
-	s/SDF_ALLOC/FT_ALLOC/.
-	s/SDF_FREE/FT_FREE/.
-
-	Other updates.
-
-2020-12-24  Werner Lemberg  <wl at gnu.org>
-
-	[sdf] Fix `make multi`.
-
-	* src/sdf/ftsdf.c: Include `ftoutln.h`.
-
-2020-12-24  Werner Lemberg  <wl at gnu.org>
-
-	[sdf] Fix tracing.
-
-	* include/freetype/internal.fttrace.h: Add 'bsdf' component.
-
-	* src/sdf/ftbsdf.c, src/sdf/ftsdf.c (FT_COMPONENT): Define.
-
-2020-08-21  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add debugging function.
-
-	* src/sdf/ftsdf.c (sdf_shape_dump): New function.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add 'bsdf' renderer to 'sdf' module.
-
-	* src/sdf/ftsdfrend.c (ft_bsdf_render): New function.
-
-	(ft_bitmap_sdf_renderer_class): New structure.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add interface functions for the 'bsdf' rasterizer.
-
-	* src/sdf/ftsdf.c (bsdf_raster_new, bsdf_raster_reset,
-	bsdf_raster_set_mode, bsdf_raster_render, bsdf_raster_done): New
-	functions.
-
-	(ft_bitmap_sdf_raster): New variable.
-
-	* src/sdf/ftsdf.h: Updated.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add function to copy SDF data into output bitmap.
-
-	* src/sdf/ftbsdf.c (finalize_sdf): New function.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add '8-point sequential Euclidean distance mapping' algorithm.
-
-	* src/sdf/ftbsdf.c (compare_neighbor, first_pass, second_pass,
-	edt8): New functions.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add function to copy source bitmap to distance map.
-
-	* src/sdf/ftbsdf.c (bsdf_init_distance_map): New function.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add functions to compute pixel edge distances.
-
-	* src/sdf/ftbsdf.c (compute_edge_distance, bsdf_approximate_edge):
-	New functions.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add function to find edge pixels in a grid of alpha values.
-
-	* src/sdf/ftbsdf.c (bsdf_is_edge): New function.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add essential structures for the 'bsdf' rasterizer.
-
-	* src/sdf/ftbsdf.c (ONE): New macro.
-	(BSDF_TRaster, ED, BSDF_Worker): New structures.
-	(zero_ed): New constant.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add 'sdf' module to non-gnumake build systems.
-
-	* include/freetype/config/ftmodule.h: Add both the 'sdf' and 'bsdf'
-	renderers to the list of modules.
-
-	* CMakeLists.txt (BASE_SRCS): Add 'sdf' single-object module.
-
-2020-08-20  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Added basic overlapping contour support.
-
-	* src/sdf/ftsdf.c (sdf_generate_with_overlaps): New function.
-	(sdf_raster_render): Enable it.
-
-2020-08-19  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add build infrastructure.
-
-	* src/sdf/module.mk, src/sdf/rules.mk: New files.
-
-	* src/sdf/ftsdf.h (ft_sdf_raster): New forward declaration.
-
-	* include/freetype/ftmoderr.h (FT_MODERRDEF): Add error definition
-	for the 'sdf' module.
-
-	* include/freetype/internal/fttrace.h (FT_TRACE_DEF): Add trace
-	definition for the `sdf' module.
-
-	* modules.cfg (RASTER_MODULES): Add the `sdf' module to the list of
-	rasterizers.
-
-2020-08-19  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add interface functions for the 'sdf' rasterizer.
-
-	* src/sdf/ftsdf.c (sdf_raster_new, sdf_raster_reset,
-	sdf_raster_set_mode, sdf_raster_render, sdf_raster_done): New
-	functions.
-	(ft_sdf_raster): New structure.
-
-2020-08-19  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add subdivision and bounding box optimization.
-
-	* src/sdf/ftsdf.c (sdf_generate_bounding_box): New function, which
-	is an optimized version of `sdf_generate`.
-	(sdf_generate_subdivision): New function.
-
-2020-08-19  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add function to generate SDF.
-
-	* src/sdf/ftsdf.c (sdf_generate): New function, currently disabled.
-	This is a proof-of-concept implementation: It doesn't use any
-	optimization, it simply checks all grid points against all contours.
-
-2020-08-19  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add functions to get shortest distance from any edge/contour.
-
-	* src/sdf/ftsdf.c (sdf_edge_get_min_distance): New function.
-	(sdf_contour_get_min_distance): New function, currently disabled.
-
-2020-08-18  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add shortest distance finding functions.
-
-	* src/sdf/ftsdf.c (get_min_distance_line, get_min_distance_conic,
-	get_min_distance_cubic): New functions.  Note that
-	`get_min_distance_conic` comes with two implementations (using an
-	analytical and an iterative method, to be controlled with the
-	`USE_NEWTON_FOR_CONIC` macro).
-
-2020-08-18  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add function to resolve corner distances.
-
-	* src/sdf/ftsdf.c (resolve_corner): New function.
-
-2020-08-18  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add essential math functions.
-
-	* src/sdf/ftsdf.c (cube_root, arc_cos) [!USE_NEWTON_FOR_CONIC]: New
-	auxiliary functions.
-
-	* src/sdf/ftsdf.c (solve_quadratic_equation, solve_cubic_equation)
-	[!USE_NEWTON_FOR_CONIC]: New functions.
-
-2020-08-18  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add utility functions for contours.
-
-	* src/sdf/ftsdf.c (get_control_box, get_contour_orientation): New
-	functions.
-	(split_conic, split_cubic, split_sdf_conic, split_sdf_cubic,
-	split_sdf_shape): New functions.
-
-2020-08-17  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add functions to decompose `FT_Outline`.
-
-	* src/sdf/ftsdf.c (sdf_move_to, sdf_line_to, sdf_conic_to,
-	sdf_cubic_to): New auxiliary decomposition functions.
-	(sdf_compose_funcs): New structure.
-	(sdf_outline_decompose): New function.
-
-2020-08-17  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Structs, enums, macros, and functions for 'sdf' rasterizer.
-
-	* src/sdf/ftsdf.c (FT_DEBUG_INNER, FT_ASSIGNP_INNER)
-	[FT_DEBUG_LEVEL_TRACE && FT_DEBUG_MEMORY]: New macros.
-	(SDF_MemoryUser) [FT_DEBUG_LEVEL_TRACE && FT_DEBUG_MEMORY]: New
-	struct for memory usage tracing.
-	(sdf_alloc, sdf_free) [FT_DEBUG_LEVEL_TRACE && FT_DEBUG_MEMORY]: New
-	functions for memory usage tracing.
-
-	(SDF_ALLOC, SDF_FREE): New macros for memory management.
-	(SDF_MEMORY_TRACKER_DECLARE, SDF_MEMORY_TRACKER_SETUP,
-	SDF_MEMORY_TRACKER_DONE): New macros to set up memory usage tracing.
-
-	(USE_NEWTON_FOR_CONIC, MAX_NEWTON_DIVISIONS, MAX_NEWTON_STEPS,
-	CORNER_CHECK_EPSILON, CG_DIMEN): New configuration macros for
-	controlling the process of finding the shortest distance.
-
-	(MUL_26D6, VEC_26D6_DOT): New auxiliary macros.
-
-	(SDF_TRaster, SDF_Edge, SDF_Contour, SDF_Shape, SDF_Signed_Distance,
-	SDF_Params): New structs for setting up SDF data.
-	(SDF_Edge_Type, SDF_Contour_Orientation): New enums for SDF data.
-
-	(zero_vector, null_edge, null_contour, null_shape, max_sdf): Useful
-	constants.
-
-	(sdf_edge_new, sdf_edge_done, sdf_contour_new, sdf_contour_done,
-	sdf_shape_new, sdf_shape_done): New constructors and destructors.
-
-2020-08-17  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add raster parameters structure.
-
-	* src/sdf/ftsdf.h (SDF_Raster_Params): New structure.
-
-	* src/sdf/sdf.c: Include source files in order to make a single
-	object of the module.
-
-2020-08-17  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add 'sdf' renderer.
-
-	* src/sdf/ftsdf.c: Add 'sdf' renderer along with its interface
-	functions.
-	Also add functions to set and get properties.
-
-2020-08-17  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add common elements for 'sdf' and 'bsdf' renderers.
-
-	* src/sdf/ftsdfrend.h (SDF_Rendere_Module, ft_sdf_renderer_class,
-	ft_bitmap_sdf_renderer_class): New structures.
-
-	* src/sdf/ftsdfcommon.h (DEFAULT_SPREAD, MIN_SPREAD_MAX_SPREAD,
-	USE_SQUARED_DISTANCES): New macros.
-	(FT_INT_26D6, FT_INT_16D16, FT_26D6_16D16): New macros.
-	(FT_CALL, VECTOR_LENGTH_16D16): New macros.
-	(FT_26D6_Vec, FT_16D16_Vec, FT_16D16, FT_26D6, FT_6D10, FT_CBox):
-	New typedefs.
-	(square_root): New macro.
-
-	* src/sdf/ftsdferrs.h: Add module error setup.
-
-2020-08-16  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[sdf] Add files for new 'sdf' module.
-
-	Here is a breakdown of what the files will contain.
-
-	* src/sdf/ftsdfrend.c, src/sdf/ftsdfrend.h: The 'sdf' and 'bsdf'
-	renderers.
-
-	* src/sdf/ftsdf.c, src/sdf/ftsdf.h: The rasterizer for the 'sdf'
-	renderer.
-	* src/sdf/ftbsdf.c, src/sdf/ftbsdf.h: The rasterizer for the 'bsdf'
-	renderer.
-
-	* src/sdf/ftsdfcommon.h: Commmon properties and functions for both
-	rasterizers.
-	* src/sdf/ftsdferrs.h: Common error defines.
-
-	* src/sdf/sdf.c: For building a single object of the entire module.
-
-2020-08-16  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[base] Allow renderers of different formats.
-
-	* src/base/ftobjs.c (FT_Render_Glyph_Internal): Do not return if the
-	glyph's slot format is `FT_GLYPH_FORMAT_BITMAP`.  The forthcoming
-	'bsdf' renderer will require bitmaps for processing.
-
-	* src/base/ftobjs.c (ft_add_renderer, ft_remove_renderer): Remove
-	renderer's glyph format check before adding and removing them.  The
-	'bsdf' renderer will have a format `FT_GLYPH_FORMAT_BITMAP`.
-
-2020-08-16  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	Add data types required for the forthcoming 'sdf' module.
-
-	* include/freetype/freetype.h (FT_Render_Mode): Add new render mode
-	`FT_RENDER_MODE_SDF`, which will be used to generate SDF.
-
-	* include/freetype/ftimage.h (FT_Pixel_Mode): Add new pixel mode
-	`FT_PIXEL_MODE_GRAY16`, which will be the output of the 'sdf'
-	module.
-	(FT_RASTER_FLAG_SDF): New raster flag to be used internally by the
-	'sdf' module.
-
-	* include/freetype/fttypes.h (FT_F6Dot10): New data type.
-
-2020-08-16  Anuj Verma  <anujv at iitbhilai.ac.in>
-
-	[base] Allow renderers of different formats.
-
-	* src/base/ftobjs.c (FT_Render_Glyph_Internal): Do not return if the
-	glyph's slot format is `FT_GLYPH_FORMAT_BITMAP`.  The forthcoming
-	'bsdf' renderer will require bitmaps for processing.
-
-	* src/base/ftobjs.c (ft_add_renderer, ft_remove_renderer): Remove
-	renderer's glyph format check before adding and removing them.  The
-	'bsdf' renderer will have a format `FT_GLYPH_FORMAT_BITMAP`.
-
-2020-12-23  Werner Lemberg  <wl at gnu.org>
-
-	* builds/windows/detect.mk (COPY): Make it work with `shell`.
-
-	Without this patch, we get the error
-
-	  builds/toplevel.mk:127: *** missing separator.  Stop.
-
-	Reported by Anuj, with a solution from Alexei.
-
-2020-12-23  Ignacio Casal Quinteiro  <qignacio at amazon.com>
-
-	* meson.build (ft2_defines): Fix builds on Windows.
-
-2020-12-18  Tatsuyuki Ishi  <ishitatsuyuki at gmail.com>
-
-	[autofit] Fix double division in stem darkening.
-
-	The old code used to divide the darkening amount by em_ratio twice,
-	leading to unnecessarily bold stems on certain fonts with higher
-	units per em (e.g. Inter). This patch fixes it.
-
-	The return value of af_loader_compute_darkening was also changed to
-	use 16.16 fixed point to get rid of a redundant truncation operation.
-	This should slightly improve the precision, although it's still
-	bottlenecked by the emboldening function, which uses 26.6 fixed point.
-
-	* src/autofit/afloader.[ch]
-	(af_loader_compute_darkening): Return FT_Fixed.
-	(af_loader_embolden_glyph_in_slot): Revise calculations.
-
-2020-12-17  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	* include/freetype/ftmodapi.h (FT_FACE_DRIVER_NAME): New public macro.
-
-	The driver name is needed for `FT_Property_Set' and `FT_Property_Get'.
-
-2020-12-16  Chris Liddell  <chris.liddell at artifex.com>
-
-	[truetype] Fix incremental metrics (#59503).
-
-	* src/truetype/ttgload.c (tt_get_metrics, load_truetype_glyph):
-	Previously, the code would populate the phantom points before
-	calling the `get_glyph_metrics` callback.  For formats like PCL XL
-	format 1, class 2 downloaded fonts (where metrics are removed from
-	the TTF header), this causes problems when the hinting program uses
-	the phantom points (misplaced and distorted glyphs) due to the
-	metrics being unset (all zeros).
-	(tt_get_metrics_incr_overrides): Renamed to...
-	(tt_get_metrics_incremental): ... this.  Updated caller
-
-	* include/freetype/ftincrem.h: Update the documentation to make it
-	clearer that `get_glyph_metrics` is to retrieve metrics from a
-	non-standard source, but *not* for the purpose of imposing custom
-	metrics.
-
-2020-12-14  Werner Lemberg  <wl at gnu.org>
-
-	[type42] Pacify static analysis tools (#59682).
-
-	* src/type42/t42objs.c (T42_Size_Init, T42_GlyphSlot_Init): Avoid
-	warnings about uninitialized variables.
-
-2020-12-07  Werner Lemberg  <wl at gnu.org>
-
-	* builds/unix/configure.raw: Don't set `FT_DEBUG_LOGGING`.
-
-	All debug options are handled exclusively in `ftoption.h`.
-
-2020-12-07  Werner Lemberg  <wl at gnu.org>
-
-	* src/*: More fixes for using a '\n' in `FT_TRACE` and `FT_ERROR`.
-
-2020-12-07  Werner Lemberg  <wl at gnu.org>
-
-	*/*: s/FT_LOGGING/FT_DEBUG_LOGGING/.
-
-2020-12-05  Werner Lemberg  <wl at gnu.org>
-
-	* builds/toplevel.mk (do-dist): Remove `submodules` directory.
-
-2020-12-02  Werner Lemberg  <wl at gnu.org>
-
-	* src/*: Don't use more than one '\n' in `FT_TRACE` and `FT_ERROR`.
-
-	This ensures good logging output, with all lines having a proper
-	prefix (if requested).
-
-2020-12-02  Werner Lemberg  <wl at gnu.org>
-
-	[base] Don't close 'stderr' after logging.
-
-	* src/base/ftdebug.c, builds/windows/ftdebug.c (ft_logging_deinit):
-	Fix it.
-
-2020-12-02  Werner Lemberg  <wl at gnu.org>
-
-	* submodules/dlg: Updated to commit 9f0c8b22.
-
-2020-12-02  Werner Lemberg  <wl at gnu.org>
-
-	* src/bdf/bdflib.c: Fix `-Wformat` warning.
-
-2020-12-02  Werner Lemberg  <wl at gnu.org>
-
-	Improve setup for 'dlg' library.
-
-	* autogen.sh (copy_submodule_file), builds/toplevel.mk: Redirect
-	stderr to `/dev/null`.
-
-	* builds/toplevel.mk: Move code block to handle 'dlg' stuff into
-	`check_platform` conditional.
-	Also fix wildcard expressions for guarding `git submodule` commands.
-	Also make file copying work with non-Unix platforms (untested).
-
-2020-12-01  Werner Lemberg  <wl at gnu.org>
-
-	[build] Use gcc (and clang) in C99 mode.
-
-	Other compilers are unchanged.
-
-	* builds/compiler/gcc-dev.mk, builds/compiler/gcc.mk (ANSIFLAGS):
-	s/-ansi/-std=c99/.
-
-	* builds/freetype.mk (FT_CFLAGS): Remove `-std=c99`.
-
-	* builds/unix/configure.raw: Handle C99.
-	Remove no longer needed test for gcc 4.6 and earlier.
-
-2020-12-01  Werner Lemberg  <wl at gnu.org>
-
-	[dlg] Fix compiler warnings.
-
-	* src/dlg/dlgwrap.c: Duplicate some feature test macros from
-	`dlg.c`, which must come first before loading standard headers.  For
-	example, `freetype.h` loads `stdio.h` if compiled in debug mode.
-
-2020-12-01  Werner Lemberg  <wl at gnu.org>
-
-	* src/type42/t42parse.c: Fix `-Wformat` warnings.
-
-2020-12-01  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[builds/unix] Check for 'pthread' library.
-
-	* builds/unix/ax_pthread.m4: New file, taken from 'autoconf-archive'
-	git repository.
-
-	* builds/unix/configure.raw: Check for 'pthread'; also check whether
-	it works.
-
-2020-12-01  Werner Lemberg  <wl at gnu.org>
-
-	[base] Implement vertical alignment of log printing.
-
-	Based on a patch by Priyesh.
-
-	* include/freetype/internal/fttrace.h (FT_MAX_TRACE_LEVEL_LENGTH):
-	New macro.
-
-	* src/base/ftdebug.c, builds/windows/ftdebug.c (ft_log_handler):
-	Print logs after a fixed width to handle different lengths of
-	`FT_COMPONENT` entries.
-	Use `ft_strrchr` to check for final newline character.
-
-2020-11-30  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	Update logging related documentation.
-
-	* docs/DEBUG: Updates related to `FT_LOGGING`.
-
-	* README.git: Updates related to logging.
-
-2020-11-30  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	* src/*: Fix `-Wformat` warnings.
-
-2020-11-30  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[builds/windows] Changes to build 'dlg' with FreeType on Windows.
-
-	We only support Visual C++ 2010 and newer.
-
-	* builds/windows/vc2010/script.bat: New windows batch file to copy
-	necessary 'dlg' files from `submodules/dlg` to `src/dlg`.  This file
-	is used as a pre-built event in Visual C++.
-
-	* builds/windows/ftdebug.c: Synchronize with `src/base/ftdebug.c`.
-
-	* builds/windows/vc2010/freetype.vcxproj.filters: Add
-	`src/dlgwrap.c`.
-
-	* builds/windows/vc2010/freetype.vcxproj
-	(AdditionalIncludeDirectories): Add include files of dlg for 'Debug'
-	and 'Debug Static' configurations on both 'x64' and 'win32'
-	platforms.
-	(PreprocessorDefinitions): Add `FT_LOGGING` for 'Debug' and 'Debug
-	Static' configurations on both 'x64' and 'win32' platforms.
-	Add `DLG_STATIC' for 'Debug' configuration on 'x64' and 'win32'
-	platforms.
-	(DisableLanguageExtensions): We need to disable the `/Za` option
-	when building 'dlg' with FreeType as 'dlg' strictly follows the C99
-	standard.  Visual C++ produces behaves unexpectedly when
-	compiling a C99 file with `/Za` option enabled.
-
-2020-11-30  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[base] Add public API to change log handling function.
-
-	* include/freetype/ftlogging.h (FT_Custom_Log_Handler): New function
-	typedef to store the custom callback logging function.
-	(FT_Set_Log_Handler, FT_Set_Default_Log_Handler): New functions to
-	set and reset custom log handler.
-
-	* include/freetype/internal/ftdebug.h (custom_output_handler): New
-	variable to support a custom callback logging function.
-	(FT_Logging_Callback): A new function typedef to print log using
-	custom callback logging function, which is set using
-	`FT_Set_Log_Handler`.
-	(FT_Log): Use it.
-
-	* src/base/ftdebug.c (FT_Set_Log_Handler,
-	FT_Set_Default_Log_Handler, FT_Logging_Callback): Add function
-	definitions.
-
-2020-11-28  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[base] Add public API to change the levels of tracing components.
-
-	* include/freetype/ftlogging.h: New header file.
-
-	* include/freetype/internal/ftdebug.h [FT_LOGGING]: Include
-	`ftlogging.h`.
-
-	* src/base/ftdebug.c (ft_custom_trace_level): New variable.
-	(ft_debug_init): Update to support change of levels of tracing
-	components of FreeType at run-time.
-	(FT_Trace_Set_Level): New function to change the levels of tracing
-	components at run-time.
-	(FT_Trace_Set_Default_Level): New function to reset the levels of
-	tracing components back to default.
-
-2020-11-28  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[base] Updates to print timestamp and name of `FT_COMPONENT` in logs.
-
-	* include/freetype/internal/ftdebug.h (FT_LOGGING_TAG,
-	FT_LOGGING_TAG_): New macros to resolve the value of `FT_COMPONENT'
-	into a string.
-	(ft_add_tag, ft_remove_tag): New functions to add and remove dlg tags.
-
-	* src/base/ftdebug.c: Add new variables to control the logging of
-	timestamp and name of `FT_COMPONENT` along with actual logs.
-	(ft_add_tag, ft_remove_tag): Add function definitions.
-	(ft_log_handler): Updates to print timestamp and name of
-	`FT_COMPONENT`.
-	(ft_debug_init) [FT_LOGGING]: Users can now control the logging of
-	timestamp and name of `FT_COMPONENT` by adding tags in the
-	`FT2_DEBUG` environment variable.
-
-2020-11-27  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[base] Add functions and variables to print logs to a file.
-
-	* include/freetype/internal/ftdebug.h: Added dlg's header files.
-	(FT_LOG): New macro to redirect trace logs to dlg's API's whenever
-	`FT_LOGGING' is defined.
-	(ft_logging_init, ft_logging_deinit): New functions to handle
-	initialization and uninitialization of logging related variables.
-	(ft_log_handler): New function to handle logs of FreeType.
-
-	* src/base/ftdebug.c: Add necessary logging related variables.
-	(ft_logging_init, ft_logging_deinit, ft_log_handler): Add function
-	definitions.
-
-	* src/base/ftinit.c (FT_Init_FreeType) [FT_LOGGING]: Call
-	`ft_logging_init`.
-	(FT_Done_FreeType) [FT_LOGGING]: Call `ft_logging_deinit`.
-
-	* src/base/ftobjs.c (FT_New_Library): Call `ft_debug_init` only if
-	`FT_LOGGING` is not defined.
-
-2020-11-27  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	[builds] Necessary changes to make 'dlg' compile.
-
-	* autogen.sh (copy_submodule_files): New script to copy all the
-	necessary source and include files from `submodules/dlg` to
-	`src/dlg`.
-
-	* src/dlg/dlgwrap.c: New wrapper file for `src/dlg.c`.  It enables
-	the build of 'dlg' if the `FT_LOGGING` macro is defined.
-
-	* src/dlg/rules.mk: New sub-Makefile.
-
-	* builds/freetype.mk (DLG_DIR): New variable to include the
-	header files of the 'dlg' library.
-	(INCLUDES): Add `DLG_DIR`.
-	(FT_CFLAGS): Add `-std=c99' flag.
-	Include `src/dlg/rules.mk` file to build 'dlg' library.
-	(OBJ_S, OBJ_M): Add `DLG_OBJS_M` and `DLG_OBJS_S`.
-
-	* builds/toplevel.mk: For builds directly from the git repository
-	we need to copy files from `submodule/dlg` to `src/dlg`.
-
-	* include/freetype/config/ftoption.h, devel/ftoption.h (FT_LOGGING):
-	New macro to enable or disable the logging facility in FreeType.
-
-2020-11-27  Priyesh Kumar  <priyeshkkumar at gmail.com>
-
-	* .gitmodules: Add 'dlg' library's git repository as submodule.
-
-2020-12-01  Werner Lemberg  <wl at gnu.org>
-
-	* src/tools/chktrcmp.py (trace_use_pat): Update to current use.
-
-2020-11-20  Alexei Podtelezhnikov  <apodtele at gmail.com>
-
-	[cff,cid,type1] Demote old engine for lack of CFF2.
-
-	* src/cff/cffobjs.c (cff_driver_init): Always default to Adobe engine.
-	* src/cid/cidobjs.c (cid_driver_init): Ditto.
-	* src/type1/t1objs.c (T1_Driver_Init): Ditto.
-
-2020-11-09  Werner Lemberg  <wl at gnu.org>
-
-	* src/type42/t42parse.c (t42_parse_sfnts): More tracing messages.
-
-2020-11-04  Werner Lemberg  <wl at gnu.org>
-
-	* meson.build: Fix .pc file generation.
-
-	For backwards compatibility we need the libtool version, not the .so
-	number.
-
-	Reported by Nikolaus.
-
-2020-10-28  Werner Lemberg  <wl at gnu.org>
-
-	[truetype] Minor update to forthcoming OpenType 1.8.4 standard.
-
-	* src/truetype/ttgxvar.c (ft_var_load_item_variation_store): Limit
-	size of `regionCount`.
-
-2020-10-26  Werner Lemberg  <wl at gnu.org>
-
-	* meson.build: Fix 'harfbuzz' and 'brotli' build options (#59347).
-
-	Without this patch, 'harfbuzz' and 'brotli' are always required.
-
-	Patch submitted anonymously in Savannah bug report.
-
-2020-10-23  Ben Wagner  <bungeman at google.com>
-
-	* src/sfnt/pngshim.c (Load_SBit_Png): Fix memory leak (#59322).
-
-	The issue is that `rows` is allocated but will not be freed in the
-	event that the call to `png_read_image` fails and calls `longjmp`.
-
 2020-10-20  Werner Lemberg  <wl at gnu.org>
 
 	* Version 2.10.4 released.
@@ -3624,7 +875,7 @@
 	security or bug fixes will be provided for those versions.  See
 
 	  https://devguide.python.org/#status-of-python-branches
-
+	
 	for more information.
 
 	* Jamfile (RefDoc): Add `site' parameter.
@@ -7799,7 +5050,7 @@
 
 ----------------------------------------------------------------------------
 
-Copyright (C) 2018-2021 by
+Copyright (C) 2018-2020 by
 David Turner, Robert Wilhelm, and Werner Lemberg.
 
 This file is part of the FreeType project, and may only be used, modified,

Copied: trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.20 (from rev 60353, trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.20)
===================================================================
--- trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.20	                        (rev 0)
+++ trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.20	2021-08-29 06:19:44 UTC (rev 60360)
@@ -0,0 +1,2613 @@
+2002-02-09  Werner Lemberg  <wl at gnu.org>
+
+	* README: Fix typo.
+	* docs/CHANGES: Minor fixes.
+
+
+	* Version 2.0.8 released.
+	=========================
+
+
+2002-02-08  David Turner  <david at freetype.org>
+
+	* docs/CHANGES: Updating for 2.0.8.
+
+	* include/freetype/freetype.h: Setting `PATCH_LEVEL' to 8 and
+	removing `FT_Get_Next_Char' from the API (temporarily).
+
+	* include/freetype/freetype.h: Adding comments to FT_Get_Next_Char;
+	note that this function might temporarily be removed for the 2.0.8
+	release.
+
+2002-02-07  David Turner  <david at freetype.org>
+
+	* src/pcf/pcfread.c (pcf_load_font): Removed immature support of
+	the AVERAGE_WIDTH property.
+
+2002-02-06  David Turner  <david at freetype.org>
+
+	* src/sfnt/sfobjs.c (SFNT_Load_Face): Since many fonts embedded in
+	PDF documents do not include 'cmap', 'post' and 'name' tables, the
+	SFNT face loader has been changed to not immediately report an
+	error if these are not present.
+
+	Note that the specification _requires_ these tables, but Adobe
+	seems to ignore it completely.
+
+	* src/sfnt/ttcmap.c: Removing compiler warnings.
+
+	* src/pcf/pcfread.c (pcf_read_TOC): Use FT_UInt.
+	(pcf_parse_metric, pcf_parse_compressed_metric): Removed.  Code
+	is now in ...
+	(pcf_get_metric): Here.
+	(pcfSeekToType): Renamed to ...
+	(pcf_seek_to_table_type): This.
+	Use FT_Int.
+	(pcfHasType): Renamed to ...
+	(pcf_has_table_type): This.
+	Use FT_Int.
+	(find_property): Renamed to ...
+	(pcf_find_property): This.
+	Use FT_Int.
+	(pcf_get_bitmaps, pcf_get_encodings): Handle invalid PCF fonts
+	better (delaying format checks out of FT_Access_Frame ..
+	FT_Forget_Frame blocks to avoid leaving the stream in an incorrect
+	state when encountering an invalid PCF font).
+
+	* src/pcf/pcfdriver.c (PCF_Done_Face): Renamed to ...
+	(PCF_Face_Done): This.
+	(PCF_Init_Face): Renamed to ...
+	(PCF_Face_Init): This.
+	(PCF_Get_Char_Index): Renamed to ...
+	(PCF_Char_Get_Index): This.
+	(PCF_Get_Next_Char): Renamed to ...
+	(PCF_Char_Get_Next): This.
+	(pcf_driver_class): Updated.
+
+	* src/pcf/pcf.h (PCF_Done_Face): Removed.
+
+2002-02-06  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/pcf/pcfdriver.c (FT_Done_Face): Fixed small memory leak.
+
+	* src/pcf/pcfread.c (pcf_load_font): Now handles the `AVERAGE_WIDTH'
+	property to return correct character pixel (width/height) pairs for
+	embedded bitmaps.
+
+2002-02-04  Keith Packard  <keithp at keithp.com>
+
+	Adding the function `FT_Get_Next_Char', doing the obvious thing
+	w.r.t. the selected charmap.
+
+	* include/freetype/freetype.h: Add prototype.
+	* include/freetype/internal/ftdriver.h: Add `FTDriver_getNextChar'
+	typedef.
+	(FT_Driver_Class): Use it.
+	* include/freetype/internal/psnames.h: Add `PS_Next_Unicode_Func'
+	typedef.
+	(PSNames_Interface): Use it.
+	* include/freetype/internal/tttypes.h: Add `TT_CharNext_Func'
+	typedef.
+	(TT_CMapTable): Use it.
+
+	* src/base/ftobjs.c (FT_Get_Next_Char): New function, implementing
+	high-level API.
+	* src/cff/cffdrivr.c (cff_get_next_char): New function.
+	(cff_driver_class): Add it.
+	* src/cid/cidriver.c (Cid_Get_Next_Char): New function.
+	(t1cid_driver_class): Add it.
+	* src/pcf/pcfdriver.c (PCF_Get_Next_Char): New function.
+	(pcf_driver_class): Add it.
+	* src/psnames/psmodule.c (PS_Next_Unicode): New function.
+	(psnames_interface): Add it.
+	* src/sfnt/ttcmap.c (code_to_next0, code_to_next2, code_to_next4,
+	code_to_next6, code_to_next_8_12, code_to_next_10): New auxiliary
+	functions.
+	(TT_CharMap_Load): Use them.
+	* src/truetype/ttdriver.c (Get_Next_Char): New function.
+	(tt_driver_class): Add it.
+	* src/type1/t1driver.c (Get_Next_Char): New function.
+	(t1_driver_class): Add it.
+	* src/winfonts/winfnt.c (FNT_Get_Next_Char): New function.
+	(winfnt_driver_class): Add it.
+
+	* src/pcf/pcfread.c (pcf_load_font): For now, report Unicode for
+	Unicode and Latin 1 encodings.
+
+2002-02-02  Keith Packard  <keithp at keithp.com>
+
+	* builds/unix/freetype-config.in: Add missing `fi'.
+
+
+	* Version 2.0.7 released.
+	=========================
+
+
+2002-02-01  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h: Increasing FREETYPE_PATCH to 7
+	for the new release.
+
+2002-01-31  David Turner  <david at freetype.org>
+
+	* README, README.UNX, docs/CHANGES: Updating documentation for the
+	2.0.7 release.
+
+2002-01-30  David Turner  <david at freetype.org>
+
+	* INSTALL: Moved to ...
+	* docs/INSTALL: Here to avoid conflicts with the `install' script on
+	Windows, where the filesystem doesn't preserve case.
+
+2002-01-29  David Turner  <david at freetype.org>
+
+	* configure: Fixed the script.  It previously didn't accept more
+	than one argument correctly.  For example, when typing:
+
+	  ./configure --disable-shared --disable-nls
+
+	the `--disable-nls' was incorrectly sent to the `make' program.
+
+2002-01-29  Werner Lemberg  <wl at gnu.org>
+
+	* README.UNX: Fix typo.
+	* builds/unix/install.mk (uninstall): Fix library name for libtool.
+
+2002-01-28  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli at ens.fr>
+
+	* src/pcf/pcfdriver.c (PCF_Done_Face): Fix incorrect destruction of
+	the face object (face->toc.tables, face->root.family_name,
+	face->root.available_size, face->charset_encoding,
+	face->charset_registry are now freed).  Thanks to Niels Moseley.
+
+2002-01-28  Roberto Alameda  <ojancano at geekmail.de>
+
+	* src/type1/t1load.c (parse_encoding): Set `loader->num_chars'.
+
+2002-01-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_subrs, parse_charstrings): Use copy
+	of `base' string for decrypting to not modify the original data.
+	Based on a patch by Jakub Bogusz <qboosh at pld.org.pl>.
+
+2002-01-27  Giuliano Pochini  <pochini at shiny.it>
+
+	* src/smooth/ftgrays.c (gray_render_scanline): Fix bug which caused
+	bad rendering of thin lines (less than one pixel thick).
+
+2002-01-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffdrivr.c (cff_get_name_index): Make last patch work
+	actually.
+
+2002-01-25  Martin Zinser  <zinser at decus.de>
+
+	* src/cache/ftccache.c (ftc_node_done, ftc_node_destroy): Fix
+	compilation warnings.
+	* src/base/descrip.mms (OBJS): Add `ftmm.obj'.
+	* src/cache/descrip.mms (ftcache.obj): Dependencies added.
+
+2002-01-25  WANG Yi  <wangyi at founder.com.cn>
+
+	* src/cff/cffdrivr.c (cff_get_name_index): Fix deallocation bug.
+
+2002-01-21  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* docs/PATENTS: Typo fixed (thanks to Detlef `Hawkeye' Würkner) in
+	the URL for the online resource.
+
+2002-01-18  Ian Brown  <ian.brown at printsoft.de>
+
+	* builds/win32/ftdebug.c: New file.
+	* builds/win32/visualc/freetype.dsp: Updated.
+
+2002-01-18  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/src/base/ftsystem.c: Updated for AmigaOS 3.9.
+	* builds/amiga/README: Updated.
+
+2002-01-18  Ian Brown  <ian.brown at printsoft.de>
+
+	* builds/win32/visualc/freetype.dsp: Updated.
+
+2002-01-13  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype2.a4: The script was still buggy.
+	* builds/unix/freetype-config.in: Make it really work for any install
+	prefix.
+
+2002-01-10  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype2.a4: Fix some serious bugs.
+
+2002-01-09  David Turner  <david at freetype.org>
+
+	* builds/unix/configure.ac: Build top-level Jamfile.
+
+2002-01-09  Maxim Shemanarev  <mcseemagg at yahoo.com>
+
+	* src/smooth/ftgrays.c (gray_render_line): Small optimization to
+	the smooth anti-aliased renderer that deals with vertical segments.
+	This results in a 5-7% speedup in rendering speed.
+
+2002-01-08  David Turner  <david at freetype.org>
+
+	Added some wrapper scripts to make the installation more
+	Unix-friendly.
+
+	* configure, install: New files.
+
+	* INSTALL, README.UNX: Updated installation documentation to use the
+	new 'configure' and 'install' scripts.
+
+2002-01-07  David Turner  <david at freetype.org>
+
+
+	* Version 2.0.6 released.
+	=========================
+
+
+	* docs/BUGS, docs/CHANGES: Updating documentation for 2.0.6 release.
+
+	* src/tools/docmaker.py: Fixed HTML quoting in sources.
+	(html_format): Replaced with ...
+	(html_quote): New function.
+	(html_quote0): New function.
+	(DocCode::dump_html): Small improvement.
+	(DocParagraph::dump, DocBlock::html): Use html_quote0 and html_quote.
+
+	* include/freetype/config/ftoption.h: Setting default options for
+	a release build (debugging off, bytecode interpreter off).
+
+	* src/base/ftobjs.c, src/base/ftoutln.c, src/cache/ftccmap.c,
+	src/cff/cffload.c, src/cff/cffobjs.c, src/pshinter/pshalgo2.c,
+	src/sfnt/ttload.c, src/sfnt/ttsbit.c: Removing small compiler
+	warnings (in pedantic compilation modes).
+
+2002-01-05  David Turner  <david at freetype.org>
+
+	* src/autohint/ahhint.c (ah_align_linked_edge): Modified computation
+	of auto-hinted stem widths; this avoids color fringes in
+	`ClearType-like' rendering.
+
+	* src/truetype/ttgload.c (TT_Load_Glyph_Header,
+	TT_Load_Simple_Glyph, TT_Load_Composite_Glyph, load_truetype_glyph):
+	Modified the TrueType loader to make it more paranoid; this avoids
+	nasty buffer overflows in the case of invalid glyph data (as
+	encountered in the output of some buggy font converters).
+
+2002-01-04  David Turner  <david at freetype.org>
+
+	* README.UNX: Added special README file for Unix users.
+
+	* builds/unix/ftsystem.c (FT_New_Stream): Fixed typo.
+
+	* src/base/ftobjs.c: Added #include FT_OUTLINE_H to get rid
+	of compiler warnings.
+
+	* src/base/ftoutln.c (FT_Outline_Check): Remove compiler warning.
+
+2002-01-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1objs.c (T1_Face_Init): Add cast to avoid compiler
+	warning.
+
+2002-01-03  Keith Packard  <keithp at keithp.com>
+
+	* builds/unix/ftsystem.c (FT_New_Stream): Added a fix to ensure that
+	all FreeType input streams are closed in child processes of a `fork'
+	on Unix systems.  This is important to avoid (potential) access
+	control issues.
+
+2002-01-03  David Turner  <david at freetype.org>
+
+	* src/type1/t1objs.c (T1_Face_Init): Fixed a bug that crashed the
+	library when dealing with certain weird fonts like `Stalingrad', in
+	`sadn.pfb' (this font has no full font name entry).
+
+	* src/base/ftoutln.c, include/freetype/ftoutln.h (FT_Outline_Check):
+	New function to check the consistency of outline data.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Use `FT_Outline_Check' to
+	ensure that loaded glyphs are valid.  This allows certain fonts like
+	`tt1095m_.ttf' to be loaded even though it appears they contain
+	really funky glyphs.
+
+	There still is a bug there, though.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix error condition.
+
+2001-12-30  David Turner  <david at freetype.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load): Fix advance width
+	computation of auto-hinted glyphs.  This noticeably improves the
+	spacing of letters in KDE and Gnome.
+
+2001-12-25  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* builds/dos/detect.mk: Correcting the order for Borland compilers:
+	16-bit bcc was never selected, always overridden by 32-bit bcc32.
+
+2001-12-22  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli at ens.fr>
+
+	* src/pcf/pcfread.c (pcf_load_font): Handle property `POINT_SIZE'
+	and fix incorrect computation of `available_sizes'.
+
+2001-12-22  David Turner  <david at freetype.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load): Auto-hinted glyphs had an
+	incorrect glyph advance in the case of mono-width fonts (like
+	Courier, Andale Mono, and others).
+
+2001-12-22  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/*: Adaptations to latest changes.
+	Support added for MorphOS.
+
+2001-12-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshrec.c (FT_COMPONENT): Redefine to `trace_pshrec'.
+	(ps_mask_table_merge, ps_hints_open, ps_hints_stem,
+	ps_hints_t1stem3, ps_hints_t2mask, ps_hints_t2counter): Fix
+	FT_ERROR messages.
+	* src/pshinter/pshalgo1.c (FT_COMPONENT): Define as
+	`trace_pshalgo1'.
+	* src/pshinter/pshalgo2.c (FT_COMPONENT): Define as
+	`trace_pshalgo2'.
+	* include/freetype/internal/ftdebug.h (FT_Trace): Updated.
+
+	* docs/modules.txt: New file.
+
+2001-12-21  David Turner  <david at freetype.org>
+
+	* src/pshinter/pshrec.c (ps_hints_t2mask, ps_hints_t2counter):
+	Ignore invalid `hintmask' and `cntrmask' operators (instead of
+	returning an error).  Glyph 2028 of the CFF font `MSung-Light-Acro'
+	couldn't be rendered otherwise (it seems its charstring is buggy,
+	though this requires more analysis).
+	(FT_COMPONENT): Define.
+
+	* src/cff/cffgload.c (CFF_Parse_CharStrings), src/psaux/t1decode.c
+	(T1_Decoder_Parse_Charstrings), src/pshinter/pshalgo2.c (*), Fixed a
+	bug where the X and Y axis where inverted in the postscript hinter.
+	This caused problem when displaying on non-square surfaces.
+
+	* src/pshinter/pshalgo2.c: s/vertical/dimension/.
+
+	* src/pshinter/pshglob.c (psh_globals_new): Replaced a floating
+	point constant with a fixed-float equivalent.  For some reasons not
+	all compilers are capable of directly computing a floating pointer
+	constant casted to FT_Fixed, and will link a math library instead.
+
+2001-12-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c (ftc_node_destroy, ftc_cache_lookup): Fix
+	tracing strings.
+	* src/cache/ftccmap.c (ftc_cmap_family_init): Ditto.
+	* src/cache/ftcmanag.c (ftc_family_table_alloc,
+	ftc_family_table_free, FTC_Manager_Check): Ditto.
+	* src/cache/ftcsbits.c (ftc_sbit_node_load): Ditto.
+
+	* src/base/ftobjs.c (FT_Done_Library): Remove compiler warning.
+
+2001-12-20  David Turner  <david at freetype.org>
+
+	Added PostScript hinter support to the CFF and CID drivers.
+
+	* include/freetype/internal/cfftypes.h (CFF_Font): New member
+	`pshinter'.
+	* src/cff/cffload.c (CFF_Get_Standard_Encoding): New function.
+	* src/cff/cffload.h: Updated.
+	* src/cff/cffgload.c (CFF_Init_Builder): Renamed to ...
+	(CFF_Builder_Init): This.
+	Added new argument `hinting'.
+	(CFF_Done_Builder): Renamed to ...
+	(CFF_Builder_Done): This.
+	(CFF_Init_Decoder): Added new argument `hinting'.
+	(CFF_Parse_CharStrings): Implement vstem support.
+	(CFF_Load_Glyph): Updated.
+	Add hinting support.
+	(cff_lookup_glyph_by_stdcharcode): Use CFF_Get_Standard_Encoding().
+	(cff_argument_counts): Updated.
+	* src/cff/cffgload.h: Updated.
+	* src/cff/cffobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
+	(CFF_Size_Get_Globals_Funcs, CFF_Size_Done, CFF_Size_Init,
+	CFF_Size_Reset, CFF_GlyphSlot_Done, CFF_GlyphSlot_Init): New
+	functions.
+	(CFF_Init_Face): Renamed to ...
+	(CFF_Face_Init): This.
+	Add hinter support.
+	(CFF_Done_Face): Renamed to ...
+	(CFF_Face_Done): This.
+	(CFF_Init_Driver): Renamed to ...
+	(CFF_Driver_Init): This.
+	(CFF_Done_Driver): Renamed to ...
+	(CFF_Driver_Done): This.
+	* src/cff/cffobjs.h: Updated.
+	* src/cff/cffdrivr.c (cff_driver_class): Updated.
+
+	* include/freetype/internal/t1types.h (CID_FaceRec): New member
+	`pshinter'.
+	* src/cid/cidgload.c (CID_Load_Glyph): Add hinter support.
+	* src/cid/cidobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
+	(CID_GlyphSlot_Done, CID_GlyphSlot_Init, CID_Size_Get_Globals_Funcs,
+	CID_Size_Done, CID_Size_Init, CID_Size_Reset): New functions.
+	(CID_Done_Face): Renamed to ...
+	(CID_Face_Done): This.
+	(CID_Init_Face): Renamed to ...
+	(CID_Face_Init): This.
+	Add hinting support.
+	(CID_Init_Driver): Renamed to ...
+	(CID_Driver_Init): This.
+	(CID_Done_Driver): Renamed to ...
+	(CID_Driver_Done): This.
+	* src/cid/cidobjs.h: Updated.
+	* src/cidriver.c: Updated.
+
+	* src/pshinter/pshrec.c (t2_hint_stems): Fixed.
+
+	* src/base/ftobjs.c (FT_Done_Library): Fixed a stupid bug that
+	crashed the library on exit.
+
+	* src/type1/t1gload.c (T1_Load_Glyph): Enable font matrix
+	transformation of hinted glyphs.
+
+	* src/cid/cidload.c (cid_read_subrs): Fix error condition.
+
+	* src/cid/cidobjs.c (CID_Face_Done): Fixed a memory leak; the subrs
+	routines were never released when CID faces were destroyed.
+
+	* src/cff/cffload.h, src/cff/cffload.c, src/cff/cffgload.c: Updated
+	to move the definition of encoding tables back within `cffload.c'
+	instead of making them part of a shared header (causing problems in
+	`multi' builds).  This reverts change 2001-08-08.
+
+	* docs/CHANGES: Updated for 2.0.6 release.
+	* docs/TODO: Added `stem3 and counter hints support' to the TODO
+	list for the Postscript hinter.
+	* docs/BUGS: Closed the AUTOHINT-NO-SBITS bug.
+
+2001-12-19  David Turner  <david at freetype.org>
+
+	* include/freetype/cache/ftcache.h: Added comments to indicate that
+	some of the exported functions should only be used by applications
+	that need to implement custom cache types.
+
+	* src/truetype/ttgload.c (cur_to_org, org_to_cur): Fixed a nasty bug
+	that prevented composites from loading correctly, due to missing
+	parentheses around macro parameters.
+
+	* src/sfnt/sfobjs.c (SFNT_Load_Face): Make the `post' and `name'
+	tables optional to load PCL fonts properly.
+
+	* src/truetype/ttgload.c (TT_Load_Glyph), src/base/ftobjs.c
+	(FT_Load_Glyph), include/freetype/freetype.h (FT_LOAD_SBITS_ONLY):
+	`Fixed' the bug that prevented embedded bitmaps to be loaded when
+	the auto-hinter is used.  This actually is a hack but will be enough
+	until the internal re-design scheduled for FreeType 2.1.
+
+	* src/raster/ftrend1.c (ft_raster1_render): Fixed a nasty outline
+	shifting bug in the monochrome renderer.
+
+	* README: Updated version numbers to 2.0.6.
+
+2001-12-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix test for invalid
+	glyph header.
+
+2001-12-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Remove compiler warning.
+	* include/freetype/ftcache.h (FTC_Node_Unref): Removed.  It is
+	already in ftcmanag.h.
+	* src/cache/ftcsbits.c (ftc_sbit_node_load): Remove unused variable
+	`gfam'.
+	* src/cache/ftcmanag.c (ftc_family_table_alloc,
+	* ftc_family_table_free): Use FT_EXPORT_DEF.
+	* include/freetype/cache/ftcmanag.h: Updated.
+	* src/cache/ftccache.c (ftc_node_destroy): Use FT_EXPORT_DEF.
+	* src/cache/ftccmap.c (ftc_cmap_node_init): Remove unused variable
+	`cfam'.
+	Remove compiler warning.
+	(FTC_CMapCache_Lookup): Remove compiler warnings.
+	(ftc_cmap_family_init): Ditto.
+	(FTC_CMapCache_Lookup): Ditto.
+
+	* builds/unix/configure.ac: Increase `version_info' to 8:0:2.
+	* builds/unix/configure: Regenerated.
+
+2001-12-14  Werner Lemberg  <wl at gnu.org>
+
+	* builds/mac/README: Updated.
+
+2001-12-14  Scott Long  <scott at swiftview.com>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fixing crash when
+	dealing with invalid fonts (i.e. glyph size < 10 bytes).
+
+2001-12-14  Sam Latinga  <slouken at devolution.com>
+
+	* builds/mac/freetype.make: A new Makefile to build with MPW on
+	MacOS classic.
+
+2001-12-14  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgload.c (TT_Load_Glyph), src/type1/t1gload.c
+	(T1_Load_Glyph), src/cid/cidgload.c (CID_Load_Glyph),
+	src/cff/cffgload.c (CFF_Load_Glyph): Fixed a serious bug common to
+	all font drivers (the advance width was never hinted when it
+	should).
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): New macro.
+	* src/base/ftdbgmem.c (debug_mem_dummy) [!FT_DEBUG_MEMORY]: Don't
+	use `extern' keyword.
+
+2001-12-12  David Turner  <david at freetype.org>
+
+	* src/pshinter/pshglob.c (psh_blues_scale_zones, psh_blues_snap_stem
+	psh_globals_new): Adding correct BlueScale/BlueShift support, plus
+	family blues processing.
+	* src/pshinter/pshglob.h (PSH_BluesRec): Updated.
+
+	Started adding support for the Postscript hinter in the CFF module.
+
+	* src/cff/cffgload.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
+	(CFF_Parse_CharStrings): Implement it.
+	* src/cff/cffgload.h: Updated.
+
+2001-12-12  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype2.m4: Some portability fixes.
+
+2001-12-11  Jouk Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* src/base/descrip.mms (OBJS): Add ftdebug.obj.
+
+2001-12-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (TT_Load_Generic_Header): Typos.
+
+2001-12-11  David Turner  <david at freetype.org>
+
+	* builds/unix/freetype-config.in: Modified the script to prevent
+	passing `-L/usr/lib' to gcc.
+
+	* docs/FTL.TXT: Simple fix (change `LICENSE.TXT' to `FTL.TXT').
+
+	* builds/unix/freetype2.m4: New file for checking configure paths.
+	We need to install it in $(prefix)/share/aclocal/freetype2.m4 but I
+	didn't modify builds/unix/install.mk yet.
+
+	* INSTALL: Updated the instructions to build shared libraries with
+	Jam.  They were simply wrong.
+
+	* src/base/fttrigon.c (FT_Cos): Fixed a small bug that caused
+	slightly improper results for `FT_Cos' and `FT_Sin' (example:
+	FT_Sin(0) == -1!).
+
+2001-12-11  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* include/freetype/internal/ftstream.h (GET_LongLE, GET_ULongLE):
+	Fixed incorrect argument types.
+
+2001-12-10  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli at ens.fr>
+
+	* src/pcf/pcfdriver.c (PCF_Init_Face): Allow Xft to use PCF fonts
+	by setting the `face->metrics.max_advance' correctly.
+
+2001-12-07  David Turner  <david at freetype.org>
+
+	* include/freetype/cache/ftccmap.h, src/cache/ftccmap.c: Added new
+	charmap cache.
+	* src/cache/ftcache.c: Updated.
+
+	* src/autohint/ahhint.c (ah_hinter_hint_edges): s/UNUSED/FT_UNUSED/.
+
+2001-12-06  Leonard Rosenthol  <leonardr at lazerware.com>
+
+	Added support for reading .dfont files on Mac OS X.  Also added a
+	new routine which looks up a given font by name in the Mac OS and
+	returns the disk file where it resides.
+
+	* src/base/ftmac.c: Include <Files.h> and <TextUtils.h>.
+	(is_dfont): New auxiliary function.
+	(FT_New_Face_From_dfont): New function.
+	(FT_GetFile_From_Mac_Name): New exported function.
+	(FT_New_Face): Updated.
+	* include/freetype/ftmac.h: Updated.
+
+2001-12-06  David Turner  <david at freetype.org>
+
+	* src/cache/Jamfile, src/cache/rules.mk: Updated.
+
+2001-12-06  Werner Lemberg  <wl at gnu.org>
+
+	* INSTALL: Small update.
+
+2001-12-05  David Turner  <david at freetype.org>
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Re-ordered code for
+	debugging purposes.
+	Comment out use of `origin'.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render): Fixed a nasty hidden bug
+	where outline shifting wasn't correctly undone after bitmap
+	rasterization.  This created problems with certain glyphs (like '"'
+	of certain fonts) and the cache system.
+
+	* src/pshinter/pshalgo1.c (psh1_hint_table_init): Fix typo.
+	* src/pshinter/pshalgo2.c (psh2_hint_table_init): Fix typo.
+	(ps2_hints_apply): Small fix.
+
+2001-12-05  David Turner  <david at freetype.org>
+
+	* src/pshinter/pshalgo2.c (psh2_hint_table_init),
+	src/pshinter/pshalgo1.c (psh1_hint_table_init): Removed compiler
+	warnings.
+
+	* include/freetype/ftcache.h, include/freetype/cache/*, src/cache/*:
+	Yet another massive rewrite of the caching sub-system in order to
+	both increase performance and allow simpler cache sub-classing.  As
+	an example, the code for the image and sbit caches is now much
+	simpler.
+
+	I still need to update the documentation in
+	www/freetype2/docs/cache.html to reflect the new design though.
+
+	* include/freetype/config/ftheader.h (FT_CACHE_CHARMAP_H): New
+	macro.
+	(FT_CACHE_INTERNAL_CACHE_H): Updated.
+
+2001-12-05  David Krause  <freetype at davidkrause.com>
+
+	* docs/license.txt: s/X Windows/X Window System/.
+
+2001-12-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c: Fix definition condition of MEM_Set().
+	* src/smooth/ftgrays.c (M_Y): Change value to 192.
+	* src/base/ftdbgmem.c (ft_mem_table_destroy): Fix printf() parameter.
+	Remove unused variable.
+	* src/cache/ftcimage.c (ftc_image_node_init,
+	ftc_image_node_compare): Remove unused variables.
+	* src/cache/ftcsbits.c (ftc_sbit_node_weight): Remove unused
+	variable.
+	* src/raster/ftraster.c (MEM_Set): Move definition down to avoid
+	compiler warning.
+	* src/autohint/ahhint.c (ah_hinter_hint_edges): Use UNUSED() to
+	avoid compiler warnings.
+	* src/pcf/pcfread.c (tableNames): Use `const'.
+	(pcf_read_TOC): Change counter name to avoid compiler warning.
+	Use `const'.
+	* src/pshinter/pshrec.c (ps_hints_close): Remove redundant
+	declaration.
+	* src/pshinter/pshalgo1.c (psh1_hint_table_init): Rename variables
+	to avoid shadowing.
+	* src/pshinter/pshalgo2.c (psh2_hint_table_activate_mask): Ditto.
+	* src/type1/t1objs.h: Remove double declarations of `T1_Size_Init()'
+	and `T1_Size_Done()'.
+
+2001-11-20  Antoine Leca  <antoineleca at multimania.com>
+
+	* include/freetype/ttnameid.h: Added some new Microsoft language
+	codes and LCIDs as found in MSDN (Passport SDK).  Also added
+	comments about the meaning of bit 57 of the `OS/2' table
+	(TT_UCR_SURROGATES) which (with OpenType v.1.3) now means `there is
+	a character beyond 0xFFFF in this font'.  Thanks to Detlef Würkner
+	<TetiSoft at apg.lahn.de> for noticing this.
+
+2001-11-20  David Turner  <david at freetype.org>
+
+	* src/pshinter/{pshalgo2.c, pshalgo1.c}: Fixed stupid bug in sorting
+	routine that created nasty alignment artefacts.
+
+	* src/pshinter/pshrec.c, tests/gview.c: Debugging updates.
+
+	* src/smooth/ftgrays.c: De-activated experimental gamma support.
+	Apparently, `optimal' gamma tables depend on the monitor type,
+	resolution and general karma, so it's better to compute them outside
+	of the rasterizer itself.
+	(gray_convert_glyph): Use `volatile' keyword.
+
+2001-10-29  David Turner  <david at freetype.org>
+
+	Adding experimental `gamma' support.  This produces smoother glyphs
+	at small sizes for very little cost.
+
+	* src/smooth/ftgrays.c (grays_init_gamma): New function.
+	(gray_raster_new): Use it.
+
+	Various fixes to the auto-hinter.  They merely improve the output of
+	sans-serif fonts.  Note that there are still problems with serifed
+	fonts and composites (accented characters).
+
+	* src/autohint/ahglyph.c (ah_outline_load,
+	ah_outline_link_segments): Implement it.
+	Fix typos.
+	(ah_outline_save, ah_outline_compute_segments): Fix typos.
+	* src/autohint/ahhint.c (ah_align_serif_edge): New argument
+	`vertical'.  Implement improvement.
+	(ah_hint_edges_3, ah_hinter_hint_edges): Implement it.
+	Fix typos.
+	(ah_hinter_align_strong_points, ah_hinter_align_weak_points): Fix
+	typos.
+	(ah_hinter_load): Set `ah_debug_hinter' if DEBUG_HINTER is defined.
+	* src/autohint/ahmodule.c: Implement support for DEBUG_HINTER macro.
+	* src/autohint/ahtypes.h: Ditto.
+	(AH_Hinter): Remove `disable_horz_edges' and `disable_vert_edges'
+	(making them global as `ah_debug_disable_horz' and
+	`ah_debug_disable_vert').
+	Fix typos.
+
+	* tests/gview.c: Updated the debugging glyph viewer to show the
+	hints generated by the `autohint' module.
+
+2001-10-27  David Turner  <david at freetype.org>
+
+	* src/cache/ftcchunk.c (ftc_chunk_cache_lookup): Fixed a bug that
+	considerably lowered the performance of the abstract chunk cache.
+
+2001-10-26  David Turner  <david at freetype.org>
+
+	* include/freetype/ftcache.h, include/freetype/cache/*.h,
+	src/cache/*.c: Major re-design of the cache sub-system to provide
+	better performance as well as an `Acquire'/`Release' API.  Seems to
+	work well here, but probably needs a bit more testing.
+
+2001-10-26  Leonard Rosenthol  <leonardr at lazerware.com>
+
+	* builds/mac/README: Updated to reflect my taking over the project
+	and that is now being actively maintained.
+
+	* src/base/ftmac.c (parse_fond): Applied patches from Paul Miller
+	<paulm at profoundeffects.com> to support loading a face other than the
+	first from a FOND resource.
+	(FT_New_Face_From_FOND): Updated.
+
+2001-10-25  Leonard Rosenthol  <leonardr at lazerware.com>
+
+	* builds/mac/ftlib.prj: Update of CodeWarrior project file for Mac
+	OS for latest version (7) of CWPro and for recent changes to the FT
+	source tree.
+
+2001-10-25  David Turner  <david at freetype.org>
+
+	* include/freetype/config/ftoption.h: Updated comments to explain
+	precisely how to use project-specific macro definitions without
+	modifying this file manually.
+
+	(FT_CONFIG_FORCE_INT64): Define.
+
+	(FT_DEBUG_MEMORY): New macro.
+
+2001-10-24  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* builds/unix/ftsystem.c (FT_New_Memory): Added a missing `{'.
+
+2001-10-23  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c:
+	Improvements to the memory debugger to report more information in
+	case of errors.  Also, some allocations that occurred through REALLOC
+	couldn't be previously caught correctly.
+
+	* src/autohint/ahglyph.c (ah_outline_compute_segments,
+	ah_outline_compute_edges), src/raster/ftraster.c (ft_black_new),
+	src/smooth/ftgrays.c (gray_render_span, gray_raster_new): Replaced
+	liberal uses of memset() by the MEM_Set() macro.
+
+2001-10-23  David Turner  <david at freetype.org>
+
+	* src/raster/ftraster.c (Update): Removed to be inlined in ...
+	(Sort): Updated.
+
+2001-10-22  David Turner  <david at freetype.org>
+
+	* builds/unix/ftsystem.c (FT_New_Memory, FT_Done_Memory),
+	builds/vms/ftsystem.c (FT_New_Memory, FT_Done_Memory),
+	builds/amiga/ftsystem.c (FT_New_Memory, FT_Done_Memory),
+	src/base/ftdbgmem.c: Updated the memory debugger and
+	platform-specific implementations of `ftsystem' in order to be able
+	to debug memory allocations on Unix, VMS and Amiga too!
+
+	* src/pshinter/pshalgo2.c (psh2_hint_table_record_mask): Removed
+	some bogus warnings.
+
+	* include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c:
+	Modified the debugging memory manager to report the location (source
+	file name + line number) where leaked memory blocks are allocated in
+	the source file.
+
+	* src/base/ftdbgmem.c: New debugging memory manager.  You must
+	define the FT_DEBUG_MEMORY macro in `ftoption.h' to enable it.  It
+	will record every memory block allocated and report simple errors
+	like memory leaks and double deletes.
+
+	* src/base/Jamfile: Include ftdbgmem.
+	* src/base/rules.mk: Ditto.
+	* src/base/ftbase.c: Include ftdbgmem.c.
+
+	* include/freetype/config/ftoption.h: Added the FT_DEBUG_MEMORY
+	macro definition.
+
+	* src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory): Modified the
+	base component to use the debugging memory manager when the macro
+	FT_DEBUG_MEMORY is defined.
+
+2001-10-21  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffload.c (CFF_Done_Font): Free subfonts array only if
+	we are working with a CID keyed CFF font.  Otherwise, a variable
+	that was never allocated memory might freed.  This is a correction
+	to the previous patch for freeing subfonts.
+
+2001-10-21  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffload.c (CFF_Done_Font): Free the subfonts array to
+	avoid a memory leak.
+
+2001-10-21  David Turner  <david at freetype.org>
+
+	* src/pshinter/pshalgo2.c, src/pshinter/pshalgo1.c,
+	src/pshinter/pshglob.c: Removing compiler warnings in pedantic modes
+	(in multi-object compilation mode, mainly).
+
+2001-10-20  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/type1/t1load.c (parse_encoding): Add a test to make sure
+	that custom encodings (i.e., neither StandardEncoding nor
+	ExpertEncoding) are not loaded twice when the Type 1 font is
+	synthetic.
+
+	* src/type1/t1load.c (parse_font_name, parse_subrs): Added a test
+	for when loading synthetic fonts to make sure that the font name
+	and subroutines are not loaded twice.  This is to remove a memory
+	leak that occurred because the original memory blocks for these
+	objects were not deallocated when the objects were parsed the
+	second time.
+
+2001-10-19  David Turner  <david at freetype.org>
+
+	* src/smooth/ftgrays.c, src/pshinter/pshglob.h,
+	src/pshinter/pshrec.c, src/pshinter/pshalgo2.c: Getting rid of
+	compiler warnings.
+
+	* src/pshinter/module.mk, src/pshinter/rules.mk: Adding control
+	files to build the PostScript hinter with the `old' build system.
+
+2001-10-19  Jacob Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* descrip.mms, src/pshinter/descrip.mms: Updates to the VMS build
+	files.
+
+2001-10-18  David Turner  <david at freetype.org>
+
+	* src/psnames/pstables.h, src/tools/glnames.py: Rewrote the
+	`glnames.py' script used to generate the `pstables.h' header file.
+	The old one contained a serious bug that made FreeType return
+	incorrect glyph names for certain glyphs.
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes): Changing computation of
+	pixel size from character size to use rounding.  This is an
+	experiment to see whether this gives values similar to Windows for
+	scaled ascent/descent/etc.
+
+	* src/base/ftcalc.c (FT_Div64by32): Changed the implementation
+	slightly since the original code was mis-compiled on Mac machines
+	using the MPW C compiler.
+
+	* src/base/ftobjs.c (FT_Realloc): When a memory block was grown
+	through FT_Realloc(), the new bytes were not set to 0, which created
+	some strange bugs in the PostScript hinter.
+	(destroy_face): Don't deallocate unconditionally.
+
+	* src/cid/cidgload.c (CID_Compute_Max_Advance, CID_Load_Glyph):
+	Adding support to new PostScript hinter.
+
+	* include/freetype/internal/psglobal.h,
+	include/freetype/internal/pshints.h,
+	include/freetype/config/ftmodule.h, src/pshinter/Jamfile,
+	src/pshinter/pshalgo.h, src/pshinter/pshalgo1.h,
+	src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.h,
+	src/pshinter/pshalgo2.c, src/pshinter/pshglob.h,
+	src/pshinter/pshglob.c, src/pshinter/pshinter.c,
+	src/pshinter/pshmod.c, src/pshinter/pshmod.h, src/pshinter/pshrec.c,
+	src/pshinter/pshrec.h: Adding new PostScript hinter module.
+
+	* include/freetype/internal/ftobjs.h,
+	include/freetype/internal/internal.h,
+	include/freetype/internal/psaux.h,
+	include/freetype/internal/t1types.h, src/psaux/psobjs.c,
+	src/psaux/psobjs.h, src/psaux/t1decode.h, src/psaux/t1decode.c,
+	src/type1/t1driver.c, src/type1/t1gload.c, src/type1/t1objs.c,
+	src/type1/t1objs.h: Updates to use the new PostScript hinter.
+
+	* tests/Jamfile, tests/gview.c: Adding a new glyph hinting
+	viewer/debugger to the source tree.  Note that you will _not_ be
+	able to compile it since it depends on an unavailable graphics
+	library named `Nirvana' to render vector images.
+
+2001-10-17  David Turner  <david at freetype.org>
+
+
+	* Version 2.0.5 released.
+	=========================
+
+
+	* include/freetype/freetype.h, include/internal/ftobjs.h,
+	src/base/ftobjs.c, src/type1/t1driver.c: Adding a new function named
+	'FT_Get_Postscript_Name' to retrieve the PostScript name of a given
+	font.  Should work with all formats except pure CFF/CEF fonts (this
+	will be added soon).
+
+	* src/cid/cidriver (cid_get_postscript_name): New function.
+	(CID_Get_Interface): Handle `postscript_name' interface.
+
+	* src/sfnt/sfdriver.c (get_sfnt_postscript_name): New function.
+	(SFNT_Get_Interface): Handle `postscript_name' interface.
+
+	* src/type1/t1driver.c (t1_get_ps_name): New function.
+	(Get_Interface): Handle `postscript_name' interface.
+
+	* README, docs/CHANGES: Updated for 2.0.5 release.
+
+2001-10-08  David Turner  <david at freetype.org>
+
+	Fixed a bug in `glnames.py' that prevented it from generating
+	correct glyph names tables.  This resulted in the unavailability of
+	certain glyphs like `Cacute', `cacute' and `lslash' in Unicode
+	charmaps, even if these were present in the font (causing problems
+	for Polish users).
+
+	* src/tools/glnames.py (mac_standard_names): Fixed.
+	(t1_standard_strings): Some fixes and renamed to ...
+	(sid_standard_names): This.
+	(t1_expert_encoding): Fixed.
+	(the_adobe_glyph_list): Renamed to ...
+	(adobe_glyph_names): This.
+	(the_adobe_glyphs): Renamed to ...
+	(adobe_glyph_values): This.
+	(dump_mac_indices, dump_glyph_list, dump_unicode_values, main):
+	Updated.
+	* src/psnames/pstables.h: Regenerated.
+	* src/psnames/psmodule.c (PS_Unicode_Value): Fix offset.
+	Fix return value.
+	Use `sid_standard_table' and `ps_names_to_unicode' instead of
+	`t1_standard_glyphs' and `names_to_unicode'.
+	(PS_Macintosh_Name): Use `ps_glyph_names' instead of
+	`standard_glyph_names'.
+	(PS_Standard_Strings): Use `sid_standard_names' instead of
+	`t1_standard_glyphs'.
+
+	* doc/BUGS, doc/TODO: New documents.
+
+2001-10-07  Richard Barber  <rich at solutionuk.com>
+
+	* src/cache/ftlru.c (FT_Lru_Lookup_Node): Fixed a bug that prevented
+	correct LRU behaviour.
+
+2001-10-07  David Turner  <david at freetype.org>
+
+	setjmp() and longjmp() are now used for rollback (i.e. when memory
+	pool overflow occurs).
+
+	Function names are now all uniformly prefixed with `gray_'.
+
+	* src/smooth/ftgrays.c: Include <setjmp.h>.
+	(ErrRaster_MemoryOverflow): New macro.
+	(TArea): New type to store area values in each cell (using `int' was
+	too small on 16-bit systems).  <limits.h> is included to properly
+	get the needed data type.
+	(TCell, TRaster): Use it.
+	(TRaster): New element `jump_buffer'.
+	(gray_compute_cbox): Use `RAS_ARG' as the only parameter and get
+	`outline' from it.
+	(gray_record_cell): Use longjmp().
+	(gray_set_cell): Use gray_record_cell() for error handling.
+	(gray_render_line, gray_render_conic, gray_render_cubic): Simplify.
+	(gray_convert_glyph_inner): New function, using setjmp().
+	(gray_convert_glyph): Use it.
+
+2001-10-07  David Turner  <david at freetype.org>
+
+	Provide a public API to manage multiple size objects for a given
+	FT_Face in the new header file `ftsizes.h'.
+
+	* include/freetype/ftsizes.h: New header file,
+	* include/freetype/internal/ftobjs.h: Use it.
+	Remove declarations of FT_New_Size and FT_Done_Size (moved to
+	ftsizes.h).
+	* include/freetype/config/ftheader.h (FT_SIZES_H): New macro.
+	* src/base/ftobjs.c (FT_Activate_Size): New function.
+	* src/cache/ftcmanag.c: Include ftsizes.h.
+	(ftc_manager_init_size, ftc_manager_flush_size): Use
+	FT_Activate_Size.
+
+2001-09-20  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/*: Added port to Amiga with the SAS/C compiler.
+
+2001-09-15  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/type1/t1afm.c (T1_Done_AFM): Free `afm'.
+
+2001-09-10  Yao Zhang  <yzhang at sharemedia.com>
+
+	* src/sfnt/ttcmap.c (code_to_index2): Handle code values with
+	hi-byte == 0 correctly.
+
+2001-09-10  Werner Lemberg  <wl at gnu.org>
+
+	* builds/link-std.mk ($(PROJECT_LIBRARY)): Fix typo.
+
+2001-08-30  Martin Muskens  <mmuskens at aurelon.com>
+
+	* src/type1/t1load.c (parse_font_matrix): A new way to compute the
+	units per EM with greater accuracy (important for embedded T1 fonts
+	in PDF documents that were automatically generated from TrueType
+	ones).
+
+	* src/type1/t1load.c (is_alpha): Now supports `+' in font names;
+	this is used in embedded fonts.
+
+	* src/psaux/psobjs.c (PS_Table_Add): Fixed a reallocation bug that
+	generated a dangling pointer reference.
+
+2001-08-30  Anthony Feik  <afeick at hotmail.com>
+
+	* src/type1/t1afm.c (T1_Read_AFM): Now correctly sets the flag
+	FT_FACE_FLAG_KERNING when appropriate for Type1 + AFM files.
+
+2001-08-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (TT_Load_CMap): Fix frame length of
+	`cmap_rec_fields'.
+
+	* include/freetype/fterrors.h [!FT_CONFIG_OPTION_USE_MODULE_ERRORS]:
+	Undefine FT_ERR_BASE before defining again.
+
+2001-08-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttinterp.h: Fix prototype of TT_Move_Func.
+
+2001-08-21  Werner Lemberg  <wl at gnu.org>
+
+	* builds/dos/dos-def.mk (NO_OUTPUT): Don't use `&>' but `>'.
+
+2001-08-21  David Turner  <david at freetype.org>
+
+	* include/freetype/config/ftoption.h: Changed the default setting
+	for FT_CONFIG_OPTION_USE_MODULE_ERRORS to undefined, since it breaks
+	source compatibility in a few cases.  Updated the comment to explain
+	that too.
+
+2001-08-17  Martin Muskens  <mmuskens at aurelon.com>
+
+	* src/base/ftcalc.c (FT_MulDiv): Fixed serious typo.
+
+2001-08-12  Werner Lemberg  <wl at gnu.org>
+
+	Updating to OpenType 1.3.
+
+	* include/freetype/internal/tttypes.h (TT_CMap0, TT_CMap2, TT_CMap4,
+	TT_CMap6): Adding field `language'.
+	(TT_CMapTable): Removing field `language'.
+	Type of `length' field changed to FT_ULong.
+	Adding fields for cmaps format 8, 10, and 12.
+	(TT_CMapGroup): New auxiliary structure.
+	(TT_CMap8_12, TT_CMap10): New structures.
+	* include/freetype/tttables.h (TT_HoriHeader, TT_VertHeader):
+	Removed last element of `Reserved' array.
+	* include/freetype/ttnameid.h (TT_PLATFORM_CUSTOM, TT_MS_ID_UCS_4,
+	TT_NAME_ID_CID_FINDFONT_NAME): New macros.
+
+	* src/sfnt/ttcmap.c (TT_CharMap_Load): Updated loading of `language'
+	field to the new structures.
+	Fixed freeing of arrays in case of unsuccessful loads.
+	Added support for loading format 8, 10, and 12 cmaps.
+	(TT_CharMap_Free): Added support for freeing format 8, 10, and 12
+	cmaps.
+	(code_to_index4): Small improvement.
+	(code_to_index6): Ditto.
+	(code_to_index8_12, code_to_index10): New functions.
+	* src/sfnt/ttload.c (TT_Load_Metrics_Header): Updated to new
+	structure.
+	(TT_Load_CMap): Ditto.
+
+	* src/sfnt/sfobjs.c (tt_encodings): Add MS UCS4 table (before MS
+	Unicode).
+
+2001-08-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1driver.c (t1_get_name_index): Fix compiler warning.
+
+2001-08-09  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffdrivr.c (get_cff_glyph_name): Renamed to
+	cff_get_glyph_name for consistency.
+
+	(cff_get_glyph_index): Minor documentation change.
+
+	* src/type1/t1driver.c (t1_get_name_index): New function used in
+	Get_Interface as the function returned when the `name_index'
+	function is requested.
+
+	(get_t1_glyph_name): Renamed to t1_get_glyph_name for consistency.
+
+2001-08-08  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffload.c: Removed definitions of cff_isoadobe_charset,
+	cff_expert_charset, cff_expertsubset_charset, cff_standard_encoding,
+	and cff_expert_encoding arrays to cffload.h.
+
+	* src/cff/cffload.h: Added definitions of cff_isoadobe_charset,
+	cff_expert_charset, cff_expertsubset_charset, cff_standard_encoding,
+	and cff_expert_encoding arrays.
+
+	* src/cff/cffdrivr.c (cff_get_name_index): New function, returned
+	when `cff_get_interface' is called with a request for the
+	`name_index' function.
+
+	(cff_get_interface): Modified so that it returns the function
+	`cff_get_name_index' when the `name_index' function is requested.
+
+	* src/base/ftobjs.c (FT_Get_Name_Index): New function, used to
+	return a glyph index for a given glyph name only if the driver
+	supports glyph names.
+
+	* include/freetype/internal/ftobjs.h (FT_Name_Index_Requester):
+	New function pointer type definition used in the function
+	FT_Get_Name_Index.
+
+	* include/freetype/freetype.h (FT_Get_Name_Index): Added
+	documentation and prototype.
+
+2001-07-26  Werner Lemberg  <wl at gnu.org>
+
+	* builds/cygwin/*: Removed.  Use the unix stuff instead.
+
+2001-07-26  Jouk Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* builds/vms/ftconfig.h (FT_CALLBACK_DEF): Updated to change dated
+	2001-06-27.
+
+2001-07-17  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for
+	`cursor' and `capacity'.
+	* src/psaux/psobjs.c (reallocate_t1_table): Use FT_Long for second
+	parameter.
+	(PS_Table_Add): Use FT_Offset for `new_size'.
+
+	Add support for version 0.5 maxp tables.
+
+	* src/sfnt/ttload.c (TT_Load_MaxProfile): Implement it.
+	(TT_Load_OS2): Initialize some values.
+
+2001-07-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftsynth.c: Include ftcalc.h unconditionally.
+
+2001-07-07  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgload.c, src/truetype/ttinterp.c, src/pcf/pcfread:
+	Removed pedantic compiler warnings when the bytecode interpreter is
+	compiled in.
+
+2001-07-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahhint.c (ah_hinter_align_weak_points): Remove
+	unused variable `edges'.
+	(ah_hinter_load): Remove unused variables `old_width' and
+	`new_width'.
+	* src/cid/cidload.c (cid_decrypt): Use `U' for constant (again).
+	* src/psaux/psobjs.c (T1_Decrypt): Ditto.
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Ditto.
+
+2001-06-28  David Turner  <david at freetype.org>
+
+	* include/internal/ftstream.h: Modified the definitions
+	of the FT_GET_XXXX and NEXT_XXXX macros for 16-bit correctness.
+
+2001-06-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidload.c, src/cid/cidload.h (cid_decrypt): Use FT_Offset
+	instead of FT_Int as type for `length' parameter.
+	* include/freetype/internal/psaux.h (PSAux_Interface): Updated.
+
+2001-06-27  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/psaux/psobjs.c, src/psaux/psobjs.h (T1_Decrypt): Use FT_Offset
+	instead of FT_Int as type for `length' parameter.
+
+
+	* Version 2.0.4 released.
+	=========================
+
+
+2001-06-27  David Turner  <david at freetype.org>
+
+	* builds/unix/ftconfig.in: Changed the definition of the
+	FT_CALLBACK_DEF macro.
+
+	* include/freetype/ftconfig.h, src/*/*.c: Changed the definition and
+	use of the FT_CALLBACK_DEF macro in order to support 16-bit
+	compilers.
+
+	* builds/unix/ftconfig.in: Changed the definition of the
+	FT_CALLBACK_DEF macro.
+
+	* src/sfnt/ttload.c (TT_Load_Kern): The kern table loader now ensures
+	that the kerning table is correctly sorted (some problem fonts don't
+	have a correct kern table).
+
+2001-06-26  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* include/freetype/internal/ftstream.h (FT_GET_OFF3_LE): Fix typo.
+
+2001-06-24  David Turner  <david at freetype.org>
+
+	* src/base/ftcalc.c (ft_div64by32): Fixed the source to work
+	correctly on 16-bit systems.
+
+2001-06-23  Anthony Fok  <fok at debian.org>
+
+	* debian/*: Added Debian package build directory for 2.0.4.
+
+2001-06-22  David Turner  <david at freetype.org>
+
+	* docs/PATENTS: Added patents disclaimer.  This one was missing!
+
+	* docs/CHANGES, docs/todo: Updated for the upcoming 2.0.4 release.
+
+2001-06-20  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftconfig.h: Add two more `L's to
+	constants.
+	Add missing semicolons.
+
+	* builds/toplevel.mk: Do similar change as for
+	builds/unix/detect.mk.
+
+	* include/freetype/freetype.h (FT_ENC_TAG): New version to make it
+	easier to redefine.
+	* include/freetype/ftimage.h (FT_IMAGE_TAG): Ditto.
+
+	* src/pcf/pcfread.c (pcf_get_encodings): Add cast.
+
+2001-06-19  David Turner  <david at freetype.org>
+
+	* builds/win32/visualc/freetype.dsp, builds/win32/visualc/index.html:
+	Updated the Visual C++ project (for the 2.0.4 release).
+
+	* builds/unix/detect.mk: Added rule for AIX detection (which uses
+	/usr/sbin/init instead of /sbin/init).
+
+	* include/freetype/fterrors.h, src/*/*err*.h: Updated some of the
+	error macros to simplify handling of new error scheme.
+
+2001-06-19  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/fttypes.h (FT_ERROR_MODULE): New macro.
+
+2001-06-19  David Turner  <david at freetype.org>
+
+	Removing _lots_ of compiler warnings when the most pedantic warning
+	levels of Visual C++ and Borland C++ are used.  Too many files to be
+	listed here, but FT2 now compiles without warnings with VC++ and the
+	`/W4' warning level (lint-style).
+
+	* include/freetype/freetype.h (FT_New_Memory_Face): Updated
+	documentation.
+	* include/freetype/fttypes.h (FT_BOOL): New macro.
+	* include/freetype/internal/ftdebug.h: Add #pragma for Visual C++
+	to suppress warning.
+	* include/freetype/internal/ftstream.h (FT_GET_SHORT_{BE,LE},
+	FT_GET_OFF3_{BE,LE}, FT_GET_LONG_{BE,LE}): New macros.
+	(NEXT_*): Use them.
+	* src/autohint/ahglobal.c: Include FT_INTERNAL_DEBUG_H.
+	(FT_New_Memory_Face): Add `const' to function declaration.
+
+2001-06-18  Werner Lemberg  <wl at gnu.org>
+
+	Minor cleanups to remove compiler warnings.
+
+	* include/freetype/cache/ftcmanag.h (FTC_MAX_BYTES_DEFAULT): Use
+	`L' for constant.
+	* include/freetype/config/ftoption.h (FT_RENDER_POOL_SIZE): Ditto.
+	* src/base/ftcalc.c (FT_MulDiv): Use `L' for constant.
+	* src/base/ftglyph.c (FT_Glyph_Get_CBox): Remove `error' variable.
+	* src/base/fttrigon.c (ft_trig_arctan_table): Use `L' for constants.
+	* src/base/ftobjs.c (FT_Done_Size): Fix return value.
+	(FT_Set_Char_Size, FT_Set_Pixel_Sizes, FT_Get_Kerning): Remove
+	unused `memory' variable.
+	* src/autohint/ahglyph.c (ah_get_orientation): Use `L' for constant.
+	* src/autohint/ahhint.c (ah_hint_edges_3,
+	ah_hinter_align_edge_points): Remove unused `before' and `after'
+	variables.
+	(ah_hinter_align_weak_points): Remove unused `edge_limit' variable.
+	(ah_hinter_load): Remove unused `new_advance', `start_contour',
+	and `metrics' variables.
+	* src/cff/cffload.c (CFF_Load_Encoding): Remove dead code to avoid
+	compiler warning.
+	* src/cff/cffobjs.c (CFF_Init_Face): Remove unused `base_offset'
+	variable.
+	* src/cff/cffgload.c (CFF_Parse_CharStrings): Remove unused
+	`outline' variable.
+	(cff_compute_bias): Use `U' for constant.
+	* src/cid/cidload.c (cid_decrypt): Ditto.
+	* src/psaux/psobjs.c (T1_Decrypt): Ditto.
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto.
+	* src/sfnt/ttload.c (TT_Load_Kern): Remove unused `version'
+	variable.
+	* src/sfnt/ttsbit.c (TT_Load_SBit_Image): Remove unused `top'
+	variable.
+	* src/truetype/ttgload.c (load_truetype_glyph): Remove unused
+	`num_contours' and `ins_offset' variables.
+	(compute_glyph_metrics): Remove unused `Top' and `x_scale'
+	variables.
+	(TT_Load_Glyph): Remove unused `memory' variable.
+	* src/smooth/ftgrays.c (grays_raster_render): Use `L' for constants.
+
+2001-06-18  Werner Lemberg  <wl at gnu.org>
+
+	Make the new error scheme source compatible with older FT versions
+	by introducing another layer.
+
+	* include/freetype/fterrors.h (FT_ERRORDEF_, FT_NOERRORDEF_): New
+	macros.
+	(FT_NOERRORDEF): Removed.
+	* include/*/*err*.h: Use FT_ERRORDEF_ and FT_NOERRORDEF_.
+
+2001-06-16  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FT_ENC_TAG): New macro.
+	(FT_Encoding_): Use it.
+	* include/freetype/ftimage.h (FT_IMAGE_TAG): Define it
+	conditionally.
+
+2001-06-14  David Turner  <david at freetype.org>
+
+	Modified the TrueType interpreter to let it use the new
+	trigonometric functions provided in `fttrigon.h'.  This gets rid of
+	some old 64-bit computation routines, as well as many warnings when
+	compiling the library with the `long long' 64-bit integer type.
+
+	* include/freetype/config/ftoption.h: Undefine
+	FT_CONFIG_OPTION_OLD_CALCS.
+	* include/freetype/internal/ftcalc.h: Rearrange use of
+	FT_CONFIG_OPTION_OLD_CALCS.
+	* src/base/ftcalc.c: Add declaration of FT_Int64 if
+	FT_CONFIG_OPTION_OLD_CALCS isn't defined.
+	* src/truetype/ttinterp.c: Use FT_TRIGONOMETRY_H.
+	(Norm): Add a special version if FT_CONFIG_OPTION_OLD_CALCS isn't
+	defined.
+	(Current_Ratio, Normalize): Simplify code.
+
+2001-06-11  Mike Owens  <MOwens at amtdatasouth.com>
+
+	* src/base/ftcalc.c (FT_MulDiv, FT_DivFix, FT_Sqrt64): Remove
+	compiler warnings.
+
+2001-06-08  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.in: Renamed to ...
+	* builds/unix/configure.ac: This to make sure that autoconf 2.50 is
+	needed.
+	Run `autoupdate' on it.
+	Increase `version_info' to 7:0:1.
+	* builds/unix/configure: Regenerated.
+
+2001-06-08  David Turner  <david at freetype.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph): Fixed a bug that
+	corrupted transformed glyphs that were auto-hinted (the transform
+	was applied twice).
+
+	Fixed a bug that returned an invalid linear width for composite
+	TrueType glyphs.
+
+	* include/internal/tttypes.h (TT_Loader_): Two new elements `linear'
+	and `linear_def'.
+	* src/truetype/ttgload.c (load_truetype_glyph,
+	compute_glyph_metrics): Use it.
+
+	* include/fttypes.h (FT_ERROR_BASE): New macro.
+	* src/base/ftobjs.c (FT_Open_Face, FT_Render_Glyph_Internal): Use it
+	to make source code work with the new error scheme implemented by
+	Werner.
+	* src/base/ftoutln.c (FT_Outline_Render): Ditto.
+
+2001-06-07  Werner Lemberg  <wl at gnu.org>
+
+	Updating to libtool 1.4.0 and autoconf 2.50.
+
+	* builds/unix/ltconfig: Removed.
+	* builds/unix/ltmain.sh, builds/unix/configure.in,
+	builds/unix/aclocal.m4: Updated.
+	* builds/unix/configure: Regenerated.
+
+2001-06-06  Werner Lemberg  <wl at gnu.org>
+
+	Complete redesign of error codes.  Please check ftmoderr.h for more
+	details.
+
+	* include/freetype/internal/cfferrs.h,
+	include/freetype/internal/tterrors.h,
+	include/freetype/internal/t1errors.h: Removed.  Replaced with files
+	local to the module.  All extra error codes have been moved to
+	`fterrors.h'.
+
+	* src/sfnt/ttpost.h: Move error codes to `fterrors.h'.
+
+	* src/autohint/aherrors.h, src/cache/ftcerror.h, src/cff/cfferrs.h,
+	src/cid/ciderrs.h, src/pcf/pcferror.h, src/psaux/psauxerr.h,
+	src/psnames/psnamerr.h, src/raster/rasterrs.h, src/sfnt/sferrors.h,
+	src/smooth/ftsmerrs.h, src/truetype/tterrors.h,
+	src/type1/t1errors.h, src/winfonts/fnterrs.h: New files defining the
+	error names for the module it belongs to.
+
+	* include/freetype/ftmoderr.h: New file, defining the module error
+	offsets.  Its structure is similar to `fterrors.h'.
+
+	* include/freetype/fterrors.h (FT_NOERRORDEF): New macro.
+	(FT_ERRORDEF): Redefined to use module error offsets.
+	All internal error codes are now public; unused error codes have
+	been removed, some are new.
+
+	* include/freetype/config/ftheader.h (FT_MODULE_ERRORS_H): New
+	macro.
+	* include/freetype/config/ftoption.h
+	(FT_CONFIG_OPTION_USE_MODULE_ERRORS): New macro.
+
+	All other source files have been updated to use the new error codes;
+	some already existing (internal) error codes local to a module have
+	been renamed to give them the same name as in the base module.
+
+	All make files have been updated to include the local error files.
+
+2001-06-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidtokens.h: Replaced with...
+	* src/cid/cidtoken.h: This file for 8+3 consistency.
+
+	* src/raster/ftraster.c: Use macros for header file names.
+
+	* src/include/freetype/tttables.h (TT_HoriHeader_, TT_VertHeader_):
+	Fix length of `Reserved' array.  Note that this isn't the real fix
+	since recent OpenType specs have introduced a `CaretOffset' field
+	instead of the first reserved byte.
+
+2001-05-29  Werner Lemberg  <wl at gnu.org>
+
+	* INSTALL: Minor fixes.
+
+
+	* Version 2.0.3 released.
+	=========================
+
+
+2001-05-29  David Turner  <david at freetype.org>
+
+	* INSTALL, docs/CHANGES: Updated.
+
+2001-05-25  David Turner  <david at freetype.org>
+
+	Moved several documents from the top-level to the `docs' directory.
+
+	* src/base/ftcalc.c (FT_DivFix): Small fix to return value.
+
+2001-05-16  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fixed a bug in the
+	composite loader.  Spotted by Keith Packard.
+	* src/base/ftobjs.c (FT_GlyphLoader_Check_Points,
+	FT_GlyphLoader_Check_Subglyphs): Ditto.
+
+2001-05-14  David Turner  <david at freetype.org>
+
+	Fixed the incorrect blue zone computations, and improved the
+	composite support.  Note that these changes result in improved
+	rendering, while sometimes introducing their own artefacts.  This is
+	probably the last big change to the autohinter before the
+	introduction of a complete replacement.
+
+	* src/autohint/ahglobal.c (sort_values): Fix loop.
+	* src/autohint/ahglyph.c: Removed some obsolete code.
+	(ah_outline_compute_edges): Modify code to set the ah_edge_round
+	flag.
+	(ah_outline_compute_blue_edges): Add code to compute active blue
+	zones.
+	* src/autohint/ahhint.c (ah_hinter_glyph_load): Change load_flags
+	value.
+
+	* src/base/ftcalc.c (FT_DivFix): Fixed a bug in the 64-bit code that
+	created incorrect scale factors!
+	(FT_RoundFix, FT_CeilFix, FT_FloorFix): Minor improvements.
+
+2001-05-12  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftbbox.h: FTBBOX_H -> __FTBBOX_H__.
+	* include/freetype/fttrigon.h: __FT_TRIGONOMETRY_H__ ->
+	__FTTRIGON_H__.
+	Include FT_FREETYPE_H.
+	Beautified; added copyright.
+	* src/base/fttrigon.c: Beautified; added copyright.
+
+2001-05-11  David Turner  <david at freetype.org>
+
+	* src/cff/cffparse.c (cff_parse_font_matrix), src/cid/cidload.c
+	(parse_font_matrix), src/type1/t1load.c (parse_font_matrix): Fixed
+	the incorrect EM size computation.
+
+	* include/freetype/fttrigon.h, src/base/fttrigon.c: New files,
+	adding trigonometric functions to the core API (using Cordic
+	algorithms).
+	* src/base/ftbase.c, src/base/Jamfile, src/base/rules.mk: Use them.
+
+	* builds/newline: New file.
+	* builds/top_level.mk, builds/detect.mk: Use it.  This fixes
+	problems with Make on Windows 2000, as well as problems when `make
+	distclean' is invoked on a non-Unix platform when there is no
+	`config.mk' in the current directory.
+
+	* builds/freetype.mk: Fixed a problem with object deletions under
+	Dos/Windows/OS/2 systems.
+
+	Added new directory to hold tools and test programs.
+
+	* docs/docmaker.py, docs/glnames.py: Moved to...
+	* src/tools/docmaker.py, src/tools/glnames.py: This place.
+	* src/tools/cordic.py: New file used to compute arctangent table
+	needed by fttrigon.c.
+	* src/tools/test_bbox.c, src/tools/test_trig.c: New test files.
+
+	* src/tools/docmaker.py: Improved the script to add the current date
+	at the footer of each web page (useful to distinguish between
+	versions).
+
+	* Jamfile: Fixed incorrect HDRMACRO argument.
+
+	* TODO: Removed the cubic arc bbox computation note, since it has been
+	fixed recently.
+	* src/base/ftbbox.c (test_cubic_zero): Renamed to...
+	(test_cubic_extrema): This function.  Use `UL' for unsigned long
+	constants.
+
+	* include/freetype/t1tables.h, include/freetype/config/ftoption.h:
+	Formatting.
+
+2001-05-10  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c (FT_Open_Face): Fixed a small memory leak
+	which happened when trying to open 0-size font files!
+
+2001-05-09  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftcalc.h: Move declaration of
+	FT_SqrtFixed() out of `#ifdef FT_LONG64'.
+
+2001-05-08  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli at ens.fr>
+
+	* src/pcfdriver.c (PCF_Load_Glyph): Fixed incorrect bitmap width
+	computation.
+
+2001-05-08  David Turner  <david at freetype.org>
+
+	* docs/docmaker.py: Updated the DocMaker script in order to add
+	command line options (--output,--prefix,--title), fix the erroneous
+	line numbers reported during errors and warnings, and other
+	formatting issues.
+
+	* src/base/ftcalc.c (FT_MulDiv, FT_MulFix, FT_DivFix): Various tiny
+	fixes related to rounding in 64-bits routines and
+	pseudo-`optimizations'.
+
+2001-04-27  David Turner  <david at freetype.org>
+
+	* src/base/ftbbox.c (BBox_Cubic_Check): Fixed the coefficient
+	normalization algorithm (invalid final bit position, and invalid
+	shift computation).
+
+2001-04-26  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/config.guess, builds/unix/config.sub: Updated to
+	latest versions from gnu.org.
+
+	* builds/compiler/gcc-dev.mk: Add `-Wno-long-long' flag.
+
+	* include/freetype/internal/ftcalc.h: Define FT_SqrtFixed()
+	unconditionally.
+	* src/base/ftbbox.c: Include FT_INTERNAL_CALC_H.
+	Fix compiler warnings.
+	* src/base/ftcalc.c: Fix (potential) compiler warnings.
+
+2001-04-26  David Turner  <david at freetype.org>
+
+	* src/base/ftcalc.c (FT_SqrtFixed): Corrected/optimized the 32-bit
+	fixed-point square root computation.  It is now used even with
+	64-bits integers, as it is _much_ faster than calling FT_Sqrt64 :-)
+
+	* src/base/ftbbox.c: Removed invalid `#include FT_BEZIER_H' line.
+
+2001-04-25  David Turner  <david at freetype.org>
+
+	* src/base/ftbbox.c (BBox_Cubic_Check): Rewrote function to use
+	direct computations with 16.16 values instead of sub-divisions.  It
+	is now slower, but proves a point :-)
+
+	* src/raster/ftraster.c, src/smooth/ftgrays.c, src/base/ftbbox.c:
+	Fixed the Bézier stack depths.
+
+	* src/base/ftcalc.c (FT_MulFix): Minor rounding fix.
+
+	* builds/beos: Added BeOS-specific files to the old build system
+	(no changes were necessary to support BeOS in the Jamfile though).
+
+2001-04-20  David Turner  <david at freetype.org>
+
+	* ftconfig.h, ftoption.h: Updated `ftconfig.h' to detect 64-bit int
+	types on platforms where Autoconf is not available).  Also removed
+	FTCALC_USE_LONG_LONG and replaced it with
+	FT_CONFIG_OPTION_FORCE_INT64.
+
+	* builds/win32/freetype.dsp: Updated the Visual C++ project file.
+	Doesn't create a DLL yet.
+
+	* cffgload.c: Removed a compilation warning.
+
+2001-04-10  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* t1load.c (parse_charstrings): Changed code for placing .notdef
+	glyph into slot 0 so that we no longer have a memory access
+	violation.
+
+	* t1load.h: In structure T1_Loader, added swap_table (of type
+	PS_Table) to facilitate placing the .notdef glyph into slot 0.
+
+2001-04-10  Francesco Zappa Nardelli  <francesco.zappa.nardelli at ens.fr>
+
+	* src/pcf/pcfdriver.c (PCF_Get_Char_Index): Fix return value.
+
+2001-04-09  Laurence Withers  <lwithers at lwithers.demon.co.uk>
+
+	* builds/dos/detect.mk: Add support for bash.
+
+2001-04-05  Werner Lemberg  <wl at gnu.org>
+
+	* builds/os2/*.mk: These files have been forgotten to update to
+	the structure of similar makefiles.
+	* builds/dos/*.mk: Ditto.
+	* builds/ansi/*.mk: Ditto.
+
+	* builds/win32/win32-def.mk (BUILD): Fix typo.
+
+	* builds/compiler/*.mk (CLEAN_LIBRARY): Don't use NO_OUTPUT.
+	This is already used in the link_*.mk files.
+
+2001-04-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/*/Jamfile: Slight changes to make files more cryptic.
+
+2001-04-03  Werner Lemberg  <wl at gnu.org>
+
+	* Jamfile, src/Jamfile, src/*/Jamfile: Formatted.  Slight changes
+	to give files identical structure.
+
+2001-04-02  Werner Lemberg  <wl at gnu.org>
+
+	* CHANGES: Reformatted, minor fixes.
+	* TODO: Updated.
+	* README: Formatting.
+	* include/freetype/freetype.h: Formatting.
+
+	* Jamfile: Fix typo.
+
+	* src/cff/cffparse.c: Move error code #defines to...
+	* include/freetype/internal/cfferrs.h: This file.
+	* src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffload.c: Replaced
+	`FT_Err_*' with `CFF_Err_*'.
+	* src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'.
+	* src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto.
+	* src/sfnt/sfobjs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with
+	`TT_Err_*'.
+	* src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto.
+	* src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c,
+	src/type1/t1parse.c: Replaced `FT_Err_*' with `T1_Err_*'.
+
+	* include/freetype/internal/cfferrs.h: Add
+	`CFF_Err_Unknown_File_Format'.
+	* include/freetype/internal/t1errors.h: Add
+	`T1_Err_Unknown_File_Format'.
+	* include/freetype/internal/tterrors.h: Add
+	`TT_Err_Unknown_File_Format'.
+
+	* src/cff/cffload.h: Add `cff_*_encoding' and `cff_*_charset'
+	references.
+	* src/psaux/psobjs.c: Include `FT_INTERNAL_TYPE1_ERRORS_H'.
+
+	* src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use
+	FT_LOCAL_DEF.
+	* src/cid/cidobjs.c (CID_Done_Driver): Ditto.
+	* src/truetype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size):
+	Ditto.
+	* src/type1/t1objs.c (T1_Done_Driver): Ditto.
+	* src/pcf/pcfdriver.c (PCF_Done_Face): Ditto.
+	* src/pcf/pcf.h: Use FT_LOCAL for `PCF_Done_Face'.
+
+2001-04-02  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/sfnt/ttload.c (TT_Load_Metrics): Fix an improper pointer
+	dereference.  Submitted by Herbert Duerr <duerr at sun.com>.
+
+2001-03-26  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* include/freetype/config/ftconfig.h: Changed hexadecimal
+	constants to use suffix U to avoid problems with HP-UX's c89
+	compiler.  Submitted by G.W. Lucas <glucas at sonalysts.com>.
+
+2001-03-24  David Turner  <david.turner at freetype.org>
+
+	* Jamrules, Jamfile, src/Jamfile, src/*/Jamfile: Adding jamfiles to
+	the source tree.  See www.freetype.org/jam/index.html for details.
+
+
+	* Version 2.0.2 released.
+	=========================
+
+
+2001-03-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/win32/detect.mk: Fix .PHONY target for Intel compiler.
+
+2001-03-20  David Turner  <david.turner at freetype.org>
+
+	* include/freetype/config/ftheader.h, include/freetype/ftsnames.h:
+	Renamed `ftnames.h' to `ftsnames.h', and FT_NAMES_H to
+	FT_SFNT_NAMES_H.
+
+	* docs/docmaker.py: Added generation of INDEX link in table of
+	contents.
+
+	* INSTALL, docs/BUILD: Updated documentation to indicate that the
+	compilation process has changed slightly (no more `src' required in
+	the include path).
+
+	* builds/*/*-def.mk: Changed the objects directory from `obj' to
+	`objs'.
+
+	* include/freetype/config/ftheader.h: Removed obsolete macros like
+	FT_SOURCE_FILE, etc. and added cache-specific macro definitions that
+	were previously defined in <freetype/ftcache.h>.  Added comments to
+	be included in a new API Reference section.
+
+	* src/*/*: Removed the use of FT_SOURCE_FILE, etc.  Now, each
+	component needs to add its own directory to the include path at
+	compile time.  Modified all `rules.mk' and `descrip.mms'
+	accordingly.
+
+2001-03-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.in: Add $ft_version.
+	* builds/unix/freetype-config.in: Use it.
+	* builds/unix/configure: Updated.
+
+2001-03-19  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/type1/t1load.c (parse_font_matrix): Assign the units per em
+	value an unsigned short value, first by shifting right 16 bits,
+	then by casting the results to FT_UShort.
+
+	* src/cff/cffparse.c (cff_parse_font_bbox): Assign the units per em
+	value an unsigned short value, first by shifting right 16 bits,
+	then by casting the results to FT_UShort.
+
+2001-03-17  David Turner  <david.turner at freetype.org>
+
+	* src/cid/cidobjs.c, src/cid/cidload.c, src/pcf/pcfread.c,
+	src/type1/t1load.c, src/type1/t1objs.c: Added a few casts to remove
+	compiler warnings in pedantic modes.
+
+	* include/config/ft2build.h, include/config/ftheader.h: The file
+	`ft2build.h' was renamed to `ftheader.h' to avoid conflicts with the
+	top-level <ft2build.h>.
+
+	* include/config/ftheader.h: Added new section describing the #include
+	macros.
+
+2001-03-17  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffparse.c (cff_parse_font_bbox): Obtain rounded FT_Fixed
+	values for the bounding box numbers.
+
+	* src/cff/cffobjs.c (CFF_Init_Face): When processing a CFF/CEF font,
+	set `root->ascender' (`root->descender') to the integer part of
+	`root->bbox.yMax' (`root->bbox.yMin', respectively).
+
+2001-03-16  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffdrivr.c (get_cff_glyph_name):  New function.  Used in
+	cff_get_interface to facilitate getting a glyph name for glyph index
+	via FT_Get_Glyph_Name().
+
+	(cff_get_interface): Added support for getting a glyph name via the
+	`glyph_name' module interface.  Uses the new function
+	get_cff_glyph_name().
+	Submitted by Sander van der Wal <svdwal at xs4all.nl>.
+
+	* src/cff/cffobjs.c (CFF_Init_Face): Logical or the face flags with
+	FT_FACE_FLAG_GLYPH_NAMES only if FT_CONFIG_OPTION_NO_GLYPH_NAMES is
+	not defined.  This is to add support for getting a glyph name from a
+	glyph index via FT_Get_Glyph_Name().
+	Submitted by Sander van der Wal <svdwal at xs4all.nl>.
+
+	* src/cff/cffgload.c (CFF_Parse_CharStrings): Added support for
+	deprecated operator `dotsection'.
+	Submitted by Sander van der Wal <svdwal at xs4all.nl>.
+
+2001-03-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix error
+	messages.
+
+	* INSTALL, docs/BUILD: We need GNU make 3.78.1 or newer.
+
+2001-03-12  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* include/freetype/internal/psaux.h:  Changed the lenIV member of
+	the T1_Decoder_ struct to be an FT_Int instead of an FT_UInt.
+
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings):  Adjust
+	for lenIV seed bytes at the start of a decrypted subroutine.
+
+	* src/cid/cidload.c (cid_read_subrs): Decrypt subroutines only
+	if lenIV >= 0.
+
+	* src/cid/cidgload.c (cid_load_glyph): Decrypt charstrings only
+	if lenIV >= 0.
+
+2001-03-11  Werner Lemberg  <wl at gnu.org>
+
+	* TODO: Updated.
+
+	* src/pcf/pcfread.c: Put READ_Fields() always in a conditional to
+	avoid compiler warnings.
+
+2001-03-10  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* TODO: New file.
+
+	* include/freetype/freetype.h: Added prototypes and notes for
+	three new functions: FT_RoundFix, FT_CeilFix, and FT_FloorFix.
+	* src/base/ftcalc.c (FT_RoundFix, FT_CeilFix, FT_FloorFix): Added
+	implementation code.
+
+	* src/cid/cidobjs.c (CID_Init_Face): Use calculated units_per_EM,
+	and if that is not available, default to 1000 units per EM.  Changed
+	assignment code for ascender and descender values.
+	* src/cid/cidload.c (parse_font_matrix): Added units_per_EM
+	processing.
+	(parse_font_bbox): Changed to use FT_Fixed number handling.
+
+	* src/type1/t1objs.c (T1_Init_Face): Changed the assignment code
+	for ascender, descender, and max_advance_width.
+	* src/type1/t1load.c (parse_font_bbox): Changed to use FT_Fixed
+	number handling.
+
+2001-03-10  Henrik Grubbström  <grubba at roxen.com>
+
+	* src/*/*.c: Added many casts to make code more 64bit-safe.
+
+2001-03-07  Werner Lemberg  <wl at gnu.org>
+
+	* INSTALL, docs/BUILD: We need GNU make 3.78 or newer.
+
+2001-03-07  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/type1/t1objs.c (T1_Init_Face): Minor correction: We must wait
+	until parse_font_bbox is changed before we use logical shift rights
+	in the assignments of `root->ascender', `root->descender', and
+	`root->max_advance_width'.
+
+	(T1_Done_Face): Free `char_name' table to avoid a memory leak.
+	Submitted by Sander van der Wal <svdwal at xs4all.nl>.
+
+2001-03-05  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffgload.c (CFF_Load_Glyph): Set glyph control data to the
+	the Type 2 glyph charstring (used by conversion programs).
+	Submitted by Ha Shao <hashao at chinese.com>.
+
+2001-03-04  Antoine Leca  <Antoine.Leca at renault.fr>
+
+	* include/freetype/ttnameid.h: Correct a stupid typo which prevented
+	correct compilation (TT_MS_LANGID_TIGRIGNA_ETHIOPIA appeared twice).
+
+2001-03-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahtypes.h (AH_Hinter): Add elements
+	`disable_horz_edges', `disable_vert_edges'.
+	* src/autohint/ahhint.c (ah_hint_edges_3, ah_hinter_hint_edges): Use
+	them (and remove static variables with the same names).
+	* src/pcf/pcfutil.c (BitOrderInvert): Add `const'.
+	* docs/glnames.py: Updated to latest pstables.h changes.
+
+	* builds/unix/detect.mk: Add test for Hurd.
+	* builds/hurd/detect.mk: Removed.
+
+2001-03-04  Sander van der Wal  <svdwal at xs4all.nl>
+
+	* src/psnames/pstables.h: Add more `const'.
+	* src/pcf/pcfutil.c: Ditto.
+
+2001-03-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Fixing typo
+	(FT_Glyph_Done -> FT_Done_Glyph).
+
+2001-03-01  Antoine Leca  <Antoine.Leca at renault.fr>
+
+	* include/freetype/ttnameid.h: Added some new Microsoft language
+	codes and LCIDs as found in Office Xp.
+
+2001-02-28  David Turner  <david.turner at freetype.org>
+
+	* builds/hurd/detect.mk: New file.  Added support to detect the GNU
+	Hurd operating system as Unix-like.  Fix submitted by Anthony Fok
+	<foka at debian.org>.
+
+	* src/type1/t1gload.c (T1_Load_Glyph): Set glyph control data to the
+	the Type 1 glyph charstring (used by conversion programs).
+	Submitted by Ha Shao <hashao at chinese.com>.
+
+2001-02-22  David Turner  <david.turner at freetype.org>
+
+	* src/base/ftgrays.c (grays_sweep): The function didn't exit
+	immediately if `num_cells' was 0 as it should.  Thanks to Boris for
+	finding this out.
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Fixed memory leak when
+	bitmap rendering fails (thanks to Graham Asher).
+
+2001-02-13  Werner Lemberg  <wl at gnu.org>
+
+	* docs/docmaker.py (DocSection::add_element): Use
+	`self.print_error()'.
+
+	* builds/unix/config.{guess,sub}: Updated (from ftp.gnu.org).
+
+2001-02-13  David Turner  <david.turner at freetype.org>
+
+	* docs/docmaker.py, include/freetype/*.h: Updated the DocMaker
+	script to support chapters and section block ordering.  Updated the
+	public header files accordingly.
+
+	* src/base/ftglyph.c (FT_Glyph_Copy): Advance width and glyph format
+	were not correctly copied.
+
+2001-02-08  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/cffparse.c (cff_parse_font_matrix): Removed an
+	unnecessary fprintf( stderr, ... ).
+
+2001-02-07  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/type1/t1objs.c (T1_Init_Face): Added code to get the
+	units_per_EM from the value assigned in parse_font_matrix, if
+	available.  Default to 1000 if not available.
+
+	* src/cff/cffparse.c (cff_parse_font_matrix): Added logic to get
+	the units_per_EM from the FontMatrix.
+
+	(cff_parse_fixed_thousand): New function.  Gets a real number from
+	the CFF font, but multiplies by 1000 (this is to avoid rounding
+	errors when placing this real number into a 16.16 fixed number).
+
+	(cff_parse_real): Added code so that the integer part is moved
+	into the high sixteen bits of the 16.16 fixed number.
+
+	* src/cff/cffobjs.c (CFF_Init_Face): Added logic to get the units
+	per EM from the CFF dictionary, if available.
+
+	* include/freetype/internal/cfftypes.h: In struct CFF_Font_Dict_,
+	added a units_per_em member to facilitate passing of units_per_em
+	from function cff_parse_font_matrix.
+
+	* src/type1/t1load.c (is_alpha): Make `-' a legal alphanumeric
+	character.  This is so that font names with `-' are fully parsed,
+	etc...
+
+2001-02-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psobjs.c (shift_elements): Remove if clause (which is
+	obsolete now).
+
+	(reallocate_t1_table, PS_Table_Done): Replace REALLOC() with ALLOC()
+	+ MEM_Copy() to avoid a memory bug.
+
+2001-02-01  David Turner  <david.turner at freetype.org>
+
+	* docs/docmaker.py: Improved the index sorting routine to place
+	capital letters before small ones.  Added the `<order>' marker to
+	section blocks in order to give the order of blocks.
+
+2001-01-30  Antoine Leca  <Antoine.Leca at renault.fr>
+
+	* include/freetype/ttnameid.h: Latest updates to Microsoft language
+	ID codes.
+
+2001-01-24  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/t1load.c (parse_font_matrix): Added heuristic to get
+	units_per_EM from the font matrix.
+
+	(parse_dict): Deleted test to see whether the FontInfo keyword has
+	been seen.  Deletion of this test allows fonts without FontInfo
+	dictionaries to be parsed by the Type 1 driver.
+
+	(T1_Open_Face): Deleted empty subroutines array test to make sure
+	fonts with no subroutines still are parsed.
+
+2001-01-17  Francesco Zappa Nardelli  <francesco.zappa.nardelli at ens.fr>
+
+	* src/pcfread.c (pcf_get_properties, pcf_get_metrics,
+	pcf_get_bitmaps): Fix compiler errors.
+
+2001-01-11  David Turner  <david.turner at freetype.org>
+
+	* src/pcf/pcfread.c: Removed some compilation warnings related
+	to comparison of signed vs. unsigned integers.
+
+	* include/freetype/internal/ftdebug.h: Changed the debug trace
+	constants from trace_t2xxxx to trace_cffxxxx to be able to compile
+	the CFF driver in debug mode.
+
+2001-01-11  Matthew Crosby  <mcrosby at marthon.org>
+
+	* builds/unix/freetype-config.in: Fix problems with separate
+	--prefix and --exec-prefix.
+
+2001-01-11  David Turner  <david.turner at freetype.org>
+
+	* docs/docmaker.py: Added cross-references generation as well as
+	more robust handling of pathname wildcard matching.
+
+2001-01-10  Werner Lemberg  <wl at gnu.org>
+
+	* docs/docmaker.py: Minor improvements to reduce unwanted spaces
+	and empty lines in output.
+
+2001-01-09  David Turner  <david.turner at freetype.org>
+
+	* docs/docmaker.py: Improved script to generate table of contents
+	and index pages.  It also supports wildcards on non Unix systems.
+
+	* include/freetype/*.h, include/freetype/cache/*.h: Updated comments
+	to include section definitions/delimitations for the API Reference
+	generator.
+
+	* include/freetype/freetype.h: Moved declaration of
+	`FT_Generic_Finalizer' and the `FT_Generic' structure to...
+	* include/freetype/fttypes.h: here.
+
+2001-01-04  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ttnameid.h: Updated Unicode code range comments.
+
+2001-01-03  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/rules.mk: Use cffgload.{c,h} instead of t2gload.{c,h}.
+
+	* include/freetype/internal/internal.h: Changed to use cfftypes.h
+	(cfferrs.h) instead of t2types.h (t2errors.h, respectively).
+
+	* include/freetype/internal/cfftypes.h: Merged in changes from
+	t2types.h and made this the canonical `types' header for the CFF
+	driver.
+
+	* include/freetype/internal/t2types.h: This file was merged with
+	cfftypes.h and is no longer necessary.
+
+	* include/freetype/internal/t2errors.h: Renamed to cfferrs.h.
+
+	* src/cff/cffobjs.c, src/cff/cffobjs.h, src/cff/cffparse.c,
+	src/cff/cffdrivr.c, src/cff/cff.c, src/cff/cffload.c,
+	src/cff/cffgload.c, src/cff/cffgload.h: Changed to use
+	cffgload.{c,h} instead of t2gload.{c,h}.  All occurrences of t2_
+	(T2_) were replaced with cff_ (CFF_, respectively).
+
+	* src/cff/t2gload.h: Renamed cffgload.h.
+
+	* src/cff/t2gload.c: Renamed cffgload.c
+
+2000-01-02  Jouk Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* builds/vms: Support files for VMS architecture added.
+	* descrip.mms, src/*/descrip.mms: VMS makefiles added.
+	* README.VMS: New file.
+
+2000-01-01  Werner Lemberg  <wl at gnu.org>
+
+	* LICENSE.TXT: Added info about PCF driver license.
+
+2001-01-01  Francesco Zappa Nardelli  <francesco.zappa.nardelli at ens.fr>
+
+	* src/pcf/*: New driver module for PCF font format (used in
+	X Window System).
+	* include/freetype/internal/ftdebug.h (FT_Trace): Added values for
+	PCF driver.
+	* include/freetype/internal/pcftypes.h: New file.
+	* include/freetype/config/ftmodule.h: Added PCF driver module.
+
+2001-01-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/winfonts/winfnt.c (FNT_Get_Char_Index): Fix parameter type.
+
+2000-12-31  Werner Lemberg  <wl at gnu.org>
+
+	* builds/modules.mk (clean_module_list): Fixed deletion of module
+	file in case `make make_module_list' is called before `make setup'.
+
+2000-12-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffload.c (CFF_Load_Charset): Improved error messages.
+	(CFF_Load_Charset, CFF_Load_Encoding): Remove unnecessary variable
+	definition.
+
+2000-12-30  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* include/freetype/internal/t2types.h,
+	include/freetype/internal/cfftypes.h: Changed the structures for
+	CFF_Charset and CFF_Encoding for the new implementations of the
+	charset and encoding parsers in the CFF driver.
+
+	* src/cff/t2gload.c (t2_lookup_glyph_by_stdcharcode,
+	t2_operator_seac): Added these functions for use in implementing the
+	seac emulation provided by the Type 2 endchar operator.
+	(T2_Parse_CharStrings): Added seac emulation for the endchar
+	operator.
+
+	* src/cff/cffload.c (CFF_Load_Encoding, CFF_Load_Charset,
+	CFF_Done_Encoding, CFF_Done_Charset): Extended to load and parse the
+	charset/encoding tables, and free the memory used by them when the
+	CFF driver is finished with them.  Added tables
+
+	    cff_isoadobe_charset
+	    cff_expert_charset
+	    cff_expertsubset_charset
+	    cff_standard_encoding
+	    cff_expert_encoding
+
+	so that the encoding/charset parser can handle predefined encodings and
+	charsets.
+
+2000-12-24  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/t2gload.c (T2_Load_Glyph): Added code so that the font
+	transform is applied.
+
+	* src/cff/cffparse.c (cff_parse_font_matrix): Added code so that
+	the font matrix numbers are scaled by 1/(matrix->yy).  Also, the
+	offset vector now contains integer values instead of 16.16 fixed
+	numbers.
+
+2000-12-22  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph):
+	Removed unnecessary comments and commented-out code.
+
+2000-12-21  David Turner  <david.turner at freetype.org>
+
+	* src/cid/cidafm.c, src/cid/cidafm.h: removed un-needed files,
+	we'll work on supporting CID AFM files later I guess :-)
+
+2000-12-21  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load, ah_hinter_load_glyph):
+	Changed so that fonts with a non-standard FontMatrix render
+	correctly.  Previously, the first glyph rendered from such a
+	font did not have the transformation matrix applied.
+
+2000-12-17  Werner Lemberg  <wl at gnu.org>
+
+	* *.mk: Added lots of `.PHONY' targets.
+
+2000-12-17  Karsten Fleischer  <kfleisc1 at ford.com>
+
+	* *.mk: Implemented `platform' target to disable auto-detection.
+
+2000-12-14  Werner Lemberg  <wl at gnu.org>
+
+	* docs/design/modules.html: Removed.  Covered by design-*.html.
+
+	* INSTALL: Added info about makepp.
+
+2000-12-14  David Turner  <david.turner at freetype.org>
+
+	Added support for clipped direct rendering in the smooth renderer.
+	This should not break binary compatibility of existing applications.
+
+	* include/freetype/fttypes.h, include/freetype/ftimage.h: Move
+	definition of the FT_BBox structure from the former to the latter.
+	* include/freetype/ftimage.h: Add `ft_raster_flag_clip' value to
+	FT_Raster_Flag enumeration.
+	Add `clip_box' element to FT_Raster_Params structure.
+	* src/smooth/ftgrays.c (grays_convert_glyph): Implement it.
+
+	* INSTALL: Updated installation instructions on Win32, listing the
+	new `make setup list' target used to list supported
+	compilers/targets.
+
+	* src/raster/ftraster.c (ft_black_render): Test for unsupported
+	direct rendering before testing arguments.
+
+2000-12-13  David Turner  <david.turner at freetype.org>
+
+	* include/freetype/config/ft2build.h,
+	include/freetype/internal/internal.h: Fixed header inclusion macros
+	to use direct definitions.  This is the only way to do these things
+	in a portable way :-(  The rest of the code should follow shortly
+	though everything compiles now.
+
+	* builds/compiler/intelc.mk, builds/compiler/watcom.mk: New files.
+
+	* builds/win32/detect.mk: Added support for the Intel C/C++
+	compiler, as well as _preliminary_ (read: doesn't work!) support for
+	Watcom.  Also added a new setup target.  Type `make setup list' for
+	a list of supported command-line compilers on Win32.
+
+	* src/base/ftdebug.c: Added dummy symbol to avoid empty file if
+	conditionals are off.
+
+2000-12-13  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ftsystem.c: Fixed typos.  Fixed inclusion of wrong
+	ftconfig.h file.
+
+2000-12-12  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ft2build.h (FT2_ROOT, FT2_CONFIG_ROOT):
+	Removed.  ANSI C doesn't (explicitly) allow macro expansion in
+	arguments using `##'.
+	(FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE): Use directory
+	names directly.  Make them configurable.  Use `##' to strip leading
+	and trailing spaces from arguments.
+
+	* builds/unix/ft2unix.h: Adapted.
+
+	* src/base/ftsystem.c (ft_alloc, ft_realloc, ft_free, ft_io_stream,
+	ft_close_stream): Use FT_CALLBACK_DEF.
+
+	* builds/unix/ftsystem.c: Use new header scheme.
+	(FT_Done_Memory): Use free() from FT_Memory structure.
+
+	* src/base/ftinit.c, src/base/ftmac.c: Header scheme fixes.
+
+2000-12-11  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ft2build.h (FT2_CONFIG_ROOT,
+	FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE,
+	FT_SOURCE_FILE): Use `##' operator to be really ANSI C compliant.
+
+2000-12-09  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/detect.mk: Remove unused USE_CFLAGS variable.
+
+2000-12-08  Werner Lemberg  <wl at gnu.org>
+
+	* */*.h: Changed body inclusion macro names to start and end with
+	`__' (those which haven't converted yet).  Fixed minor conversion
+	issues.
+
+	* src/winfonts/winfnt.c: Updated to new header inclusion scheme.
+
+	* src/truetype/ttinterp.c: Remove unused CALC_Length() macro.
+
+2000-12-07  David Turner  <david.turner at freetype.org>
+
+	* */*.[ch]: Changed source files to adhere to the new
+	header inclusion scheme.  Not completely tested but works for now
+	here.
+
+	* src/cff/t2driver.c: Renamed and updated to...
+	* src/cff/cffdrivr.c: New file.
+	* src/cff/t2driver.h: Renamed and updated to...
+	* src/cff/cffdrivr.h: New file.
+	* src/cff/t2load.c: Renamed and updated to...
+	* src/cff/cffload.c: New file.
+	* src/cff/t2load.h: Renamed and updated to...
+	* src/cff/cffload.h: New file.
+	* src/cff/t2objs.c: Renamed and updated to...
+	* src/cff/cffobjs.c: New file.
+	* src/cff/t2objs.h: Renamed and updated to...
+	* src/cff/cffobjs.h: New file.
+	* src/cff/t2parse.c: Renamed and updated to...
+	* src/cff/cffparse.c: New file.
+	* src/cff/t2parse.h: Renamed and updated to...
+	* src/cff/cffparse.h: New file.
+	* src/cff/t2tokens.h: Renamed and updated to...
+	* src/cff/cfftoken.h: New file.
+
+	* src/cff/cff.c, src/cff/rules.mk: Updated.
+
+2000-12-06  David Turner  <david.turner at freetype.org>
+
+	* src/cache/ftlru.c (FT_Lru_Done): Fixed memory leak.
+
+2000-12-06  Werner Lemberg  <wl at gnu.org>
+
+	* builds/module.mk: Replaced `xxx #' with `xxx$(space).
+	* builds/os2/detect.mk, builds/win32/detect.mk: Moved comment to
+	avoid trailing spaces in variable.
+	* builds/freetype.mk: Use $(D) instead of $D to make statement more
+	readable.
+
+	* docs/docmaker.py: Formatting.
+
+2000-12-05  David Turner  <david.turner at freetype.org>
+
+	* src/psaux/psauxmod.c: Fixed a broken inclusion of component
+	header files (an FT_FLAT_COMPILE test was missing).
+
+	* src/cache/ftcmanag.c (FTC_Manager_Done): Fixed a bug that caused
+	an occasional crash when the function was called (due to a dangling
+	pointer).
+
+	* src/base/ftsystem.c (FT_Done_Memory): Fixed an obvious bug:
+	The ANSI `free()' function was called instead of `memory->free()'.
+
+	* docs/docmaker.py: Added section filtering, multi-page generation
+	(index page generation is still missing though).
+
+2000-12-04  David Turner  <david.turner at freetype.org>
+
+	* builds/unix/install.mk, builds/unix/ft2unix.h: The file `ft2unix.h'
+	is now installed as <ft2build.h> for Unix systems.  Note that we
+	still use the `freetype2/freetype' installation path for now.
+
+	* */*.[ch]: Now using <ft2build.h> as the default build and setup
+	configuration file in all public headers.  Internal source files
+	still need some changes though.
+
+	* builds/devel/ft2build.h, builds/devel/ftoption.h: Created a new
+	directory to hold all development options for both the Unix and
+	Win32 developer builds.
+
+	* builds/win32/detect.mk, builds/win32/w32-bccd.mk,
+	builds/win32/w32-dev.mk: Changed the developer build targets to
+	`devel-gcc' and `devel-bcc' in order to be able to develop with the
+	Borland C++ compiler.
+
+2000-12-01  David Turner  <david.turner at freetype.org>
+
+
+	* Version 2.0.1 released.
+	=========================
+
+
+	* builds/unix/configure.in, builds/unix/configure,
+	builds/cygwin/configure.in, builds/cygwin/configure: Setting
+	`version_info' to 6:1:0 for the 2.0.1 release.
+
+	* CHANGES: Added a summary of changes between 2.0.1 and 2.0.
+
+	* builds/unix/ftconfig.in, builds/cygwin/ftconfig.in: Changes
+	to allow compilation under Unix with the Unix-specific config
+	files.
+
+2000-12-01  Werner Lemberg  <wl at gnu.org>
+
+	* INSTALL: Revised.
+	* builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk,
+	builds/compiler/bcc.mk, builds/win32/w32-bcc.mk,
+	builds/win32/w32-bccd.mk: Revised.
+	* include/freetype/config/ftbuild.h,
+	include/freetype/internal/internal.h: Revised.
+	* include/freetype/ftimage.h: Updated to new header inclusion scheme.
+
+2000-11-30  Werner Lemberg  <wl at gnu.org>
+
+	* builds/toplevel.mk (.PHONY): Adding `distclean'.
+	* builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
+	`setup'.
+
+2000-11-30  David Turner  <david.turner at freetype.org>
+
+	* INSTALL: Slightly updated the quick starter documentation to
+	include IDE compilation, prevent against BSD Make, and specify `make
+	setup' instead of a single `make' for build configuration.
+
+	* include/config/ftbuild.h, include/internal/internal.h: Added new
+	configuration files used to determine the location of all public,
+	configuration, and internal header files for FreeType 2.  Modified
+	all headers under `include/freetype' to reflect this change.  Note
+	that we still need to change the library source files themselves
+	though.
+
+	* builds/compiler/bcc.mk, builds/compiler/bcc-dev.mk,
+	builds/win32/w32-bcc.mk, builds/win32/w32-bccd.mk,
+	builds/win32/detect.mk: Added new files to support compilation with
+	the free Borland C++ command-line compiler.  Modified the detection
+	rules to recognize the new `bcc32' target in `make setup bcc32'.
+
+	* src/sfnt/ttcmap.c, src/sfnt/ttpost.c, src/sfnt/ttsbit.c,
+	src/truetype/ttobjs.c, src/truetype/ttgload.c,
+	src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++
+	didn't really like.  Basically, this compiler complains when FT_UInt
+	is compared to FT_UShort (apparently, it promotes `UShort' to `Int'
+	in these cases).
+
+2000-11-30  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* t2objs.c (T2_Init_Face): Added calculation of `face->height' for
+	pure CFF fonts.
+
+	* t1objs.c (T1_Init_Face): Fixed computation of `face->height'.
+
+2000-11-29  David Turner  <david.turner at freetype.org>
+
+	* src/base/ftbbox.c (BBox_Conic_Check): Fixed a really stupid
+	bug in the formula used to compute the conic Bézier extrema
+	of non-monotonous arcs.
+
+2000-11-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftcalc.c (FT_SqrtFixed), src/base/ftobjs.c
+	(FT_Set_Renderer): Use FT_EXPORT_DEF.
+	* src/cache/ftcimage.c (FTC_Image_Cache_Lookup),
+	src/cache/ftcmanag.c (FTC_Manager_Done, FTC_Manager_Reset,
+	FTC_Manager_Lookup_Face, FTC_Manager_Lookup_Size,
+	FTC_Manager_Register_Cache), src/cache/ftcsbits.c
+	(FTC_SBit_Cache_Lookup): Ditto.
+
+	* src/include/freetype/cache/ftcglyph.h (FTC_GlyphNode_Init),
+	src/include/freetype/ftmac.h (FT_New_Face_From_FOND): Use FT_EXPORT.
+
+2000-11-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfdriver.c: Include ttsbit.h and ttpost.h only
+	conditionally.
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes, Set_Pixel_Sizes): Set
+	`size->strike_index' only conditionally.
+
+	* src/type1/t1driver.c, src/type1/t1objs.c: Include t1afm.h only
+	conditionally.
+
+	* src/winfonts/winfnt.h: Move all type definitions to...
+	* src/include/freetype/internal/fnttypes.h: New file.
+	* src/winfonts/winfnt.c: Use it.
+
+2000-11-29  ??? ???  <darin at eazel.com>
+
+	* include/freetype/internal/ftdebug.h: Replaced FT_CAT and FT_XCAT
+	with a direct solution (which also satisfies picky compilers).
+
+2000-11-28  YAMANO-UCHI Hidetoshi  <mer at din.or.jp>
+
+	* src/truetype/ttobjs.c (TT_Init_Size): Fix #ifdef's to work with
+	disabled interpreter also.
+
+	* src/base/ftnames.c (FT_Get_Sfnt_Name_Count): Fix incorrect
+	parentheses.
+
+2000-11-26  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/t2gload.c (T2_Parse_CharStrings): Added logic to glyph
+	width setting code to take into account even/odd argument counts
+	and glyph width operand before endchar/hmoveto/vmoveto.
+
+2000-11-26  Werner Lemberg  <wl at gnu.org>
+
+	* builds/ansi/ansi.mk: Fix inclusion order of files.
+
+2000-11-26  Keith Packard  <keithp at keithp.com>
+
+	* src/type1/t1objs.c (T1_Init_Face): Compute style flags.
+
+2000-11-26  Werner Lemberg  <wl at gnu.org>
+
+	* builds/compiler/ansi-cc.mk (CLEAN_LIBRARY): Fix rule and
+	conditional.
+
+2000-11-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_subrs, parse_charstrings): Use decrypt
+	function from PSAux module.
+
+	* src/type1/t1parse.c (T1_Done_Parse): Renamed to...
+	(T1_Finalize_Parser): New function (to avoid name clash with a
+	function in the PSAux module).
+	(T1_Decrypt): Removed since it is duplicated in the PSAux module.
+	(T1_Get_Private_Dict): Added `psaux' as new parameter; use decrypt
+	function from PSAux module.
+
+	* src/type1/t1parse.h: Adapted.
+
+2000-11-22  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/cff/t2objs.c (T2_Init_Face): For pure CFF fonts, set
+	`root->num_faces' to `cff->num_faces' and set `units_per_EM'
+	to 1000.
+
+	* src/cff/t2parse.c (parse_t2_real): Fixed real number parsing
+	loop.
+
+	* src/cff/t2load.c (T2_Get_String): Called T2_Get_Name with a
+	sid that was off by one.
+
+2000-11-16  David Turner  <david at freetype.org>
+
+	* src/autohint/ahtypes.h (AH_Hinter): Added new fields to control
+	auto-hinting of synthetic Type 1 fonts.
+
+	* src/autohint/ahhint.c (ah_hinter_load, ah_hinter_load_glyph):
+	Added auto-hinting support of synthetic Type 1 fonts.
+
+2000-11-12  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* src/sfnt/ttload.c (TT_LookUp_Table, TT_Load_Generic_Table): Change
+	tracing output.
+
+	* src/sfnt/sfobjs.c (SFNT_Load_Face): Set boolean variable
+	`has-outline' to true only if the font has a `glyf' or `CFF ' table.
+
+2000-11-11  Werner Lemberg  <wl at gnu.org>
+
+	* builds/win32/visualc/freetype.dsp: Fix raster1->raster and
+	type1z->type1.
+
+2000-11-11  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* builds/unix/freetype-config.in, builds/cygwin/freetype-config.in:
+	Added a --libtool option.  When freetype-config --libtool is
+	invoked, the absolute path to the libtool convenience library
+	is returned.
+
+2000-11-11  Werner Lemberg  <wl at gnu.org>
+
+	* builds/cygwin/cygwin-def.in: Same fix as previous.
+
+2000-11-10  Tom Kacvinsky  <tkacvins at freetype.org>
+
+	* builds/unix/unix-def.in: Add
+
+	    INSTALL_PROGRAM := @INSTALL_PROGRAM@
+	    INSTALL_SCRIPT  := @INSTALL_SCRIPT@
+
+	so that installation of freetype-config does not fail.
+
+2000-11-10  Werner Lemberg  <wl at gnu.org>
+
+	* builds/cygwin/freetype-config.in, builds/unix/freetype-config.in:
+	Move test down for empty --exec-prefix.
+	Fix --version.
+
+	* builds/cygwin/install.mk, builds/unix/install.mk: Use
+	$(INSTALL_SCRIPT) for installation of freetype-config.
+
+	* builds/cygwin/install.mk: Fix clean target names.
+
+2000-11-09  David Turner  <david at freetype.org>
+
+
+	* Version 2.0 released.
+	=======================
+
+----------------------------------------------------------------------------
+
+Copyright (C) 2000-2020 by
+David Turner, Robert Wilhelm, and Werner Lemberg.
+
+This file is part of the FreeType project, and may only be used, modified,
+and distributed under the terms of the FreeType project license,
+LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+indicate that you have read the license and understand and accept it
+fully.
+
+
+Local Variables:
+version-control: never
+coding: utf-8
+End:

Copied: trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.21 (from rev 60353, trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.21)
===================================================================
--- trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.21	                        (rev 0)
+++ trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.21	2021-08-29 06:19:44 UTC (rev 60360)
@@ -0,0 +1,9438 @@
+2005-06-08  Werner Lemberg  <wl at gnu.org>
+
+
+	* Version 2.1.10 released.
+	==========================
+
+
+	* src/pcf/readme: Renamed to...
+	* src/pcf/README: This.
+
+2005-06-07  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/*: Added copyright notes, reworked some comments.
+
+2005-06-05  Werner Lemberg  <wl at gnu.org>
+
+	* Add copyright notices to all files which don't have one.
+
+	* docs/license.txt: Renamed to...
+	* docs/LICENSE.TXT: This.
+	* docs/FTL.txt: Renamed to...
+	* docs/FTL.TXT: This.
+	* docs/GPL.txt: Renamed to...
+	* docs/GPL.TXT: This.
+
+	* docs/PATENTS: Slightly reworded.  Suggested by Sylvain Beucler
+	<beuc at gnu.org>.
+
+2005-06-04  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftimage.h (FT_Outline_MoveToFunc,
+	FT_Outline_LineToFunc, FT_Outline_ConicToFunc,
+	FT_Outline_CubicToFunc, FT_Raster_RenderFunc),
+	include/freetype/ftrender.h (FT_Glyph_TransformFunc,
+	FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Don't use
+	`const' to stay compatible with FreeType 2.1.9.
+
+2005-06-01  Adam D. Moss  <adam at gimp.org>
+
+	* src/base/ftstroke.c (ft_stroker_inside): Revert `sigma' patch from
+	2004-07-11; this gives much better results under normal
+	circumstances.
+
+2005-05-30  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/ftbitmap.h (FT_Bitmap_Embolden): Minor
+	documentation improvements.
+
+	* include/freetype/ftoutln.h (FT_Outline_Embolden): Fix typos.
+
+	* src/base/ftbitmap.c (FT_Bitmap_Embolden): Add support for bitmap
+	of pixel_mode FT_PIXEL_MODE_GRAY2 or FT_PIXEL_MODE_GRAY4.
+	If xstr is larger than 8 and bitmap is of pixel_mode
+	FT_PIXEL_MODE_MONO, set xstr to 8 instead of returning error.
+
+2005-05-29  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftbitmap.c (FT_Bitmap_Embolden): Fix emboldening bitmap
+	of mode FT_PIXEL_MODE_GRAY.  Also add support for mode
+	FT_PIXEL_MODE_LCD and FT_PIXEL_MODE_LCD_V.
+	(ft_bitmap_assure_buffer): FT_PIXEL_MODE_LCD and FT_PIXEL_MODE_LCD_V
+	should have ppb (pixel per byte) 1.
+	Zero the padding when there's no need to allocate memory.
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Handle slot->advance
+	too.
+	More suited emboldening strength.
+
+2005-05-28  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftbitmap.c (FT_Bitmap_Embolden): Handle negative pitch.
+	Handle FT_PIXEL_MODE_GRAY with num_gray != 256.
+	Improve speed for FT_PIXEL_MODE_GRAY.
+	(ft_bitmap_assure_buffer): Accept FT_PIXEL_MODE_LCD and
+	FT_PIXEL_MODE_LCD_V.
+
+2005-05-27  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Initialize `error'.
+
+	* src/base/ftobjs.c (ft_cmap_done_internal): New function.
+	(FT_CMap_Done): Remove cmap from cmap list.
+	(destroy_charmaps, FT_CMap_New): Don't call FT_CMap_Done but
+	ft_cmap_done_internal.
+
+2005-05-26  Werner Lemberg  <wl at gnu.org>
+
+	* docs/GPL.txt: Update postal address of FSF.
+
+2005-05-26  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/ftbitmap.h (FT_Bitmap_Embolden): Improve
+	documentation.
+
+	* src/base/ftsynth.c (FT_BOLD_THRESHOLD): Removed.
+	(FT_GlyphSlot_Embolden): Check whether slot is bitmap owner.
+	Always modify the metrics.
+
+2005-05-24  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2005-05-24  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/ftbitmap.h (FT_Bitmap_Embolden): New declaration.
+
+	* include/freetype/ftoutln.h (FT_Outline_Embolden): New declaration.
+
+	* src/base/ftbitmap.c (ft_bitmap_assure_buffer): New auxiliary
+	function.
+	(FT_Bitmap_Embolden): New function.
+
+	* src/base/ftoutln.c (FT_Outline_Embolden): New function.
+
+	* src/base/ftsynth.c: Don't include FT_INTERNAL_CALC_H and
+	FT_TRIGONOMETRY_H but FT_BITMAP_H.
+	(FT_GlyphSlot_Embolden): Use FT_Outline_Embolden or
+	FT_Bitmap_Embolden.
+
+2005-05-24  Werner Lemberg  <wl at gnu.org>
+
+	* configure: Always remove config.mk, builds/unix/unix-def.mk, and
+	builds/unix/unix-cc.mk.  This fixes repeated calls of the script.
+	Reported by Nelson Beebe and Behdad Esfahbod.
+
+	* README.CVS: Mention file permissions.
+
+2005-05-23  Werner Lemberg  <wl at gnu.org>
+
+	* builds/amiga/makefile.os4 (WARNINGS), builds/compiler/gcc-dev.mk
+	(CFLAGS), builds/compiler/gcc.mk (CFLAGS): Remove
+	-fno-strict-aliasing.
+
+	* src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c --
+	it is currently loaded from ttsbit.c.
+
+2005-05-23  Behdad Esfahbod  <behdad at cs.toronto.edu>
+
+	Say you have `(Foo*)x' and want to assign, pass, or return it as
+	`(Bar*)'.  If you simply say `x' or `(Bar*)x', then the C compiler
+	would warn you that type casting incompatible pointer types breaks
+	strict-aliasing.  The solution is to cast to `(void*)' instead which
+	is the generic pointer type, so the compiler knows that it should
+	make no strict-aliasing assumption on `x'.  But the problem with
+	`(void*)x' is that seems like in C++, unlike C, `void*' is not a
+	generic pointer type and assigning `void*' to `Bar*' without a cast
+	causes an error.  The solution is to cast to `Bar*' too, with
+	`(Bar*)(void*)x' as the result -- this is what the patch does.
+
+	* include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP),
+	include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Remove
+	cast on lvalue, use a temporary pointer instead.
+	Cast temporarily to (void*) to not break strict aliasing.
+
+	* include/freetype/internal/ftmemory.h (FT_MEM_ALLOC,
+	FT_MEM_REALLOC, FT_MEM_QALLOC, FT_MEM_QREALLOC, FT_MEM_FREE),
+	src/base/ftglyph.c (FT_Glyph_To_Bitmap): Cast temporarily to (void*)
+	to not break strict aliasing.
+
+	* src/base/ftinit.c (FT_USE_MODULE): Fix wrong type information.
+
+	* builds/unix/configure.ac (XX_CFLAGS): Remove -fno-strict-aliasing.
+
+2005-05-23  David Turner  <dturner at freetype.org>
+
+	Fix Savannah bug #12213 (incorrect behaviour of the cache sub-system
+	in low-memory conditions).
+
+	* include/freetype/cache/ftccache.h (FTC_CACHE_TRYLOOP,
+	FTC_CACHE_TRYLOOP_END): New macros.
+
+	* src/cache/ftccache.c (FTC_Cache_NewNode), src/cache/ftcsbits.c
+	(ftc_snode_compare): Use FT_CACHE_TRYLOOP and FTC_CACHE_TRYLOOP_END.
+
+2005-05-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/rules.mk (BASE_SRC): Don't add ftsynth.c here but...
+	(BASE_EXT_SRC): Here.
+
+2005-05-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftrfork.c (raccess_guess_apple_generic): Mark
+	`version_number' and `entry_length' as unused.
+	(raccess_guess_linux_double_from_file_name): Remove `memory'.
+	(raccess_make_file_name): Mark `error' as unused.
+
+	* src/bdf/bdflib.c (_bdf_parse_properties): Remove `memory'.
+
+	* src/cid/cidobjs.c (cid_face_init): Remove `psnames'.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Remove `memory'.
+
+	* src/truetype/ttgxvar.c (ft_var_readpackedpoints,
+	ft_var_readpackeddeltas, ft_var_load_avar): Mark `error' as unused.
+
+	* src/base/rules.mk (BASE_SRC): Add ftsynth.c.
+
+2005-05-21  David Turner  <david at freetype.org>
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Fix a bug that
+	produced unpleasant artefacts when trying to embolden very sharp
+	corners.
+
+2005-05-20  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2005-05-20  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftbitmap.c: Don't include FT_FREETYPE_H and FT_IMAGE_H
+	but FT_BITMAP_H.
+	(FT_Bitmap_Copy): New function (from ftglyph.c).
+
+	* include/freetype/ftbitmap.h (FT_Bitmap_Copy): New public
+	definition.
+
+	* src/base/ftglyph.c: Include FT_BITMAP_H.
+	(ft_bitmap_copy): Move to ftbitmap.c.
+	(ft_bitmap_glyph_init): Remove `memory' variable.
+	Create new bitmap object if FT_GLYPH_OWN_BITMAP isn't set.
+	(ft_bitmap_glyph_copy): Use FT_Bitmap_Copy.
+	(ft_bitmap_glyph_done): Use FT_Bitmap_Done.
+	(ft_outline_glyph_init): Use FT_Outline_Copy.
+
+	* src/base/ftoutln.c (FT_Outline_Copy): Handle source == target.
+	(FT_Outline_Done_Internal): Check for valid `memory' pointer.
+	(FT_Outline_Translate, FT_Outline_Reverse, FT_Outline_Render,
+	FT_Outline_Transform): Check for valid `outline' pointer.
+
+	* src/base/ftobjs.c (FT_New_GlyphSlot): Prepend glyph slot to
+	face->glyph, otherwise a new second glyph slot cannot be created.
+	(FT_Done_GlyphSlot): Fix memory leak.
+	(FT_Open_Face): Updated -- face->glyph is already managed by
+	FT_New_GlyphSlot.
+
+	* src/type42/t42objs.c (T42_GlyphSlot_Done): Updated.
+
+2005-05-20  Kirill Smelkov  <kirr at mns.spb.ru>
+
+	* include/freetype/ftimage.h (FT_Raster_Params),
+	include/freetype/ftoutln.h (FT_Outline_Translate,
+	FT_Outline_Transform), src/base/ftoutln.c (FT_Outline_Translate,
+	FT_Outline_Transform): Decorate parameters with `const' where
+	appropriate.
+	Update all callers.
+
+	* src/raster/ftraster.c (ft_black_reset), src/smooth/ftgrays.c
+	(gray_raster_reset): Remove `const' from `pool_base' argument.
+
+2005-05-18  Kirill Smelkov  <kirr at mns.spb.ru>
+
+	* src/raster/ftmisc.h: New file.  Only needed if ftraster.c is
+	compiled as stand-alone.
+
+	* src/raster/ftraster.c: Add comment how to compile as stand-alone.
+	s/FT_CONFIG_OPTION_STATIC_RASTER/FT_STATIC_RASTER/.
+	s/TT_STATIC_RASTER/FT_STATIC_RASTER/.
+	[_STANDALONE_]: Include ftimage.h and ftmisc.h.
+	(FT_TRACE1, FT_TRACE6, ft_memset, FT_MEM_ZERO): Define
+	conditionally.
+	(Render_Glyph, Render_Gray_Glyph): Return Raster_Err_None (or
+	Raster_Err_Unsupported).
+	(ft_black_new) [_STANDALONE_]: Fix type of `the_raster'.
+	(ft_black_init, ft_black_reset, ft_black_set_mode, ft_black_render):
+	Use `ras', not `raster'.
+	(ft_black_done): Use FT_UNUSED_RASTER.
+	(Horizontal_Sweep_Init, Horizontal_Sweep_Step,
+	Horizontal_Gray_Sweep_Span): Use FT_UNUSED_RASTER.
+
+2005-05-18  Werner Lemberg  <wl at gnu.org>
+
+	* docs/announce: Start updating.
+
+	* docs/CHANGES: Updated.
+
+2005-05-16  Vitaliy Pasternak  <v_a_pasternak at mail.ru>
+
+	* builds/win32/visualc/freetype.vcproj: Updated.
+	Exclude debug info for `Release' versions to reduce library size.
+
+2005-05-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Open_Face): Make it work as documented, this
+	is, ignore `aface' completely if face_index < 0.  Reported by David
+	Osborn <spam at habitualhiatus.com>.
+
+2005-05-16  Kirill Smelkov  <kirr at mns.spb.ru>
+
+	* include/freetype/ftimage.h (FT_Outline_MoveToFunc,
+	FT_Outline_LineTo_Func, FT_Outline_ConicToFunc,
+	FT_Outline_CubicToFunc), src/smooth/ftgrays.c (gray_render_conic,
+	gray_render_cubic, gray_move_to, gray_line_to, gray_conic_to,
+	gray_cubic_to, gray_render_span, gray_sweep): Decorate parameters
+	with `const' where appropriate.
+
+2005-05-11  Kirill Smelkov  <kirr at mns.spb.ru>
+
+	* include/freetype/ftimage.h (FT_Raster_RenderFunc),
+	include/freetype/ftrender.h (FT_Glyph_TransformFunc,
+	FT_Renderer_Render_Func, FT_Renderer_TransformFunc),
+	src/base/ftglyph.c (ft_outline_glyph_transform),
+	src/raster/ftrend1.c (ft_raster1_transform, ft_raster1_render),
+	src/smooth/ftgrays.c (FT_Outline_Decompose, gray_raster_render),
+	src/smooth/ftsmooth.c (ft_smooth_transform,
+	ft_smooth_render_generic, ft_smooth_render, ft_smooth_render_lcd,
+	ft_smooth_render_lcd_v): Decorate parameters with `const' where
+	appropriate.
+
+	* src/raster/ftraster.c (RASTER_RENDER_POOL): Removed.  Obsolete.
+	(ft_black_render): Decorate parameters with `const' where
+	appropriate.
+
+2005-05-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttcmap.c (tt_cmap4_set_range): Fix typo (FT_PEEK_SHORT ->
+	FT_PEEK_USHORT) which caused crashes.  Reported by Ismail Donmez
+	<ismail at kde.org.tr>.
+
+2005-05-08  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftserv.h (FT_FACE_FIND_GLOBAL_SERVICE)
+	[__cplusplus]: Fix typo.
+
+2005-05-07  Werner Lemberg  <wl at gnu.org>
+
+	Handle unsorted SFNT type 4 cmaps correctly (reported by Dirck
+	Blaskey <listtarget at danbala.com>).
+
+	* src/sfnt/ttcmap.h (TT_CMap): Add member `unsorted'.
+	* src/sfnt/ttcmap.c: Use SFNT_Err_Ok where appropriate.
+
+	(tt_cmap0_validate, tt_cmap2_validate, tt_cmap6_validate,
+	tt_cmap8_validate, tt_cmap10_validate, tt_cmap12_validate): Use
+	`FT_Error' as return type.
+	(tt_cmap4_validate): Use `FT_Error' as return type.
+	Return error code for unsorted cmap.
+	(tt_cmap4_char_index, tt_cmap4_char_next): Use old code for unsorted
+	cmaps.
+	(tt_face_build_cmaps): Set `unsorted' variable in cmap.
+
+2005-05-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttpload.c (tt_face_get_location): Fix typo.
+
+2005-05-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Set ppem value in top
+	dictionary for SFNT-based CFF.
+
+2005-05-05  Werner Lemberg  <wl at gnu.org>
+
+	Handle malformed `loca' table entries.
+
+	* docs/TODO: Add some bugs which should be fixed.
+
+	* include/freetype/internal/tttypes.h (TT_FaceRec): Add `glyf_len'
+	element.
+
+	* src/truetype/ttpload.c (tt_face_load_loca): Get length of `glyf'
+	table.
+	(tt_face_get_location): Fix computation of `asize' for malformed
+	`loca' entries.
+
+2005-05-01  David Turner  <david at freetype.org>
+
+	* Jamfile: Remove `otvalid' from the list of compiled modules.
+
+	* include/freetype/internal/ftserv.h: Add compiler pragmas to get
+	rid of annoying warnings with Visual C++ compiler in maximum warning
+	mode.
+
+	* src/autofit/afhints.c, src/autofit/aflatin.c, src/base/ftstroke.c,
+	src/bdf/bdfdrivr.c, src/cache/ftcbasic.c, src/cache/ftccmap.c,
+	src/cache/ftcmanag.c, src/cff/cffload.c, src/cid/cidload.c,
+	src/lzw/zopen.c, src/otvalid/otvgdef.c, src/pcf/pcfread.c,
+	src/sfnt/sfobjs.c, src/truetype/ttgxvar.c: Remove compiler warnings.
+
+2005-04-28  Werner Lemberg  <wl at gnu.org>
+
+	* docs/TODO: Updated.
+
+2005-04-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/otvcommn.c
+	(otv_GSUBGPOS_have_MarkAttachmentType_flag): Handle table == 0.
+
+2005-04-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Set default upem value in top
+	font dict also.
+	Handle font matrix settings in subfonts.
+
+	* src/cff/cffgload.c (cff_slot_load): Use the correct font matrix
+	for CID-keyed fonts with subfonts.
+
+	* docs/formats.txt: Updated.
+
+2005-04-14  Kirill Smelkov  <kirr at mns.spb.ru>
+
+	* include/freetype/freetype.h (FT_Vector_Transform),
+	include/freetype/ftimage.h (FT_Raster_Params),
+	include/freetype/ftoutln.h, src/base/ftoutln.c (FT_Outline_Get_CBox,
+	FT_Outline_Copy, FT_Outline_Transform, FT_Vector_Transform,
+	FT_Outline_Get_Bitmap), src/raster/ftraster.c (ft_black_render),
+	src/smooth/ftgrays.c (gray_raster_render): Decorate parameters with
+	`const' where appropriate.
+
+2005-04-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_charstrings): Catch this non-standard
+	beginning of the /CharStrings dictionary:
+
+	  /CharStrings 118 dict def
+	  Private begin
+	  CharStrings begin
+
+	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Fix arguments
+	to call of tt_sbit_decoder_load_bitmap.
+
+2005-04-13  Werner Lemberg  <wl at gnu.org>
+
+	* docs/TODO: Updated.
+
+	* autogen.sh: Use `--force' for all commands.
+
+2005-04-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo.c (ps_hints_apply): Change scaling values
+	only if `fitted' is not zero.
+
+2005-04-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (tt_face_get_metrics) [FT_OPTIMIZE_MEMORY]:
+	Fix typo which sometimes causes wrong metrics for the last glyph.
+
+2005-04-04  David Turner  <david at freetype.org>
+
+	* devel/ftoption.h, include/freetype/config/ftoption.h
+	(FT_OPTIMIZE_MEMORY): Comment out this macro for the upcoming 2.1.10
+	release.
+	(*_CHESTER_*): Removed.  No longer used.
+
+	* src/autofit/afhints.c (af_axis_hints_new_segment,
+	af_axis_hints_new_edge): Small tweak to use less heap memory.
+
+2005-04-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1parse.c (T1_New_Parser): Relax the check for a valid
+	first line in the font.
+
+2005-04-03  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES, include/freetype/freetype.h: Improve documentation
+	of FT_Set_Pixel_Sizes and FT_Set_Char_Size.
+
+2005-03-26  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/src/base/ftsystem.c (ft_amiga_stream_io): Fix buffer
+	offsets after a large read.
+
+2005-03-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/afglobal.c (af_face_globals_get_metrics):
+	s/index/gidx/.
+
+	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Fix compiler
+	warnings.
+
+	* src/sfnt/rules.mk (SFNT_DRV_SRC): Add ttsbit0.c.
+
+	* src/sfnt/ttsbit0.h: Dummy file for build with `make'.
+
+2005-03-26  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	Update of the Amiga port.
+
+	* builds/amiga/makefile, builds/amiga/makefile.os4,
+	builds/amiga/smakefile: Included the base extension files
+	(ftbitmap.c, ftotval.c, ftpfr.c, ftstroke.c, ftxf86.c).
+
+2005-03-25  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	Update of the Amiga port.
+
+	* builds/amiga/makefile, builds/amiga/smakefile: Handle new modules.
+
+	* builds/amiga/makefile.os4: Makefile for AmigaOS4 SDK.
+
+	* builds/amiga/README: Updated.
+
+	* builds/amiga/include/freetype/config/ftconfig.h: Handle gcc for
+	AmigaOS4.
+
+	* builds/amiga/include/freetype/config/ftmodule.h: Handle new
+	modules.
+
+	* builds/amiga/src/base/ftdebug.c: Updated to current version of
+	default ftdebug.c.
+	Add various include files and macros to have proper support for
+	both AmigaOS4 and older AmigaOS versions.
+	Don't declare KVPrintF explicitly.
+	Replace getenv with GetVar.
+	Actually enable debugging code.
+
+	* builds/amiga/src/base/ftsystem.c: Major rewrite.
+
+2005-03-23  Werner Lemberg  <wl at gnu.org>
+
+	* tests/*: Removed.
+
+2005-03-23  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES, docs/INSTALL.ANY: Updated.
+
+	* include/freetype/ftmoderr.h: Replace `Autohint' with `Autofit'.
+	Add `OTvalid'.
+
+	* src/autofit/aferrors.h: New file.
+
+	* src/autofit/afglobal.c, src/autofit/afhints.c,
+	src/autofit/aflatin.c, src/autofit/afloader.c: s/FT_Err_/AF_Err_/.
+	Include aferrors.h.
+
+	* src/autofit/rules.mk (AUTOF_DRV_H): Include aferrors.h.
+
+	* src/otvalid/otverror.h: s/FT_Mod_Err_OTV/FT_Mod_Err_OTvalid/.
+
+2005-03-22  David Turner  <david at freetype.org>
+
+	* src/autohint/*: Removed.
+	* Jamfile: Updated.
+
+2005-03-15  David Turner  <david at freetype.org>
+
+	* src/bdf/bdflib.c: Remove compiler warnings.
+	(hash_rehash, hash_init): Don't call FT_MEM_ZERO.
+	(_bdf_list_t): Add `memory' field.
+	(_bdf_list_init, _bdf_list_done, _bdf_list_ensure): New functions.
+	(_bdf_shift, _bdf_join): Rename to...
+	(_bdf_list_shift, _bdf_list_join): This.
+	(_bdf_split): Renamed to...
+	(_bdf_list_split): This.  Use new functions.
+	(bdf_internal_readstream): Removed.
+	(NO_SKIP): New macro.
+	(_bdf_readstream): Rewritten.
+	(bdf_create_property, _bdf_add_comment): Improve allocation.
+	(_bdf_set_default_spacing, _bdf_parse_glyphs): Updated.  Improve
+	allocation.
+	(_bdf_parse_properties, _bdf_parse_start): Updated.
+	(bdf_load_font): Updated to use new functions.
+
+	* src/type1/t1parse.c (check_type1_format): New function.
+	(T1_New_Parser): Use it to check font header before allocating
+	anything on the heap.
+
+	* src/type42/t42parse.c (t42_parser_init): Modify functions to check
+	the font header before allocating anything on the heap.
+
+	* include/freetype/internal/ftmemory.h (FT_ARRAY_MAX,
+	FT_ARRAY_CHECK): New macros.
+
+	* src/base/ftstream.c (FT_Stream_TryRead): New function.
+	* include/freetype/internal/ftstream.h: Updated.
+
+	* src/pcf/pcfread.c (pcf_read_TOC), src/pcf/pcfutil.c
+	(BitOrderInvert, TwoByteSwap, FourByteSwap): Minor fixes and
+	simplifications.  Try to protect the PCF driver from doing stupid
+	things with broken fonts.
+
+	* src/lzw/ftlzw.c (FT_Stream_OpenLZW): Check the LZW header before
+	doing anything else.  This avoids unnecessary heap allocations
+	(400KByte of heap memory for the LZW decoder).
+
+	* src/gzip/ftgzip.c (FT_Stream_OpenGzip): Ditto for the gzip
+	decoder, although the code savings are smaller.
+
+	* docs/CHANGES: Updated.
+
+2005-03-10  David Turner  <david at freetype.org>
+
+	* src/tools/glnames.py: Add comment to explain the compression
+	being used for the Adobe Glyph List.
+
+2005-03-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttpload.c (tt_face_load_cvt, tt_face_load_fpgm):
+	Fix serious typo which prevented correct TT rendering.
+
+	* include/freetype/internal/ftmemory.h: Undo change from 2005-03-03.
+	To suppress warnings it is sufficient to use `-fno-strict-aliasing'.
+
+2005-03-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/glnames.py: Formatted.
+	Format output to be in sync with other FreeType code.
+	Import `re' and `os.path'.
+	(StringTable) <__init__>: Add parameter to initialize master table
+	name.
+	(StringTable) <dump>: Don't pass master table name.
+	(StringTable) <dump_sublist>: Emit explanatory comment.
+	Simplify and make output more human readable.
+	(t1_bias, glyph_list, adobe_glyph_names): Removed.  Unused.
+	(main): Use `basename' for file name in header.
+
+	* src/psnames/pstables.h: Regenerated.
+
+2005-03-09  David Turner  <david at freetype.org>
+
+	* src/tools/glnames.py: Rewrite the generator for the `pstables.h'
+	header file which contains various constant tables related to glyph
+	names.  It now uses a different, more compact storage scheme that
+	saves about 20KB.  This also closes Savannah bug #12262.
+
+	* src/psnames/pstables.h: Regenerated.
+
+	* src/psnames/psmodule.c (ps_unicode_value): Use
+	`ft_get_adobe_glyph_index', a new function defined in `pstables.h'.
+	(ps_get_macintosh_name, ps_get_standard_strings): Updated.
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Handle fractional sizes
+	more carefully.  This fixes Savannah bug #12263.
+
+2005-03-06  David Turner  <david at freetype.org>
+
+	* src/otvalid/otvgsub.c, src/otvalid/otvgpos.c: Make static tables
+	constant.
+
+	* src/autofit/aflatin.c (af_latin_metrics_init): Fix Savannah bug
+	#12212 (auto-hinter refuses to work if no Unicode charmap in font).
+
+2005-03-05  Werner Lemberg  <wl at gnu.org>
+
+	* autogen.sh: New script for bootstrapping.
+
+	* README.CVS: New file which documents bootstrapping.
+
+	* builds/unix/aclocal.m4, builds/unix/config.guess,
+	builds/unix/config.sub, builds/unix/configure,
+	builds/unix/ltmain.sh: Removed.
+
+2005-03-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftutil.c: Include FT_INTERNAL_OBJECTS_H.
+
+2005-03-03  Werner Lemberg  <wl at gnu.org>
+
+	Various fixes for C and C++ compiling.
+
+	* src/autofit/*: Add copyright messages.
+
+	* src/autofit/afhints.c (af_glyph_hints_done): Don't use
+	`AF_Dimension' but `int' for loop counter.
+
+	* src/autofit/aflatin.c (af_latin_metrics_init_widths): Don't use
+	`AF_Dimension' but `int' for loop counter.
+	Use proper enumeration value for `render_mode'.
+	(af_latin_metrics_scale_dim): Don't shadow variables.
+	(af_latin_hints_compute_segments): Use proper cast for `major_dir'
+	and `segment_dir'.
+	(af_latin_align_linked_edge, af_latin_hint_edges): Fix arguments of call to
+	`af_latin_compute_stem_width'.
+	(af_latin_hints_apply): Don't use `AF_Dimension' but `int' for loop
+	counter.
+
+	* src/base/ftdbgmem.c (ft_mem_table_get_source, FT_DumpMemory): Use
+	proper cast for memory allocation.
+
+	* src/cff/cffdrivr.c (cff_get_kerning): Use proper cast for
+	initialization of `sfnt'.
+
+	* src/sfnt/sfdriver.c: Include `ttkern.h'.
+
+	* src/sfnt/ttkern.c (tt_face_get_kerning): Don't shadow variables.
+
+	* src/truetype/ttgload.c: Include `ttpload.h'.
+
+2005-03-03  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/ftmemory.h (FT_ALLOC, FT_REALLOC,
+	FT_QALLOC, FT_QREALLOC) [gcc >= 3.3]: Provide macro versions which
+	avoid compiler warnings.
+	(FT_NEW, FT_NEW_ARRAY, FT_RENEW_ARRAY, FT_QNEW, FT_QNEW_ARRAY,
+	FT_QRENEW_ARRAY, FT_ALLOC_ARRAY, FT_REALLOC_ARRAY): Updated.
+
+	* include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE,
+	FT_FACE_FIND_GLOBAL_SERVICE, FT_FACE_LOOKUP_SERVICE) [__cplusplus]:
+	Provide macro versions which avoid compiler warnings.
+
+	* src/base/ftutil.c (ft_highpow2): New utility function.
+
+	* include/freetype/internal/ftobjs.h: Updated.
+
+	* src/pfr/pfrload.c (pfr_get_gindex, pfr_compare_kern_pairs,
+	pfr_sort_kerning_pairs): Don't define if FT_OPTIMIZE_MEMORY is set.
+	(pfr_phy_font_done): Don't handle `kern_pairs' if FT_OPTIMIZE_MEMORY
+	is set.
+	(pfr_phy_font_load): Don't call `pfr_sort_kerning_pairs' if
+	FT_OPTIMIZE_MEMORY is set.
+
+	* src/pfr/pfrobjs.c (pfr_slot_load): Comment out some code which
+	doesn't work with broken fonts.
+	(pfr_face_get_kerning) [FT_OPTIMIZE_MEMORY]: Implement.
+
+	* src/pfr/pfrtypes.h (PFR_KernItemRec): Optimize member types.
+	(PFR_NEXT_KPAIR): New macro.
+	(PFR_PhyFontRec): Don't define `kern_pairs' if FT_OPTIMIZE_MEMORY is
+	set.
+
+	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Introduce
+	temporary variable to avoid gcc warning.
+	(tt_face_load_sbit_image): Mark unused variables with FT_UNUSED.
+
+	* src/truetype/ttpload.c (tt_face_load_loca) [FT_OPTIMIZE_MEMORY]:
+	Remove redundant variable.
+
+	* include/freetype/config/ftmodule.h: Moving the order of drivers to
+	speed up font loading.  The PCF and BDF loaders are still slow and
+	consume far too much memory.
+
+2005-03-03  Werner Lemberg  <wl at gnu.org>
+
+	* devel/ftoption.h: Updated to recent changes.
+
+2005-03-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/afdummy.c, src/autofit/afdummy.h
+	(af_dummy_script_class): Fix type.
+
+	* src/autofit/aflatin.c, src/autofit/aflatin.h
+	(af_latin_script_class): Fix type.
+
+	* src/autofit/rules.mk (AUTOF_DRV_SRC): Fix typo.
+
+2005-03-01  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttkern.c (tt_face_load_kern, tt_face_get_kerning),
+	src/sfnt/ttsbit0.c (tt_face_load_sbit_strikes,
+	tt_sbit_decoder_load_byte_aligned, tt_sbit_decoder_load_compound,
+	tt_sbit_decoder_load_image), src/sfnt/ttload.c
+	(tt_face_load_metrics): Remove compiler warnings
+	-- redundant variables, missing initializations, etc.
+
+	* src/sfnt/ttsbit.h: Handle FT_OPTIMIZE_MEMORY.
+
+	* src/autofit/rules.mk, src/autofit/module.mk,
+	src/autofit/afangles.h: New files.
+
+	* src/autofit/afhints.c (af_axis_hints_new_segment,
+	af_axis_hints_new_edge): New functions.
+	(af_glyph_hints_done): Do proper deallocation.
+	(af_glyph_hints_reload): Only reallocate points array.  This
+	drastically reduces heap usage.
+
+	* src/autofit/afhints.h (AF_PointRec, AF_SegmentRec): Optimize
+	member types and positions.
+	(AF_AxisHintsRec): Add `max_segments' and `max_edges'.
+	(af_axis_hints_new_segment, af_axis_hints_new_edge): New prototypes.
+
+	* src/autofit/aflatin.c (af_latin_metrics_scale): Don't call
+	AF_SCALER_EQUAL_SCALES.
+	(af_latin_hints_compute_segments): Change return type to FT_Error.
+	Update all callers.
+	Improve segment allocation.
+	(af_latin_hints_compute_edges): Change return type to FT_Error.
+	Update all callers.
+	Improve edge allocation and link handling.
+	(af_latin_hints_detect_features): Change return type to FT_Error.
+	Update all callers.
+
+	* src/autofit/aflatin.h: Updated.
+
+	* src/autofit/afloader.c (af_loader_load_g)
+	<FT_GLYPH_FORMAT_OUTLINE>: Assure axis->num_edges > 1.  This fixes
+	a bug with certain fonts.
+
+	* include/freetype/config/ftmodule.h: The auto-fitter is now the
+	only supported auto-hinting module.
+
+	* include/freetype/config/ftstdlib.h (FT_INT_MAX): New macro.
+
+2005-02-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttpload.c (tt_face_load_loca): Fix typo.
+
+	* src/sfnt/ttkern.c: Include `ttkern.h'.
+	(FT_COMPONENT): Updated.
+
+	* include/freetype/internal/fttrace.h: Add entry for `ttkern'.
+
+	* src/sfnt/ttsbit0.c: s/FT_Err_/SFNT_Err_/.
+	Decorate constants with `U' and `L' where necessary.
+
+	* src/sfnt/ttcmap.c (tt_cmap4_next): Remove unused variable.
+
+2005-02-28  David Turner  <david at freetype.org>
+
+	* src/base/ftdbgmem.c (FT_DumpMemory): Added sorting of memory
+	sources according to decreasing maximum cumulative allocations.
+	(ft_mem_source_compare): New auxiliary function.
+
+	* src/sfnt/ttsbit0.c: New file, implementing a heap-optimized
+	embedded bitmap loader.
+
+	* src/sfnt/ttsbit.c: Include `ft2build.h', FT_INTERNAL_DEBUG_H,
+	FT_INTERNAL_STREAM_H, FT_TRUETYPE_TAGS_H.
+	Load `ttsbit0.c' if FT_OPTIMIZE_MEMORY is set, otherwise use
+	file contents.
+	(tt_face_load_sbit_strikes): Set up root fields to indicate the
+	strikes.  This fixes Savannah bug #12107.
+	Use `static' keyword for `sbit_line_metrics_field',
+	`strike_start_fields', `strike_end_fields'.
+
+	* include/freetype/internal/tttypes.h (TT_FaceRec): Define
+	`sbit_table', `sbit_table_size', `sbit_num_strikes' if
+	FT_OPTIMIZE_MEMORY is set.
+	Don't define `num_sbit_strikes' and `sbit_strikes' if
+	FT_OPTIMIZE_MEMORY is set.
+
+	* src/cff/cffobjs.c (sbit_size_reset): Handle FT_OPTIMIZE_MEMORY.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Fixed bug that prevented
+	loading SFNT fonts without a `kern' table.
+	Properly pass root->face_flags.
+	Remove code for TT_CONFIG_OPTION_EMBEDDED_BITMAPS.
+
+	* src/sfnt/sfdriver.c (sfnt_interface)
+	[TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Don't use `tt_find_sbit_image'
+	and `tt_load_sbit_metrics'.
+
+	* src/sfnt/ttcmap.c: Optimize linear charmap scanning for Format 4.
+	(OPT_CMAP4): New macro.
+	(TT_CMap4Rec) [OPT_CMAP4]: New structure.
+	(tt_cmap4_init, tt_cmap4_set_range, tt_cmap4_next, tt_cmap4_reset)
+	[OPT_CMAP4]: New functions.
+	(tt_cmap4_char_next) [OPT_CMAP4]: Use `tt_cmap4_next' and
+	`tt_cmap4_reset'.
+	(tt_cmap4_class_rec) [OPT_CMAP4]: Use `TT_CMap4Rec' and
+	`tt_cmap4_init'.
+
+	* src/truetype/ttobjs.c (Reset_SBit_Size): Handle
+	FT_OPTIMIZE_MEMORY.
+
+	* src/autofit/afhints.h (AF_PointRec, AF_SegmentRec, AF_EdgeRec):
+	Optimize member types.
+
+	* src/autofit/afloader.c (af_loader_done): Call
+	`af_glyph_hints_done'.
+
+2005-02-27  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttkern.c (tt_face_load_kern): Fix a small bug which
+	caused invalid (random) return values for the horizontal kerning.
+
+2005-02-25  David Turner  <david at freetype.org>
+
+	Implement several memory optimizations to drastically reduce the
+	heap usage of FreeType, especially in the case of memory-mapped
+	files.  The idea is to avoid loading and decoding tables in the
+	heap, and instead access the raw data whenever possible (i.e., when
+	it doesn't compromise performance).
+
+	This has several benefits: For example, opening vera.ttf now uses
+	just a small amount of memory (even when the FT_Library footprint is
+	accounted for), until you start loading glyphs.  Even then, you save
+	at least 20KB compared to the non-optimized case.  Performance of
+	various operations, including open and close, has also been
+	dramatically improved.
+
+	More optimizations to come, especially for the auto-hinter.
+
+	* include/freetype/internal/sfnt.h (TT_Face_GetKerningFunc): New
+	function type.
+	(SFNT_Interface): Add it.
+
+	* include/freetype/internal/tttypes.h (TT_HdmxEntryRec, TT_HdmxRec,
+	TT_Kern0_PairRec): Don't define if FT_OPTIMIZE_MEMORY is set.
+	(TT_FaceRec): Define `horz_metrics', `horz_metrics_size',
+	`vert_metrics', `vert_metrics_size', `hdmx_table',
+	`hdmx_table_size', `hdmx_record_count', `hdmx_record_size',
+	`hdmx_record_sizes', `kern_table', `kern_table_size,
+	`num_kern_tables', `kern_avail_bits', `kern_order_bits' if
+	FT_OPTIMIZE_MEMORY is set.
+	Don't define `hdmx', `num_kern_pairs', `kern_table_index',
+	`kern_pairs' if FT_OPTIMIZE_MEMORY is set.
+
+	* src/base/ftdbgmem.c (ft_mem_table_set): Don't shadow variable.
+	Fix compiler warning.
+
+	* src/cff/cffdrivr.c (Get_Kerning): Renamed to...
+	(cff_get_kerning): This.  Simplify.
+	(cff_driver_class): Updated.
+
+	* src/sfnt/Jamfile (_sources): Add `ttkern'.
+	* src/sfnt/rules.mk (SFNT_DRV_SRC): Add `ttkern.c'.
+
+	* src/sfnt/sfdriver.c (sfnt_interface): Add `tt_face_get_kerning'.
+
+	* src/sfnt/sfnt.c: Include `ttkern.c'.
+
+	* src/sfnt/sfobjs.c: Include `ttkern.h'.
+	(sfnt_load_face): Consider the `kern' and `gasp' table as optional.
+	(sfnt_done_face): Call `tt_face_done_kern'.
+	Handle horizontal metrics for FT_OPTIMIZE_MEMORY.
+
+	* src/sfnt/ttkern.c, src/sfnt/ttkern.h: New files.  Code has been
+	taken from `ttload.c' and `ttload.h'.
+	Provide special versions of `tt_face_load_kern',
+	`tt_face_get_kerning', and `tt_face_done_kern' for
+	FT_OPTIMIZE_MEMORY.
+
+	* src/sfnt/ttload.c (tt_face_load_metrics, tt_face_load_hdmx,
+	tt_face_free_hdmx): Provide version for FT_OPTIMIZE_MEMORY.
+	(tt_face_load_kern, tt_kern_pair_compare, TT_KERN_INDEX): Moved to
+	`ttkern.c'.
+
+	* src/sfnt/ttload.h: Updated.
+
+	* src/sfnt/ttsbit.c (sbit_metrics_field): Add `static' keyword.
+
+	* src/truetype/ttdriver.c (Get_Kerning): Renamed to...
+	(tt_get_kerning): This.  Simplify.
+	(tt_driver_class): Updated.
+
+	* src/truetype/ttgload.c (TT_Get_Metrics): Renamed to...
+	(tt_face_get_metrics): This.  Provide version for FT_OPTIMIZE_MEMORY.
+	Update all callers.
+	(Get_Advance_Widths): Replaced with...
+	(Get_Advance_WidthPtr): This.  Provide version for
+	FT_OPTIMIZE_MEMORY.
+	Update all callers.
+
+	* src/truetype/ttgload.h: Updated.
+
+2005-02-22  David Turner  <david at freetype.org>
+
+	* src/base/ftdbgmem.c: Partly rewritten.  Added the ability to list
+	all allocation sites in the memory debugger.  Also a new function
+	FT_DumpMemory() was added.  It is only available in builds with
+	FT_DEBUG_MEMORY defined, and you must declare it in your own code to
+	use it, i.e., with something like:
+
+	  extern void FT_DumpMemory( FT_Memory );
+
+	  ...
+
+	  FT_DumpMemory( memory );
+
+	* include/freetype/config/ftoption.h
+	(TT_CONFIG_OPTION_BYTECODE_INTERPRETER): Comment out definition --
+	again.
+	(FT_OPTIMIZE_MEMORY): New configuration macro to control various
+	optimizations for reducing the heap footprint of memory-mapped
+	TrueType files.
+
+	* include/freetype/internal/ftmemory.h (FT_ARRAY_ZERO): New
+	convenience macro.
+
+	* include/freetype/internal/tttypes.h (TT_FaceRec)
+	[FT_OPTIMIZE_MEMORY]: Use optimized types for `num_locations' and
+	`glyph_locations'.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Call
+	`tt_face_get_location'.
+
+	* src/truetype/ttobjs.c (tt_face_init)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Improve error handling.
+	(tt_face_done): Call `tt_face_done_loca'.
+
+	* src/truetype/ttpload.c (tt_face_get_location, tt_face_done_loca):
+	New functions.  If FT_OPTIMIZE_MEMORY is set, the locations table is
+	read directly from memory-mapped streams, instead of being decoded
+	into the heap.
+	(tt_face_load_loca) [FT_OPTIMIZE_MEMORY]: New implementation.
+	(tt_face_load_cvt, tt_face_load_fpgm): Only load table if the
+	bytecode interpreter is compiled in.
+
+	* src/truetype/ttpload.h: Updated.
+
+	* src/autohint/ahglyph.c (ah_outline_load): Improve allocation
+	logic.
+
+2005-02-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
+	--copy' from libtool 1.5.14.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.9.4.
+
+	* builds/unix/config.guess, builds/unix/config.sub: Updated from
+	`config' CVS module at subversions.gnu.org.
+
+	* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
+	`texinfo' CVS module at subversions.gnu.org.
+
+2005-02-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffcmap.c (cff_cmap_unicode_init): Don't try to build
+	a cmap for a CID-keyed font which doesn't have SIDs.
+
+2005-02-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (read_binary_data): Return more meaningful
+	value.
+	(parse_encoding, parse_subrs, parse_charstrings, parse_dict): Check
+	parser error value after call to T1_Skip_PS_Token (where necessary).
+
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Check parser error
+	value after call to T1_Skip_PS_Token.
+
+	* src/cid/cidparse.c (cid_parser_new): Check parser error value
+	after call to cid_parser_skip_PS_token.
+
+	* src/type42/t42parse.c (t42_parse_encoding, t42_parse_sfnts,
+	t42_parse_charstrings, t42_parse_dict): Check parser error value
+	after call to T1_Skip_PS_Token (where necessary).
+
+	* src/psaux/psobjs.c (skip_string, ps_parser_skip_PS_token,
+	ps_tobytes): Add error messages.
+
+2005-02-12  Werner Lemberg  <wl at gnu.org>
+
+	* configure: Output more variables to the created Makefile so that
+	it can be used for ft2demos also (if the FT2DEMOS variable is
+	defined).
+
+2005-02-10  David Turner  <david at freetype.org>
+
+	* src/pfr/pfrgload.c (pfr_glyph_load): Fix an unbounded growing
+	dynamic array when loading a glyph from a PFR font (Savannah bug
+	#11921).
+
+	* src/base/ftbitmap.c (FT_Bitmap_Convert): Small improvements to the
+	conversion function (mainly stupid optimization).
+
+	* src/base/Jamfile: Adding ftbitmap.c to the list of compiled files.
+
+2005-02-10  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype-config.in: Add new flag `--ftversion' to
+	return the FreeType version.  Suggested by George Williams
+	<gww at silcom.com>.
+
+	* docs/CHANGES: Updated.
+
+2005-02-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case
+	of error.  Reported by YAMANO-UCHI Hidetoshi <mer at din.or.jp>.
+
+2005-02-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+	<op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can
+	happen in empty glyphs.  Reported by Ian Brown
+	<ian.brown at printsoft.de> (Savannah bug #11856).
+
+2005-02-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/*: Removed.  Obsolete.
+
+2004-12-28  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
+	--copy' from libtool 1.5.10.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.9.4.
+	* builds/unix/configure: Regenerated with autoconf 2.59b.
+
+	* builds/unix/config.guess, builds/unix/config.sub: Updated from
+	`config' CVS module at subversions.gnu.org.
+
+	* builds/unix/install-sh: Updated from
+	`texinfo' CVS module at subversions.gnu.org.
+
+	* builds/unix/ftsystem.c (FT_Stream_Open): Add proper cast for
+	ft_alloc.
+	Fix compiler warning.
+
+2004-12-27  Dirck Blaskey  <listtarget at danbala.com>
+
+	* src/cff/cffobjs.c (cff_face_init): Improve computation of
+	FT_STYLE_BOLD_FLAG.
+
+2004-12-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): A CFF within an SFNT can have
+	only a single font.  This is undocumented but has been verified on
+	the opentype list.
+
+2004-12-26  Werner Lemberg  <wl at gnu.org>
+
+	* Jamfile (FT2_COMPONENTS): Add `otvalid'.
+
+2004-12-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftbitmap.c (FT_Bitmap_Convert): Fix compiler warning.
+
+2004-12-15  Werner Lemberg  <wl at gnu.org>
+
+	* vms_make.com: Add ftbitmap.obj.
+
+2004-12-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftbitmap.c, include/freetype/ftbitmap.h: New files for
+	handling various bitmap formats.
+
+	* include/freetype/config/ftheader.h (FT_BITMAP_H): New macro.
+
+	* src/base/rules.mk (BASE_EXT_SRC): Add ftbitmap.c.
+
+	* src/bdf/bdfdrivr.c (BDF_Glyph_Load): Don't convert bitmaps to 8bpp
+	but return them as-is.
+
+	* docs/CHANGES: Mention new bitmap API.
+	* include/freetype/ftchapters.h: Updated.
+
+2004-12-11  Robert Clark  <freetype at ratty.org.uk>
+
+	* src/base/ftobjs.c (FT_Get_Kerning): Make kerning amount
+	dependent on ppem by scaling down for ppem < 25, then do normal
+	rounding.  This gives slightly better results than rounding towards
+	zero.
+
+2004-12-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Get_Kerning): Always round towards zero
+	for FT_KERNING_DEFAULT.  This greatly enhances the kerning for
+	small ppem values.
+
+2004-12-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (ft_glyphslot_clear): Reset `lsb_delta' and
+	`rsb_delta'.
+
+2004-12-05  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/install.mk (install): Use $(OBJ_BUILD) for ftconfig.h.
+
+2004-12-03  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* include/freetype/ttnameid.h: Updated to latest
+	specifications from Microsoft.
+
+2004-11-26  Jouk Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* vms_make.com: Include ftbbox.c.
+	Fix `ccopt'.
+	Handle `otvalid' module.
+	Update `vmslib.dat' default values.
+	Fixes to `libs.opt'.
+
+2004-11-23  Anders Kaseorg  <anders at kaseorg.com>
+
+	* src/base/ftoutln.c (FT_OrientationExtremumRec,
+	ft_orientation_extremum_compute): Removed.
+	(FT_Outline_Get_Orientation): Rewritten, simplified.
+
+	* src/autohint/ahglyph.c: Include FT_OUTLINE_H.
+	(ah_test_extremum, ah_get_orientation): Removed.
+	(ah_outline_load): Use FT_Outline_Get_Orientation.
+
+	* src/base/ftsynth.c (ft_test_extrema, ft_get_orientation): Removed.
+	(FT_GlyphSlot_Embolden): Use FT_Outline_Get_Orientation.
+
+2004-11-23  Fernando Papa  <fpapa at netgate.com.uy>
+
+	* src/truetype/ttinterp.h: Fix typo.
+
+2004-11-22  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* builds/win32/detect.mk: Corrected logic that detects Windows NT to
+	use the previous change even if win32 is forced.  Corrected
+	detection of win32 on Win9X.
+
+	* builds/dos/detect.mk: Added same correction as for win32 about
+	COPY on Windows NT.  Detection of plain DOS 7.x.
+
+2004-11-22  Werner Lemberg  <wl at gnu.org>
+
+	* builds/detect.mk: Undo change from 2004-11-20.
+	* builds/win32/detect.mk: If the `OS' environment variable contains
+	`Windows_NT', use `cmd.exe /c copy' for copying files.
+
+2004-11-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/detect.mk (dos_setup): Use `cmd.exe' for copying
+	$(CONFIG_MK) to force lowercase file name under Windows.
+
+2004-11-19  Werner Lemberg  <wl at gnu.org>
+
+	Fix a serious bug in the TT hinter.
+
+	* src/truetype/ttgload.c (TT_Process_Simple_Glyph): Don't shift
+	points vertically before hinting.
+
+	* docs/CHANGES: Updated.
+
+	* src/cache/ftcglyph.c (FTC_GNode_UnselectFamily,
+	FTC_GCache_Lookup): A new try to fix comparison with zero.
+
+2004-11-16  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.ac: Add `-fno-strict-aliasing' if gcc is
+	used.
+	* builds/unix/configure: Regenerated.
+	* builds/unix/config.guess, builds/unix/config.sub: Updated from
+	`config' CVS module at subversions.gnu.org.
+
+2004-11-16  Dr. Martin P.J. Zinser  <zinser at decus.de>
+
+	* src/cache/ftcglyph.c (FTC_GNode_UnselectFamily,
+	FTC_GCache_Lookup): Fix comparison with zero.
+
+	* docs/INSTALL.VMS: Updated.
+
+	* vms_make.com: Updated.  All `descrip.mms' files are now created
+	automatically.
+
+	* src/*/descrip.mms: Removed.
+
+2004-11-16  Owen Taylor  <otaylor at redhat.com>
+
+	* builds/unix/freetype-config.in: Suppress -L$libdir for
+	/usr/lib64 as well as /usr/lib.  (Reported by Dan Winship -
+	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139199)
+
+2004-11-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffdrivr.c (cff_service_ps_info): Updated.
+	* src/cid/cidriver.c (cid_service_ps_info): Updated.
+	* src/type42/t42drivr.c (t42_ps_get_font_private): New function.
+	(t42_service_ps_info): Updated.
+
+	* src/type42/t42parse.c (t42_parse_dict): Remove compiler warning.
+
+2004-11-11  David Bevan  <dbevan at emtex.com>
+
+	Add new function FT_Get_PS_Font_Private().
+
+	* include/freetype/internal/services/svpsinfo.h
+	(PS_GetFontPrivateFunc): New service function.
+
+	* include/freetype/t1tables.h, src/base/fttype1.c
+	(FT_Get_PS_Font_Private): New function.
+
+	* src/type1/t1driver.c (t1_ps_get_font_private): New function.
+	(t1_service_ps_info): Updated.
+
+2004-10-13  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftstdlib.h: Include `stddef.h'.
+	(ft_ptrdiff_t): Define.
+
+	* include/freetype/fttypes.h (FT_PtrDist): Use `ft_ptrdiff_t'.
+
+	* src/cid/cidload.c (cid_parse_dict), src/type1/t1load.c
+	(parse_dict): Fix compiler warning.
+
+2004-10-11  Joshua Neal  <jneal at csdaily.com>
+
+	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Check for pointer
+	overflow.
+
+	* src/sfnt/ttload.c (tt_face_load_hdmx): Protect against bad input.
+	Don't use FT_QNEW_ARRAY but FT_NEW_ARRAY to make deallocation work
+	in case of failure.
+
+	* src/sfnt/ttsbit.c (Load_SBit_Range): Check range intervals.
+	(tt_face_load_sbit_strikes): Allocate `strike_sbit_ranges' after
+	frame test.
+
+	* src/truetype/ttgload.c (TTLoad_Simple_Glyph): Add assertion for
+	`flag'.
+
+2004-10-09  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-10-09  Boris Letocha  <b.letocha at cz.gmc.net>
+
+	Fix handling of NPUSHW if skipped in data stream.
+
+	* src/truetype/ttinterp.c (opcode_length): Set value for NPUSHW
+	to -2.
+	(SkipCode, TT_RunIns): Use opcode_length value for computation of
+	bytes to be skipped.
+
+2004-09-10  Jouk Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* vms_make.com: Updated.
+
+2004-09-09  Werner Lemberg  <wl at gnu.org>
+
+	Adding OpenType validation module.  The code is based on the
+	(unfinished) `otlayout' module but has been heavily modified to make
+	it much more compact.
+
+	* src/otvalid/*: New module.
+
+	* include/freetype/ftotval.h, src/base/ftotval.c,
+	include/freetype/internal/services/svotval.h: New files.
+
+	* include/freetype/config/ftmodule.h: Add otv_module_class.
+	* include/freetype/config/ftheader.h (FT_OPENTYPE_VALIDATE_H): New
+	macro.
+	* include/freetype/internal/ftserv.h
+	(FT_SERVICE_OPENTYPE_VALIDATE_H): New macro.
+	* include/freetype/internal/fttrace.h (otvmodule, otvcommon,
+	otvbase, otvgdef, otvgpos, otvgsub, otvjstf): New trace components.
+
+	* include/freetype/ftchapters.h: Updated.
+
+	* src/base/Jamfile (Library), src/base/descrip.mms (OBJS),
+	src/base/rules.mk (BASE_EXT_SRC): Updated.
+
+	* docs/CHANGES: Updated.
+
+2004-09-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/docmaker/sources.py (re_source_block_format2) <column>:
+	Use lookahead assertion to not match `*/'.  This removes spurious
+	insertions of `/' in the HTML output.
+
+2004-09-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgxvar.c (TT_Vary_Get_Glyph_Deltas): Fix call to
+	FT_NEW_ARRAY.
+
+2004-09-04  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftobjs.h: Don't include
+	FT_CONFIG_STANDARD_LIBRARY_H.
+	(FT_Validator, FT_ValidationLevel, FT_ValidatorRec, FT_VALIDATOR,
+	ft_validator_init, ft_validator_run, ft_validator_error, FT_INVALID,
+	FT_INVALID_TOO_SHORT, FT_INVALID_OFFSET, FT_INVALID_FORMAT,
+	FT_INVALID_GLYPH_ID, FT_INVALID_DATA): Move to...
+
+	* include/freetype/internal/ftvalid.h: New file.
+	Make FT_INVALID return module-specific error codes.
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_VALIDATE_H): New
+	macro.
+
+	* include/freetype/fterrors.h: Undefine FT_ERR_PREFIX only if
+	FT_KEEP_ERR_PREFIX isn't defined.
+
+	* src/base/ftobjs.c: Include FT_INTERNAL_VALIDATE_H.
+
+	* src/sfnt/ttcmap.h: Don't include FT_INTERNAL_OBJECTS_H but
+	FT_INTERNAL_VALIDATE_H.
+
+	* src/sfnt/ttcmap.c: Don't include FT_INTERNAL_OBJECTS_H but
+	FT_INTERNAL_VALIDATE_H.
+	Include sferrors.h before FT_INTERNAL_VALIDATE_H.
+	s/FT_Err_Ok/SFNT_Err_Ok/.
+
+	* src/sfnt/sferrors.h: Define FT_KEEP_ERR_PREFIX.
+
+	* src/type1/t1afm.c: Include t1errors.h.
+
+2004-09-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftdebug.c (ft_debug_init): Highest debug level is 7,
+	not 6.
+	* docs/DEBUG: Updated.
+
+2004-08-30  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/tttags.h (TTAG_BASE, TTAG_GDEF, TTAG_GPOS,
+	TTAG_JSTF): New tags.
+
+	* include/freetype/fttypes.h (FT_Bytes, FT_Tag): New typedefs.
+	(FT_Int): Add `signed'.
+
+2004-08-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlgpos.c (otl_gpos_subtable_validate): Add argument
+	to pass number of lookups.
+	Update all callers.
+	Don't call otl_lookup_list_validate but otl_lookup_validate.
+	(otl_gpos_validate): Call otl_lookup_list_validate instead of
+	otl_gpos_subtable_validate.
+
+	* src/otlayout/otlgpos.h: Updated.
+
+	* src/otlayout/otljstf.c (otl_jstf_max_validate): Add argument to
+	pass number of lookups.
+	Update all callers.
+
+
+	* src/cff/cffparse.c (cff_parse_real): s/exp/exponent/ to avoid
+	compiler warning.
+
+
+	* src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h: Renamed to...
+	* src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: This.
+	* src/sfnt/Jamfile, src/sfnt/rules.mk, src/sfnt/sfdriver.c,
+	src/sfnt/sfnt.c, src/sfnt/sfobjs.c: Updated.
+
+
+	* builds/compiler/gcc-dev.mk (CFLAGS): Don't add `-Wnested-externs'
+	if compiler is g++ (v3.3.3 emits a warning otherwise).
+
+2004-08-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlgpos.c (otl_value_length): Return number of bytes,
+	not number of 16bit entities.
+	(otl_gpos_lookup2_validate): Check class definition tables for
+	format 2.
+	Fix loop for format 2.
+	(otl_liga_mark2_validate): Fix offset for otl_anchor_validate.
+
+2004-08-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftmac.c: Don't include truetype/ttobjs.h.
+	Don't include type1/t1objs.h.
+	(FT_New_Face_From_FSSpec) [!__MWERKS__]: Remove compiler warnings.
+
+2004-08-27  Mathieu Malaterre  <mathieu at malaterre.com>
+
+	* src/base/ftmac.c: Handle OS_INLINE for xlc compiler also.
+
+2004-08-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlayout.h: Add copyright.
+	(OTL_INVALID_OFFSET): Removed.
+
+	* src/otlayout/otlgdef.h: Include otlayout.h.
+	Comment out inclusion of otltable.h.
+
+	* src/otlayout/otlgpos.c (otl_gpos_lookup4_validate): Fix call
+	to otl_base_array_validate.
+	(otl_liga_mark2_validate): Fix `for' loop.
+
+	* src/otlayout/otlgsub.c (otl_ligature_validate): Check `glyph_id',
+	not components array.
+
+	* src/otlcommn.c (otl_lookup_get_count, otl_feature_get_count):
+	Comment out.
+	(otl_lookup_list_get_count, otl_feature_list_get_count): Activate.
+	(otl_feature_list_validate, otl_gsubgpos_get_lookup_count):
+	s/otl_lookup_get_count/otl_lookup_list_get_count/.
+	(otl_script_list_validate):
+	s/otl_feature_get_count/otl_feature_list_get_count/.
+	(otl_script_validate): Call otl_lang_validate for default language.
+
+	* src/otlayout/otlcommn.h: Updated.
+
+2004-08-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlgpos.c (otl_gpos_lookup1_validate,
+	otl_gpos_lookup2_validate, otl_gpos_lookup3_validate,
+	otl_gpos_lookup4_validate, otl_gpos_lookup5_validate,
+	otl_gpos_lookup6_validate, otl_gpos_lookup9_validate,
+	otl_gpos_validate): Update
+	function arguments.
+	(otl_gpos_lookup7_validate, otl_gpos_lookup8_validate): Update
+	function arguments.
+	Handle NULL offsets correctly.
+	Check sequence and lookup indices for format 3.
+	(otl_pos_rule_validate, otl_chain_pos_rule_validate): Add argument
+	to pass lookup count.
+	Check sequence and glyph indices.
+	(otl_gpos_subtable_validate): Update function arguments.
+	Update callers.
+
+	* src/otlayout/otlgpos.h: Updated.
+
+	* src/otlayout/otlgsub.c (otl_gsub_lookup1_validate,
+	otl_gsub_lookup3_validate, otl_gsub_lookup8_validate): Update
+	function arguments.
+	Add glyph index checks.
+	(otl_sequence_validate, otl_alternate_set_validate,
+	otl_ligature_validate): Add argument to pass glyph count.
+	Update callers.
+	Add glyph index check.
+	(otl_gsub_lookup2_validate, otl_gsub_lookup4_validate): Update
+	function arguments.
+	(otl_ligature_set_validate): Add argument to pass glyph count.
+	Update caller.
+	(otl_sub_class_rule_validate,
+	otl_sub_class_rule_set_validate): Removed.
+	(otl_sub_rule_validate, otl_chain_sub_rule_validate): Add argument
+	to pass lookup count.
+	Update callers.
+	Add lookup index check.
+	(otl_sub_rule_set_validate, otl_chain_sub_rule_set_validate): Add
+	argument to pass lookup count.
+	Update callers.
+	(otl_gsub_lookup5_validate): Update function arguments.
+	Handle NULL offsets correctly.
+	Don't call otl_sub_class_rule_set_validate but
+	otl_sub_rule_set_validate.
+	Check sequence and lookup indices for format 3.
+	(otl_gsub_lookup6_validate): Update function arguments.
+	Handle NULL offsets correctly.
+	Check sequence and lookup indices for format 3.
+	(otl_gsub_lookup7_validate, otl_gsub_validate): Update function
+	arguments.
+
+	* src/otlayout/otlgsub.h: Updated.
+
+	* src/otlayout/otlbase.c (otl_base_validate): Handle NULL offsets
+	correctly.
+
+	* src/otlayout/otlcommn.c (otl_class_definition_validate): Fix
+	compiler warning.
+	(otl_coverage_get_first, otl_coverage_get_last): New functions.
+	(otl_lookup_validate): Add arguments to pass lookup and glyph
+	counts.
+	Update callers.
+	(otl_lookup_list_validate): Add argument to pass glyph count.
+	Update callers.
+
+	* src/otlayout/otlcommn.h: Updated.
+
+	* src/otlayout/otljstf.c (otl_jstf_extender_validate,
+	otl_jstf_max_validate, otl_jstf_script_validate,
+	otl_jstf_priority_validate, otl_jstf_lang_validate): Add parameter
+	to validate glyph indices.
+	Update callers.
+	(otl_jstf_validate): Add parameter which specifies number of glyphs
+	in font.
+
+	* src/otlayout/otljstf.h: Updated.
+
+2004-08-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlgpos.c (otl_liga_mark2_validate): Add parameter
+	to handle possible NULL values properly.
+	Update all callers.
+
+2004-08-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/gpos.c: Rename counting variables to be more
+	meaningful.
+	Add copyright.
+	(otl_liga_attach_validate): Renamed to...
+	(otl_liga_mark2_validate): This.
+	Update all callers.
+	(otl_mark2_array_validate): Removed.
+	(otl_gpos_lookup6_validate): Call otl_liga_mark2_validate, not
+	otl_mark2_array_validate.
+	(otl_pos_class_set_validate, otl_pos_class_rule_validate): Removed.
+	(otl_gpos_lookup7_validate): Complete code for format 2.
+	(otl_chain_pos_class_rule_validate,
+	otl_chain_pos_class_set_validate): Removed.
+	(otl_gpos_lookup8_validate): Don't call
+	otl_chain_pos_class_set_validate but
+	otl_chain_pos_rule_set_validate.
+	Simplify some code.
+
+	* src/otlayout/otlgpos.h: Add copyright.
+
+2004-08-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otljstf.c (otl_jstf_gsub_mods_validate): Removed.
+	(otl_jstf_gpos_mods_validate): Renamed to...
+	(otl_jstf_gsubgpos_mods_validate): This.
+	Test whether lookup_count is zero.
+	(otl_jstf_priority_validate): Use otl_jstf_gsubgpos_mods_validate.
+	(otl_jstf_validate): Initialize gsub_lookup_count and
+	gpos_lookup_count if gsub or gpos is zero.
+
+	* src/otlayout/otlgsub.c: Rename counting variables to be more
+	meaningful.
+	Add copyright.
+	(otl_gsub_lookup1_validate): Simplify code.
+	(otl_gsub_lookup2_validate, otl_gsub_lookup3_validate,
+	otl_gsub_lookup4_validate, otl_gsub_lookup7_validate): Remove unused
+	variables.
+	(otl_gsub_lookup5_validate): Remove unused variable.
+	Fix call to otl_sub_rule_set_validate and
+	otl_sub_class_rule_set_validate.
+	(otl_chain_sub_class_rule_validate,
+	otl_chain_sub_class_set_validate): Removed.
+	(otl_gsub_lookup6_validate): Remove unused variable.
+	Fix call to otl_chain_sub_rule_set_validate.
+	(otl_gsub_lookup7_validate): Handle lookup type 8 also.
+	(otl_gsub_lookup8_validate: New function.
+	(otl_gsub_lookup1_apply, otl_gsub_lookup2_apply,
+	otl_gsub_lookup3_apply): Commented out.
+	(otl_gsub_validate_funcs): Add otl_gsub_lookup7_validate and
+	otl_gsub_lookup8_validate.
+	(otl_gsub_validate): Updated.
+
+	* src/otlayout/otlgsub.h: Add copyright.
+
+	* src/otlayout/otlcommn.c, src/otlayout/otlcommn.h
+	(otl_coverage_get_index): Comment out.
+
+2004-08-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlcommn.c (otl_gsubgpos_get_lookup_count): New
+	function.
+	* src/otlayout/otlcommn.h: Updated.
+
+	* src/otlayout/otlbase.c: Rename counting variables to be more
+	meaningful.
+	Add copyright message.
+	* src/otlayout/otlbase.h: Add copyright message.
+
+	* src/otlayout/otlgdef.c: Rename counting variables to be more
+	meaningful.
+	Add copyright message.
+	Use OTL_CHECK everywhere.
+	(otl_caret_value_validate): Remove unused variable.
+	(otl_gdef_validate): All tables are optional.
+	* src/otlayout/otlgdef.h: Add copyright message.
+
+	* src/otlayout/otljstf.c: Rename counting variables to be more
+	meaningful.
+	Add copyright message.
+	(otl_jstf_gsub_mods_validate, otl_jstf_gpos_mods_validate): Add
+	parameter to pass lookup count.
+	Update all callers.
+	Check lookup array.
+	(otl_jstf_max_validate):
+	s/otl_gpos_subtable_check/otl_gpos_subtable_validate/.
+	(otl_jstf_priority_validate, otl_jstf_lang_validate,
+	otl_jstf_script_validate): Add two parameters to pass lookup counts.
+	Update all callers.
+	(otl_jstf_validate): Add two parameters to pass GPOS and GSUB
+	table offsets; use otl_gsubgpos_get_lookup_count to convert extract
+	lookup counts.
+	Fix typo.
+	* src/otlayout/otljstf.h: Updated.
+	Add copyright message.
+
+	* src/otlayout/otlgpos.c (otl_gpos_subtable_validate): New function.
+	(otl_gpos_validate): Use it.
+	* src/otlayout/otlgpos.h: Updated.
+
+2004-08-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otcommn.c: Use OTL_CHECK everywhere.
+	(otl_coverage_validate): Initialize `p',
+	s/count/num_glyphs/.
+	s/start_cover/start_coverage/.
+	(otl_coverage_get_index): Return OTL_Long, not OTL_Int.
+	Remove unused variables.
+	(otl_class_definition_validate): s/count/num_glyphs/.
+	Remove unused variables.
+	(otl_class_definition_get_value, otl_device_table_get_start,
+	otl_device_table_get_end, otl_device_table_get_delta,
+	otl_lookup_get_table, otl_lookup_list_get_count,
+	otl_lookup_list_get_lookup, otl_lookup_list_get_table,
+	otl_feature_get_lookups, otl_feature_list_get_count,
+	otl_feature_list_get_feature, otl_lang_get_count,
+	otl_lang_get_req_feature, otl_lang_get_features): Commented out
+	temporarily until we really need it.
+	(otl_lookup_validate): Removed.
+	(otl_lookup_table_validate): Renamed to ...
+	(otl_lookup_validate): This.  Update callers.
+	(otl_lookup_list_validate): Remove already commented out definition
+	and move the other definition up.
+	(otl_feature_validate): Add parameter to pass number of lookups.
+	Update callers.
+	Check lookup indices.
+	(otl_feature_list_validate): Add parameter to pass lookup table.
+	Update callers.
+	(otl_lang_validate): Add parameter to pass number of features.
+	Update callers.
+	Handle req_feature and check feature indices.
+	(otl_script_validate): Add parameter to pass number of features.
+	Update callers.
+	(otl_script_list_validate): Add parameter to pass feature table.
+	Update callers.
+
+	* src/otlayout/otcommn.h: s/LOCALDEF/LOCAL/.
+	Comment out the same functions as in otcommn.c.
+	(otl_script_list_get_script): Removed.
+
+	* src/otlayout/otlgsub.c (otl_gsub_lookup1_apply): Change `index' to
+	type OTL_Long.
+	(otl_gsub_lookup2_apply, otl_gsub_lookup3_apply): Change `index' to
+	type OTL_Long.
+	Fix test.
+	(otl_gsub_validate): Fix order of validation.
+
+	* src/otlayout/otlgpos.c (otl_gpos_validate): Fix order of
+	validation.
+
+2004-08-12  Werner Lemberg  <wl at gnu.org>
+
+	Make otlayout module compile (without actually working).
+
+	* src/otlayout/*: s/OTL_Valid/OTL_Validator/.
+	s/NULL/0/.
+
+	* src/otlayout/otlayout.h: Fix various typos.
+	(OTL_Bool): New typedef.
+	(OTL_Int, OTL_Long, OTL_Int16, OTL_Int32): Use `signed' keyword.
+	(OTL_Err_InvalidArgument): Removed.
+	(OTL_Err_InvalidData, OTL_Err_InvalidSize): New enum values.
+	(OTL_MAKE_TAG): Add missing parenthesis.
+	(OTL_INVALID_DATA): Use OTL_Err_InvalidData.
+	(OTL_INVALID_TOO_SHORT): Use OTL_Err_InvalidSize.
+	(OTL_INVALID_FORMAT, OTL_INVALID_OFFSET): New macros.
+
+	* src/otlayout/otlgpos.c: s/FT_/OTL_/.
+	s/OTL_Short/OTL_Int16/.
+	(otl_gpos_pairset_validate): Add return type.
+	(otl_base_array_validate): Fix call to otl_anchor_validate.
+	(otl_liga_array_validate): Fix call to otl_liga_attach_validate.
+	(otl_gpos_lookup5_validate): Fix typos.
+	(otl_gpos_lookup6_validate): Fix call to otl_mark2_array_validate.
+	(otl_gpos_lookup7_validate): Comment out unfinished code.
+	Fix typos.
+
+	* src/otlayout/otlgsub.c: Add forward declaration for
+	otl_gsub_validate_funcs.
+	(otl_gsub_lookup1_apply, otl_gsub_lookup2_apply,
+	otl_gsub_lookup3_apply): Fix call to otl_parser_check_property.
+	s/otl_coverage_lookup/otl_coverage_get_index/.
+	(otl_ligature_validate): Add missing variable declaration.
+	(otl_sub_rule_validate): Fix typo.
+	(otl_sub_class_rule_validate): Add missing variable declaration.
+	Fix typo.
+	(otl_gsub_lookup5_validate): Fix typo.
+	(otl_gsub_lookup6_validate): Fix call to
+	otl_chain_sub_class_set_validate.
+	(otl_gsub_validate_funcs): Don't use `const'.
+
+	* src/otlayout/otlcommn.c (otl_class_definition_get_value,
+	otl_device_table_validate, otl_device_table_get_delta,
+	otl_lookup_validate, otl_script_validate): Add missing
+	variable declarations.
+	(otl_lookup_list_validate): Comment out first definition.
+	(otl_lookup_list_foreach, otl_feature_list_foreach): Comment out.
+	(otl_feature_list_validate):
+	s/otl_feature_table_validate/otl_feature_validate/.
+	(otl_script_list_validate):
+	s/otl_script_table_validate/otl_script_validate/.
+
+	* src/otlayout/otlcommn.h: Comment out first declaration.
+	(otl_lookup_list_foreach, otl_feature_list_foreach): Comment out.
+
+	* src/otlayout/otlbase.c (otl_base_coord_validate): Fix call to
+	otl_device_table_validate.
+	(otl_base_script_validate): Add missing variable declarations.
+	(otl_base_script_list_validate): Fix call to
+	otl_base_script_validate.
+	(otl_axis_table_validate): Fix calls to otl_base_tag_list_validate
+	and otl_base_script_list_validate.
+	(otl_base_validate): Fix calls to otl_axis_table_validate.
+
+	* src/otlayout/otlgdef.c (otl_attach_list_validate): Fix call to
+	otl_attach_point_validate.
+	(otl_caret_value_validate): Add missing variable declaration.
+	Fix call to otl_device_table_validate.
+	(otl_ligature_glyph_validate): Fix call to otl_caret_value_validate.
+	(otl_ligature_caret_list_validate): Fix call to
+	otl_ligature_glyph_validate.
+	(otl_gdef_validate): Fix calls to otl_class_definition_validate,
+	otl_attach_list_validate, otl_ligature_caret_list_validate, and
+	otl_class_definition_validate.
+
+	* src/otlayout/otltable.h (otl_table_validate, otl_table_init,
+	otl_table_set_script): Comment out.
+
+	* src/otlayout/otlparse.h (OTL_ParserRec):
+	s/OTL_Alternate/OTL_GSUB_Alternate/.
+	(OTL_ParseError): Add OTL_Err_Parser_Memory and
+	OTL_Err_Parser_Internal.
+	(otl_parser_error): Fix typo.
+	(otl_parser_check_property): Remove third argument.
+
+	* src/otlayout/otlparse.c (otl_string_ensure):
+	s/OTL_Parse_Err_Memory/OTL_Err_Parser_Memory/.
+	(OTL_STRING_ENSURE, otl_parser_error, otl_parser_get_index,
+	otl_parser_replace_1, otl_parser_replace_n): Fix typos.
+	(OTL_PARSER_UNCOVERED): Removed.
+	(otl_parser_check_property): Remove third argument.
+
+	* src/otlayout/otljstf.c (otl_jstf_priority_validate): Add missing
+	variable declaration.
+
+	* src/otlayout/otlutils.h (OTL_MEM_REALLOC): Fix typo.
+
+2004-08-11  Danny  <dannyboynow at yahoo.com>
+
+	* src/base/ftstream.c (FT_Stream_Close): Don't reset stream->close
+	to NULL.  This allows custom close functions to delete the FT_STREAM
+	object.
+
+2004-08-11  Werner Lemberg  <wl at gnu.org>
+
+	Add API to get information about SFNT tables.
+
+	* include/freetype/internal/services/svsfnt.h
+	(FT_SFNT_Table_Info_Func): New typedef.
+	(SFNT_Table): Add it.
+
+	* src/base/ftobjs (FT_Sfnt_Table_Info): New function.
+
+	* include/freetype/tttables.h: Updated.
+
+	* src/sfnt/sfdriver.c (sfnt_table_info): New function.
+	(sfnt_service_sfnt_table): Add it.
+
+	* docs/CHANGES: Updated.
+
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.
+
+	* builds/unix/configure.ac (version_info): Set to 9:8:3.
+	* builds/unix/configure: Updated.
+
+	* builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/.
+
+	* builds/freetype.mk (refdoc), README, Jamfile (RefDoc):
+	s/2.1.9/2.1.10/.
+
+	* docs/CHANGES, docs/VERSION.DLL: Updated.
+
+2004-08-11  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/base/ftrfork.c (FT_Raccess_Guess)
+	[!FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK]: Remove compiler
+	warnings.
+
+2004-08-06  Adam Piotrowski  <st_intel at poczta.onet.pl>
+
+	* src/pfr/pfrload.c (pfr_sort_kerning_pairs): Single-byte
+	adjustments are unsigned, not signed.
+
+2004-08-05  David Turner  <david at freetype.org>
+
+	`Activate' gray-scale specifying hinting within the TrueType
+	bytecode interpreter.  This is an experimental feature which
+	should probably be made optional.
+
+	* src/truetype/ttgload.c (TT_Process_Simple_Glyph,
+	load_truetype_glyph): Move the code to set the pedantic_hinting flag
+	to...
+	(TT_Load_Glyph): Here.
+	Set `grayscale' flag except for `FT_LOAD_TARGET_MONO'.
+
+	* src/truetype/ttinterp.c (Ins_GETINFO): Return MS rasterizer
+	version 1.7.
+	Return rotation and stretching info only if glyph is rotated or
+	stretched, respectively.
+	Handle grayscale info.
+
+	* src/truetype/ttinterp.h (TT_ExecContextRec): Add `grayscale'
+	member.
+
+2004-08-02  George Williams  <gww at silcom.com>
+
+	* src/base/ftobjs.c (FT_Attach_File): Initialize `open.stream'.
+
+2004-08-01  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-08-01  George Williams  <gww at silcom.com>
+
+	FreeType now can read kerning values from PFM files.
+
+	* src/type1/t1afm.c (T1_Done_AFM): Renamed to...
+	(T1_Done_Metrics): This.
+	Update all callers.
+	(T1_Read_AFM): Make it static.
+	Don't enter and leave a frame.
+	(LITTLE_ENDIAN_USHORT, LITTLE_ENDIAN_UINT): New macros.
+	(T1_Read_PFM): New function.
+	(T1_Read_Metrics): New higher-level function to be used instead of
+	T1_Read_AFM.
+	Update all callers.
+
+2004-07-31  Werner Lemberg  <wl at gnu.org>
+
+	* src/pcf/pcfread (pcf_load_font), src/bdf/bdfdrivr.c
+	(BDF_Face_Init), src/truetype/ttgxvar (TT_Get_MM_Var,
+	tt_face_vary_cvt): Fix compiler warnings.
+
+2004-07-26  Søren Sandmann  <sandmann at daimi.au.dk>
+
+	* src/pcf/pcfread.c (pcf_interpret_style): Always allocate memory for
+	face->style_name.
+	* src/pcf/pcfdrivr.c (PCF_Face_Done): Free `style_name'.
+
+2004-07-26  Darren J Longhorn  <darren.longhorn at redcom.co.uk>
+
+	* include/freetype/config/ftconfig.h (FT_SIZEOF_LONG): Recognize
+	five-byte `long' (which is avoided then).
+
+2004-07-25  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/pcf/pcfdrivr.c (PCF_Set_Pixel_Size): Compare heights, not
+	ppem values.
+	(PCF_Set_Point_Size): Don't call PCF_Set_Pixel_Size but provide own
+	code to compare ppem values.
+	* src/bdf/bdfdrivr.c (BDF_Set_Pixel_Size): Compare heights, not
+	ppem values.
+	(BDF_Set_Point_Size): Don't call BDF_Set_Pixel_Size but provide own
+	code to compare ppem values.
+
+2004-07-25  Kornfeld Eliyahu Peter  <peter at e-kadmon.net>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Handle
+	TT_NAME_ID_PREFERRED_FAMILY and TT_NAME_ID_PREFERRED_SUBFAMILY.
+
+2004-07-24  Derek B. Noonburg  <derekn at foolabs.com>
+
+	* src/cff/cffload.c (cff_font_load): Always create inverse mapping.
+	Even if the charstring count is the same as the CID count, it is
+	still possible that the font uses a different CID -> GID mapping.
+
+2004-07-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttobjs.c (tt_face_init): Accept 0x00020000 format tag
+	found in some Arphic fonts made for Chinese version of Windows 3.1.
+
+2004-07-17  David Turner  <david at freetype.org>
+
+	Fixed a dangling pointer bug in the cache code that happened in very
+	rare cases, i.e., when a new family object was destroyed by an
+	out-of-memory condition during a glyph node initialization.  The
+	function FTC_Cache_Lookup would flush the cache and restart the
+	lookup with a bad pointer.
+
+	* include/freetype/cache/ftcglyph.h (FTC_FAMILY_TREE): New macro.
+	(FTC_GCACHE_LOOKUP_CMP): Use it.
+	Handle reference count in `num_nodes' correctly.
+
+	* src/cache/ftcglyph.c (FTC_GNode_UnselectFamily): Use
+	FTC_FAMILY_FREE.
+	(FTC_GCache_Lookup): Handle reference count in `num_nodes' correctly.
+
+	* src/cache/ftcmanag.c (FTC_Manager_FlushN): Fixed a cache flushing
+	bug.
+
+	* src/truetype/ttinterp.c (Normalize): Fixed a bug that caused
+	long and unnecessary delays while normalizing huge vectors.
+
+2004-07-15  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+	* src/base/ftstroke.c (FT_Stroker_ParseOutline): Fix compiler
+	warning.
+
+2004-07-15  David Turner  <david at freetype.org>
+
+	* src/base/ftstroke.c (FT_Stroker_ParseOutline): Single points
+	are not stroked, preventing a bug with pala.ttf and other
+	fonts.
+
+	* include/freetype/ftstroke.h: Updating documentation comments.
+
+2004-07-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftstroke.c (ft_stroke_border_reverse): Removed.  Unused.
+
+2004-07-12  David Turner  <david at freetype.org>
+
+	* src/base/ftstroke.c (ft_stroke_border_close): Add second parameter
+	to indicate reversion of points.
+	Update all callers.
+	(ft_stroke_border_reverse): Fix initialization of `point1' and
+	`tag1'.
+
+	* src/cache/ftcsbits.c (ftc_snode_load): Fixing advance computation
+	for transformed glyphs.
+
+2004-07-11  David Turner  <david at freetype.org>
+
+	Fix bugs that prevented the stroker to correctly generate stroked
+	paths from closed paths, i.e., nearly all glyphs in vectorial fonts.
+
+	The code is still _very_ buggy though; treat with special care.
+
+	* src/base/ftstroke.c (FT_STROKE_TAG_BEGIN_END): New macro.
+	(ft_stroke_border_reverse): New function.
+	(ft_stroker_inside): Remove local variable `sigma'; use different
+	threshold.
+	(ft_stroker_add_reverse_left): Switch begin/end tags if necessary.
+	(FT_Stroker_EndSubPath): Call ft_stroker_inside and
+	ft_stroke_border_reverse.
+
+2004-06-26  Peter Kovar  <peter.kovar at r3.roburnet.sk>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix typo.
+
+2004-06-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1afm.c (afm_atoindex): Fix boundary test.  Reported
+	by Dirck Blaskey.
+
+2004-06-24  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.9 released.
+	=========================
+
+
+	* src/truetype/ttgload.c, src/truetype/ttxgvar.c: Removing
+	compiler warnings.
+
+2004-06-23  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftmemory.h [FT_DEBUG_MEMORY]: Declare
+	FT_QAlloc_Debug and FT_QRealloc_Debug.
+
+	* src/base/ftutil.c (FT_QAlloc): Fix error and debug messages.
+	(FT_QRealloc): Call FT_QAlloc if original pointer is NULL.
+	Fix error message.
+
+2004-06-23  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/ftmemory.h, src/base/ftutil.c
+	(FT_QAlloc, FT_QRealloc), src/base/ftdbgmem.c (FT_QAlloc_Debug,
+	FT_QRealloc_Debug): New functions that perform allocation without
+	zero-ing out the corresponding blocks.
+
+	* include/freetype/internal/ftmemory.h (FT_MEM_QALLOC,
+	FT_MEM_QREALLOC, FT_MEM_QNEW, FT_MEM_QNEW_ARRAY,
+	FT_MEM_QRENEW_ARRAY, FT_QALLOC, FT_QREALLOC, FT_QNEW, FT_QNEW_ARRAY,
+	FT_QRENEW_ARRAY): New macros.
+
+	* src/base/ftstream.c (FT_Stream_EnterFrame): Use FT_QALLOC.
+	* src/gzip/ftgzip.c (FT_Stream_OpenGzip):  Use FT_QNEW_ARRAY.
+	* src/sfnt/sfobjs.c (tt_face_get_name): Use FT_QNEW_ARRAY.
+
+	* src/sfnt/ttload.c (tt_face_load_directory, tt_face_load_metrics,
+	tt_face_load_gasp): Use FT_QNEW_ARRAY.
+	(tt_face_load_kern): Use FT_QNEW_ARRAY.
+	Small optimization in the kerning table verifier; this speeds up
+	TrueType face opening by about 7%.
+	(tt_face_load_hdmx): Use FT_QNEW_ARRAY and FT_QALLOC.
+
+	* include/freetype/config/ftmodule.h: Changed the order of modules,
+	putting TrueType and Type 1 first.  This dramatically improves the
+	performance of face open/close operations.  For example, putting the
+	TrueType driver first in the list results in a 5x speedup when
+	opening `Vera.ttf'.
+
+	The very problem is that both the PCF and BDF drivers do a lot more
+	than necessary to detect that they cannot handle a font file.
+
+2004-06-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/pcf/pcfread.c (pcf_read_TOC, pcf_get_properties,
+	pcf_get_metrics, pcf_get_bitmaps, pcf_get_encodings): Improve
+	debugging messages.
+
+	* src/pcf/pcfdrivr.c (FT_COMPONENT): Move up.
+	(PCF_Face_Init): Simplify code.
+
+	* src/bdf/bdfdrivr.h (BDF_FaceRec): New element `default_glyph'.
+
+	* src/bdf/bdflib.c (_bdf_add_property, _bdf_parse_start),
+	src/bdf/bdf.h (bdf_font_t): s/default_glyph/default_char/.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Fix number of glyphs.
+	Set `default_glyph'.
+	(BDF_Glyph_Load): Use `default_glyph' for undefined glyph.
+
+	* docs/CHANGES: Updated.
+
+2004-06-21  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-06-21  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgload.c (TT_Process_Simple_Glyph,
+	load_truetype_glyph): Don't access (unrounded)
+	`TT_Size.root.metrics' but (rounded) `TT_Size.metrics'.  This fixes
+	a scaling bug that caused incorrect rendering when the bytecode
+	interpreter was enabled.
+
+2004-06-14  Huw D M Davies  <h.davies1 at physics.ox.ac.uk>
+
+	* src/winfonts/winfnt.c (FNT_Face_Init): Set x_ppem and y_ppem
+	based on pixel_width and pixel_height.
+	(FNT_Size_Set_Pixels): Updated.
+
+2004-06-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/lzw/zopen.c: Comment out inclusion of signal.h and unistd.h.
+	Reported by Hyvärinen Jyrki Juhani.
+
+2004-06-11  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-06-10  David Turner  <david at freetype.org>
+
+	* src/base/ftobject.c, src/base/fthash.c, src/base/ftexcept.c,
+	src/base/ftsysio.c, src/base/ftsysmem.c, src/base/ftlist.c: Removed.
+	Obsolete.
+
+	* src/raster/ftraster.c (Alignment, PAlignment): New union to fix
+	problems with 64bit systems.
+	(AlignProfileSize): Use it.
+
+2004-06-08  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h (FT_Glyph_Metrics): Move `lsb_delta'
+	and `rsb_delta' elements to...
+	(FT_GlyphSlotRec): Here to retain binary compatibility with older
+	FreeType versions.
+	Update all users.
+
+	* src/sfnt/sfobjs.c (tt_face_get_name): Remove compiler warning.
+
+	* src/winfonts/winfnt.c (FNT_Load_Glyph): Add missing initialization
+	of slot->metrics.width and slot->metrics.height when loading a
+	Windows FNT glyph.  Thanks to Huw Davies.
+
+	* include/freetype/cache/ftcmru.h (FTC_MruNode_CompareFunc): Change
+	return type to FT_Bool.
+
+	* src/cache/ftcbasic.c (ftc_basic_family_compare): Change return
+	type to FT_Bool.
+
+	* src/cache/ftccache.c (FTC_Cache_Init, ftc_cache_init): Make
+	the former call the latter, not vice versa.
+	(FTC_Cache_Done, ftc_cache_done): Ditto.
+
+	* src/cache/ftcglyph.c (FTC_GNode_Compare, ftc_gnode_compare): Make
+	the former call the latter, not vice versa.
+	(FTC_GCache_Init, ftc_gcache_init): Ditto.
+	(FTC_GCache_Done, ftc_gcache_done): Ditto.
+
+	* src/cache/ftcimage.c (FTC_INode_Free, ftc_inode_free): Make the
+	former call the latter, not vice versa.
+	(FTC_INode_Weight, ftc_inode_weight): Ditto.
+
+	* src/cache/ftcmanag.c (ftc_size_node_compare,
+	ftc_size_node_compare_faceid, ftc_face_node_compare): Change return
+	type to FT_Bool.
+
+	* src/cache/ftcsbits.c (FTC_SNode_Free, ftc_snode_free): Make the
+	former call the latter, not vice versa.
+	(FTC_SNode_Weight, ftc_snode_weight): Ditto.
+	(FTC_SNode_Compare, ftc_snode_compare): Ditto.
+
+	* src/cache/ftcsbits.c: Fix some bugs and inefficiencies in the cache
+	sub-system.
+
+2004-06-05  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/afloader.c (af_loader_load_g): Set `lsb_delta' and
+	`rsb_delta' in slot->metrics and tune side bearings slightly.
+
+2004-06-04  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-06-04  David Chester  <davidchester at qmx.net>
+
+	Improve inter-letter spacing for autohinted glyphs.
+
+	* include/freetype/freetype.h (FT_Glyph_Metrics): Add elements
+	`lsb_delta' and `rsb_delta'.
+
+	* src/autohint/ahhint.c (ah_hinter_load): Set `lsb_delta' and
+	`rsb_delta' in slot->metrics and tune side bearings slightly.
+
+2004-06-04  David Turner  <david at freetype.org>
+
+	* src/autofit/*: Important fixes to the auto-fitter.  The output
+	now seems to be 100% equivalent to the auto-hinter, while being
+	about 2% faster (which proves that script-specific algorithm
+	selection isn't a performance problem).
+
+	To test it, change `autohint' to `autofit' in
+	<freetype/config/ftmodule.h> and recompile.
+
+	A few more testing is needed before making this the official
+	auto-hinting module.
+
+2004-06-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (compute_glyph_metrics): Fix compiler
+	warnings.
+
+2004-06-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (tt_face_get_name): Make sure that an English
+	name record for the Apple platform is preferred to a non-English
+	entry for the Microsoft platform.  Problem reported by HANDA
+	Ken'ichi.
+
+2004-05-19  George Williams  <gww at silcom.com>
+
+	* src/type1/t1load.c (mm_axis_unmap, mm_weights_unmap): New
+	auxiliary functions.
+	(T1_Get_MM_Var): Provide axis tags.
+	Use mm_axis_unmap and mm_weights_unmap to provide default values
+	for design and normalized axis coordinates.
+
+	* include/freetype/t1tables.h (PS_DesignMapRec): Change type of
+	`design_points' to FT_Long.
+	Update all users.
+
+2004-05-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftbbox.c (BBox_Conic_Check): Fix boundary cases.
+	Reported by Mikey Anbary <manbary at vizrt.com>.
+
+2004-05-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_done_face): Free face->postscript_name.
+
+2004-05-15  George Williams  <gww at silcom.com>
+
+	* src/sfnt/ttload.c (tt_face_load_max_profile): Always set
+	face->root.num_glyphs.
+
+2004-05-14  Masatake YAMATO  <jet at gyve.org>
+	    George Williams  <gww at silcom.com>
+
+	* src/sfnt/ttload.c (sfnt_dir_check): Handle `bhed' properly.
+
+2004-05-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftcbasic.c (ftc_basic_family_compare,
+	ftc_basic_family_init, ftc_basic_family_get_count,
+	ftc_basic_family_load_bitmap, ftc_basic_family_load_glyph,
+	ftc_basic_gnode_compare_faceid): Adjust parameters and return types
+	to prototypes given in header files from include/freetype/cache.
+	Use casts to proper types locally.
+	(ftc_basic_image_family_class, ftc_basic_image_cache_class,
+	ftc_basic_sbit_family_class, ftc_basic_sbit_cache_class): Remove
+	casts.
+
+	* src/cache/ftccback.h: Adjust parameters and return types to
+	prototypes given in header files from include/freetype/cache.
+
+	* src/cache/ftcimage.c (ftc_inode_free, ftc_inode_new,
+	ftc_inode_weight): Adjust parameters and return types to prototypes
+	given in header files from include/freetype/cache.  Use casts to
+	proper types locally.
+
+	* src/cache/ftcsbits.c (ftc_snode_free, ftc_snode_new,
+	ftc_snode_weight, ftc_snode_compare): Adjust parameters and return
+	types to prototypes given in header files from
+	include/freetype/cache.  Use casts to proper types locally.
+
+	* src/cache/ftccmap.c (ftc_cmap_node_free, ftc_cmap_node_new,
+	ftc_cmap_node_weight, ftc_cmap_node_compare,
+	ftc_cmap_node_remove_faceid): Adjust parameters and return types to
+	prototypes given in header files from include/freetype/cache.  Use
+	casts to proper types locally.
+	(ftc_cmap_cache_class): Remove casts.
+
+	* src/cache/ftcglyph.c (ftc_gnode_compare, ftc_gcache_init,
+	ftc_gcache_done): Adjust parameters and return types to prototypes
+	given in header files from include/freetype/cache.  Use casts to
+	proper types locally.
+
+	* src/cache/ftcmanag.c (ftc_size_node_done, ftc_size_node_compare,
+	ftc_size_node_init, ftc_size_node_reset,
+	ftc_size_node_compare_faceid, ftc_face_node_init,
+	ftc_face_node_done, ftc_face_node_compare: Adjust parameters and
+	return types to prototypes given in header files from
+	include/freetype/cache.  Use casts to proper types locally.
+
+	(ftc_size_list_class, ftc_face_list_class): Remove casts.
+
+2004-05-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahmodule.c (ft_autohinter_init, ft_autohinter_done):
+	Use FT_Module as parameter and do a cast to FT_AutoHinter locally.
+	(autohint_module_class): Remove casts.
+
+	* src/base/ftglyph.c (ft_bitmap_glyph_init, ft_bitmap_glyph_copy,
+	ft_bitmap_glyph_done, ft_bitmap_glyph_bbox, ft_outline_glyph_init,
+	ft_outline_glyph_done, ft_outline_glyph_copy,
+	ft_outline_glyph_transform, ft_outline_glyph_bbox,
+	ft_outline_glyph_prepare): Use FT_Glyph as parameter and do a cast
+	to FT_XXXGlyph locally.
+	Use FT_CALLBACK_DEF throughout.
+	(ft_bitmap_glyph_class, ft_outline_glyph_class): Remove casts.
+
+	* src/bdf/bdfdrivr.c (bdf_cmap_init, bdf_cmap_done,
+	bdf_cmap_char_index, bdf_cmap_char_next): Use FT_CMap as parameter
+	and do a cast to BDF_CMap locally.
+	(bdf_cmap_class): Remove casts.
+
+2004-05-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.h (CFF_Builder): Remove `error'.
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Replace
+	`Memory_Error' with `Fail' and update all users.
+
+2004-05-11  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (T1_ParseState): New
+	enumeration.
+	(T1_BuilderRec): Replace `path_begun' with `parse_state'.
+	Remove `error'.
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Replace
+	`Memory_Error' with `Fail' and update all users.
+	Don't use `builder->error'.
+	Replace `path_begun' with `parse_state' and check parsing states.
+
+	* src/psaux/psobjs.c (t1_builder_init, t1_builder_start_point):
+	Replace `path_begun' with `parse_state' and check parsing states.
+
+2004-05-10  George Williams  <gww at silcom.com>
+
+	* src/truetype/ttxgvar.c (ft_var_load_avar): Do free arrays in case
+	of error -- `avar' is optional so we can't rely on tt_done_blend
+	being called automatically.
+
+2004-05-09  George Williams  <gww at silcom.com>
+
+	* src/truetype/ttxgvar.c (ft_var_load_avar, ft_var_load_gvar): Fix
+	error handling.
+
+2004-05-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/pfrobjs.c, src/pfr/pfrobjs.h (pfr_face_init,
+	pfr_face_done, pfr_face_get_kerning, pfr_slot_init, pfr_slot_done,
+	pfr_slot_load): Don't use PFR_XXX but FT_XXX arguments which are
+	typecast to the proper PFR_XXX types within the function.
+	Update code accordingly.
+
+	* src/pfr/pfrdrivr.c (pfr_get_kerning, pfr_get_advance,
+	pfr_get_metrics, pfr_get_service): Don't use PFR_XXX but FT_XXX
+	arguments which are typecast to the proper PFR_XXX types within the
+	function.
+	Update code accordingly.
+	Use FT_CALLBACK_DEF throughout.
+	(pfr_metrics_service_rec, pfr_driver_class): Remove casts.
+
+2004-05-06  Masatake YAMATO  <jet at gyve.org>
+
+	* src/truetype/ttgxvar.c (ft_var_load_gvar): Use FT_FACE_STREAM.
+	(*): Rename local variable OffsetToData to offsetToData.
+
+2004-05-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_size_done, cff_size_init, cff_size_reset,
+	cff_slot_done, cff_slot_init, cff_face_init, cff_face_done): Access
+	root fields directly.
+	* src/cff/cffdrivr.c (Load_Glyph): Access root fields directly.
+
+	* src/truetype/ttgload.c (TT_Process_Simple_Glyph): Save current
+	frame before calling TT_Vary_Get_Glyph_Deltas.
+
+	* src/pcf/pcfdrivr.c (PCF_CMapRec): Rename `cmap' to `root' for
+	consistency.
+	(pcf_cmap_init, pcf_cmap_done, pcf_cmap_char_index,
+	pcf_cmap_char_next): Don't use PCF_XXX but FT_XXX arguments which
+	are typecast to the proper PCF_XXX types within the function.
+	Update code accordingly.
+	(pcf_cmap_class): Remove casts.
+	(PCF_Face_Done, PCF_Face_Init, PCF_Set_Pixel_Size): Don't use
+	PCF_XXX but FT_XXX arguments which are typecast to the proper
+	PCF_XXX types within the function.
+	Update code accordingly.
+	Use FT_CALLBACK_DEF throughout.
+	(PCF_Set_Point_Size): New wrapper function.
+	(PCF_Glyph_Load, pcf_driver_requester): Use FT_CALLBACK_DEF.
+	(pcf_driver_class): Remove casts.
+
+2004-05-04  Steve Hartwell  <shspamsink at comcast.net>
+
+	* src/truetype/ttobjs.c (tt_driver_done): Fix typo.
+
+2004-05-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Done, BDF_Face_Init,
+	BDF_Set_Pixel_Size): Don't use BDF_XXX but FT_XXX arguments which
+	are typecast to the proper BDF_XXX types within the function.
+	Update code accordingly.
+	Use FT_CALLBACK_DEF throughout.
+	(BDF_Set_Point_Size): New wrapper function.
+	(bdf_driver_class): Remove casts.
+
+	* src/cff/cffdrivr.c (Get_Kerning, Load_Glyph, cff_get_interface):
+	Don't use CFF_XXX but FT_XXX arguments which are typecast to the
+	proper CFF_XXX types within the function.
+	Update code accordingly.
+	Use FT_CALLBACK_DEF throughout.
+	(cff_driver_class): Remove casts.
+
+	* src/cff/cffobjs.h, src/cff/cffobjs.c (cff_size_done,
+	cff_size_init, cff_size_reset, cff_slot_done, cff_slot_init,
+	cff_face_init, cff_face_done, cff_driver_init, cff_driver_done):
+	Don't use CFF_XXX but FT_XXX arguments which are typecast to the
+	proper CFF_XXX types within the function.
+	Update code accordingly.
+	(cff_point_size_reset): New wrapper function.
+
+	* src/cid/cidobjs.h, src/cid/cidobjs.c (cid_slot_done,
+	cid_slot_init, cid_size_done, cid_size_init, cid_size_reset,
+	cid_face_done, cid_face_init, cid_driver_init, cid_driver_done):
+	Don't use CID_XXX but FT_XXX arguments which are typecast to the
+	proper CID_XXX types within the function.
+	Update code accordingly.
+	(cid_point_size_reset): New wrapper function.
+
+	* src/cid/cidgload.c, src/cid/cidgload.h (cid_slot_load_glyph):
+	Don't use CID_XXX but FT_XXX arguments which are typecast to the
+	proper CID_XXX types within the function.
+	Update code accordingly.
+
+	* src/cid/cidriver.c (cid_get_interface):
+	Don't use CID_XXX but FT_XXX arguments which are typecast to the
+	proper CID_XXX types within the function.
+	Update code accordingly.
+	Use FT_CALLBACK_DEF.
+	(t1cid_driver_class): Remove casts.
+
+	* src/truetype/ttdriver.c (tt_get_interface): Use FT_CALLBACK_DEF.
+	* src/truetype/ttgxvar.c (ft_var_load_avar): Don't free non-local
+	variables (this is done later).
+	(ft_var_load_avar): Fix call to FT_FRAME_ENTER.
+	(TT_Get_MM_Var): Fix size for `fvar_fields'.
+	(TT_Vary_Get_Glyph_Deltas): Handle deallocation of local variables
+	correctly.
+
+	* src/base/ftdbgmem.c (ft_mem_debug_realloc): Don't abort if
+	current size is zero.
+
+2004-05-03  Steve Hartwell  <shspamsink at comcast.net>
+
+	* src/truetype/ttobjs.h, src/truetype/ttobjs.c (tt_face_init,
+	tt_face_done, tt_size_init, tt_size_done, tt_driver_init,
+	tt_driver_done): Don't use TT_XXX but FT_XXX arguments which are
+	typecast to the proper TT_XXX types within the function.
+	Update code accordingly.
+
+	* src/truetype/ttdriver.c (Get_Kerning, Set_Char_Sizes,
+	Set_Pixel_Sizes, Load_Glyph, tt_get_interface): Don't use TT_XXX but
+	FT_XXX arguments which are typecast to the proper TT_XXX types
+	within the function.
+	Update code accordingly.
+	(tt_driver_class): Remove casts.
+
+2004-05-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (tt_face_free_names): Check that `table->names'
+	is not NULL.  Reported by Gordon Childs <gchilds at quickcut.com.au>.
+
+2004-04-29  Werner Lemberg  <wl at gnu.org>
+
+	* docs/formats.txt: Add more information on PFR format.
+
+2004-04-28  Werner Lemberg  <wl at gnu.org>
+
+	* docs/formats.txt: New file.
+	* docs/CHANGES: Updated.
+
+2004-04-28  Masatake YAMATO  <jet at gyve.org>
+
+	* include/freetype/internal/tttypes.h (GX_BlendRec_)
+	[TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Fix a typo.
+
+	* src/truetype/ttgxvar.h (GX_BlendRec_): Fix a typo.
+
+2004-04-27  Masatake YAMATO  <jet at gyve.org>
+
+	* src/truetype/ttgxvar.h: Use FT_LOCAL instead of FT_LOCAL_DEF
+	for function declarations.
+
+2004-04-25  George Williams  <gww at silcom.com>
+
+	* src/truetype/ttgxvar.c (ft_var_apply_tuple): Fix typo.
+
+2004-04-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/Jamfile, docs/CHANGES: Updated.
+
+2004-04-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/pcf/pcfdrivr.c: Revert change from 2004-04-17.
+	* src/pcf/pcfutil.c: Use FT_LOCAL_DEF.
+	* src/pcf/pcfutil.h: Include FT_CONFIG_CONFIG_H.
+	Use FT_BEGIN_HEADER and FT_END_HEADER.
+	Use FT_LOCAL.
+
+2004-04-24  George Williams  <gww at silcom.com>
+
+	Add support for Apple's distortable font technology (in GX fonts).
+
+	* devel/ftoption.h, include/freetype/config/ftoption.h
+	(TT_CONFIG_OPTION_GX_VAR_SUPPORT): New macro.
+
+	* include/freetype/ftmm.h (FT_Var_Axis, FT_Var_Named_Style,
+	FT_MM_Var): New structures.
+	(FT_Get_MM_Var, FT_Set_Var_Design_Coordinates,
+	FT_Set_Var_Blend_Coordinates): New function declarations.
+
+	* include/freetype/internal/services/svmm.h (FT_Get_MM_Var_Func,
+	FT_Set_Var_Design_Func): New typedefs.
+	Update MultiMasters service.
+
+	* include/freetype/internal/tttypes.h
+	[TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include FT_MULTIPLE_MASTERS_H.
+	(GX_Blend) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: New typedef.
+	(TT_Face) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: New members `doblend'
+	and `blend'.
+
+	* include/freetype/tttags.h (TTAG_avar, TTAG_cvar, TTAG_gvar): New
+	macros.
+
+	* include/freetype/internal/fttrace.h: Add `ttgxvar'.
+
+	* src/base/ftmm.c (FT_Get_MM_Var, FT_Set_Var_Design_Coordinates,
+	FT_Set_Var_Blend_Coordinates): New functions.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face)
+	[TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Set FT_FACE_FLAG_MULTIPLE_MASTERS
+	flag for GX var fonts.
+
+	* src/truetype/ttgxvar.c, src/truetype/ttgxvar.h: New files.
+
+	* src/truetype/truetype.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include
+	ttgxvar.c.
+
+	* src/truetype/ttdriver.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include
+	FT_MULTIPLE_MASTERS_H, FT_SERVICE_MULTIPLE_MASTERS_H, and ttgxvar.h.
+	(tt_service_gx_multi_masters) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]:
+	New service.
+	(tt_services) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Updated.
+
+	* src/truetype/ttgload.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include
+	ttgxvar.h.
+	(TT_Process_Simple_Glyph, load_truetype_glyph)
+	[TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Support GX var fonts.
+
+	* src/truetype/ttobjs.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include
+	ttgxvar.h.
+	(tt_done_face) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Call
+	tt_done_blend.
+
+	* src/truetype/ttpload.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include
+	ttgxvar.h.
+	(tt_face_load_cvt)  [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Call
+	tt_face_vary_cvt.
+
+	* src/truetype/rules.mk (TT_DRV_SRC): Add ttgxvar.c.
+
+	* src/type1/t1driver.c (t1_service_multi_masters): Add T1_Get_MM_Var
+	and T1_Set_Var_Design.
+
+	* src/type1/t1load.c (FT_INT_TO_FIXED, FT_FIXED_TO_INT): New macros.
+	(T1_Get_MM_Var, T1_Set_Var_Design): New functions.
+
+	* src/type1/t1load.h (T1_Get_MM_Var, T1_Set_Var_Design): New
+	function declarations.
+
+2004-04-23  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftcache.h (FT_Get_CharMap_Index): Rename
+	declaration and move to...
+	* include/freetype/freetype.h (FT_Get_Charmap_Index): Here.
+	(FREETYPE_PATCH): Set to 9.
+
+	* src/base/ftobjs.c (FT_Get_Charmap_Index): New function.
+
+	* builds/unix/configure.ac (version_info): Set to 9:7:3.
+	* builds/unix/configure: Updated.
+
+	* builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj: s/218/219/.
+
+	* builds/freetype.mk (refdoc), README, Jamfile (RefDoc):
+	s/2.1.8/2.1.9/.
+
+	* docs/CHANGES, docs/VERSION.DLL: Updated.
+
+2004-04-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffparse.c (cff_parser_run), src/psaux/psobjs.c
+	(ps_parser_load_field): Use FT_CHAR_BIT.
+
+2004-04-21  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.8 released.
+	=========================
+
+
+	* src/cff/cffobjs.c (cff_face_init): Fix a small memory leak.
+
+	* src/autofit/afloader.c (af_loader_load_g), src/autofit/afmodule.c
+	(af_autofitter_load_glyph), src/base/ftdebug.c (FT_Trace_Get_Name):
+	Remove compiler warnings.
+
+	* src/autofit/aftypes.h: Undefine AF_DEBUG.
+
+	* src/lzw/zopen.c (rmask), src/pcf/pcfdrivr.c (pcf_service_bdf,
+	pcf_services), src/pcf/pcfread.c (tableNames), src/psaux/psobjs.c
+	(ft_char_table), src/type42/t42drivr.c (t42_service_glyph_dict,
+	t42_service_ps_font_name): Decorate data arrays with `const' to
+	avoid populating the `.data' segment.
+
+	* src/lzw/Jamfile: New file.
+
+2004-04-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psobjs.c (T1Radix): Renamed to...
+	(ps_radix): This.
+	Update current cursor position.
+
+	* docs/CHANGES: Updated.
+
+2004-04-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c, src/truetype/ttgload.h (TT_Load_Glyph),
+	src/ttdriver.c (Load_Glyph): Change type of `glyph_index' to
+	FT_UInt.  From Lex Warners.
+
+2004-04-17  Chisato Yamauchi  <cyamauch at a.phys.nagoya-u.ac.jp>
+
+	* src/sfnt/ttload.c (tt_face_load_sfnt_header): Really fix change
+	from 2004-03-19.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Use `ft_strlen'.
+
+	* src/pcf/pcfutil.c, src/pcf/pcfutil.h: Decorate functions with
+	`static'.
+	Remove unused function `RepadBitmap'.
+	* src/pcf/pcfdrivr.c: Don't include pcfutil.h.
+
+2004-04-16  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype-config.in (usage): Fix and improve usage
+	information.
+
+2004-04-15  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ftconfig.in, builds/vms/ftconfig.h: Define
+	FT_CHAR_BIT.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Don't apply autohinting if
+	glyph is vertically distorted or mirrored.
+
+	* src/cff/cffgload.c (cff_slot_load): Handle zero `size' properly
+	for embedded bitmaps.
+
+	* docs/CHANGES: Updated.
+
+2004-04-15  bytesoftware  <bytesoftware at btinternet.com>
+
+	* include/freetype/config/ftconfig.h, src/base/ftstream.c
+	(FT_Stream_ReadFields): More fixes using FT_CHAR_BIT.
+
+2004-04-14  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftconfig.h (FT_CHAR_BIT): New macro.
+
+2004-04-14  Alex Strelnikov  <ptktyrf at mail.ru>
+
+	* src/cache/ftcsbits.c (ftc_snode_load): Initialize `*asize' in case
+	of error.
+
+2004-04-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftmac.c [__GNUC__]: Define OS_INLINE.
+	* builds/unix/configure.ac: Don't try to remove `-ansi' compilation
+	switch on the Mac.
+
+	* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
+	--copy' from libtool 1.5.6.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.8a.
+	* builds/unix/configure: Regenerated with autoconf 2.59a.
+
+2004-04-13  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftconfig.h: Use CHAR_BIT to define
+	size of FT_SIZEOF_xxx.
+
+2004-04-12  Chisato Yamauchi  <cyamauch at a.phys.nagoya-u.ac.jp>
+
+	* include/freetype/internal/sfnt.h (TT_Find_SBit_Image_Func,
+	TT_Load_SBit_Metrics_Func): New typedefs.
+	(SFNT_Interface): Add find_sbit_image and load_sbit_metrics.
+
+	* src/sfnt/sfdriver.c (sfnt_interface): Updated.
+	* src/sfnt/ttsbit.h (tt_find_sbit_image, tt_load_sbit_metrics): New
+	declarations.
+	* src/sfnt/ttsbit.c (find_sbit_image): Renamed to...
+	(tt_find_sbit_image): This.
+	Updated all callers.
+	(load_sbit_metrics): Renamed to...
+	(tt_load_sbit_metrics): This.
+	Updated all callers.
+
+2004-04-12  Werner Lemberg  <wl at gnu.org>
+
+	* configure: Accept makepp also.
+
+	* builds/unix/detect.mk: Use proper path to unix-def.mk.
+	* builds/unix/unix-def.in (BUILD_DIR, PLATFORM): Remove.
+	* builds/unix/unix.mk (BUILD_DIR, PLATFORM): Define.
+	Use BUILD_DIR.
+
+	* docs/INSTALL, docs/INSTALL.GNU, docs/INSTALL.UNX: Update
+	documentation on makepp.
+
+2004-04-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/lzw/zopen.c: Don't include sys/param.h and sys/stat.h.
+
+2004-04-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/lzw/ftlzw.c: Include zopen.h dependent on
+	FT_CONFIG_OPTION_USE_LZW.
+
+	* src/base/ftdebug.c: s/index/idx/ to avoid compiler warnings.
+
+2004-04-02  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
+	--copy' from libtool 1.5.2.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.8a.
+	* builds/unix/configure: Regenerated with autoconf 2.59a.
+
+2004-04-01  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ft-munmap.m4 (FT_MUNMAP_PARAM): Fix arguments of
+	AC_COMPILE_IFELSE.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.8a.
+	* builds/unix/configure: Regenerated with autoconf 2.59a.
+	* builds/unix/config.guess, builds/unix/config.sub: Updated from
+	`config' CVS module at subversions.gnu.org.
+	* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
+	`texinfo' CVS module at subversions.gnu.org.
+	* builds/freetype.mk (refdoc): Updated.
+
+2004-03-31  Werner Lemberg  <wl at gnu.org>
+
+	Handle broken FNT files which don't have a trailing NULL byte
+	in the face name string.
+
+	* src/winfonts/winfnt.h (FNT_FontRec): New member `family_name'.
+	* src/winfonts/winfnt.c (fnt_font_done): Free font->family_name.
+	(FNT_Face_Init): Append a final zero byte to the font face name.
+
+2004-03-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (tt_face_load_sfnt_header): Fix change from
+	2004-03-19.
+
+2004-03-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/descrip.mms (OBJS): Add ftbbox.obj.
+
+2004-03-26  George Williams  <gww at silcom.com>
+
+	Add vertical phantom points.
+
+	* include/freetype/internal/tttypes.h (TT_LoaderRec): Add
+	`top_bearing', `vadvance', `pp3', and `pp4'.
+
+	* src/autofit/afloader.c (af_loader_load_g): Handle two more points.
+
+	* src/autohint/ahhint.c (ah_hinter_load): Handle two more points.
+	* src/truetype/ttgload.c (Get_VMetrics): New function.
+	(TT_Load_Simple_Glyph, TT_Process_Simple_Glyph): Handle two more
+	points.
+	(load_truetype_glyph): Use Get_VMetrics.
+	Handle two more points.
+	(compute_glyph_metrics): Thanks to vertical phantom points we now
+	can always compute `advance_height' and `top_bearing'.
+	* src/truetype/ttobjs.h (TT_SubglyphRec): Add vertical phantom
+	points.
+
+
+	* src/autohint/ahglyph.c (ah_outline_load): Fix allocation of
+	`news'.
+
+2004-03-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdfdrivr.c (BDF_Glyph_Load): Fix left side bearing.
+
+2004-03-20  Steve Hartwell  <shspamsink at comcast.net>
+
+	* src/cache/ftcmru.c (FTC_MruList_RemoveSelection): Handle a NULL
+	value for `selection' as `select all'.
+
+2004-03-19  Steve Hartwell  <shspamsink at comcast.net>
+
+	* src/sfnt/ttload.c (tt_face_load_sfnt_header): Reject face_index
+	values > 0 if loading non-TTC fonts.
+
+	* src/base/ftmac.c (open_face_from_buffer): Set positive face_index
+	to zero before calling FT_Open_Face.
+
+	* docs/CHANGES: Updated.
+
+2004-03-04  Werner Lemberg  <wl at gnu.org>
+
+	* Jamfile, vms_make.com, builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype/vcproj, include/freetype/ftmoderr.h:
+	Add LZW module.
+
+	* Jamfile.in: Removed.
+
+	* docs/CHANGES: Updated.
+
+	* include/freetype/internal/ftobjs.h: s/MIN/FT_MIN/, s/MAX/FT_MAX/,
+	s/ABS/FT_ABS/.  Updated all callers.
+
+	* src/type1/t1load.c (parse_dict), src/pcf/pcfdrivr.c
+	(PCF_Face_Init): Use FT_ERROR_BASE.
+
+2004-03-04  Albert Chin  <china at thewrittenword.com>
+
+	Add support for PCF fonts compressed with LZW (extension .pcf.Z,
+	created with `compress').
+
+	* include/freetype/config/ftoption.h, devel/ftoption.h
+	(FT_CONFIG_OPTION_USE_LZW): New macro.
+
+	* include/freetype/ftlzw.h: New file.
+	* include/freetype/config/ftheader.h (FT_LZW_H): New macro for
+	ftlzw.h.
+
+	* src/lzw/*: New files.
+
+	* src/pcf/pcfdrivr.c: Include FT_LZW_H.
+	(PCF_Face_Init): Try LZW also.
+
+	* src/gzip/ftgzip.c: s/0/Gzip_Err_Ok/ where appropriate.
+	Beautify.
+
+2004-03-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo.c (psh_hint_table_init): Simplify code.
+
+2004-03-02  Werner Lemberg  <wl at gnu.org>
+
+	Add embedded bitmap support to CFF driver.
+
+	* src/cff/cffobjs.h (CFF_SizeRec): New structure.
+
+	* src/cff/cffgload.c (cff_builder_init): Updated.
+	(cff_slot_load): Updated.
+	[TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Load sbit.
+
+	* src/cff/cffobjs.c (sbit_size_reset)
+	[TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: New function.
+	(cff_size_get_globals_funcs, cff_size_done, cff_size_init): Updated.
+	(cff_size_reset): Updated.
+	[TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Call sbit_size_reset.
+
+	* src/cff/cffdrivr.c (Load_Glyph): Updated.
+	(cff_driver_class): Use CFF_SizeRec.
+
+	* docs/CHANGES: Updated.
+
+2004-03-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshglob.c (psh_globals_scale_widths): Don't use
+	FT_RoundFix but FT_PIX_ROUND.
+	(psh_blues_snap_stem): Don't use blue_shift but blue_threshold.
+
+	* src/pshinter/pshalgo.c (PSH_STRONG_THRESHOLD_MAXIMUM): New macro.
+	(psh_glyph_find_strong_points): Use PSH_STRONG_THRESHOLD_MAXIMUM.
+	(psh_glyph_find_blue_points): New function.  Needed for fonts like
+	p052003l.pfb (URW Palladio L Roman) which have flex curves at the
+	base line within blue zones, but the flex curves aren't covered by
+	hints.
+	(ps_hints_apply): Use psh_glyph_find_blue_points.
+
+2004-02-27  Garrick Meeker  <garrick at digitalanarchy.com>
+
+	* builds/unix/configure.ac: Fix compiler flags for
+	`--with-old-mac-fonts'.
+	* builds/unix/configure: Regenerated.
+
+	* src/base/ftmac.c: s/TARGET_API_MAC_CARBON/!TARGET_API_MAC_OS8/.
+	(FT_New_Face_From_Resource): New function.
+	(FT_New_Face): Use FT_New_Face_From_Resource.
+	(FT_New_Face_From_FSSpec): Use FT_New_Face_From_Resource.
+	[__MWERKS__]: Don't include FSp_fopen.h.
+
+2004-02-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshglob.c (psh_globals_new): Fix value of
+	`dim->stdw.count'.
+	Don't assign default values to blue scale and blue shift.
+
+2004-02-25  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-02-25  Garrick Meeker  <garrick at digitalanarchy.com>
+	    Steve Hartwell  <shspamsink at comcast.net>
+
+	Improve MacOS fond support.  Provide a new API
+	`FT_New_Face_From_FSSpec' similar to `FT_New_Face'.
+
+	* src/base/ftmac.c [__MWERKS__]: Include FSp_fopen.h.
+	STREAM_FILE [__MWERKS__]: New macro.
+	(ft_FSp_stream_close, ft_FSp_stream_io) [__MWERKS__]: New functions.
+	(file_spec_from_path) [__MWERKS__]: Updated #if statement.
+	(get_file_type, make_lwfn_spec): Use `const' for argument.
+	(is_dfont) [TARGET_API_MAC_CARBON]: Removed.
+	(count_face_sfnt, count_faces): New functions.
+	(parse_fond): Do some range checking.
+	(read_lwfn): Change type of second argument.
+	No longer call FSpOpenResFile.
+	(OpenFileAsResource): New function.
+	(FT_New_Face_From_LWFN): Use `const' for second argument.
+	Use OpenFileAsResource.
+	(FT_New_Face_From_Suitcase): Change type of second argument.
+	No longer call FSpOpenResFile.
+	Loop over all resource indices.
+	(FT_New_Face_From_dfont) [TARGET_API_MAC_CARBON]: Removed.
+	(FT_GetFile_From_Mac_Name): Use `const' for first argument.
+	(ResourceForkSize): Removed.
+	(FT_New_Face): Updated to use new functions.
+	(FT_New_Face_From_FSSpec): New function.
+
+	* include/freetype/ftmac.h: Updated.
+
+2004-02-24  Malcolm Taylor  <mtaylor at clear.net.nz>
+
+	* src/autohint/ahhint.c (ah_hinter_load) <FT_GLYPH_FORMAT_OUTLINE>:
+	Handle case where outline->num_vedges is zero while computing hinted
+	metrics.
+
+2004-02-24  Gordon Childs  <gchilds at quickcut.com.au>
+
+	* src/cff/cffcmap.c (cff_cmap_unicode_init): Provide correct value
+	for `count'.
+
+2004-02-24  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/t1tables.h (PS_PrivateRec): Add
+	`expansion_factor'.
+
+	* src/pshinter/pshglob (psh_blues_scale_zones): Fix computation
+	of blues->no_overshoots -- `blues_scale' is stored with a
+	magnification of 1000, and `scale' returns fractional pixels.
+
+	* src/type1/t1load.c (T1_Open_Face): Initialize `blue_shift',
+	`blue_fuzz', `expansion_factor', and `blue_scale' according to the
+	Type 1 specification.
+
+	* src/type1/t1tokens.h: Handle `ExpansionFactor'.
+
+	* docs/CHANGES: Updated.
+
+2004-02-24  Masatake YAMATO  <jet at gyve.org>
+
+	Provide generic access to MacOS resource forks.
+
+	* src/base/ftrfork.c, include/freetype/internal/ftrfork.h: New
+	files.
+
+	* src/base/ftobjs.c: Include FT_INTERNAL_RFORK_H.
+	(Mac_Read_POST_Resource, Mac_Read_sfnt_Resource): Remove arguments
+	`resource_listoffset' and `resource_data' and adapt code
+	accordingly.  These values are calculated outside of the function
+	now.
+	Add new argument `offsets'.
+	(IsMacResource): Use `FT_Raccess_Get_HeaderInfo' and
+	`FT_Raccess_Get_DataOffsets'.
+	(load_face_in_embedded_rfork): New function.
+	(load_mac_face): Use load_face_in_embedded_rfork.
+	(ft_input_stream_new): Renamed to...
+	(FT_Stream_New): This.  Use FT_BASE_DEF.  Updated all callers.
+	(ft_input_stream_free): Renamed to...
+	(FT_Stream_Free): This.  Use FT_BASE_DEF.  Updated all callers.
+
+	* src/base/ftbase.c: Include ftrfork.c.
+
+	* src/base/rules.mk (BASE_SRC), src/base/Jamfile: Updated.
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_RFORK_H):
+	New macro.
+
+	* include/freetype/internal/fttrace.h: Added `rfork' as a new
+	trace definition.
+
+	* include/freetype/internal/ftstream.h: Declare FT_Stream_New and
+	FT_Stream_Free.
+
+	* include/freetype/config/ftoption.h, devel/ftoption.h
+	(FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK): New option.
+
+	* include/freetype/config/ftstdlib.h (ft_strrchr): New macro.
+
+2004-02-23  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+	* include/freetype/internal/ftdebug.h: Include FT_FREETYPE_H.
+
+2004-02-23  Masatake YAMATO  <jet at gyve.org>
+
+	Provide a simple API to control FreeType's tracing levels.
+
+	* include/freetype/internal/ftdebug.h (FT_Trace_Get_Count,
+	FT_Trace_Get_Name): New declarations.
+
+	* src/base/ftdebug.c (FT_Trace_Get_Count, FT_Trace_Get_Name): New
+	functions.
+
+2004-02-23  David Turner  <david at freetype.org>
+
+	* src/autofit/afhints.c, src/autofit/afhints.h,
+	src/autofit/aflatin.c, src/autofit/afloader.c, src/types.h: Grave
+	bugs have been fixed.  The auto-fitter works, doesn't crash, but
+	still produces unexpected results...
+
+2004-02-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo.c (PSH_STRONG_THRESHOLD): Changed to hold
+	the accepted shift for strong points in fractional pixels (which
+	is a heuristic value).
+	(psh_glyph_find_strong_points): Compute threshold for
+	psh_hint_table_find_strong_points.
+	(psh_hint_table_find_strong_point): Add parameter to pass threshold.
+
+2004-02-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshrec.c (ps_mask_table_set_bits): Don't call
+	ps_mask_table_alloc but ps_mask_table_last.
+	(ps_hints_t2mask): Use correct position and number for vertical
+	and horizontal hinter mask bits.
+
+	* docs/CHANGES: Updated.
+
+2004-02-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftstroke.c (FT_Glyph_StrokeBorder): Fix enum handling.
+	* src/cff/cffdrivr.c (cff_get_cmap_info): Remove compiler warning.
+
+2004-02-18  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h: Document FT_LOAD_TARGET_XXX properly.
+
+	* src/base/ftglyph.c (ft_bitmap_glyph_class,
+	ft_outline_glyph_class): Tag with FT_CALLBACK_TABLE_DEF.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render): Handle
+	FT_RENDER_MODE_LIGHT.
+
+2004-02-17  Werner Lemberg  <wl at gnu.org>
+
+	Fix callback functions in cache module.
+
+	* src/cache/ftccback.h: New file for callback declarations.
+
+	* src/cache/ftcbasic.c (ftc_basic_family_compare,
+	ftc_basic_family_init, ftc_basic_family_get_count,
+	ftc_basic_family_load_bitmap, ftc_basic_family_load_glyph,
+	ftc_basic_gnode_compare_faceid): Use FT_CALLBACK_DEF.
+	(ftc_basic_image_family_class, ftc_basic_image_cache_class,
+	ftc_basic_sbit_family_class, ftc_basic_sbit_cache_class):
+	Use FT_CALLBACK_TABLE_DEF and local wrapper functions.
+
+	* src/cache/ftccache.c: Include ftccback.h.
+	(ftc_cache_init, ftc_cache_done): New wrapper functions which use
+	FT_LOCAL_DEF.
+
+	* src/cache/ftccmap.c: Include ftccback.h.
+	(ftc_cmap_cache_class): Use local wrapper functions.
+
+	* src/cache/ftcglyph.c: Include ftccback.h.
+	(ftc_gnode_compare, ftc_gcache_init, ftc_gcache_done): New wrapper
+	functions which use FT_LOCAL_DEF.
+
+	* src/cache/ftcimage.c: Include ftccback.h.
+	(ftc_inode_free, ftc_inode_new, ftc_inode_weight): New wrapper
+	functions which use FT_LOCAL_DEF.
+
+	* src/cache/ftcmanag.c (ftc_size_list_class, ftc_face_list_class):
+	Use FT_CALLBACK_TABLE_DEF.
+
+	* src/cache;/ftcsbits.c: Include ftccback.h.
+	(ftc_snode_free, ftc_snode_new, ftc_snode_weight,
+	ftc_snode_compare): New wrapper functions which use FT_LOCAL_DEF.
+
+	* src/cache/rules.mk (CACHE_DRV_H): Add ftccback.h.
+
+2004-02-17  Masatake YAMATO  <jet at gyve.org>
+
+	* include/freetype/ftmac.h (FT_GetFile_From_Mac_Name): Fix a typo
+	(FT_EXPORT_DEF -> FT_EXPORT).
+
+	* include/freetype/ftxf86.h (FT_Get_X11_Font_Format): Ditto.
+
+2004-02-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Fix typo.
+
+2004-02-14  Masatake YAMATO  <jet at gyve.org>
+
+	* builds/unix/ftsystem.c: Include errno.h.
+	(ft_close_stream): Renamed to...
+	(ft_close_stream_by_munmap): This.
+	(ft_close_stream_by_free): New function.
+	(FT_Stream_Open): Use fallback method if mmap fails.
+	Use proper function for closing the stream.
+
+2004-02-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_dict): Initialize `start_binary'.
+
+2004-02-13  Robert Etheridge  <roberte at stcc.cc.tx.us>
+
+	* src/type42/t42objs.c (T42_Face_Init), src/type1/t1objs.c
+	(T1_Face_Init), src/cid/cidobjs.c (cid_face_init): Fix computation
+	of underline_position and underline_thickness.
+
+2004-02-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Return immediately if
+	ppem values don't change.  Suggested by Graham Asher.
+
+2004-02-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidload.c (cid_face_open): Always allocate
+	face->cid_stream so that we can deallocate it safely.
+
+2004-02-10  Werner Lemberg  <wl at gnu.org>
+
+	Make the PS parser more tolerant w.r.t. non-standard font data.  In
+	general, an error is only reported in case of a syntax error; a
+	wrong type is now simply ignored (if possible).  To be independent
+	of the order of various MM-specific keywords, the parse_shared_dict
+	routine has been removed -- the PS parser is now capable to skip
+	this data.  It no longer fails on parsing e.g.
+
+	  dup /WeightVector exch def
+
+	Since the token following /WeightVector isn't `[' (starting an
+	array) it is simply ignored.
+
+	* include/freetype/fterrdef.h: Define `FT_Err_Ignore' (0xA2) as a
+	new internal error value.
+
+	* src/type1/t1load.c (parse_blend_axis_types,
+	parse_blend_design_positions, parse_blend_design_map): Return
+	T1_Err_Ignore if no proper array is following the keyword.
+	(parse_weight_vector): Use T1_ToTokenArray, initializing `blend'
+	structure, if necessary.
+	Return T1_Err_Ignore if no proper array is following the keyword.
+	(parse_shared_dict): Removed.
+	(parse_encoding): Set parser->root.error to return T1_Err_Ignore
+	if no result can be obtained.
+	Check for errors before accessing `elements' array.
+	(t1_keywords): Remove /shareddict.
+	(parse_dict): Reset error if t1_load_keyword returns T1_Err_Ignore.
+	Set keyword_flag only in case of success.
+	Check error code if skipping an unrecognized token.
+	(T1_Open_Face) [!T1_CONFIG_OPTION_NO_MM_SUPPORT]: Call T1_Done_Blend
+	if blend commands haven't set up a proper MM font.
+
+	* src/psaux/psobjs.c (ps_parser_load_field_table): Remove special
+	code for synthetic fonts.
+	Return PSaux_Err_Ignore if no proper value has been found.
+
+2004-02-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
+	<cff_op_endchar>: Preserve glyph width before calling
+	cff_operator_seac.
+
+2004-02-09  Martin Muskens  <mmuskens at aurelon.com>
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Handle special
+	first argument for `hintmask' and `cntrmask' operators also.
+
+2004-02-08  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.in: Call AC_SUBST for `enable_shared',
+	`hardcode_libdir_flag_spec', and `wl'.
+	* builds/unix/configure: Regenerated.
+
+	* builds/unix/freetype-config.in: Make --prefix and --exec-prefix
+	actually work.
+	Report a proper --rpath (or -R) value for --libs argument if a
+	shared library has been built.
+
+	* docs/CHANGES: Updated.
+
+2004-02-07  Keith Packard  <keithp at keithp.com>
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init, BDF_Set_Pixel_Size): Fix
+	computation of various vertical and horizontal metric values.
+
+	* src/pcfdrivr.c (PCF_Set_Pixel_Size), src/pcfread (pcf_load_font):
+	Ditto.
+
+2004-02-07  Werner Lemberg  <wl at gnu.org>
+
+	* builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.dsw, docs/CHANGES: Updated.
+
+2004-02-07  Vitaliy Pasternak  <v_a_pasternak at mail.ru>
+
+	* builds/win32/visualc/freetype.sln,
+	builds/win32/visualc/freetype.vcproj: New files for VS.NET 2003.
+
+2004-02-03  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP):
+	Initialize `node'.
+	* src/type1/t1load.c (parse_dict): Initialize `have_integer'.
+
+2004-02-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_dict): Handle `RD' and `-|' commands
+	outside of /Subrs or /CharStrings.  This can happen if there is
+	additional code manipulating those two arrays so that FreeType
+	doesn't recognize them properly.
+	(T1_Open_Face): Improve an error message.
+
+2004-02-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_charstrings): Exit immediately if
+	there are no elements in /CharStrings.  This is needed for fonts
+	like Optima-Oblique which not only define /CharStrings but access it
+	also.
+
+2004-02-01  David Turner  <david at freetype.org>
+
+	* src/sfnt/Jamfile: Removing `ttcmap' from the list of sources.
+
+	* include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP)
+	<FTC_INLINE>: Provide macro version which doesn't use inline code.
+	* include/freetype/cache/ftcglyph.h (FTC_GCACHE_LOOKUP_CMP)
+	<FTC_INLINE>: Ditto.
+	Use FTC_MRULIST_LOOKUP_CMP.
+	* include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): New
+	macro.
+	(FTC_MRULIST_LOOKUP): Use it.
+
+	* src/cache/Jamfile (_sources), src/cache/descrip.mms: Updated.
+	* src/cache/ftcbasic.c: Fix compiler warnings.
+	* src/cache/ftcmanag.c (FTC_Manager_LookupSize,
+	FTC_Manager_LookupFace) <FTC_INLINE>: Use FTC_MRULIST_LOOKUP_CMP.
+	* src/cache/ftcmru.c (FTC_MruList_Find): Fix a bug (found after
+	heavy testing).
+
+	* Jamfile: Updating `refdoc' target, and adding `autohint' to the
+	list of modules to build.  Both the autohinter and autofitter will
+	be built by default.  But which one will be used is determined by
+	the content of `ftmodule.h'.
+
+	* src/autofit/*: Many updates, but the code is still buggy...
+
+2004-01-31  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_operator_seac): Fix magnitude of
+	accent offset.
+	Update code similarly to the seac support for Type 1 fonts.
+	(cff_decoder_parse_charstrings) <cff_op_endchar>: Fix magnitude
+	of accent offset.
+	Don't hint glyphs twice if seac is emulated.
+	<cff_op_flex>: Assign correct point tags.
+	* docs/CHANGES: Updated.
+
+2004-01-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Use FT_MEM_MOVE, not
+	FT_MEM_COPY, for copying the private dict.
+
+	* src/type1/t1load.c (parse_subrs): Assign number of subrs only
+	in first run.
+	(parse_charstrings): Parse /CharStrings in second run without
+	assigning values.
+	(parse_dict): Skip all /CharStrings arrays but the first.  We need
+	this for non-standard fonts like `Optima' which have different
+	outlines depending on the resolution.  Note that there is no
+	guarantee that we get fitting /Subrs and /CharStrings arrays; this
+	can only be done by a real PS interpreter.
+
+2004-01-29  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* builds/win32/visualc/index.html: New file, giving detailed
+	explanations about forcing CR+LF line endings for the VC++ project
+	files.
+
+2004-01-22  Garrick Meeker  <garrick at digitalanarchy.com>
+
+	* src/cff/cffload.c (cff_subfont_load): Initialize `dict'.
+
+2004-01-22  Werner Lemberg  <wl at gnu.org>
+
+	Add support for the hexadecimal representation of binary data
+	started with `StartData' in CID-keyed Type 1 fonts.
+
+	* include/freetype/internal/t1types.h (CID_FaceRec): Add new
+	members `binary_data' and `cid_stream'.
+
+	* src/cid/cidload.c (cid_read_subrs): Use `face->cid_stream'.
+	(cid_hex_to_binary): New auxiliary function.
+	(cid_face_open): Add new argument `face_index' to return quickly
+	if less than zero.  Updated all callers.
+	Call `cid_hex_to_binary', then open and assign memory stream to
+	`face->cid_stream' if `parser->binary_length' is non-zero.
+	* src/cid/cidload.h: Updated.
+
+	* src/cid/cidobjs.c (cid_face_done): Free `binary_data' and
+	`cid_stream'.
+
+	* src/cid/cidparse.c (cid_parser_new): Check arguments to
+	`StartData' and set parser->binary_length accordingly.
+	* src/cid/cidparse.h (CID_Parser): New member `binary_length'.
+
+	* src/cid/cidgload.c (cid_load_glyph): Use `face->cid_stream'.
+
+	* docs/CHANGES: Updated.
+
+2004-01-21  Werner Lemberg  <wl at gnu.org>
+
+	include/freetype/config/ftstdlib.h (ft_atoi): Replaced with...
+	(ft_atol): This.
+	* src/base/ftdbgmem.c: s/atol/ft_atol/.
+	* src/type42/t42drivr.c: s/ft_atoi/ft_atol/.
+
+2004-01-20  Masatake YAMATO  <jet at gyve.org>
+
+	* include/freetype/ftcache.h: Delete duplicated definition of
+	FTC_FaceID.
+
+	* src/cff/cffdrivr.c (cff_get_cmap_info): Call sfnt module's TT CMap
+	Info service function if the cmap comes from sfnt.  Return 0 if the
+	cmap is synthesized in cff module.
+
+2004-01-20  David Turner  <david at freetype.org>
+
+	* src/cache/ftcmanag.c (ftc_size_node_compare): Call
+	FT_Activate_Size.
+
+2004-01-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Skip exactly one
+	CR, LF, or CR/LF after `eexec'.
+
+2004-01-18  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttsbit.c (tt_face_set_sbit_strike): Remove compiler
+	warning.
+
+	* src/tools/docmaker/*: Updating beautifier tool.
+
+2004-01-15  David Turner  <david at freetype.org>
+
+	* src/base/ftoutln.c (ft_orientation_extremum_compute): Fix
+	infinite loop bug.
+
+	* include/freetype/ftstroke.h: Include FT_GLYPH_H.
+	(FT_Stroker_Rewind, FT_Glyph_Stroke, FT_Glyph_StrokeBorder): New
+	declarations.
+
+	* src/base/ftstroke.c: Include FT_INTERNAL_OBJECTS_H.
+	(FT_Outline_GetOutsideBorder): Inverse result.
+	(FT_Stroker_Rewind, FT_Glyph_Stroke, FT_Glyph_StrokeBorder): New
+	functions.
+	(FT_Stroker_EndSubPath): Close path if needed.
+	(FT_Stroker_Set, FT_Stroker_ParseOutline): Use FT_Stroker_Rewind.
+
+	* include/freetype/cache/ftcmanag.h (FTC_ScalerRec,
+	FTC_Manager_LookupSize): Moved to...
+	* include/freetype/ftcache.h (FTC_ScalerRec,
+	FTC_Manager_LookupSize): Here.
+
+	* src/tools/docmaker/docbeauty.py: New file to beautify the
+	documentation comments (e.g., to convert them to single block border
+	mode).
+	* src/tools/docmaker/docmaker.py (file_exists, make_file_list):
+	Moved to...
+	* src/tools/docmaker/utils.py (file_exists, make_file_list): Here.
+
+2004-01-14  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/ftmemory.h (FT_ARRAY_COPY,
+	FT_ARRAY_MOVE): New macros to make copying arrays easier.
+	Updated all relevant code to use them.
+
+2004-01-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffload.c (cff_font_load): Load charstrings_index earlier.
+	Use number of charstrings as argument to CFF_Load_FD_Select (as
+	documented in the CFF specs).
+
+2004-01-13  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/pshinter/pshalgo.c (psh_glyph_init): Move assignment of
+	`glyph->memory' up to free arrays properly in case of failure.
+
+2004-01-10  Masatake YAMATO  <jet at gyve.org>
+
+	Make `FT_Get_CMap_Language_ID' work with CFF.  Bug reported by
+	Steve Hartwell <shspamsink at comcast.net>.
+
+	* src/cff/cffdrivr.c: Include FT_SERVICE_TT_CMAP_H.
+	(cff_services): Added an entry for FT_SERVICE_ID_TT_CMAP.
+	(cff_get_cmap_info): New function.
+	(cff_service_get_cmap_info) New entry for cff_services.
+
+	* src/sfnt/ttcmap0.c: Exit loop after a format match has been found.
+	Suggested by Steve Hartwell <shspamsink at comcast.net>.
+
+2004-01-03  Masatake YAMATO  <jet at gyve.org>
+
+	* src/base/ftobjs.c (destroy_charmaps): New function.
+	(destroy_face, open_face): Use `destroy_charmaps'.
+
+2004-01-01  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2004-01-01  Michael Jansson  <mjan at em2-solutions.com>
+
+	* src/winfonts/winfnt.c (FNT_Size_Set_Pixels): Fix sign of
+	size->metrics.descender.
+
+2003-12-31  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
+	[FT_DEBUG_LEVEL_TRACE]: Use `%ld' in FT_TRACE4.
+	<cff_op_flex1>: Change type of dx and dy to FT_Pos and remove
+	cast for accessing arguments.
+
+2003-12-31  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Revert previous
+	change.  It's not necessary.
+
+2003-12-29  Smith Charles  <smith.charles at free.fr>
+
+	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle `repeated
+	flags set' correctly.
+
+2003-12-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Fix memory leak by deallocating
+	`full' and `weight' properly.
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
+	<cff_op_hintmask> [FT_DEBUG_LEVEL_TRACE]: Use `0x' as prefix for
+	tracing output.
+
+2003-12-26  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/sfnt.h (TT_Set_SBit_Strike_Func):
+	Use FT_UInt for ppem values.
+	* src/sfnt/ttsbit.c (tt_face_set_sbit_strike): Use FT_UInt for
+	ppem values.
+	* src/sfnt/ttsbit.h: Updated.
+
+	* src/base/ftobjs.c (FT_Set_Pixel_Sizes): Don't allow ppem values
+	larger than -0FFFF.
+
+2003-12-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/fttrigon.c, src/base/ftgloadr.c: Include
+	FT_INTERNAL_OBJECTS_H.
+
+	* src/base/ftstroke.c (FT_Outline_GetInsideBorder,
+	FT_Outline_GetOutsideBorder): s/or/o/ to make it compile with
+	C++ compilers.
+
+	* src/cache/ftcmru.c, include/freetype/cache/ftcmru.h:
+	s/select/selection/ to avoid compiler warning.
+	* src/cff/cffload.h: s/select/ftselect/ to avoid potential
+	compiler warning.
+
+2003-12-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftcsbits.c (FTC_SNode_Weight):
+	s/FTC_SBIT_ITEM_PER_NODE/FTC_SBIT_ITEMS_PER_NODE/.
+
+2003-12-24  David Turner  <david at freetype.org>
+
+	* Fixed compilation problems in the cache sub-system.
+
+	* Partial updates to src/autofit.
+
+	* Jamfile (FT2_COMPONENTS): Add autofit module.
+
+2003-12-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_lookup_glyph_by_stdcharcode): Handle
+	CID-keyed fonts.
+
+2003-12-23  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/ftobjs.h (FT_PAD_FLOOR, FT_PAD_ROUND,
+	FT_PAD_CEIL, FT_PIX_FLOOR, FT_PIX_ROUND, FT_PIX_CEIL): New macros.
+	They are used to avoid compiler warnings with very pedantic compilers.
+	Note that `(x) & -64' causes a warning if (x) is not signed.  Use
+	`(x) & ~63' instead!
+	Updated all related code.
+
+	Add support for extraction of `inside' and `outside' borders.
+
+	* src/base/ftstroke.c (FT_StrokerBorder): New enumeration.
+	(FT_Outline_GetInsideBorder, FT_Outline_GetOutsideBorder,
+	FT_Stroker_GetBorderCounts, FT_Stroker_ExportBorder): New functions.
+	(FT_StrokeBorderRec): New boolean member `valid'.
+	(ft_stroke_border_get_counts): Updated.
+	* include/freetype/ftstroke.h: Updated.
+
+2003-12-22  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftwinfnt.h (FT_WinFNT_ID_*): New definitions
+	to describe the `charset' field in FT_WinFNT_HeaderRec.
+	* src/winfonts/winfnt.c (FNT_Face_Init): Set encoding to
+	FT_ENCODING_NONE except for FT_WinFNT_ID_MAC.
+
+	* include/freetype/freetype.h (FT_Encoding): Improve comment,
+	based on work by Detlef Würkner <TetiSoft at apg.lahn.de>.
+
+	* docs/CHANGES: Updated.
+
+2003-12-22  David Turner  <david at freetype.org>
+
+	* include/freetype/ftcache.h,
+	include/freetype/cache/ftcmanag.h,
+	include/freetype/cache/ftccache.h,
+	include/freetype/cache/ftcmanag.h,
+	include/freetype/cache/ftcmru.h (added),
+	include/freetype/cache/ftlru.h (removed),
+	include/freetype/cache/ftcsbits.h,
+	include/freetype/cache/ftcimage.h,
+	include/freetype/cache/ftcglyph.h,
+	src/cache/ftcmru.c,
+	src/cache/ftcmanag.c,
+	src/cache/ftccache.c,
+	src/cache/ftcglyph.c,
+	src/cache/ftcimage.c,
+	src/cache/ftcsbits.c,
+	src/cache/ftccmap.c,
+	src/cache/ftcbasic.c (added),
+	src/cache/ftlru.c (removed):
+
+	  *Complete* rewrite of the cache sub-system to `solve' the
+	  following points:
+
+	    - all public APIs have been moved to FT_CACHE_H, everything
+	      under `include/freetype/cache' is only needed by client
+	      applications that want to implement their own caches
+
+	    - a new function named FTC_Manager_RemoveFaceID to deal
+	      with the uninstallation of FaceIDs
+
+	    - the image and sbit cache are now abstract classes, that
+	      can be extended much more easily by client applications
+
+	    - better performance in certain areas.  Further optimizations
+	      to come shortly anyway...
+
+	    - the FTC_CMapCache_Lookup function has changed its signature,
+	      charmaps can now only be retrieved by index
+
+	    - FTC_Manager_Lookup_Face => FTC_Manager_LookupFace
+	      FTC_Manager_Lookup_Size => FTC_Manager_LookupSize (still in
+	      private header for the moment)
+
+2003-12-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_dict): Stop parsing if `eexec' keyword
+	is encountered.
+
+2003-12-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 32.  For
+	example, the Japanese Hiragino font already contains 15 subfonts.
+
+	* src/cff/cffload.c (cff_font_load): Deallocate `sids' array for
+	CID-keyed fonts.
+
+	* devel/ftoption.h: Define FT_DEBUG_MEMORY.
+
+2003-12-18  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ttnameid.h (TT_ADOBE_ID_LATIN_1): New macro.
+	* src/type1/t1objs.c (T1_Face_Init): Use TT_ADOBE_ID* values.
+
+2003-12-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cfftypes.h (CFF_FontRecDictRec): Change type of
+	`cid_count' to `FT_ULong'.
+
+	* src/cff/cffgload.c (cff_slot_load): Take care of empty `cids'
+	array.
+
+	* src/cff/cffload.c (cff_charset_done): Free `cids' array.
+	(cff_font_load): Create cids array only for CID-keyed fonts which
+	are subsetted.
+
+	* src/cff/cffobjs.c (cff_face_init): Check the availability of
+	the PSNames modules for non-pure CFFs also.
+	Set FT_FACE_FLAG_GLYPH_NAMES for a non-pure CFF also if it isn't
+	CID-keyed.
+
+	* src/cff/rules.mk (CFF_DRV_H): Add cfftypes.h.
+
+2003-12-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_init_face): Don't set
+	FT_FACE_FLAG_GLYPH_NAMES if the font contains a version 3.0 `post'
+	table.
+
+	* docs/CHANGES: Updated.
+
+2003-12-17  Masatake YAMATO  <jet at gyve.org>
+
+	Add new function FT_Get_CMap_Language_ID to extract the language ID
+	for TrueType/sfnt fonts.
+
+	* include/freetype/internal/services/svttcmap.h: New file.
+	* include/freetype/internal/ftserv.h (FT_SERVICE_TT_CMAP_H): Add
+	svttcmap.h.
+
+	* src/sfnt/sfdriver.c: Include ttcmap0.h.
+	(tt_service_get_cmap_info): New service.
+	(sfnt_services): Updated.
+
+	* src/sfnt/ttcmap0.c (tt_cmap*_get_info): New functions.
+	(tt_cmap*_class_rec): Add tt_cmap*_get_info members.
+	(tt_get_cmap_info): New function.
+	* src/sfnt/ttcmap0.h: Include FT_SERVICE_TT_CMAP_H.
+	(TT_CMap_ClassRec): New field `get_cmap_info'.
+	(tt_get_cmap_info): New declaration.
+
+	* src/base/ftobjs.c: Include FT_SERVICE_TT_CMAP_H.
+	(FT_Get_CMap_Language_ID): New function implementation.
+	* include/freetype/tttables.h (FT_Get_CMap_Language_ID): New
+	function declaration.
+
+2003-12-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: Removed.  Obsolete.
+
+	* include/freetype/internal/sfnt.h (SFNT_Interface): Remove
+	obsolete fields `load_charmap' and `free_charmap'.
+	(TT_CharMap_Load_Func, TT_CharMap_Free_Func): Removed.
+	* src/sfnt/sfnt.c: Don't include ttcmap.c.
+	* src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttcmap.c.
+	* src/sfnt/ttload.c: Don't include ttcmap.h.
+	* src/sfnt/sfdriver.c: Don't include ttcmap.h.
+	(sfnt_interface): Updated.
+
+	* include/freetype/internal/tttypes.h (TT_TableDirRec,
+	TT_CMapDirRec, TT_CMapDirEntryRec, TT_CMap0, TT_CMap2SubHeaderRec,
+	TT_CMap2Rec, TT_CMap4Segment, TT_CMap4Rec, TT_CMap6,
+	TT_CMapGroupRec, TT_CMap8_12Rec, TT_CMap10Rec, TT_CharMap_Func,
+	TT_CharNext_Func, TT_CMapTableRec, TT_CharMapRec): Removed.
+	Obsolete.
+	* src/cff/cffobjs.h (CFF_CharMapRec): Removed.  Obsolete.
+
+2003-12-15  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2003-12-15  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* builds/atari/*: New directory for building FreeType 2 on Atari
+	with the PureC compiler.
+
+2003-12-12  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Add
+	cast.
+	* src/cff/cffdrivr.c (cff_ps_has_glyph_names): Assure that return
+	value is either 0 or 1.
+
+2003-12-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffdrivr.c (cff_get_glyph_name): Improve error message.
+	(cff_get_name_index): Return if no PSNames service is available.
+	(cff_ps_has_glyph_names): Handle CID-keyed fonts correctly.
+	* src/cff/cfftypes.h (CFF_CharsetRec): New field `cids', used for
+	CID-keyed fonts.  This is the inverse mapping of `sids'.
+	* src/cff/cffload.c (cff_charset_load): New argument `invert'.
+	Initialize charset->cids if `invert' is set.
+	(cff_font_load): In call to cff_charset_load, set `invert' to true
+	for CID-keyed fonts.
+	* src/cff/cffgload.c (cff_slot_load): Handle glyph index as CID
+	and map it to the real glyph index.
+
+	* docs/CHANGES: Updated.
+
+2003-12-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Don't set
+	FT_FACE_FLAG_GLYPH_NAMES for CID-keyed fonts.
+	Don't construct a cmap for CID-keyed fonts.
+
+2003-12-10  Werner Lemberg  <wl at gnu.org>
+
+	Use implementation specific SID value 0xFFFF to indicate that
+	a dictionary element is missing.
+
+	* src/cff/cffload.c (cff_subfont_load): Initialize all fields
+	which hold SIDs to 0xFFFF.
+	(cff_index_get_sid_string): Handle SID value 0xFFFF.
+	Handle case where `psnames' is zero.
+	(cff_font_load): Updated.
+	Don't load encoding for CID-keyed CFFs.
+
+	* src/cff/cffobjs.c (cff_face_init): Updated.
+	Don't check for PSNames module if font is CID-keyed.
+	Compute style name properly (using the same algorithm as in the
+	CID driver).
+	Fix computation of style flags.
+
+	* src/cff/cfftoken.h: Comment out handling of base_font_name.
+	Rename `postscript' field to `embedded_postscript'
+	* src/cff/cfftypes.h (CFF_FontRecDictRec): Remove `base_font_name'
+	and `postscript'.
+
+2003-12-10  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/pcf/pcfdrivr.c (pcf_get_charset_id): New function (a clone
+	of the similar BDF function).
+	(pcf_service_bdf): Use it.
+
+2003-12-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Set FT_FACE_FLAG_GLYPH_NAMES
+	only if a `post' table is present.
+
+2003-12-09  George Williams  <gww at silcom.com>
+
+	* src/base/ftobjs.c (load_mac_face): Recent versions of Linux
+	support Mac's HFS+ file system, thus enable code to read /rsrc on
+	non-Macintosh platforms also.
+
+2003-12-08  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (PS_TableRec): Change type
+	of `lengths' to FT_PtrDist.
+	(T1_DecoderRec): Change type of `subrs_len' to FT_PtrDist.
+	* include/freetype/internal/t1types.h (T1_FontRec): Change type
+	of `subrs_len' and `charstrings_len' to FT_PtrDist.
+
+	* src/base/ftobjs.c (Mac_Read_POST_Resource): Replace `junk'
+	variable with better solution.
+	(IsMacResource): Remove unused variable `map_len'.
+	Replace `junk' variable with better solution.
+	(FT_Open_Face) [!FT_MACINTOSH]: Add conditional
+	FT_CONFIG_OPTION_MAC_FONTS.
+
+2003-12-08  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/autohint/ahhint.c (ah_hinter_hint_edges,
+	ah_hinter_align_strong_points): Add some casts.
+
+	* src/base/ftoutln.c (FT_OrientationExtremumRec): Change type
+	of `pos' to FT_Long.
+
+	* src/base/ftobjs.c (Mac_Read_POST_Resource,
+	Mac_Read_sfnt_Resource): Change type of `len' to FT_Long.
+
+	* src/type42/t42parse.c (t42_parse_dict): Add cast for `n_keywords'.
+
+2003-12-07  Werner Lemberg  <wl at gnu.org>
+
+	* docs/raster.txt: New file, taken from FreeType 1 and completely
+	revised.
+
+2003-12-04  Masatake YAMATO  <jet at gyve.org>
+
+	* src/type1/t1driver.c (Get_Interface): Remove FT_UNUSED for
+	t1_interface.  t1_interface is used.
+
+2003-11-27  David Turner  <david at freetype.org>
+
+	* src/pfr/pfrdrivr.c (pfr_get_metrics): Revert incorrect change of
+	2003-11-23: For PFR fonts, metrics->x_scale and metrics->y_scale are
+	the scaling values for outline units, not for metric units.
+
+2003-11-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftcalc.c, include/freetype/internal/ftcalc.h
+	(FT_MulDiv_No_Round): Surround code with `#ifdef
+	TT_CONFIG_OPTION_BYTECODE_INTERPRETER ... #endif'.
+
+2003-11-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftcalc.c (FT_MulDiv_No_Round): New function (32 and
+	64 bit version).
+	* include/freetype/internal/ftcalc.h: Updated.
+
+	* src/truetype/ttinterp.c (TT_MULDIV_NO_ROUND): New macro.
+	(TT_INT64): Removed.
+	(DO_DIV): Use TT_MULDIV_NO_ROUND.
+
+	* src/pfr/pfrdrivr.c (pfr_get_metrics): Directly use
+	metrics->x_scale and metrics->y_scale.
+
+2003-11-22  Rogier van Dalen  <R.C.van.Dalen at umail.leidenuniv.nl>
+
+	* src/truetype/ttinterp.c (CUR_Func_move_orig): New macro.
+	(Direct_Move_Orig, Direct_Move_Orig_X, Direct_Move_Orig_Y): New
+	functions.  Similar to Direct_Move, Direct_Move_X, and
+	Direct_Move_Y but without touching.
+	(Compute_Funcs): Use new functions.
+
+	(Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid,
+	Round_Up_To_Grid, Round_To_Double_Grid, Round_Super,
+	Round_Super_45): Fix rounding of value zero.
+
+	(DO_DIV): Don't use TT_MULDIV.
+
+	(Ins_SHC): This instruction actually touches the points.
+	(Ins_MSIRP): Fix undocumented behaviour.
+
+	* src/truetype/ttinterp.h (TT_ExecContextRec): Updated.
+
+2003-11-22  Werner Lemberg  <wl at gnu.org>
+
+	* docs/VERSION.DLL, docs/CHANGES: Updated.
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Make metrics->x_scale and
+	metrics->y_scale really precise.
+
+	(FT_Load_Glyph): Update computation of linearHoriAdvance and
+	linearVertAdvance.
+
+	* src/truetype/ttinterp.c (Update_Max): Use FT_REALLOC.
+
+2003-11-22  David Turner  <david at freetype.org>
+
+	* src/autofit/*: More updates.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 8.
+	* builds/unix/configure.ac (version_info): Set to 9:6:3.
+	* README: Updated.
+
+2003-11-13  John A. Boyd Jr.  <jaboydjr at netwalk.com>
+
+	* src/bdf/bdfdrivr.c (bdf_interpret_style), src/pcf/pcfread.c
+	(pcf_interpret_style): Replace spaces with dashes in properties
+	SETWIDTH_NAME and ADD_STYLE_NAME to simplify parsing.
+
+2003-11-11  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2003-11-11  John A. Boyd Jr.  <jaboydjr at netwalk.com>
+
+	Handle SETWIDTH_NAME and ADD_STYLE_NAME properties for BDF and PCF
+	fonts.
+
+	* src/bdf/bdfdrivr.c (bdf_interpret_style): New auxiliary function.
+	(BDF_Face_Init): Don't handle style properties but call
+	bdf_interpret_style.
+
+	* src/pcf/pcfread.c (pcf_interpret_style): New auxiliary function.
+	(pcf_load_font): Don't handle style properties but call
+	pcf_interpret_style.
+
+2003-11-07  Werner Lemberg  <wl at gnu.org>
+
+
+	* Version 2.1.7 released.
+	=========================
+
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 7.
+
+	* builds/unix/ft2unix.h: Fix comments.
+
+	* builds/unix/ftconfig.in: Synchronized with ANSI version.
+	Use `#undef' in templates as recommended in the autoconf
+	documentation.
+	Since real `#undef' lines don't survive during configuration, use
+	`/undef' instead; the postprocessing facility of the
+	AC_CONFIG_HEADERS autoconf macro converts them to `#undef'.
+
+	* builds/unix/install.mk (install): Install Unix version of
+	`ftconfig.h'.
+
+	* builds/unix/unix-cc.in (CFLAGS): Set FT_CONFIG_CONFIG_H macro
+	to include the correct `ftconfig.h' file.
+
+	* builds/unix/ft-munmap.m4 (FT_MUNMAP_DECL): Removed.
+	(FT_MUNMAP_PARAM): Updated syntax to autoconf 2.59.
+
+	* builds/unix/freetype2.m4: Updated syntax to autoconf 2.59.
+
+	* builds/unix/configure.ac: Use AC_CONFIG_HEADERS instead of
+	AC_CONFIG_HEADER to create ftconfig.h, and use second argument
+	to replace `/undef' with `#undef'.
+	Don't use FT_MUNMAP_DECL but AC_CHECK_DECLS to check for munmap.
+	Use AS_HELP_STRING in AC_ARG_WITH.
+	Update syntax to autoconf 2.59.
+
+	* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
+	--copy' from libtool 1.5.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.7.8.
+	* builds/unix/configure: Regenerated with autoconf 2.59.
+	* builds/unix/config.guess, builds/unix/config.sub: Updated from
+	`config' CVS module at subversions.gnu.org
+	* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
+	`texinfo' CVS module at subversions.gnu.org.
+
+	* builds/vms/ftconfig.h: Synchronized with ANSI version.
+
+	* docs/CUSTOMIZE: Fix documentation error.
+	* docs/CHANGES, docs/VERSION.DLL, docs/release: Updated.
+
+	* builds/freetype.mk (refdoc): Updated --title.
+
+2003-11-07  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.6 released.
+	=========================
+
+
+	* install: Removed.  Obsolete.
+
+2003-11-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfdriver.c: Include FT_SERVICE_SFNT_H.
+	(sfnt_service_sfnt_table): New service.
+	(sfnt_services): Updated.
+
+	* docs/license.txt: Reworded.
+
+2003-11-03  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/*: Add a guard to all public header files which
+	load FT_FREETYPE_H to reject freetype.h from FreeType 1.
+
+2003-11-02  Patrick Welche  <prlw1 at newn.cam.ac.uk>
+
+	* builds/unix/freetype2.m4, builds/unix/ft-munmap.m4: Protect
+	first argument of AC_DEFUN with brackets to avoid possible
+	expansion.
+
+2003-11-02  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/cache/ftcglyph.h: Don't include stddef.h.
+
+	* include/freetype/freetype.h: Fix check for ft2build.h.
+
+2003-11-01  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h: Check that ft2build.h has been
+	loaded first.
+
+	* src/base/fttype1.c (FT_Get_PS_Font_Info): Fix incorrectly applied
+	patch.
+
+2003-10-31  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/base/fttype1.c (FT_Get_PS_Font_Info, FT_Has_PS_Glyph_Names):
+	Fix parameter order in calls to FT_FACE_FIND_SERVICE.
+
+2003-10-31  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftserv.h
+	(FT_SERVICE_POSTSCRIPT_NAMES_H): Removed.  Unused.
+
+	* src/type42/t42drivr.c (t42_services): Updated.
+
+2003-10-29  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/bdftypes.h: Removed.  Obsolete.
+	* src/base/ftbdf.c: Updated.
+
+	* include/freetype/internal/cfftypes.h: Moved to...
+	* src/cff/cfftypes.h: This place since no other module needs to
+	know about those types.
+
+	* include/freetype/internal/t42types.h: Moved to...
+	* src/type42/t42types.h: This place since no other module needs to
+	know about those types.
+
+	* include/freetype/internal/services/svbdf.h: Include FT_BDF_H.
+
+	* include/freetype/internal/services/svpsname.h: Renamed to...
+	* include/freetype/internal/services/svpscmap.h: This.
+	Updated `FT_Service_PsNames' -> `FT_Service_PsCMaps' and
+	`POSTSCRIPT_NAMES' -> `POSTSCRIPT_CMAPS' everywhere.
+
+	* include/freetype/internal/services/svpsinfo.h: New file, providing
+	PostScript info service.
+
+	* include/freetype/internal/ftserv.h (FT_SERVICE_POSTSCRIPT_CMAPS_H,
+	FT_SERVICE_POSTSCRIPT_INFO_H): New macros for svpscmap.h and
+	svpsinfo.h.
+	* include/freetype/internal/internal.h (FT_INTERNAL_TYPE42_TYPES_H,
+	FT_INTERNAL_CFF_TYPES_H, FT_INTERNAL_BDF_TYPES_H): Removed.
+
+	* src/base/fttype1.c: Don't include FT_INTERNAL_TYPE1_TYPES_H and
+	FT_INTERNAL_TYPE42_TYPES_H but FT_INTERNAL_SERVICE_H and
+	FT_SERVICE_POSTSCRIPT_INFO_H.
+	(FT_Get_PS_Font_Info, FT_Has_PS_Glyph_Names): Use new
+	POSTSCRIPT_INFO service.
+
+	* src/cff/cffdrivr.c: Include FT_SERVICE_POSTSCRIPT_INFO_H.
+	(cff_ps_has_glyph_names): New function.
+	(cff_service_ps_info): New service.
+	(cff_services): Updated.
+
+	* src/cff/cffload.h, src/cff/cffobjs.h, src/cff/cffparse.h: Don't
+	include FT_INTERNAL_CFF_TYPES_H but cfftypes.h directly.
+
+	* src/cid/cidriver.c: Include FT_SERVICE_POSTSCRIPT_INFO_H.
+	(cid_ps_get_font_info): New function.
+	(cid_service_ps_info): New service.
+	(cid_services): Updated.
+
+	* src/type1/t1driver.c: Include FT_SERVICE_POSTSCRIPT_INFO_H.
+	(t1_ps_get_font_info, t1_ps_has_glyph_names): New functions.
+	(t1_service_ps_info): New service.
+	(t1_services): Updated.
+
+	* src/type42/t42drivr.c: Include FT_SERVICE_POSTSCRIPT_INFO_H.
+	(t42_ps_get_font_info, t42_ps_has_glyph_names): New functions.
+	(t42_service_ps_info): New service.
+
+	* src/type42/t42objs.h: Don't include FT_INTERNAL_TYPE42_TYPES_H
+	but t42types.h directly.
+
+	* src/psnames/psmodule.c (psnames_interface, psnames_services):
+	Renamed to...
+	(pscmaps_interface, pscmaps_services): This.
+	Updated all users.
+
+
+	* src/gzip/infblock.c (inflate_blocks): Remove compiler warning.
+
+2003-10-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_encoding): Handle `/Encoding [ ... ]'.
+
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Test whether `eexec'
+	is real.
+
+	* src/type42/t42parse.c (t42_parse_encoding): Improve boundary
+	checking while parsing.
+
+	* docs/CHANGES: Updated.
+
+2003-10-21  Josselin Mouette  <joss at debian.org>
+
+	* include/freetype/internal/t1types.h (T1_FontRec): `paint_type'
+	and `stroke_width' aren't pointers.
+
+	* src/type42/t42objs.c (T42_Face_Done), src/type1/t1objs.c
+	(T1_Face_Done): Don't free `paint_type' and `stroke_width'.
+
+2003-10-20  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/winfonts/winfnt.c (fnt_cmap_class): Fix position of `const'.
+
+2003-10-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph): Patch from
+	2003-08-18 introduced a severe bug (FT_Render_Glyph was called
+	twice under some circumstances, causing strange results).  This
+	is fixed now by clearing the FT_LOAD_RENDER bit of `load_flags'.
+
+	* src/base/ftpfr.c (FT_Get_PFR_Metrics): Initialize `error'.
+	* src/psaux/psobjs.c (ps_tobytes): Initialize `n'.
+	* src/type42/t42parse.c (t42_parse_sfnts): Initialize `string_size'.
+
+2003-10-16  Werner Lemberg  <wl at gnu.org>
+
+	Completely revised Type 42 parser.  It now handles both fonts
+	produced with ttftot42 (tested version 0.3.1) and
+	TrueTypeToType42.ps (tested version May 2001; it is necessary to
+	fix the broken header comment to be `%!PS-TrueTypeFont...').
+
+	* src/type42/t42objs.c (T42_GlyphSlot_Load): Change fourth
+	parameter to `FT_UInt'.
+	* src/type42/t42objs.h: Updated.
+
+	* src/type42/t42parse.h (T42_ParserRec): Change type of `in_memory'
+	to FT_Bool.
+	(T42_Loader): Change type of `num_chars' and `num_glyphs' to
+	FT_UInt.
+	Add `swap_table' element.
+	* src/type42/t42parse.c (T42_KEYWORD_COUNT, T1_ToFixed,
+	T1_ToCoordArray, T1_ToTokenArray): Removed.
+	(T1_ToBytes): New macro.
+	(t42_is_alpha, t42_hexval): Removed.
+	(t42_is_space): Handle `\0'.
+	(t42_parse_encoding): Updated to use new PostScript parser routines
+	from psaux.
+	Handle `/Encoding [ ... ]' also.
+	(T42_Load_Status): New enumeration.
+	(t42_parse_sfnts): Updated to use new PostScript parser routines
+	from psaux.
+	(t42_parse_charstrings): Updated to use new PostScript parser
+	routines from psaux.
+	Handle `/CharStrings << ... >>' also.
+	Don't expect that /.notdef is the first element in dictionary.  Copy
+	code from type1 module to handle this.
+	(t42_parse_dict): Updated to use new PostScript parser routines
+	from psaux.
+	Remove code for synthetic fonts (which can't occur in Type 42
+	fonts).
+	(t42_loader_done): Release `swap_table'.
+
+	* src/psaux/psobjs.c (skip_string): Increase `cur' properly.
+
+	* src/type1/t1load.c (parse_charstrings): Make test for `.notdef'
+	faster.
+
+2003-10-15  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/autohint/ahglobal.c (blue_chars), src/winfonts/winfnt.c
+	(fnt_cmap_class_rec, fnt_cmap_class), src/bdf/bdflib.c (empty,
+	_num_bdf_properties), src/gzip/infutil.c (inflate_mask),
+	src/gzip/inffixed.h (fixed_bl, fixed_bd, fixed_tl, fixed_td),
+	src/gzip/inftrees.h (inflate_trees_fixed), src/gzip/inftrees.c
+	(inflate_trees_fixed): Decorate with more `const' to avoid
+	writable global variables which are disallowed on ARM.
+
+2003-10-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_font_matrix, parse_charstrings): Remove
+	code specially for synthetic fonts; this is handled elsewhere.
+	(parse_encoding): Remove code specially for synthetic fonts; this is
+	handled elsewhere.
+	Improve boundary checking while parsing.
+	(parse_dict): Improve boundary checking while parsing.
+	Use ft_memcmp to simplify code.
+
+2003-10-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_subrs, parse_dict): Handle synthetic
+	fonts properly.
+	(parse_charstrings): Copy correct number of characters into
+	`name_table'.
+
+2003-10-06  Werner Lemberg  <wl at gnu.org>
+
+	Heavy modification of the PS parser to handle comments and strings
+	correctly.  This doesn't slow down the loading of PS fonts
+	significantly since charstrings aren't affected.
+
+	* include/freetype/config/ftstdlib.h (ft_xdigit): Renamed to...
+	(ft_isxdigit): This.  Updated all callers.
+	(ft_isdigit): New alias to `isdigit'.
+
+	* include/freetype/internal/psaux.h (PS_Parser_FuncsRec): Renamed
+	`skip_alpha' to `skip_PS_token'.
+	Add parameter to `to_bytes' and change some argument types.
+
+	* src/psaux/psauxmod.c (ps_parser_funcs): Updated.
+	* src/psaux/psobjs.c (ft_char_table): New array to map character
+	codes (ASCII and EBCDIC) of digits to numbers.
+	(OP): New auxiliary macro holding either `>=' or `<' depending on
+	the character encoding.
+	(skip_comment): New function.
+	(skip_spaces): Use it.
+	(skip_alpha): Removed.
+	(skip_literal_string, skip_string): New functions.
+	(ps_parser_skip_PS_token): New function.  This is a better
+	replacement of...
+	(ps_parser_skip_alpha): Removed.
+	(ps_parser_to_token, ps_parser_to_token_array): Updated.
+	(T1Radix): Rewritten, using `ft_char_table'.
+	(t1_toint): Renamed to...
+	(ps_toint): This.  Update all callers.
+	Use `ft_char_table'.
+	(ps_tobytes): Add parameter to handle delimiters and change some
+	argument types.
+	Use `ft_char_table'.
+	(t1_tofixed): Renamed to...
+	(ps_tofixed): This.  Update all callers.
+	Use `ft_char_table'.
+	(t1_tocoordarray): Renamed and updated to...
+	(ps_tocoordarray): This.  Update all callers.
+	(t1_tofixedarray): Renamed and updated to...
+	(ps_tofixedarray): This.  Update all callers.
+	(t1_tobool): Renamed to...
+	(ps_tobool): This.  Update all callers.
+	(ps_parser_load_field): Updated.
+	(ps_parser_load_field_table): Use `T1_MAX_TABLE_ELEMENTS'
+	everywhere.
+	(ps_parser_to_int, ps_parser_to_fixed, ps_parser_to_coord_array,
+	ps_parser_to_fixed_array): Skip spaces.  Updated.
+	(ps_parser_to_bytes): Add parameter to handle delimiters and change
+	some argument types.  Updated.
+	* src/psaux/psobjs.h: Updated.
+
+	* src/cid/cidload.c (cid_parse_dict): Updated.
+	* src/cid/cidparse.c (cid_parser_new): Check whether the `StartData'
+	token was really found.
+	* src/cid/cidparse.h (cid_parser_skip_alpha): Updated and renamed
+	to...
+	(cid_parser_skip_PS_token): This.
+
+	* src/type1/t1parse.h (T1_ParserRec): Use `FT_Bool' for boolean
+	fields.
+	(T1_Skip_Alpha): Replaced with...
+	(T1_Skip_PS_Token): This new macro.
+	* src/type1/t1parse.c (hexa_value): Removed.
+	(T1_Get_Private_Dict): Use `ft_isxdigit' and
+	`psaux->ps_parser_funcs_to_bytes' for handling ASCII hexadecimal
+	encoding.
+	After decrypting, replace the four random bytes at the beginning
+	with whitespace.
+	* src/type1/t1load.c (t1_allocate_blend): Use proper error values.
+	(parser_blend_design_positions, parse_blend_design_map,
+	parse_weight_vector): Updated.
+	(is_space): Handle `\f' also.
+	(is_name_char): Removed.
+	(read_binary_data): Updated.
+	(parse_encoding): Use `ft_isdigit'.
+	Updated.
+	(parse_subrs): Updated.
+	(TABLE_EXTEND): New macro.
+	(parse_charstrings): Updated.
+	Provide a workaround for buggy fonts which have more entries in the
+	/CharStrings dictionary then expected; the function now adds some
+	slots and skips entries which still exceed the new limit.
+	(parse_dict): Updated.
+	Terminate on the token `closefile'.
+
+	* src/type42/t42parse.c (T1_Skip_Alpha): Replaced with...
+	(T1_Skip_PS_Token): This new macro.  Updated all callers.
+	(t42_parse_encoding): Use `ft_isdigit'.
+
+
+	* src/base/ftmm.c (ft_face_get_mm_service): Return FT_Err_Ok if
+	success.
+
+2003-10-05  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftmodule.h: Renamed to...
+	* include/freetype/ftmodapi.h: This to avoid duplicate file names.
+	* include/freetype/config/ftheader.h (FT_MODULE_H): Updated.
+
+2003-10-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftoutln.c (FT_OrientationExtremumRec,
+	FT_Outline_Get_Orientation): Trivial typo fixes to make it compile.
+
+2003-10-02  Markus F.X.J. Oberhumer  <markus at oberhumer.com>
+
+	* src/winfonts/winfnt.c (FT_WinFNT_HeaderRec): `color_table_offset'
+	has four bytes, not two.
+	Fix all users.
+	(fnt_font_load, FNT_Load_Glyph): Add more font validity tests.
+
+2003-10-01  David Turner  <david at freetype.org>
+
+	* src/autofit/*: Adding first source files of the new multi-script
+	`auto-fitter'.
+
+	* include/freetype/ftoutln.h (FT_Orientation): New enumeration.
+	(FT_Outline_Get_Orientation): New declaration.
+
+	* src/base/ftoutln.c (FT_OrientationExtremumRec): New structure.
+	(ft_orientation_extremum_compute): New auxiliary function.
+	(FT_Outline_Get_Orientation): New function to compute the fill
+	orientation of a given glyph outline.
+
+	* include/freetype/internal/ftserv.h (FT_FACE_LOOKUP_SERVICE): Fixed
+	trivial bug which could crash the font engine when a cached service
+	pointer was retrieved.
+
+2003-09-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidload.c (cid_parse_dict): Skip token if no keyword is
+	found.
+
+	* src/type1/t1parse.c (IS_T1_WHITESPACE, IS_T1_LINESPACE,
+	IS_T1_SPACE): Removed.
+	(PFB_Tag): Removed.
+	(read_pfb_tag): Don't use PFB_Tag.
+
+	* src/type42/t42parse.c (t42_is_space): Handle `\f' also.
+	(t42_parse_encoding): Handle synthetic fonts.
+
+2003-09-29  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/t1types.h: Don't include
+	FT_INTERNAL_OBJECTS_H but FT_INTERNAL_SERVICE_H.
+	* src/truetype/ttobjs.c: Don't include
+	FT_SERVICE_POSTSCRIPT_NAMES_H.
+
+2003-09-29  David Turner  <david at freetype.org>
+
+	Added new service to handle glyph name dictionaries, replacing the
+	old internal header named `psnames.h' by `services/svpsname.h'.
+	Note that this is different from `services/svpostnm.h' which only
+	handles the retrieval of PostScript font names for a given face.
+	(Should we merge these two services into a single header?)
+
+	* include/freetype/internal/psnames.h: Removed.  Most of its
+	contents is moved to...
+	* include/freetype/internal/services/svpsname.h: New file.
+
+	* include/freetype/internal/services/svpostnm.h
+	(FT_SERVICE_ID_POSTSCRIPT_NAME): Replaced with...
+	(FT_SERVICE_ID_POSTSCRIPT_FONT_NAME): New macro.
+	(PsName): Service named changed to...
+	(PsFontName): This.
+	Updated `FT_Service_PsName' -> `FT_Service_PsFontName' and
+	`POSTSCRIPT_NAME' -> `POSTSCRIPT_FONT_NAME' everywhere.
+
+	* include/freetype/internal/internal.h
+	(FT_INTERNAL_POSTSCRIPT_NAMES_H): Removed.
+	* include/freetype/internal/psaux.h: Include
+	FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(T1_DecoderRec): Updated type of `psnames'.
+	* include/freetype/internal/t1types.h: Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	Include FT_INTERNAL_OBJECTS_H.
+	* include/freetype/internal/t42types.h: Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H.
+	* include/freetype/internal/tttypes.h (TT_FaceRec): Updated.
+
+	* include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE): Changed
+	order of parameters.  All callers updated.
+	(FT_FACE_FIND_GLOBAL_SERVICE): New macro to look up a service
+	globally, checking all modules.
+	(FT_ServiceCacheRec): Updated.
+	(FT_SERVICE_POSTSCRIPT_NAMES_H): New macro for accessing
+	`svpsname.h'.
+
+	* include/freetype/internal/ftobjs.h, src/base/ftobjs.c
+	(ft_module_get_service): New function.
+
+	* src/cff/cffdrivr.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H
+	but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(cff_get_glyph_name, cff_get_name_index): Use new POSTSCRIPT_NAMES
+	service.
+	* src/cff/cffcmap.c (cff_cmap_unicode_init): Updated.
+	* src/cff/cffload.c, src/cff/cffload.h:  Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(cff_index_get_sid_string): Updated.
+	* src/cff/cffobjs.c:  Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H
+	but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(cff_face_init): Use new POSTSCRIPT_NAMES service.
+	* src/cff/cffobjs.h:  Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H
+	but FT_SERVICE_POSTSCRIPT_NAMES_H.
+
+	* src/cid/cidobjs.c:  Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H
+	but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(cid_face_init): Use new POSTSCRIPT_NAMES service.
+	* src/cid/cidriver.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H.
+
+	* src/psaux/t1cmap.c (t1_cmap_std_init, t1_cmap_unicode_init): Use
+	new POSTSCRIPT_NAMES service.
+	* src/psaux/t1decode.h (t1_lookup_glyph_by_stdcharcode,
+	t1_decode_init): Use new POSTSCRIPT_NAMES service.
+	* src/psaux/t1cmap.h, src/psaux/t1decode.h: Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H.
+
+	* src/psnames/psmodule.c:  Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(ps_build_unicode_table): Renamed to...
+	(ps_unicodes_init): This.
+	(ps_lookup_unicode): Renamed to...
+	(ps_unicodes_char_index): This.
+	(ps_next_unicode): Renamed to...
+	(ps_unicodes_char_next): This.
+	(psnames_interface): Updated.
+	(psnames_services): New services list.
+	(psnames_get_service): New function.
+	(psnames_module_class): Updated.
+
+	* src/sfnt/sfobjs.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H
+	but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(sfnt_init_face): Use new POSTSCRIPT_NAMES service.
+	* src/sfnt/ttpost.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H
+	but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(tt_face_get_ps_name): Updated.
+
+	* src/truetype/ttobjs.c:  Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+
+	* src/type1/t1driver.c:  Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	* src/type1/t1objs.c:  Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+	(T1_Face_Init): Use new POSTSCRIPT_NAMES service.
+
+	* src/type42/t42drivr.c (t42_get_ps_name): Renamed to...
+	(t42_get_ps_font_name): This.
+	(t42_service_ps_name): Renamed to...
+	(t42_service_ps_font_name): This.
+	(t42_services): Updated.
+	* src/type42/t42objs.c (T42_Face_Init): Use new POSTSCRIPT_NAMES
+	service.
+	* src/type42/t42objs.h:  Don't include
+	FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H.
+
+
+	* src/base/ftglyph.c (FT_Get_Glyph): Don't access `slot' before
+	testing its validity.  Reported by Henry Maddocks
+	<maddocks at metservice.com>.
+
+2003-09-21  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE):
+	Fix compilation warning (s/pptr/Pptr/).
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_PFR_H,
+	FT_INTERNAL_FNT_TYPES_H): Removed.
+
+2003-09-21  David Turner  <david at freetype.org>
+
+	Migrating the PFR and WINFNT drivers to the new service-based
+	internal API.
+
+	* include/freetype/internal/fnttypes.h: Removed.  Most of its data
+	are moved to winfnt.h and...
+	* include/freetype/internal/services/svwinfnt.h: New file.
+
+	* include/freetype/internal/pfr.h: Removed.  Most of its data are
+	moved to...
+	* include/freetype/internal/services/svpfr.h: New file.
+
+	* include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE,
+	FT_FACE_LOOKUP_SERVICE): Simplify fix of 2003-09-16 by removing
+	pointer type argument.
+	Updated all callers.
+	Update macro names of services header files.
+
+	* src/base/ftobjs.c (FT_Get_Name_Index): Simplified code.
+
+	* src/base/ftpfr.c: Include FT_SERVICE_PFR_H instead of
+	FT_INTERNAL_PFR_H.
+	(ft_pfr_check, FT_Get_PFR_Metrics, FT_Get_PFR_Kerning,
+	FT_Get_PFR_Advance): Use services provided in `PFR_METRICS'.
+
+	* src/base/ftwinfnt.c: Include FT_SERVICE_WINFNT_H instead of
+	FT_INTERNAL_FNT_TYPES_H.
+	(FT_Get_WinFNT_Header): Use service provided in `WINFNT'.
+
+	* src/pfr/pfrdrivr.c: Include FT_SERVICE_PFR_H and
+	FT_SERVICE_XFREE86_NAME_H instead of FT_INTERNAL_PFR_H.
+	(pfr_service_bdf): Updated.
+	(pfr_services): New services list.
+	(pfr_get_service): New function.
+	(pfr_driver_class): Updated.
+
+	* src/winfonts/winfnt.c: Include FT_SERVICE_WINFNT_H and
+	FT_SERVICE_XFREE86_NAME_H instead of FT_INTERNAL_FNT_TYPES_H.
+	(winfnt_get_header, winfnt_get_service): New functions.
+	(winfnt_service_rec): New structure providing WINFNT services.
+	(winfnt_services): New services list.
+	(winfnt_driver_class): Updated.
+	* src/winfonts/winfnt.h: Add most of the removed fnttypes.h data.
+
+	* src/sfnt/sfdriver.c (sfnt_service_ps_name): Fix typo.
+
+	* src/type1/t1driver.c (t1_service_ps_name): Fix typo.
+
+	* src/cff/cffobjs.c, src/cid/cidobjs.c, src/pfr/pfrsbit.c,
+	src/psaux/psobjs.c, src/sfnt/sfobjs.c, src/truetype/ttobjs.c,
+	src/type1/t1objs.c, src/type42/t42objs.c: Removing various compiler
+	warnings.
+
+2003-09-19  David Bevan  <dbevan at emtex.com>
+
+	* src/type1/t1parse.c (pfb_tag_fields): Removed.
+	(read_pfb_tag): Fix code so that it doesn't fail on end-of-file
+	indicator (0x8003).
+	* docs/CHANGES: Updated.
+
+2003-09-16  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE,
+	FT_FACE_LOOKUP_SERVICE): Add parameter to pass pointer type.
+	Ugly, I know, but this is needed for compilation with C++ --
+	maybe someone knows a better solution?
+	Updated all callers.
+
+	* src/base/ftobjs.c (FT_Get_Name_Index, FT_Get_Glyph_Name): Remove
+	C++ compiler warnings.
+
+	* src/base/ftbdf.c (FT_Get_BDF_Charset_ID, FT_Get_BDF_Property):
+	Fix order of arguments passed to FT_FACE_FIND_SERVICE.
+
+2003-09-15  Werner Lemberg  <wl at gnu.org>
+
+	Avoid header files with identical names.
+
+	* include/freetype/internal/services/bdf.h: Renamed to...
+	* include/freetype/internal/services/svbdf.h: This.
+	Add copyright notice.
+	* include/freetype/internal/services/glyfdict.h: Renamed to...
+	* include/freetype/internal/services/svgldict.h: This.
+	Add copyright notice.
+	* include/freetype/internal/services/multmast.h: Renamed to...
+	* include/freetype/internal/services/svmm.h: This.
+	Add copyright notice.
+	Add FT_BEGIN_HEADER and FT_END_HEADER.
+	* include/freetype/internal/services/sfnt.h: Renamed to...
+	* include/freetype/internal/services/svsfnt.h: This.
+	Add copyright notice.
+	* include/freetype/internal/services/postname.h: Renamed to...
+	* include/freetype/internal/services/svpostnm.h: This.
+	Add copyright notice.
+	* include/freetype/internal/services/xf86name.h: Renamed to...
+	* include/freetype/internal/services/svxf86nm.h: This.
+	Add copyright notice.
+
+	* include/freetype/internal/ftserv.h: Add FT_BEGIN_HEADER and
+	FT_END_HEADER.
+	Add copyright notice.
+	Update macro names of services header files.
+
+	* builds/freetype.mk (SERVICES_DIR): New variable.
+	(BASE_H): Add services header files.
+
+2003-09-11  Werner Lemberg  <wl at gnu.org>
+
+	* builds/toplevel.mk (distclean): Remove `builds/unix/freetype2.pc'.
+
+	* src/cff/cffdrivr.c: Don't load headers twice.
+
+	* include/freetype/internal/ftserv.h (FT_SERVICE_SFNT_H): New macro.
+	* src/base/ftobjs.c: Include FT_SERVICE_SFNT_H.
+
+	* src/cff/cffcmap.c: Include `cfferrs.h'.
+	* src/pfr/pfrdrivr.c: Include `pfrerror.h'.
+	* src/sfnt/sfdriver.c: Include `sferrors.h'.
+	* src/psaux/psobjs.h: Add declaration for `ps_parser_to_bytes'.
+
+2003-09-11  David Turner  <david at freetype.org>
+
+	Introducing the concept of `module services'.  This is the first
+	step towards a massive simplification of the engine's internals, in
+	order to get rid of various numbers of hacks.
+
+	Note that these changes will break source & binary compatibility for
+	authors of external font drivers.
+
+	* include/freetype/config/ftconfig.h (FT_BEGIN_STMNT, FT_END_STMNT,
+	FT_DUMMY_STMNT): New macros.
+
+	* include/freetype/internal/ftserv.h: New file, containing the new
+	structures and macros to provide `services'.
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_EXTENSION_H,
+	FT_INTERNAL_EXTEND_H, FT_INTERNAL_HASH_H, FT_INTERNAL_OBJECT_H):
+	Removed, obsolete.
+	(FT_INTERNAL_SERVICE_H): New macro for `ftserv.h'.
+
+	* include/freetype/internal/services/bdf.h,
+	include/freetype/internal/services/glyfdict.h,
+	include/freetype/internal/services/postname.h,
+	include/freetype/internal/services/xf86name.h: New files.
+
+	* include/freetype/ftmm.h (FT_Get_MM_Func, FT_Set_MM_Design_Func,
+	FT_Set_MM_Blend_Func): Function pointers moved (in modified form)
+	to...
+	* include/freetype/internal/services/multmast.h: New file.
+
+	* include/freetype/internal/sfnt.h (SFNT_Interface): `get_interface'
+	is now of type `FT_Module_Requester'.
+	(SFNT_Get_Interface_Func, SFNT_Load_Table_Func): Function pointers
+	moved (in modified form) to...
+	* include/freetype/internal/services/sfnt.h: New file.
+
+	* include/freetype/tttables.h (FT_Get_Sfnt_Table_Func): Function
+	pointer moved (in modified form) to `services/sfnt.h'.
+
+	* include/freetype/ftmodule.h (FT_Module_Interface): Make it a
+	a typedef to `FT_Pointer'.
+
+	* include/freetype/internal/tttypes.h (TT_FaceRec): Add
+	`postscript_name'.
+	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec): Remove
+	`postscript_name'.
+	Add `services' element.
+	(FT_LibraryRec): Remove `meta_class'.
+
+	* src/base/ftbdf.c: Include FT_SERVICE_BDF_H.
+	(test_font_type): Removed.
+	(FT_Get_BDF_Charset_ID, FT_Get_BDF_Property): Use services
+	provided in `FT_SERVICE_ID_BDF'.
+
+	* src/base/ftmm.c: Include FT_SERVICE_MULTIPLE_MASTERS_H.
+	(ft_face_get_mm_service): New auxiliary function to get services
+	from `FT_SERVICE_ID_MULTI_MASTERS'.
+	(FT_Get_Multi_Master, FT_Set_MM_Design_Coordinates,
+	FT_Set_MM_Blend_Coordinates): Use `ft_face_get_mm_service'.
+
+	* src/base/ftobjs.c: Include FT_SERVICE_POSTSCRIPT_NAME_H and
+	FT_SERVICE_GLYPH_DICT_H.
+	(ft_service_list_lookup): New function to get a specific service.
+	(destroy_face): Updated.
+	(Mac_Read_POST_Resource): Simplify some code.
+	(IsMacResource): Fix warnings.
+	(FT_Get_Name_Index, FT_Get_Glyph_Name): Use services provided in
+	`FT_SERVICE_ID_GLYPH_DICT'.
+	(FT_Get_Postscript_Name): Use service provided in
+	`FT_SERVICE_ID_POSTSCRIPT_NAME'.
+	(FT_Get_Sfnt_Table, FT_Load_Sfnt_Table): Use services provided in
+	`FT_SERVICE_ID_SFNT_TABLE'.
+
+	* src/base/ftxf86.c: Include FT_SERVICE_XFREE86_NAME_H.
+	(FT_Get_X11_Font_Format): Use service provided in
+	`FT_SERVICE_ID_XF86_NAME'.
+
+	* src/bdf/bdfdrivr.c: Include FT_SERVICE_BDF_H and
+	FT_SERVICE_XFREE86_NAME_H.
+	(bdf_get_charset_id): New function.
+	(bdf_service_bdf): New structure providing BDF services.
+	(bdf_services): New services list.
+	(bdf_driver_requester): Use `ft_service_list_lookup'.
+
+	* src/cff/cffdrivr.c: Include FT_SERVICE_XFREE86_NAME_H and
+	FT_SERVICE_GLYPH_DICT_H.
+	(cff_service_glyph_dict): New structure providing CFF services.
+	(cff_services): New services list.
+	(cff_get_interface): Use `ft_service_list_lookup'.
+
+	* src/cid/cidriver.c: Include FT_SERVICE_POSTSCRIPT_NAME_H and
+	FT_SERVICE_XFREE86_NAME_H.
+	(cid_service_ps_name): New structure providing CID services.
+	(cid_services): New services list.
+	(cid_get_interface): Use `ft_service_list_lookup'.
+
+	* src/pcf/pcfdrivr.c: Include FT_SERVICE_BDF_H and
+	FT_SERVICE_XFREE86_NAME_H.
+	(pcf_service_bdf): New structure providing PCF services.
+	(pcf_services): New services list.
+	(pcf_driver_requester): Use `ft_service_list_lookup'.
+
+	* src/sfnt/sfdriver.c: Include FT_SERVICE_GLYPH_DICT_H and
+	FT_SERVICE_POSTSCRIPT_NAME_H.
+	(get_sfnt_glyph_name): Renamed to...
+	(sfnt_get_glyph_name): This.
+	(get_sfnt_postscript_name): Renamed to...
+	(sfnt_get_ps_name): This.
+	Updated.
+	(sfnt_service_glyph_dict, sfnt_service_ps_name): New structures
+	providing services.
+	(sfnt_services): New services list.
+	(sfnt_get_interface): Use `ft_service_list_lookup'.
+
+	* src/truetype/ttdriver.c: Include FT_SERVICE_XFREE86_NAME_H.
+	(tt_services): New services list.
+	(tt_get_interface): Use `ft_service_list_lookup'.
+
+	* src/type1/t1driver.c: Include FT_SERVICE_MULTIPLE_MASTERS_H,
+	FT_SERVICE_GLYPH_DICT_H, FT_SERVICE_XFREE86_NAME_H, and
+	FT_SERVICE_POSTSCRIPT_NAME_H.
+	(t1_service_glyph_dict, t1_service_ps_name,
+	t1_service_multi_masters): New structures providing Type 1 services.
+	(t1_services): New services list.
+	(Get_Interface): Use `ft_service_list_lookup'.
+
+	* src/type42/t42drivr.c: Include FT_SERVICE_XFREE86_NAME_H,
+	FT_SERVICE_GLYPH_DICT_H, and FT_SERVICE_POSTSCRIPT_NAME_H.
+	(t42_service_glyph_dict, t42_service_ps_name): New structures
+	providing Type 42 services.
+	(t42_services): New services list.
+	(T42_Get_Interface): Use `ft_service_list_lookup'.
+
+
+	* README, docs/CHANGES: Updating version numbers for 2.1.6, and
+	removing obsolete warnings in the documentation.
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.
+	* builds/unix/configure.ac (version_info): Set to 9:5:3.
+	* builds/unix/configure: Regenerated.
+
+	* include/freetype/internal/ftcore.h,
+	include/freetype/internal/ftexcept.h,
+	include/freetype/internal/fthash.h,
+	include/freetype/internal/ftobject.h: Removed.  Obsolete.
+
+2003-09-09  David Turner  <david at freetype.org>
+
+	Fixing PFR kerning support.  The tables within the font file contain
+	(charcode,charcode) kerning pairs, we need to convert them to
+	(gindex,gindex).
+
+	* src/base/ftpfr.c (ft_pfr_check): Fix serious typo.
+	* src/pfr/pfrload.c: Remove dead code.
+	(pfr_get_gindex, pfr_compare_kern_pairs, pfr_sort_kerning_pairs):
+	New functions.
+	(pfr_phy_font_done): Free `kern_pairs'.
+	(pfr_phy_font_load): Call `pfr_sort_kerning_pairs'.
+	* src/pfr/pfrobjs.c (pfr_face_get_kerning): Fix kerning extraction.
+	* src/pfr/pfrtypes.h (PFR_KERN_PAIR_INDEX): New macro.
+	(PFR_KernPairRec): Make `kerning' an FT_Int.
+	(PFR_PhyFontRec): New element `kern_pairs'.
+	(PFR_KernFlags): Values of PFR_KERN_2BYTE_CHAR and
+	PFR_KERN_2BYTE_ADJ were erroneously reversed.
+
+	* include/freetype/ftoption.h: Commenting out the macro
+	TT_CONFIG_OPTION_BYTECODE_INTERPRETER.
+
+2003-09-02  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.5 released.
+	=========================
+
+
+2003-08-31  Manish Singh  <yosh at gimp.org>
+
+	* src/bdf/bdflib.c (_bdf_readstream): Don't use FT_MEM_COPY but
+	FT_MEM_MOVE.
+
+2003-08-30  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FT_ENCODING_SJIS, FT_ENCODING_GB2312,
+	FT_ENCODING_BIG5, FT_ENCODING_WANSUNG, FT_ENCODING_JOHAB): New
+	enumerations of FT_Encoding.  The FT_ENCODING_MS_* variants except
+	FT_ENCODING_MS_SYMBOL are now deprecated.
+	Updated all users.
+	* docs/CHANGES: Document it.
+
+2003-08-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Accept lowercase characters
+	for spacing.
+
+2003-08-27  Mike FABIAN  <mfabian at suse.de>
+
+	* src/pcf/pcfread.c (pcf_load_font), src/bdf/bdfdrivr.c
+	(BDF_Face_Init): Accept lowercase characters for slant and weight.
+
+2003-08-18  David Turner  <david at freetype.org>
+
+	* include/freetype/config/ftoption.h: Disabling TrueType bytecode
+	interpreter until the UNPATENTED_HINTING works as advertised.
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph): Use `|' for
+	setting `load_flags'.
+
+	* Jamfile: Adding the `refdoc' target to the Jamfile in order to
+	build the API Reference in `docs/reference' automatically.
+
+	* include/freetype/t1tables.h (PS_FontInfoRec), src/cid/cidtoken.h,
+	src/type1/t1tokens.h, src/type42/t42parse.c: Resetting the types of
+	`italic_angle', `underline_position', and `underline_thickness' to
+	their previous values (i.e., long, short, and ushort) in order to
+	avoid breaking binary compatibility.
+
+	* include/freetype/ttunpat.h: Fixing documentation comment.
+
+	* include/freetype/config/ftoption.h, devel/ftoption.h
+	(TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING): Replaced with...
+	(TT_CONFIG_OPTION_UNPATENTED_HINTING): This.  Updated all users.
+	(TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING): Removed.
+
+	* include/freetype/internal/ftobjs.h (FT_DEBUG_HOOK_TYPE1): Removed.
+	(FT_DEBUG_HOOK_UNPATENTED_HINTING): New macro.  Use this with
+	`FT_Set_Debug_Hook' to get the same effect as the removed
+	TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING.
+
+	* src/truetype/ttobjs.c (tt_face_init): Use
+	`FT_DEBUG_HOOK_UNPATENTED_HINTING'.
+
+2003-08-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1gload.c (T1_Load_Glyph), src/cff/cffgload.c
+	(cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph): Fix
+	previous change.
+
+2003-08-05  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1gload.c (T1_Load_Glyph), src/cff/cffgload.c
+	(cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph): Apply
+	font matrix to advance width also.
+	* docs/CHANGES: Updated.
+
+2003-07-26  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.ac (version_info): Set to 9:4:3.
+	* builds/unix/configure: Updated.
+	* docs/CHANGES, docs/VERSION.DLL: Updated.
+
+	* include/freetype/freetype.h (FT_GlyphSlot): Change 2003-06-16
+	also breaks binary compatibility.  Reintroduce an unsigned integer
+	at the old position of `flags' called `reserved'.
+
+2003-07-25  Werner Lemberg  <wl at gnu.org>
+
+	Make API reference valid HTML 4.01 transitional.
+
+	* src/tools/docmaker/tohtml.py (html_header_1): Add doctype
+	and charset.
+	(html_header_2): Fix style elements and add some more.
+	Fix syntax.
+	(block_header, block_footer, description_header, description_footer,
+	marker_header, marker_footer, source_header, source_footer,
+	chapter_header): Don't use <center>...</center> but `align=center'
+	table attribute.
+	(chapter_inter, chapter_footer): Add <li> and use special <ul>
+	class.
+	Use double quotes around table widths given in percent.
+	(keyword_prefix, keyword_suffix): Don't change font color directly
+	but use a new <span> class.
+	(section_synopsis_header, section_synopsis_footer): Don't change
+	color.
+	(code_header, code_footer): Don't change font color directly but
+	use a special <pre> class.
+	(print_html_field): <tr> gets the `valign' attribute, not <table>.
+	(print_html_field_list): Ditto.
+	(index_exit): Don't use <center>...</center> but `align=center'
+	table attribute.
+	(section_enter): Ditto.
+	(toc_exit): Don't emit </table>.
+	(block_enter): Use <h4><a>, not <a><h4>.
+	(__init__): Fix tag order in self.html_footer.
+
+2003-07-25  David Turner  <david at freetype.org>
+
+	This change reimplements fix from 2003-05-30 without breaking
+	binary compatibility.
+
+	* include/freetype/t1tables.h (PS_FontInfoRec): `italic_angle',
+	`is_fixed_pitch', `underline_position', `underline_thickness' are
+	reverted to be normal values.
+
+	* include/freetype/internal/psaux.h (T1_FieldType): Remove
+	`T1_FIELD_TYPE_BOOL_P', `T1_FIELD_TYPE_INTEGER_P',
+	`T1_FIELD_TYPE_FIXED_P', `T1_FIELD_TYPE_FIXED_1000_P'.
+	(T1_FIELD_TYPE_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P,
+	T1_FIELD_FIXED_1000_P): Removed.
+	(T1_FIELD_TYPE_BOOL): Renamed to...
+	(T1_FIELD_BOOL): New macro.  Updated all callers.
+
+	* src/type42/t42parse.c: `italic_angle', `is_fixed_pitch',
+	`underline_position', `underline_thickness', `paint_type',
+	`stroke_width' are reverted to be normal values.
+	(T42_KEYWORD_COUNT): New macro.
+	(t42_parse_dict): New array `keyword_flags' to mark that a value has
+	already been assigned to a dictionary entry.
+	* src/type42/t42objs.c (T42_Face_Init, T42_Face_Done): Updated.
+
+	* src/cid/cidtoken.h: `italic_angle', `is_fixed_pitch',
+	`underline_position', `underline_thickness' are reverted to be
+	normal values.
+	* src/cid/cidobjs.c (cid_face_done, cid_face_init): Updated.
+
+	* src/psaux/psobjs.c (ps_parser_load_field): Updated.
+
+	* src/type1/t1tokens.h: `italic_angle', `is_fixed_pitch',
+	`underline_position', `underline_thickness', `paint_type',
+	`stroke_width' are reverted to be normal values.
+	* src/type1/t1objs.c (T1_Face_Done, T1_Face_Init): Updated.
+	* src/type1/t1load.c (T1_FIELD_COUNT): New macro.
+	(parse_dict): Add parameter for keyword flags.
+	Record only first instance of a field.
+	(T1_Open_Face): New array `keyword_flags'.
+
+2003-07-24  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
+	* builds/unix/configure.ac (version_info): Set to 10:0:3.
+	* builds/unix/configure: Updated.
+	* builds/freetype.mk (refdoc): Fix --title.
+
+	* docs/CHANGES, docs/VERSION.DLL, README: Updated.
+
+	* src/tools/docmaker/sources.py (re_crossref): Fix regular
+	expression to handle trailing punctuation characters.
+	* src/tools/docmaker/tohtml.py (make_html_word): Updated.
+
+	* docs/release: New file.
+
+2003-07-23  YAMANO-UCHI Hidetoshi  <mer at din.or.jp>
+
+	* include/freetype/internal/psaux.h (PS_Parser_FuncsRec): New
+	member function `to_bytes'.
+
+	* src/psaux/psauxmod.c (ps_parser_funcs): New member
+	`ps_parser_to_bytes'.
+	(psaux_module_class): Increase version to 0x20000L.
+
+	* src/psaux/psobjs.c (IS_T1_LINESPACE): Add \f.
+	(IS_T1_NULLSPACE): New macro.
+	(IS_T1_SPACE): Add it.
+	(skip_spaces, skip_alpha): New functions.
+	(ps_parser_skip_spaces, ps_parser_skip_alpha): Use them.
+	(ps_tobytes, ps_parser_to_bytes): New functions.
+
+2003-07-07  Werner Lemberg  <wl at gnu.org>
+
+	* builds/freetype.mk (DOC_DIR): New variable.
+	(refdoc): Use *_DIR variables.
+	(distclean): Remove documentation files.
+
+	* builds/detect.mk (std_setup, dos_setup): Mention `make refdoc'.
+
+	* configure: Set DOC_DIR variable.
+
+2003-07-07  Patrik Hägglund  <patrik.hagglund at bredband.net>
+
+	* builds/freetype.mk (refdoc): New target to build the
+	documentation.
+	(.PHONY): Updated.
+
+	* include/freetype/freetype.h: Improve documentation of FT_CharMap.
+	* include/freetype/ftimage,h: Fix documentation of FT_OUTLINE_FLAGS.
+	* include/freetype/tttables.h: Document FT_Sfnt_Tag.
+
+2003-07-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfread.c
+	(pcf_load_font): Fix computation of height if PIXEL_SIZE property is
+	missing.
+
+2003-07-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftcsbits.c (ftc_sbit_node_compare): Only add `size' if
+	there is no error.  Reported by Knut St. Osmundsen
+	<bird-freetype at anduin.net>.
+
+2003-06-30  Werner Lemberg  <wl at gnu.org>
+
+	A new try to synchronize bitmap font access.
+
+	* include/freetype/freetype.h (FT_Bitmap_Size): `height' is now
+	defined to return the baseline-to-baseline distance.  This was
+	already the value returned by the BDF and PCF drivers.
+
+	The `width' field now gives the average width.  I wasn't able to
+	find something better.  It should be taken as informative only.
+
+	New fields `size', `x_ppem', and `y_ppem'.
+
+	* src/pcf/pcfread.c (pcf_load_font): Updated to properly fill
+	FT_Bitmap_Size.
+	Do proper rounding and conversion from 72.27 to 72 points.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Updated to properly fill
+	FT_Bitmap_Size.
+	Do proper rounding and conversion from 72.27 to 72 points.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Updated to properly fill
+	FT_Bitmap_Size.
+
+	* src/winfonts/winfnt.c (FNT_Face_Init): Updated to properly fill
+	FT_Bitmap_Size.
+
+2003-06-29  Werner Lemberg  <wl at gnu.org>
+
+	Redesigning the FNT driver to return multiple faces, not multiple
+	strikes.  At least one font (app850.fon from WinME) contains
+	different FNT charmaps for its subfonts.  Consequently, the previous
+	design of having multiple bitmap strikes in a single font face fails
+	since we have only one charmap per face.
+
+	* include/freetype/internal/fnttypes.h (FNT_Size_Rec): Removed.
+	(FNT_FaceRec): Remove `num_fonts' field and replace `fonts' with
+	`font'.
+
+	* src/base/ftwinfnt.c (FT_Get_WinFNT_Header): Updated.
+
+	* src/winfonts/winfnt.c (fnt_font_load): Don't set pixel_width equal
+	to pixel_height.
+	(fnt_face_done_fonts): Removed.
+	(fnt_face_get_dll_fonts): Renamed to...
+	(fnt_face_get_dll_font): This.  Add second function argument to
+	select face index.
+	Updated to load just one subfont.
+	(fnt_font_done, FNT_Face_Done): Updated.
+	(FNT_Face_Init): Handle `face_index'.
+	Updated.
+	(FNT_Size_Set_Pixels): Simplified; similar to BDF and PCF, the
+	bitmap width is now ignored.
+	(FNT_Load_Glyph): Updated.
+	Fix glyph index computation.
+	(winfnt_driver_class): Updated.
+
+2003-06-25  Owen Taylor  <otaylor at redhat.com>
+
+	* src/sfnt/ttload.c (tt_face_load_hdmx): Don't assign
+	num_records until we actually decide to load the table,
+	otherwise, we'll segfault in tt_face_free_hdmx.
+
+2003-06-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffdrivr.c (cff_get_glyph_name): Protect against zero
+	glyph name pointer.  Reported by Mikey Anbary <manbary at vizrt.com>.
+
+2003-06-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/glnames.py: Updated to AGL 2.0.
+	* src/psnames/pstables.h: Regenerated.
+
+2003-06-22  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/cache/ftcglyph.h, include/freetype/ttnameid.h,
+	src/base/ftcalc.c, src/base/fttrigon.c, src/cff/cffgload.c,
+	src/otlayout/otlgsub.c, src/pshinter/pshrec.c,
+	src/psnames/psmodule.c, src/sfnt/sfobjs.c, src/truetype/ttdriver.c:
+	Decorate constants with `U' and `L' if appropriate.
+
+	* include/freetype/ftmoderr.h: Updated to include recent module
+	additions.
+
+	* src/pshinter/pshnterr.h (FT_ERR_BASE): Define as
+	`FT_Mod_Err_PShinter'.
+	* src/type42/t42error.h (FT_ERR_BASE): Define as
+	`FT_Mod_Err_Type42'.
+
+	* src/pshinter/pshrec.h (PS_HINTS_MAGIC): Removed.  Not used.
+
+	* include/freetype/config/ftconfig.h [__MWERKS__]: Define FT_LONG64
+	and FT_INT64.
+
+2003-06-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/winfonts/winfnt.c (FNT_Load_Glyph): Use first_char in
+	computation of glyph_index.
+	(FNT_Size_Set_Pixels): To find a strike, first check pixel_height
+	only, then try to find a better hit by comparing pixel_width also.
+	Without this fix it isn't possible to access all strikes.
+	Also compute metrics.max_advance to be in sync with other bitmap
+	drivers.
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Remove redundant code.
+	(FT_Set_Pixel_Sizes): Assign value to `metrics' after validation of
+	arguments.
+
+2003-06-20  Werner Lemberg  <wl at gnu.org>
+
+	Synchronize computation of height and width for bitmap strikes.  The
+	`width' field in the FT_Bitmap_Size structure is now only useful to
+	enumerate different strikes.  The `max_advance' field of the
+	FT_Size_Metrics structure should be used to get the (maximum) width
+	of a strike.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Don't use AVERAGE_WIDTH for
+	computing `available_sizes->width' but make it always equal to
+	`available_sizes->height'.
+
+	* src/pcf/pcfread.c (pcf_load_font): Don't use RESOLUTION_X for
+	computing `available_sizes->width' but make it always equal to
+	`available_sizes->height'.
+
+	* src/truetype/ttdriver.c (Set_Pixel_Sizes): Pass only single
+	argument to function.
+
+	* src/psnames/psmodule.c (ps_unicode_value): Handle `.' after
+	`uniXXXX' and `uXXXX[X[X]]'.
+
+2003-06-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdfdrivr.c: s/FT_Err_/BDF_Err/.
+	* src/cache/ftccache.c, src/cache/ftcsbits.c, src/cache/ftlru.c:
+	s/FT_Err_/FTC_Err_/.
+	* src/cff/cffcmap.c: s/FT_Err_/CFF_Err_/.
+	* src/pcf/pcfdrivr.c: s/FT_Err_/PCF_Err_/.
+	* src/psaux/t1cmap.c: Include psauxerr.h.
+	s/FT_Err_/PSaux_Err_/.
+	* src/pshinter/pshnterr.h: New file.
+	* src/pshinter/rules.mk: Updated.
+	* src/pshinter/pshalgo.c, src/pshinter/pshrec.c: Include pshnterr.h.
+	s/FT_Err_/PSH_Err_/.
+	* src/pfr/pfrdrivr.c, src/pfr/pfrobjs.c, src/pfr/pfrsbit.c:
+	s/FT_Err_/PFR_Err_/.
+	* src/sfnt/sfdriver.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c,
+	src/sfnt/ttload.c: s/FT_Err_/SFNT_Err_/.
+	* src/truetype/ttgload.c: s/FT_Err_/TT_Err_/.
+	* src/gzip/ftgzip.c: Load FT_MODULE_ERRORS_H and define
+	FT_ERR_PREFIX and FT_ERR_BASE.
+	s/FT_Err_/Gzip_Err_/.
+
+2003-06-19  Dirck Blaskey  <listtarget at danbala.com>
+
+	* src/cff/cffload (cff_encoding_load): `nleft' must be FT_UInt,
+	otherwise adding 1 might wrap the result.
+
+2003-06-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/psnames/psmodule.c (ps_unicode_value): Add support to
+	recognize `uXXXX[X[X]]' glyph names.
+	Don't handle glyph names starting with `uni' which have more than
+	four digits.
+
+2003-06-16  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FT_Open_Flags): Replaced with
+	#defines for the constants.
+	(FT_Open_Args): Change type of `flags' to FT_UInt.
+	(FT_GlyphSlot): Move `flags' to FT_Slot_Internal.
+
+	* include/freetype/ftimage.h (FT_Outline_Flags, FT_Raster_Flag):
+	Replaced with #defines for the constants.
+
+	* include/freetype/internal/ftobjs.h (FT_Slot_Internal): New
+	field `flags' (from FT_GlyphSlot).
+	Updated all affected source files.
+	(FT_GLYPH_OWN_BITMAP): New macro (from ftgloadr.h).
+
+	* include/freetype/internal/ftgloadr.h (FT_GLYPH_OWN_BITMAP): Moved
+	to ftobjs.h.
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Use dummy
+	FT_GlyphSlot_Internal object.
+
+2003-06-15  Werner Lemberg  <wl at gnu.org>
+
+	* builds/compiler/gcc.mk, builds/compiler/gcc-dev.mk (CFLAGS):
+	Add -fno-strict-aliasing to get rid of zillion warnings from gcc
+	version 3.3.
+
+2003-06-14  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftglyph.h (ft_glyph_bbox_unscaled,
+	ft_glyph_bbox_subpixels, ft_glyph_bbox_gridfit,
+	ft_glyph_bbox_truncate, ft_glyph_bbox_pixels): Replaced with
+	FT_GLYPH_BBOX_UNSCALED, FT_GLYPH_BBOX_SUBPIXELS,
+	FT_GLYPH_BBOX_GRIDFIT, FT_GLYPH_BBOX_TRUNCATE, FT_GLYPH_BBOX_PIXELS.
+	The lowercase variants are now (deprecated aliases) to the uppercase
+	versions.
+	Updated all other files.
+
+	* include/freetype/ftmodule.h (ft_module_font_driver,
+	ft_module_renderer, ft_module_hinter, ft_module_styler,
+	ft_module_driver_scalable, ft_module_driver_no_outlines,
+	ft_module_driver_has_hinter): Replaced with FT_MODULE_FONT_DRIVER,
+	FT_MODULE_RENDERER, FT_MODULE_HINTER, FT_MODULE_STYLER,
+	FT_MODULE_DRIVER_SCALABLE, FT_MODULE_DRIVER_NO_OUTLINES,
+	FT_MODULE_DRIVER_HAS_HINTER.
+	The lowercase variants are now (deprecated aliases) to the uppercase
+	versions.
+	Updated all other files.
+
+	* src/base/ftglyph.c (FT_Glyph_Get_CBox): Handle bbox_mode better
+	as enumeration.
+
+	* src/pcf/pcfdrivr.c (pcf_driver_class), src/winfonts/winfnt.c
+	(winfnt_driver_class), src/bdf/bdfdrivr.c (bdf_driver_class): Add
+	the FT_MODULE_DRIVER_NO_OUTLINES flag.
+
+2003-06-13  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/pfr/pfrobjs.c (pfr_slot_load): Apply font matrix.
+
+2003-06-13  Werner Lemberg  <wl at gnu.org>
+
+	* builds/dos/detect.mk: Test not only for `Dos' but for `DOS' also.
+
+	* builds/dos/dos-emx.mk, builds/compiler/emx.mk: New files for
+	EMX gcc compiler.
+	* builds/dos/detect.mk: Add target `emx'.
+
+	* builds/compiler/watcom.mk (LINK_LIBRARY): GNU Make for DOS doesn't
+	like a trailing semicolon; add a dummy command.
+
+	* src/cid/cidload.c: Remove parse_font_bbox code (already enclosed
+	with #if 0 ... #endif).
+
+	* src/type1/t1tokens.h: Handle /FontName.
+	* src/type1/t1load.c (parse_font_name): Removed.
+	Remove parse_font_bbox code (already enclosed with #if 0 ...
+	#endif).
+
+	* src/type42/t42parse.c (t42_parse_font_name): Removed.
+	Remove t42_parse_font_bbox code (already enclosed with #if 0 ...
+	#endif).
+	(t42_keywords): Handle /FontName with T1_FIELD_KEY.
+
+2003-06-12  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (T1_FieldType): Add
+	T1_FIELD_TYPE_KEY.
+	(T1_FIELD_KEY): New macro.
+	* src/psaux/psobjs.c (ps_parser_load_field): Handle
+	T1_FIELD_TYPE_KEY.
+
+	* src/cid/cidtoken.h: Use T1_FIELD_KEY for /CIDFontName.
+
+2003-06-11  Alexander Malmberg  <alexander at malmberg.org>
+
+	* src/cache/ftlru.c (FT_LruList_Remove_Selection): Decrease
+	number of nodes.
+	(FT_LruList_Lookup): Fix assertion for out-of-memory case.
+
+2003-06-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidload.c (cid_decrypt): Removed.
+	(cid_read_subrs): Use t1_decrypt from psaux module.
+	* src/cid/cidload.h: Updated.
+	* src/cid/cidgload.c (cid_load_glyph): Use t1_decrypt from psaux
+	module.
+
+2003-06-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidobjs.c: Apply change 2003-05-31 from <Ron.Dev at gmx.de>.
+	Compute style flags.
+	Fix computation of root->height.
+	* src/cid/cidtoken.h: Handle FontBBox.
+	* src/cid/cidload.c (cid_load_keyword): Handle
+	T1_FIELD_LOCATION_BBOX.
+	(parse_font_bbox): Commented out.
+	(cid_field_records): Comment out element for parsing FontBBox.
+
+	* src/type42/t42parse.c (t42_parse_font_bbox): Commented out.
+	(t42_keywords): Handle FontBBox with T1_FIELD_BBOX, not with
+	T1_FIELD_CALLBACK.
+	(t42_parse_font_bbox): Commented out.
+	(t42_load_keyword): Handle T1_FIELD_LOCATION_BBOX.
+	* src/type42/t42objs.c (T42_Face_Init): Apply change 2003-05-31
+	from <Ron.Dev at gmx.de>.
+
+2003-06-09  George Williams  <gww at silcom.com>
+
+	* src/truetype/ttinterp.c (SetSuperRound) <0x30>: Follow Apple's
+	TrueType specification.
+	(Ins_MDRP, Ins_MIRP): Fix single width cut-in test.
+
+2003-06-09  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/gzip/ftgzip.c: (inflate_mask): Replaced with...
+	(NO_INFLATE_MASK): This.
+	* src/gzip/infutil.h: Declare `inflate_mask' conditionally by
+	NO_INFLATE_MASK.
+
+2003-06-09  Alexis S. L. Carvalho  <alexis at cecm.usp.br>
+
+	* src/gzip/ftgzip.c (ft_gzip_file_fill_output): Handle Z_STREAM_END
+	correctly.
+
+2003-06-09  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/pshinter/pshglob.c (psh_globals_new): Change calculation of
+	dim->stdw.count to avoid compiler problem.
+
+	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Move the block
+	variables to the beginning of the function to avoid compiler
+	problems.
+	Add casts necessary for 16bit compilers.
+
+2003-06-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/rules.mk (PFR_DRV_SRC): Add pfrsbit.c.
+	(PFR_DRV_H): Add pfrtypes.h.
+
+	* include/freetype/config/ftconfig.h: s/__MWKS__/__MWERKS__/.
+
+2003-06-08  Karl Schultz  <kschultz at rsinc.com>
+
+	* src/pfr/pfrsbit.c (pfr_bitwriter_init): Change type of third
+	argument to FT_Bool.
+	(pfr_lookup_bitmap_data): Change type of third and fourth argument
+	to FT_UInt.  Updated caller.
+	(pfr_load_bitmap_bits): Change type of fourth argument to FT_Bool.
+
+2003-06-08  Werner Lemberg  <wl at gnu.org>
+
+	Completely revised FreeType's make management.
+
+	. In all makefiles `/' is used as the path separator.  The
+	  conversion to the real path separators is done as late as
+	  possible using $(subst ...).
+
+	. $(HOSTSEP) no longer exists.  Now, $(SEP) gives the path separator
+	  for the operating system, and the new $(COMPILER_SEP) the path
+	  separator for the compiler tools.
+
+	. $(BUILD) has been renamed to $(BUILD_DIR).  In general, all
+	  directory variables end with `_DIR'.  The variants ending in `_'
+	  (like `BASE_' have been removed).
+
+	The following ChangeLog entries only describe changes which are
+	not related to the redesign.
+
+	* builds/beos/beos-def.mk (BUILD_DIR): Fix typo.
+	* builds/compiler/watcom.mk (LINK_LIBRARY): Fix linker call to avoid
+	overlong arguments as suggested by J. Ali Harlow
+	<ali at avrc.city.ac.uk>.
+	* builds/dos/dos-wat.mk: New file.
+	* builds/freetype.mk (FREETYPE_H): Include header files from the
+	`devel' subdirectory.
+
+	* builds/os2/os2-dev.mk, builds/unix/unixddef.mk,
+	builds/unix/unixddef.mk, builds/win32/w32-bccd.mk,
+	builds/win32/w32-dev.mk (BUILD_DIR): Fix path.
+
+	* builds/unix/configure.ac, builds/unix/configure: Updated.
+	* builds/unix/unix-def.in (DISTCLEAN): Add `freetype2.pc'.
+
+2003-06-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftmac.c (FT_New_Face_From_SFNT): s/rlen/sfnt_size/ to
+	make it compile.
+
+	* devel/ftoption.h: Updated.
+
+2003-06-07  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* include/freetype/internal/psaux.h, src/truetype/ttgload.h:
+	s/index/idx/ to fix compiler warnings.
+
+	* src/sfnt/ttcmap0.c (tt_face_build_cmaps): Use more `volatile' to
+	fix compiler warning.
+
+	* src/gzip/ftgzip.c (BUILDFIXED): Removed.
+	* src/gzip/inftrees.c (inflate_trees_fixed) [!BUILDFIXED]: Use
+	FT_UNUSED to remove compiler warning.
+
+2003-06-06  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftstroker.h: Renamed to...
+	* include/freetype/ftstroke.h: This.
+
+	* src/base/ftstroker.c: Renamed to...
+	* src/base/ftstroke.c: This.
+
+	* include/freetype/config/ftheader.h (FT_STROKER_H): Updated.
+
+	* src/base/descrip.mms, src/base/Jamfile, src/base/rules.mk:
+	Updated.
+
+	* src/pcf/pcfdriver.c: Renamed to...
+	* src/pcf/pcfdrivr.c: This.
+	* src/pcf/pcfdriver.h: Renamed to...
+	* src/pcf/pcfdrivr.h: This.
+
+	* src/pcf/Jamfile, src/pcf/rules.mk: Updated.
+
+2003-06-05  Wenlin Institute (Tom Bishop)  <wenlin at wenlin.com>
+
+	* src/base/ftmac.c (file_spec_from_path) [TARGET_API_MAC_CARBON]:
+	Add `#if !defined(__MWERKS__)'.
+
+2003-06-05  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (T1_FieldType): Add
+	T1_FIELD_TYPE_FIXED_1000 and T1_FIELD_TYPE_FIXED_1000_P.
+	(T1_FIELD_FIXED_1000, T1_FIELD_FIXED_1000_P): New macros.
+	* src/psaux/psobjs.c (ps_parser_load_field): Handle
+	T1_FIELD_TYPE_FIXED_1000 and T1_FIELD_TYPE_FIXED_1000_P.
+
+	* src/cff/cffparse.c (cff_kind_fixed_thousand): New enumeration.
+	(CFF_FIELD_FIXED_1000): New macro.
+	(cff_parser_run): Handle cff_kind_fixed_thousand.
+	* src/cff/cfftoken.h: Use CFF_FIELD_FIXED_1000 for blue_scale.
+	* src/cff/cffload (cff_subfont_load): Fix default values of
+	expansion_factor and blue_scale.
+
+	* src/cid/cidtoken.h, src/type1/t1tokens.h: Use T1_FIELD_FIXED_1000
+	for blue_scale.
+
+	* src/pshinter/pshglob.c (psh_globals_new): Fix default value of
+	blue_scale.
+
+2003-06-04  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* include/freetype/internal/ftdriver.h,
+	include/freetype/internal/ftobjs.h,
+	include/freetype/internal/psaux.h, src/cid/cidgload.c,
+	src/psaux/psobjs.c, src/psaux/t1decode.c, src/psaux/psobjs.h,
+	src/pshinter/pshrec.c, src/pshinter/pshalgo.c,
+	src/psnames/psmodule.c, src/raster/ftraster.c, src/sfnt/sfobjs.c,
+	src/smooth/ftgrays.c, src/smooth/ftsmooth.c, src/truetype/ttobjs.c,
+	src/truetype/ttdriver.c, src/truetype/ttgload.c, src/type1/t1afm.c,
+	src/type1/t1gload.c, src/type1/t1gload.h, src/type1/t1load.c,
+	src/type1/t1objs.c, src/type42/t42parse.c, src/type42/t42parse.h:
+	Many casts and slight argument type changes to make it work with
+	a 16bit compiler.
+
+2003-06-04  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftoption.h: Defining
+	TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING by default is a bad idea
+	since some fonts (e.g. Arial) produce worse results than without
+	hinting.  Reverted.
+
+2003-06-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph)
+	[TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Call
+	FT_GlyphLoader_CheckPoints before adding phantom points.  This fixes
+	a segfault bug with fonts (e.g. htst3.ttf) which have nested
+	subglyphs more than one level deep.  Reported by Anthony Fok.
+
+	* include/freetype/config/ftoption.h: Define
+	TT_CONFIG_OPTION_BYTECODE_INTERPRETER,
+	TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING, and
+	TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING to make it the new
+	default.
+
+2003-06-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahhint.c (ah_hinter_hint_edges): Removed.  Just a
+	wrapper for ah_hint_edges.
+	(ah_hint_edges): Renamed to...
+	(ah_hinter_hint_edges): This.
+
+	* src/base/ftobjs.c (FT_Set_Hint_Flags): Removed.  Unused.
+
+	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec),
+	include/freetype/internal/psaux.h (T1_DecoderRec),
+	src/cff/cffgload.h (CFF_Builder): Remove `hint_flags' field.
+	Unused.
+
+	* src/cff/cffgload.c (cff_builder_init): Updated.
+	(cff_decoder_parse_charstrings) <cff_op_endchar>: Call hinter->apply
+	with decoder->hint_mode instead of builder->hint_flags.
+	* src/psaux/t1decode.c (t1_decoder_init): Updated.
+
+	* src/base/ftstroker.c (ft_stroke_border_export): s/index/idx/.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Commented out code which
+	increased root->height by 15% if the line gap was zero.  There exist
+	fonts (containing e.g. form drawing characters) which intentionally
+	have a zero line gap value.
+
+	* src/truetype/ttinterp.c (Free_Project, CUR_Func_freeProj):
+	Removed.  Unused.
+	Updated all callers.
+
+2003-06-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Use symbolic names for
+	Adobe specific encoding IDs (there was a wrong EID value for custom
+	encoding).
+
+	* src/cff/cffcmap.h (CFF_CMapStdRec): Remove `count'.
+	* src/cff/cffcmap.c (cff_cmap_encoding_init,
+	cff_cmap_encoding_done): Updated.
+	(cff_cmap_encoding_char_index, cff_cmap_encoding_char_next): Use
+	256 as limit for character code.
+
+2003-06-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/winfonts/winfnt.c (FNT_Load_Glyph): Revert change from
+	2003-03-20.
+
+2003-05-31  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/fttrigon.h (FT_Vector_Normalize): Removed.
+
+2003-05-31    <Ron.Dev at gmx.de>
+
+	* src/type1/t1objs.c (T1_Face_Init): Improve algorithm for guessing
+	the font style by ignoring spaces and hyphens.
+
+	* builds/unix/freetype2.in: Fix `Version' field.
+
+2003-05-30  Werner Lemberg  <wl at gnu.org>
+
+	Avoid overwriting of numeric font dictionary entries for synthetic
+	fonts.  Additionally, some entries were handled as `integer' instead
+	of `number'.
+
+	* include/freetype/internal/psaux.h (T1_FieldType): Add
+	T1_FIELD_TYPE_BOOL_P, T1_FIELD_TYPE_INTEGER_P, and
+	T1_FIELD_TYPE_FIXED_P.
+	(T1_FIELD_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P): New macros.
+	* src/psaux/psobjs.c (ps_parser_load_field): Handle new field types.
+
+	* include/freetype/internal/cfftypes.h (CFF_FontRecDict),
+	src/cff/cfftoken.h: Change type of underline_position and
+	underline_thickness to FT_Fixed.
+	* src/cff/cffload.c (cff_subfont_load): Fix default values of
+	underline_position and underline_thickness.
+	* src/cff/cffobjs.c (cff_face_init): Set underline_position
+	and underline_thickness in `root'.
+
+	* include/freetype/internal/t1types.h (T1_Font): Change point_type
+	and stroke_width to pointers.
+	* include/freetype/t1tables.h (PS_FontInfo): Change italic_angle,
+	is_fixed_pitch, underline_position, and underline_thickness to
+	pointers.
+	* src/type1/t1tokens.h: Change italic_angle, is_fixed_pitch,
+	underline_position, and underline_thickness to pointers.  Change
+	the type of the latter two to `fixed'.
+	Change type of stroke_width to `fixed' and make it a pointer.
+	Change paint_type to pointer.
+	* src/type1/t1objs.c (T1_Face_Done): Updated.
+	(T1_Face_Init): Updated.
+	Fix assignment of underline_position and underline_thickness.
+
+	* src/cid/cidtoken.h: Change italic_angle, is_fixed_pitch,
+	underline_position, and underline_thickness to pointers.  Change
+	the type of the latter two to `fixed'.
+	Change type of stroke_width to `fixed'.
+	* src/cid/cidobjs.c (cid_face_done): Updated.
+	(cid_face_init): Updated.
+	Fix assignment of underline_position and underline_thickness.
+
+	* src/type42/t42parse.c: Change italic_angle, is_fixed_pitch,
+	underline_position, and underline_thickness to pointers.  Change the
+	type of the latter two to `fixed'.
+	Change type of stroke_width to `fixed' and make it a pointer.
+	Change paint_type to pointer.
+	* src/type42/t42objs.c (T42_Face_Init): Updated.
+	Fix assignment of underline_position and underline_thickness.
+	(T42_Face_Done): Updated.
+
+	* src/base/ftobjs.c (open_face_from_buffer): Fix compiler warning.
+	* src/pshinter/pshglob.c, src/pshinter/pshglob.h
+	(psh_globals_set_scale): Make it a local function.
+
+	* test/gview.c: Fix renaming ps3->ps typo.
+	Formatting.
+
+2003-05-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo1.[ch], src/pshinter/pshalgo2.[ch]: Removed.
+	* src/pshinter/pshalgo.h: Removed.
+
+	* src/pshinter/pshalgo3.[ch]: Renamed to...
+	* src/pshinter/pshalgo.[ch]: New files.
+	s/PSH3/PSH/.
+	s/psh3/psh/.
+	s/ps3/ps/.
+
+	* src/pshinter/pshrec.c, src/pshinter/pshinter.c: Updated.
+	* src/pshinter/rules.mk, src/pshinter/Jamfile: Updated.
+
+	* src/pshinter/pshglob.[ch] (psh_dimension_snap_width): Commented
+	out.
+
+	* tests/gview.c: Remove code for pshalgo1 and pshalgo2.
+	Updated.
+
+2003-05-28  Martin Zinser  <zinser at decus.de>
+
+	* vms_make.com: Reworked support for shareable images on VMS.  The
+	first version was kind of a hack; the current implementation of the
+	procedure to extract the required symbols is much cleaner.
+
+	Reworked creation of MMS files, avoiding a number of temporary files
+	which were created in the previous version.
+
+	Further work on creating descrip.mms files on the fly.
+
+	* builds/vms/descrip.mms, src/autohint/descrip.mms,
+	src/type1/descrip.mms: Removed.
+
+2003-05-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo3.c (psh3_glyph_compute_extrema): Skip
+	contours with only a single point to avoid segfault.
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Activate code for
+	handling `origin'.
+
+2003-05-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahtypes.h (AH_OPTION_NO_STRONG_INTERPOLATION):
+	Removed since unused.
+
+2003-05-21  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftstdlib.h (ft_strcat): New wrapper macro
+	for strcat.
+
+	* src/base/ftmac.c (create_lwfn_name): s/isupper/ft_isupper/.
+	(parse_font): s/memcpy/ft_memcpy/.
+	(is_dfont) [TARGET_API_MAC_CARBON]: s/memcmp/ft_memcmp/.
+	* src/base/ftobjs.c (load_mac_face) [FT_MACINTOSH]:
+	s/strlen/ft_strlen/.
+	s/strcat/ft_strcat/.
+	s/strcpy/ft_strcpy/.
+	* src/gzip/zutil.h: s/memset/ft_memset/.
+	s/memcmp/ft_memcmp/.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdriver.c
+	(PCF_Face_Init): Test for charset registry case-insensitively.
+
+	* src/gzip/ftgzip.c (ft_gzip_file_io): Revert change from yesterday;
+	it has already been fixed differently.
+
+	* src/truetype/ttinterp.c (DO_SFVTL): Add missing braces around
+	if-clause.
+
+2003-05-21  Martin Zinser  <zinser at decus.de>
+
+	* t1load.c (parse_blend_axis_types): Fix compiler warning.
+
+	* descrip.mms: Removed.  Now created by...
+
+	* vms_make.com: New file.
+
+2003-05-21  Weiqi Gao  <weiqigao at networkusa.net>
+
+	* src/gzip/ftgzip.c (ft_gzip_file_io): Avoid zero value of `delta'
+	to prevent infinite loop.
+
+2003-05-21  Lars Clausen  <lrclause at cs.uiuc.edu>
+
+	* docs/VERSION.DLL: Provide better autoconf snippet to check
+	FreeType version.
+
+2003-05-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (open_face): Free `internal' not
+	`face->internal' in case of error to avoid possible segfault.
+
+	* src/pshinter/pshalgo3.c (ps3_hints_apply): Check whether we
+	actually have an outline.
+
+2003-05-20  David Chester  <davidchester at qmx.net>
+
+	* src/pshinter/pshalgo3.c (ps3_hints_apply): Try to optimize
+	y_scale so that the top of non-capital letters is aligned on a pixel
+	boundary whenever possible.
+
+	* src/autohint/ahhint.c (ah_hint_edges): Make sure that lowercase
+	m's maintain their symmetry.
+
+2003-05-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph): Oops!  David's
+	patch from yesterday has been resolved already in a different
+	way.  Reverted.
+
+2003-05-19  David Chester  <davidchester at qmx.net>
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph): Don't scale
+	y_scale locally but face->size->metrics.y_scale.
+
+2003-05-19  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_char_next): Select proper start
+	value for `hi' to avoid infinite loop.
+
+2003-05-18  Yong Sun  <sunyong at njstar.com>
+
+	* src/raster/ftraster.c (Insert_Y_Turn): Fix overflow test.
+
+2003-05-18  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftoption.h [FT_CONFIG_OPTION_MAC_FONTS]:
+	New macro.
+	* src/base/ftobjs.c: Use it to control mac font support on non-mac
+	platforms.
+
+2003-05-17  George Williams  <gww at silcom.com>
+
+	Implement partial support of Mac fonts on non-Mac platforms.
+
+	* src/base/ftobjs.c (memory_stream_close, new_memory_stream,
+	open_face_from_buffer, Mac_Read_POST_Resource,
+	Mac_Read_sfnt_Resource, IsMacResource, IsMacBinary, load_mac_face)
+	[!FT_MACINTOSH]: New functions.
+	(FT_Open_Face) [!FT_MACINTOSH]: Use load_mac_face.
+
+2003-05-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Scale linear advance width only
+	if FT_FACE_FLAG_SCALABLE is set (otherwise we have a division by
+	zero since FNT and friends don't define `face->units_per_EM').
+
+2003-05-15  David Turner  <david at freetype.org>
+
+	* src/base/fttrigon.c (FT_Vector_Rotate): Avoid rounding errors
+	for small values.
+
+2003-05-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahtypes.h (AH_PointRec): Remove unused `in_angle'
+	and `out_angle' fields.
+
+2003-05-14  George Williams  <gww at silcom.com>
+
+	* src/base/ftmac.c (FT_New_Face_From_SFNT): Handle CFF files also.
+
+2003-05-14  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h: Fix typo in comment
+	(FT_HAS_FIXED_SIZES).
+
+2003-05-10  Dan Williams  <dan at bigw.org>
+
+	* builds/unix/aclocal.m4: Comment out definition of
+	`allow_undefined_flag' for Darwin 1.3.
+	* builds/unix/configure.ac: Add option --with-old-mac-fonts.
+	* builds/unix/ltmain.sh: Fix version numbering for Darwin 1.3.
+	* builds/unix/configure: Regenerated.
+
+	* include/freetype/config/ftconfig.h: Fix conditions for defining
+	`FT_MACINTOSH'.
+	* src/base/ftbase.c: Include `ftmac.c' conditionally.
+	* src/base/ftmac.c: Handle __GNUC__.
+
+2003-05-07  YAMANO-UCHI Hidetoshi  <mer at din.or.jp>
+
+	* src/cid/cidload.c (is_alpha): Removed.
+	(cid_parse_dict): Use `cid_parser_skip_alpha' instead of `is_alpha'.
+
+2003-05-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahoptim.c, src/autohint/ahoptim.h: Obsolete, removed.
+
+2003-05-07  David Turner  <david at freetype.org>
+
+	* src/autohint/ahglyph.c (ah_setup_uv): Exchange `for' loop and
+	`switch' statement to make it run faster.
+	(ah_outline_compute_segments): Reset `segment->score' and
+	`segment->link'.
+	(ah_outline_link_segments): Provide alternative code which does
+	the same but runs much faster.
+	Handle major direction also.
+	(ah_outline_compute_edges): Scale `edge_distance_threshold' down
+	after rounding instead of scaling comparison value in loop.
+
+	* src/autohint/ahhint.c (ah_hinter_align_strong_points): Provide
+	alternative code which runs faster.
+	Handle `before->scale == 0'.
+
+	* src/autohint/ahtypes.h (AH_SegmentRec): Move some fields down.
+	(AH_EdgeRec): Move some fields in structure.
+	New field `scale'.
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_char_next): Use binary search.
+
+2003-05-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahoptim.c (LOG): Renamed to...
+	(AH_OPTIM_LOG): This.
+	(AH_Dump_Springs): Fix log message format.
+
+	* src/autohint/ahhint.c (ah_hint_edges_3): Renamed to...
+	(ah_hint_edges): This.
+
+2002-05-02  Keith Packard  <keithp at keithp.com>
+
+	* src/bdf/bdfdrivr.c (BDF_Set_Pixel_Size): Initialize `max_advance'.
+
+2003-05-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahglyph.c (ah_test_extrema): Renamed to...
+	(ah_test_extremum): This.
+
+2003-04-28  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.ac: Generate `freetype.pc' from
+	`freetype.in'.
+	* builds/unix/configure: Regenerated.
+	* builds/unix/install.mk (install, uninstall): Handle `freetype.pc'.
+
+2003-04-28  Gustavo J. A. M. Carneiro  <gjc at inescporto.pt>
+
+	* builds/unix/freetype2.in: New file.  Contains building information
+	for the `pkg-config' package.
+
+2003-04-28  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Fix boundary check for
+	`glyph_index'.
+
+2003-04-25:  Graham Asher  <graham.asher at btinternet.com>
+
+	Added the optional unpatented hinting system for TrueType.  It
+	allows typefaces which need hinting to produce correct glyph forms
+	(e.g., Chinese typefaces from Dynalab) to work acceptably without
+	infringing Apple patents.  This system is compiled only if
+	TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING is defined in
+	ftoption.h.
+
+	* include/freetype/ttunpat.h: New file.  Defines
+	FT_PARAM_TAG_UNPATENTED_HINTING.
+
+	* include/freetype/config/ftheader.h (FT_TRUETYPE_UNPATENTED_H): New
+	macro to use when including ttunpat.h.
+
+	* include/freetype/config/ftoption.h
+	(TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING,
+	TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING): New configuration macros
+	(not defined, but in comments) for the unpatented hinting system.
+
+	* include/freetype/internal/tttypes.h (TT_FaceRec)
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: New element `FT_Bool
+	unpatented_hinting'.
+
+	* src/truetype/ttinterp.c (NO_APPLE_PATENT, APPLE_THRESHOLD):
+	Removed.
+	(GUESS_VECTOR): New macro.
+	(TT_Run_Context) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]:
+	Set `both_x_axis'.
+	(tt_default_graphics_state)
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Updated.
+	(Current_Ratio) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]:
+	Handle `unpatented_hinting'.
+	(Direct_Move) [NO_APPLE_PATENT]: Removed.
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Insert assertion.
+	(Project, FreeProject)
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Insert assertion.
+	(Compute_Funcs) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]:
+	Implement unpatented hinting.
+	(DO_SPVTCA, DO_SFVTCA, DO_SPVTL, DO_SFVTL, DO_SPVFS, DO_SFVFS,
+	Ins_SDPVTL): Call `GUESS_VECTOR'.
+	(DO_GPV, DO_GFV) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]:
+	Handle `unpatented_hinting'.
+	(Compute_Point_Displacement) [NO_APPLE_PATENT]: Removed.
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Implement unpatented
+	hinting.
+	(Move_Zp2_Point, Ins_SHPIX, Ins_DELTAP, Ins_DELTAC)
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Implement unpatented
+	hinting.
+	(TT_RunIns): Updated.
+
+	* src/truetype/ttobjs.c
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Include
+	FT_TRUETYPE_UNPATENTED_H.
+	(tt_face_init) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING,
+	TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING]: Check
+	FT_PARAM_TAG_UNPATENTED_HINTING.
+
+	* src/truetype/ttobjs.h (TT_GraphicsState)
+	[TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Add `both_x_axis'.
+
+2003-04-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdflib.c (hash_bucket, hash_lookup): Use `const' for first
+	argument.
+	(bdf_get_font_property): Use `const' for third argument.
+	Updated all callers.
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Set pixel width and height
+	similar to the PCF driver.
+	* src/bdf/bdf.h (_hashnode): Use `const' for `key'.
+	Updated.
+
+	* src/gzip/ftgzip.c: C++ doesn't like that the array `inflate_mask'
+	is declared twice.  It is perhaps better to modify the zlib source
+	files directly instead of this hack.
+	(zcalloc, zfree, ft_gzip_stream_close, ft_gzip_stream_io): Add casts
+	to make build with g++ successful.
+
+2003-04-24  Manish Singh  <yosh at gimp.org>
+
+	* src/cid/cidobjs.c (cid_face_init), src/type1/t1objs.c
+	(T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Split on `-'
+	also for searching the style name.
+
+2003-04-24  David Turner  <david at freetype.org>
+
+	* src/pcf/pcfread.c (pcf_load_font): Fixed the computation of
+	face->num_glyphs.  We must increase the value by 1 to respect the
+	convention that glyph index 0 always corresponds to the `missing
+	glyph'.
+
+2003-04-24  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/unix-cc.in (CFLAGS): Add @CPPFLAGS at .
+
+2003-04-24  Dieter Baron  <dillo at netbsd.org>
+
+	* builds/unix/freetype-config.in (cflags): Emit FreeType 2's include
+	files first.  Otherwise there are conflicts with FreeType 1
+	installed simultaneously.
+
+2003-04-23  Werner Lemberg  <wl at gnu.org>
+
+	Fixing bugs reported by Nelson Beebe.
+
+	* src/base/ftstroker.c (FT_Stroker_ParseOutline): Remove unused
+	variable `in_path'.
+
+	* src/base/ftobjs (ft_glyphslot_set_bitmap): Change type of
+	second argument to `FT_Byte*'.
+	* include/freetype/internal/ftobjs.h: Updated.
+
+	* src/bdf/bdflib.c (_bdf_readstream): Remove unused variable `res'.
+	(_bdf_parse_glyphs): Remove unused variable `next'.
+	Mark `call_data' as unused.
+
+	* src/cache/ftlru.c (FT_LruList_Lookup): Remove unused variable
+	`plast'.
+
+	* src/pcf/pcfread.c (pcf_seek_to_table_type): Slight recoding to
+	actually use `error'.
+	(pcf_load_font): Remove unused variable `avgw'.
+
+	* src/pfr/pfrobjs.c (pfr_face_get_kerning): Change return type
+	to `void'.
+	Mark `error' as unused.
+	* src/pfr/pfrobjs.h: Updated.
+	* src/pfr/pfrdrivr.c (pfr_get_kerning): Updated.
+
+	* src/sfnt/ttload.c (sfnt_dir_check): Remove unused variable
+	`format_tag'.
+
+	* src/sfnt/ttcmap0.c (tt_cmap6_validate, tt_cmap10_validate): Remove
+	unused variable `start'.
+	(tt_cmap10_char_next): Remove unused variable `result'
+
+	* src/sfnt/sfobjs.c (tt_face_get_name): Mark `error' as unused.
+
+	* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Mark `error' as
+	unused.
+
+	* src/type1/t1objs.c (T1_Face_Init): Remove unused variable
+	`pshinter'.
+
+	* src/type1/t1gload.c (T1_Load_Glyph): Use `glyph_data_loaded'
+	only for FT_CONFIG_OPTION_INCREMENTAL.
+
+2003-04-23  Akito Hirai  <akito at kde.gr.jp>
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_validate): Provide a weak variant
+	of the glyph ID bounding check if FT_VALIDATE_TIGHT is not active.
+	Without this change, many CJK fonts from Dynalab are rejected.
+
+2003-04-23  Joe Marcus Clarke  <marcus at FreeBSD.org>
+
+	* src/base/ftbdf.c (FT_Get_BDF_Property): Check for valid
+	`get_interface'.
+
+2003-04-23  Paul Miller  <paulm at profoundeffects.com>
+
+	* src/base/ftmac.c (parse_fond): Fix handling of style names.
+
+2003-04-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/pfrload.c (pfr_extra_item_load_font_id): Use FT_PtrDist
+	instead of FT_UInt for `len'.
+
+2003-04-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/gzip/ftgzip.c (zcalloc) [!FT_CONFIG_OPTION_SYSTEM_ZLIB]:
+	Convert K&R format to modern C usage.
+	(FT_Stream_OpenGzip): Use long constant.
+
+2003-04-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c (ftc_cache_lookup): Remove shadow declaration
+	of `manager'.
+
+2003-04-20  Werner Lemberg  <wl at gnu.org>
+
+	* doc/INSTALL.UNX: Cleaned up.
+
+2003-04-09  Torrey Lyons  <torrey at mrcla.com>
+
+	* src/base/ftmac.c (open_face_from_buffer): Removed a double-free
+	bug that had nasty consequences when trying to open an `invalid'
+	font on a Mac.
+
+2003-04-09  Mike Fabian  <mfabian at suse.de>
+
+	* src/bdf/bdfdrivr.h (BDF_encoding_el), src/pcf/pcf.h
+	(PCF_EncodingRec): Changed FT_Short to FT_UShort in order to be able
+	to access more than 32768 glyphs in fonts.
+
+2003-04-08  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.4 released.
+	=========================
+
+
+2003-04-03  Martin Muskens  <mmuskens at aurelon.com>
+
+	* src/type1/t1load.c (T1_Open_Face): Fixed the code to make it
+	handle special cases where a font only contains a `.notdef' glyph
+	(happens in PDF-embedded fonts).  Otherwise, FT_Panic was called.
+
+2003-03-27  David Turner  <david at freetype.org>
+
+	* README: Updated.
+
+	* README.UNX: Removed (now replaced by docs/INSTALL.UNX).
+
+	* src/pshinter/pshalgo3.c: The hinter now performs as in 2.1.3 and
+	will ignore stem quantization only when FT_LOAD_TARGET_SMOOTH is
+	used.
+	(psh3_dimension_quantize_len): Enabled.
+	(psh3_hint_align): Enable commented code.
+	(psh3_hint_align_light): Commented out.
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Changed the default
+	computations to include rounding in all cases; this is required to
+	provide accurate kerning data when native TrueType hinting is
+	enabled.
+
+	* src/type1/t1load.c (is_name_char): The Type 1 loader now accepts
+	more general names according to the PostScript specification (the
+	previous one was too restrictive).
+	(parse_font_name, parse_encoding, parse_charstrings, parse_dict):
+	Use `is_name_char'.
+	(parse_subrs): Handle empty arrays.
+
+2003-03-20  David Turner  <david at freetype.org>
+
+	Serious rewriting of the documentation.
+
+	* docs/BUGS, docs/BUILD: Removed.
+	* docs/DEBUG.TXT: Renamed to...
+	* docs/DEBUG: This.
+	* docs/CUSTOMIZE, docs/TRUETYPE, docs/UPGRADE.UNX: New files.
+	* docs/INSTALL.ANY, docs/INSTALL.UNX, docs/INSTALL.GNU New files,
+	containing platform specific information previously in INSTALL.
+	* docs/readme.vms: Renamed to...
+	* docs/INSTALL.VMS: This.
+
+	* docs/*: Updated.
+
+	Introduced three new functions to deal with glyph bitmaps within
+	FT_GlyphSlot objects:
+
+	  ft_glyphslot_free_bitmap
+	  ft_glyphslot_alloc_bitmap
+	  ft_glyphslot_set_bitmap
+
+	These functions are much more convenient to use than managing the
+	FT_GLYPH_OWN_BITMAP flag manually.
+
+	* include/freetype/internal/ftobjs.h (ft_glyphslot_free_bitmap,
+	ft_glyphslot_alloc_bitmap, ft_glyphslot_set_bitmap): New functions.
+	* src/base/ftobjs.c: Implement them.
+	(ft_glyphslot_done): Use ft_glyphslot_free_bitmap.
+
+	* src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/pcf/pcfdriver.c
+	(PCF_Glyph_Load): Remove unused variable `memory'.
+	Use `ft_glyphslot_*' functions.
+	Don't set `FT_GLYPH_OWN_BITMAP'.
+
+	* src/pfr/pfrsbit.c (pfr_slot_load_bitmap): Use
+	`ft_glyphslot_alloc_bitmap'.
+
+	* src/sfnt/ttsbit.c (Load_SBit_Image): Change 5th argument to type
+	`FT_GlyphSlot'.
+	Adding argument `depth' to handle recursive calls.
+	Use `ft_glyphslot_alloc_bitmap'.
+	(tt_face_load_sbit_image): Remove unused variable `memory'.
+	Don't handle `FT_GLYPH_OWN_BITMAP'.
+	Update call to Load_SBit_Image.
+
+	* src/type42/t42objs.c (ft_glyphslot_clear): Renamed to...
+	(t42_glyphslot_clear): This.  Updated caller.
+	Call `ft_glyphslot_free_bitmap'.
+
+	* src/winfonts/winfnt.c (FNT_Load_Glyph): Use
+	`ft_glyphslot_set_bitmap'.
+	Don't handle `FT_GLYPH_OWN_BITMAP'.
+
+	* src/cache/ftlru.c (FT_LruList_Lookup): Fixed an invalid assertion
+	check.
+
+	* src/autohint/ahglyph.c (ah_outline_load): Add two scaling
+	arguments.
+	* src/autohint/ahglyph.h: Updated.
+	* src/autohint/ahhint.c (ah_hinter_load): Updated.
+	* src/autohint/ahglobal.c (ah_hinter_compute_widths): Updated.
+
+	* src/cache/ftccache.c (ftc_family_done): Fixed small bug that could
+	crash the cache in rare circumstances (mostly with broken fonts).
+
+2003-03-15  David Turner  <david at freetype.org>
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes): Fixed a small rounding
+	bug.  Actually, it seems that previous versions of FreeType didn't
+	perform TrueType rounding exactly as appropriate.
+
+2003-03-14  David Turner  <david at freetype.org>
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes): Fixing the small
+	TrueType native rendering glitches; they came from a small rounding
+	error.
+
+2003-03-13  David Turner  <david at freetype.org>
+
+	Added new environment variables to control memory debugging with
+	FreeType.  See the description of `FT2_DEBUG_MEMORY',
+	`FT2_ALLOC_TOTAL_MAX' and `FT2_ALLOC_COUNT_MAX' in DEBUG.TXT.
+
+	* src/base/ftdbgmem.c (FT_MemTableRec): Add `alloc_count',
+	`bound_total', `alloc_total_max', `bound_count', `alloc_count_max'.
+	(ft_mem_debug_alloc): Handle new variables.
+	(ft_mem_debug_init): s/FT_DEBUG_MEMORY/FT2_DEBUG_MEMORY/.
+	Handle new environment variables.
+	* docs/DEBUG.TXT: Updated.
+
+	Fixed the cache sub-system to correctly deal with out-of-memory
+	conditions.
+
+	* src/cache/ftccache.c (ftc_node_destroy): Comment out generic
+	check.
+	(ftc_cache_lookup): Implement loop.
+	* src/cache/ftccmap.c: Define FT_COMPONENT.
+	* src/cache/ftcsbits.c (ftc_sbit_node_load): Handle
+	FT_Err_Out_Of_Memory.
+	* src/cache/ftlru.c: Include FT_INTERNAL_DEBUG_H.
+	(FT_LruList_Lookup): Implement loop.
+
+	* src/pfr/pfrobjs.c (pfr_face_done): Fix memory leak.
+	(pfr_face_init): Fixing compiler warnings.
+
+	* src/psaux/psobjs.c (reallocate_t1_table): Fixed a bug (memory
+	leak) that only happened when a try to resize an array would end in
+	an out-of-memory condition.
+
+	* src/smooth/ftgrays.c (gray_convert_glyph): Removed compiler
+	warnings / volatile bug.
+
+	* src/truetype/ttobjs.c (tt_glyphzone_done): Removed segmentation
+	fault that happened in tight memory environments.
+
+2003-02-28  Pixel  <pixel at mandrakesoft.com>
+
+	* src/gzip/ftgzip.c (ft_gzip_file_done): Fixed memory leak: The ZLib
+	stream was not properly finalized.
+
+2003-02-25  Anthony Fok  <anthony at thizlinux.com>
+
+	* src/cache/ftccmap.c: Include FT_TRUETYPE_IDS_H.
+	(ftc_cmap_family_init): The cmap cache now
+	supports UCS-4 charmaps when available in Asian fonts.
+
+	* src/sfnt/ttload.c, src/base/ftobjs.c: Changed `asian' to `Asian'
+	in comments.
+
+2003-02-25  David Turner  <david at freetype.org>
+
+	* src/gzip/ftgzip.c (ft_gzip_file_fill_output): Fixed a bug that
+	caused FreeType to loop endlessly when trying to read certain
+	compressed gzip files.  The following test reveals the bug:
+
+	  touch 0123456789 ; gzip 0123456789 ; ftdump 0123456789.gz
+
+	Several fixes to the PFR font driver:
+
+	- The list of available embedded bitmaps was not correctly set in
+	  the root FT_FaceRec structure describing the face.
+
+	- The glyph loader always tried to load the outlines when
+	  FT_LOAD_SBITS_ONLY was specified.
+
+	- The table loaded now scans for *undocumented* elements of a
+	  physical font's auxiliary data record.  This is necessary to
+	  retrieve the `real' family and style names.
+
+	NOTE THAT THESE CHANGES THE FAMILY NAME OF MANY PFR FONTS!
+
+	* src/pfr/pfrload.c (pfr_aux_name_load): New function.
+	(pfr_phy_font_done): Free `family_name' and `style_name' also.
+	Remove unused variables.
+	(pfr_phy_font_load): Extract useful information from the auxiliary
+	bytes.
+
+	* src/pfr/pfrobjs.c (pfr_face_done): Set pointers to NULL.
+	(pfr_face_init): Provide fallback values for `family_name' and
+	`style_name'.
+	Handle strikes.
+	(pfr_slot_load): Handle FT_LOAD_SBITS_ONLY.
+	* src/pfr/pfrtypes.h (PFR_PhyFontRec): Add fields `ascent',
+	`descent', `leading', `family_name', and `style_name'.
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes): Fixed a rounding bug
+	when computing the scale factors for a given character size in
+	points with resolution.
+
+	* devel/ft2build.h, devel/ftoption.h: New files (in a new directory)
+	which are special development versions of include/ft2build.h and
+	include/freetype/config/ftoption.h, respectively.
+
+2003-02-18  David Turner  <david at freetype.org>
+
+	Fixing the slight distortion problem that occurred due to the latest
+	auto-hinter changes.
+
+	* src/base/ftobjs.c (ft_recompute_scaled_metrics): Fix rounding.
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes): New variable `metrics2'.
+	[!TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Removed.
+
+	* src/truetype/ttobjs.h (TT_SizeRec): New field `metrics'.
+	* src/truetype/ttobjs.c (Reset_Outline_Size): Fix initialization of
+	`metrics'.
+	[FT_CONFIG_CHESTER_ASCENDER]: Code removed.
+	(Reset_SBit_Size): Fix initialization of `metrics'.
+
+	* src/truetype/ttinterp.c (TT_Load_Context): Fix initialization of
+	`exec->metrics'.
+
+	* src/autohint/ahhint.c (ah_hinter_load): Disabled the advance width
+	`correction' which seemed to provide more trouble than benefits.
+
+2003-02-13  Graham Asher  <graham.asher at btinternet.com>
+
+	Changed the incremental loading interface in a way that makes it
+	simpler and allows glyph metrics to be changed (e.g., by adding a
+	constant, as required by CFF fonts) rather than just overridden.
+	This was required to make the GhostScript-to-FreeType bridge work.
+
+	* src/cff/cffgload.c (cff_slot_load) [FT_CONFIG_OPTION_INCREMENTAL]:
+	Allow metrics to be overridden.
+	* src/cid/cidgload.c (cid_load_glyph) [FT_CONFIG_OPTION_INCREMENTAL]:
+	Ditto.
+
+	* src/truetype/ttgload.c (load_truetype_glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Simplify.
+	(compute_glyph_metrics) [FT_CONFIG_OPTION_INCREMENTAL]: Code block
+	moved down.
+
+	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+
+	* include/freetype/ftincrem.h: Updated.
+
+2003-01-31  David Turner  <david at freetype.org>
+
+	* docs/CHANGES, docs/VERSION.DLL, docs/TODO: Updating documentation
+	for the 2.1.4 release.
+
+	* builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/index.html: Updating the project file for
+	2.1.4.
+
+	* src/gzip/adler32.c, src/gzip/ftgzip.c, src/gzip/infblock.c,
+	src/gzip/infcodes.c, src/gzip/inflate.c, src/gzip/inftrees.c,
+	src/gzip/infutil.c: Removed old-style (K&R)function definitions.
+	This avoids warnings with Visual C++ at its most pedantic mode.
+
+	* src/pfr/pfrsbit.c: Removed compiler warnings.
+
+	* src/cache/ftccmap.c (ftc_cmap_family_init): Changed an FT_ERROR
+	into an FT_TRACE1 since it caused `ftview' and others to dump too
+	much junk when trying to display a waterfall with a font without a
+	Unicode charmap (e.g.  SYMBOL.TTF).
+
+	Implemented FT_CONFIG_CHESTER_BLUE_SCALE, corresponding to the last
+	patch from David Chester, but with a much simpler (and saner)
+	implementation.
+
+	* src/autohint/ahhint.c (ah_hinter_load_glyph)
+	[FT_CONFIG_CHESTER_BLUE_SCALE]: Try to optimize the y_scale so that
+	the top of non-capital letters is aligned on a pixel boundary
+	whenever possible.
+
+	* src/base/ftobjs.c (FT_Set_Char_Size)
+	[FT_CONFIG_CHESTER_BLUE_SCALE]: Round differently.
+	* src/truetype/ttdriver.c (Set_Char_Sizes)
+	[TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Do some rounding only
+	if this macro is defined.
+
+	* src/truetype/ttobjs.c (Reset_Outline_Size)
+	[FT_CONFIG_CHESTER_ASCENDER]: Round differently.
+
+	* src/pshinter/pshalgo3.c: Improved the Postscript hinter.  Getting
+	rid of stem snapping seems to work well here (though the stems are
+	still slightly moved to increase contrast).
+	(psh3_dimension_quantize_len): Commented out.
+	(psh3_hint_align_light): New function.
+	(psh3_hint_align): Comment out some code.
+
+	THIS IMPROVES ANTI-ALIASED RENDERING, BUT MONOCHROME AND LCD MODES
+	STILL SUCK.
+
+2003-01-22  David Chester  <davidchester at qmx.net>
+
+	* src/autohint/ahhint.c (ah_compute_stem_width): Small fix to the
+	stem width optimization.
+
+2003-01-22  David Turner  <david at freetype.org>
+
+	Adding a new API `FT_Get_BDF_Property' to retrieve the BDF
+	properties of a given PCF or BDF font.
+
+	* include/freetype/ftbdf.h (BDF_PropertyType): New enumeration.
+	(BDF_Property, BDF_PropertyRec): New structure.
+	FT_Get_BDF_Property): New function.
+	* include/freetype/internal/bdftypes.h: Include FT_BDF_H.
+	(BDF_GetPropertyFunc): New function pointer.
+
+	* src/base/ftbdf.c (test_font_type): New helper function.
+	(FT_Get_BDF_Charset_ID): Use `test_font_type'.
+	(FT_Get_BDF_Property): New function.
+
+	* src/bdf/bdfdrivr.c: Include FT_BDF_H.
+	(bdf_get_bdf_property, bdf_driver_requester): New functions.
+	(bdf_driver_class): Use `bdf_driver_requester'.
+
+	* src/pcf/pcfdrivr.c: Include FT_BDF_H.
+	(pcf_get_bdf_property, pcf_driver_requester): New functions
+	(pcf_driver_class): Use `pcf_driver_requester'.
+
+	* src/pcf/pcfread.c: Include `pcfread.h'.
+	(pcf_find_property): Decorate it with FT_LOCAL_DEF.
+	* src/pcf/pcfread.h: New file, providing `pcf_find_property'.
+
+	* src/sfnt/ttload.c (sfnt_dir_check): Relaxed the `head' table size
+	verification to accept a few broken fonts who pad the size
+	incorrectly (the table should be padded, but its `size' field
+	shouldn't according to the specification).
+
+2003-01-18  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ltmain.sh: Regenerated with `libtoolize --force
+	--copy' from libtool 1.4.3.
+	* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
+	automake 1.7.1.
+	* builds/unix/configure: Regenerated with autoconf 2.54.
+	* builds/unix/config.guess, builds/unix/config.sub: Updated from
+	`config' CVS module at subversions.gnu.org.
+	* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
+	`automake' CVS module at subversions.gnu.org.
+
+2003-01-15  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h: Fixed documentation for
+	FT_Size_Metrics.
+
+2003-01-15  James Su  <suzhe at turbolinux.com.cn>
+
+	* src/gzip/ftgzip.c (ft_gzip_check_header): Bugfix: couldn't read
+	certain gzip-ed font files (typo: `&&' -> `&').
+
+2003-01-15  Huw D M Davies  <h.davies1 at physics.ox.ac.uk>
+
+	Added a Windows .FNT specific API (mostly for Wine).  Also fixed a
+	nasty bug in the header loader which would cause invalid memory
+	overwrites.
+
+	* include/freetype/config/ftheader.h (FT_WINFONTS_H): New macro
+	for ftwinfnt.h.
+	* include/freetype/internal/fnttypes.h: Include FT_WINFONTS_H.
+	(FNT_FontRec): Updated.
+	Move Windows FNT definition to...
+	* include/freetype/ftwinfnt.h: This new file.
+	(FT_WinFNT_HeaderRec): Rename `reserved2' to `reserved1'.
+	* src/base/ftwinfnt.c: New file, providing `FT_Get_WinFNT_Header'.
+	* src/winfonts/winfnt.c (winfnt_header_fields): Updated.
+	Rename `reserved2' to `reserved1'.
+	(fnt_font_load): Updated.
+
+	* src/base/Jamfile, src/base/descrip.mms, src/base/rules.mk:
+	Updated.
+
+2003-01-14  Graham Asher  <graham.asher at btinternet.com>
+
+	* include/freetype/ftglyph.h, src/base/ftglyph.c: Added `const' to
+	the type of the first argument to FT_Matrix_Multiply, which isn't
+	changed -- this adds documentation and convenience.
+
+2003-01-13  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/sfnt/ttload.c (tt_face_load_metrics)
+	[FT_CONFIG_OPTION_INCREMENTAL]: TrueType typefaces without
+	horizontal metrics (without the `hmtx' table) are now tolerated if
+	an incremental interface has been specified that has a
+	get_glyph_metrics function, implying that metrics will be supplied
+	from outside.  This happens for certain Type 42 fonts passed from
+	GhostScript.
+
+2003-01-11  David Chester  <davidchester at qmx.net>
+
+	Patches to the auto-hinter in order to slightly improve the output.
+	Note that everything is controlled through the new
+	FT_CONFIG_OPTION_CHESTER_HINTS defined in `ftoption.h'.  There are
+	also individual FT_CONFIG_CHESTER_XXX macros to control individual
+	`features'.
+
+	Note that all improvements are enabled by default, but can be
+	tweaked for optimization and testing purposes.  The configuration
+	macros will most likely disappear in the short future.
+
+	* include/freetype/config/ftoption.h
+	(FT_CONFIG_OPTION_CHESTER_HINTS): New macro.
+	(FT_CONFIG_CHESTER_{SMALL_F,ASCENDER,SERIF,STEM,BLUE_SCALE})
+	[FT_CONFIG_OPTION_CHESTER_HINTS]: New macros to control individual
+	features.
+
+	* src/autohint/ahglobal.c (blue_chars) [FT_CONFIG_CHESTER_SMALL_F]:
+	Add blue zone for `fijkdbh'.
+	* src/autohint/ahglobal.h (AH_IS_TOP_BLUE)
+	[FT_CONFIG_CHESTER_SMALL_F]: Use `AH_BLUE_SMALL_F_TOP'.
+	* src/autohint/ahglyph.c (ah_outline_compute_edges)
+	[FT_CONFIG_CHESTER_SERIF]: Use `AH_EDGE_SERIF'.
+	(ah_outline_compute_blue_edges) [FT_CONFIG_CHESTER_SMALL_F]:
+	Increase threshold for `best_dist'.
+	* src/autohint/ahhint.c (ah_compute_stem_width)
+	[FT_CONFIG_CHESTER_SERIF]: Provide new version for improved serif
+	handling.
+	(ah_align_linked_edge) [FT_CONFIG_CHESTER_SERIF]: Use special
+	version of `ah_compute_stem_width'.
+	(ah_hint_edges_3) [FT_CONFIG_CHESTER_STEM]: A new algorithm for stem
+	alignment when stem widths are less than 1.5 pixels wide centers the
+	stem slightly off-center of the center of a pixel (this increases
+	sharpness and consistency).
+	[FT_CONFIG_CHESTER_SERIF]: Use special version of
+	`ah_compute_stem_width'.
+	* src/autohint/ahtypes.h [FT_CONFIG_CHESTER_SMALL_F]: Add
+	`AH_BLUE_SMALL_F_TOP'.
+
+2003-01-11  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/fnttypes.h (WinFNT_HeaderRec): Increase
+	size of `reserved2' to avoid memory overwrites.
+
+2003-01-08  Huw Davies  <huw at codeweavers.com>
+
+	* src/winfonts/winfnt.c (winfnt_header_fields): Read 16 bytes into
+	`reserved2', not `reserved'.
+
+	* src/base/ftobjs.c (find_unicode_charmap): Fixed the error code
+	returned when the font doesn't contain a Unicode charmap.  This
+	allows FT2 to load `symbol.ttf' and a few others correctly since the
+	last release.
+	(open_face): Fix return value.
+
+2003-01-08  Owen Taylor  <owen at redhat.com>
+
+	Implemented the FT_RENDER_MODE_LIGHT hinting mode in the auto and
+	postscript hinters.
+
+	* src/autohint/ahtypes.h (AH_HinterRec): Add `do_stem_adjust'.
+	* src/autohint/ahhint.c (ah_compute_stem_width): Handle
+	hinter->do_stem_adjust.
+	(ah_hinter_load_glyph): Set hinter->do_stem_adjust.
+
+	* src/pshinter/pshalgo3.h (PSH3_GlyphRec): Add `do_stem_adjust'.
+	* src/pshinter/pshalgo3.c (psh3_hint_align): Use `do_stem_adjust'.
+	(ps3_hints_apply): Handle FT_RENDER_MODE_LIGHT.
+
+	* include/freetype/freetype.h (FT_Render_Mode): Add
+	FT_RENDER_MODE_LIGHT.
+
+	* src/truetype/ttgload.c: Fixing the TrueType loader to handle
+	invalid composites correctly by limiting the recursion depth.
+	(TT_MAX_COMPOSITE_RECURSE): New macro.
+	(load_truetype_glyph): Add argument `recurse_count'.
+	Load a composite only if the numbers of contours is -1, emit error
+	otherwise.
+	(TT_Load_Glyph): Updated.
+
+2003-01-08  David Turner  <david at freetype.org>
+
+	* Jamrules, Jamfile, Jamfile.in, src/*/Jamfile: Small changes to
+	support the compilation of FreeType 2 as part of larger projects
+	with their own configuration options (only with Jam).
+
+2003-01-07  David Turner  <david at freetype.org>
+
+	* src/base/ftstroker.c: Probably the last bug-fixes to the stroker;
+	the API is likely to change, however.
+	(ft_stroke_border_close): Don't record empty paths.
+	(ft_stroke_border_get_counts): Increase `num_points' also in for loop.
+	(ft_stroke_border_export): Don't increase `write' twice in for loops.
+	(ft_stroker_outside): Handle `phi' together with `theta'.
+	(FT_Stroker_ParseOutline): New function.
+
+	* src/base/fttrigon.c (FT_Angle_Diff): Fixing function: It returned
+	invalid values for large negative angle differences (resulting in
+	incorrect stroker computations, among other things).
+
+	* src/cache/ftccache.c (ftc_node_hash_unlink): Removing incorrect
+	assertion, and changing code to avoid hash table size contraction.
+
+	* src/base/Jamfile, src/base/rules.mk, src/base/descrip.mms: Adding
+	`ftstroker' to default build, as optional component.
+
+2002-12-26  David Turner  <david at freetype.org>
+
+	* src/gzip/adler32.c, src/gzip/infblock.c, src/gzip/inflate.c,
+	src/gzip/inftrees.c, src/gzip/zconf.h, src/gzip/zlib.h,
+	src/gzip/zutil.h: Updates to allow compilation without compiler
+	warnings with LCC-Win32.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.
+	* builds/unix/configure.ac (version_info): Increased to 9:3:3.
+	* builds/unix/configure: Regenerated.
+	* docs/VERSION.DLL: Updated.
+
+2002-12-23  Anthony Fok  <anthony at thizlinux.com>
+
+	* builds/unix/configure.ac, builds/unix/unix-cc.in (LINK_LIBRARY),
+	builds/unix/unix-def.in (SYSTEM_ZLIB): Small fix to configure
+	sub-system on Unix to allow other programs to correctly link with
+	zlib when needed.
+
+2002-12-19  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/sfnt.h (SFNT_Load_Table_Func): New
+	function pointer.
+
+	* include/freetype/tttables.h (FT_Load_Sfnt_Table): New function.
+	* src/base/ftobjs.c: Implement it.
+
+	* src/sfnt/sfdriver.c (sfnt_get_interface): Handle `load_sfnt'
+	module request.
+
+2002-12-17  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c (find_unicode_charmap): Added some comments to
+	better explain what's happening there.
+	(open_face): Included Graham Asher's fix to prevent faces without
+	Unicode charmaps from loading.
+
+	* src/winfonts/winfnt.c: Included George Williams's fix to support
+	version 2 fonts correctly.
+	(winfnt_header_fields): Updated.
+	(fnt_font_load): Handle version 2 fonts.
+	(FNT_Load_Glyph): Updated.
+
+2002-12-16  David Turner  <david at freetype.org>
+
+	* docs/VERSION.DLL: Updating document to better explain the
+	differences between the three version numbers being used on Unix, as
+	well as providing an autoconf fragment provided by Lars Clausen.
+
+	* src/smooth/ftgrays.c (gray_render_conic): Fixed small bug that
+	prevented Bézier arcs with negative vertical coordinates to be
+	rendered appropriately.
+
+2002-12-02  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* src/base/ftobjs.c: Modified the logic to get Unicode charmaps.
+	Now it loads UCS-4 charmaps when there is one.
+	(find_unicode_charmap): New function.
+	(open_face): Refer to the above one.
+	(FT_Select_Charmap): Idem.
+
+2002-11-29  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* include/freetype/ftgzip.h: Correct the name of the controlling
+	macro (was __FTXF86_H__ ...).
+
+2002-11-27  Vincent Caron  <v.caron at zerodeux.net>
+
+	* builds/unix/unix-def.in, builds/unix/freetype-config.in,
+	builds/unix/configure.ac, src/gzip/rules.mk, src/gzip/ftgzip.c
+	[FT_CONFIG_OPTION_SYSTEM_ZLIB]: Adding support for system zlib
+	installations if available on the target platform (Unix only).
+
+2002-11-23  David Turner  <david at freetype.org>
+
+	* src/cff/cffload.c (cff_charset_load, cff_encoding_load): Modified
+	charset loader to accept pre-defined charsets, even when the font
+	contains fewer glyphs.  Also enforced more checks to ensure that we
+	never overflow the character codes array in the encoding.
+
+2002-11-22  Antoine Leca  <Antoine-Freetype at Leca-Marti.org>
+
+	* include/freetype/ttnameid.h: Updated to latest OpenType
+	specification.
+
+2002-11-18  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.3 released.
+	=========================
+
+
+2002-11-07  David Turner  <david at freetype.org>
+
+	* src/cache/ftcsbits.c (ftc_sbit_node_load): Fixed a small bug that
+	caused problems with embedded bitmaps.
+
+	* src/otlayout/otlayout.h, src/otlayout/otlconf.h,
+	src/otlayout/otlgsub.c, src/otlayout/otlgsub.h,
+	src/otlayout/otlparse.c, src/otlayout/otlparse.h,
+	src/otlayout/otlutils.h: Updating the OpenType Layout code, adding
+	support for the first GSUB lookups.  Nothing that really compiles
+	for now though.
+
+	* src/autohint/ahhint.c (ah_align_serif_edge): Disabled serif stem
+	width quantization.  It produces slightly better shapes though this
+	is not distinguishable with many fonts.
+	Remove other dead code.
+
+	* src/Jamfile, src/*/Jamfile: Simplified.
+	Use $(FT2_SRC_DIR).
+
+2002-11-06  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h (FT_LOAD_TARGET_LIGHT): New macro.
+	(FT_LOAD_TARGET, FT_LOAD_TARGET_MODE): Use `& 15' instead of `& 7'.
+
+2002-11-05  David Turner  <david at freetype.org>
+
+	* include/freetype/config/ftoption.h, src/gzip/ftgzip.c: Added
+	support for the FT_CONFIG_OPTION_SYSTEM_ZLIB option, used to specify
+	the use of system-wide zlib.
+
+	Note that this macro, as well as
+	TT_CONFIG_OPTION_BYTECODE_INTERPRETER, is not #undef-ed anymore.
+	This allows the build system to define them depending on the
+	configuration (typically by adding -D flags at compile time).
+
+	* src/sfnt/ttcmap0.c (tt_face_build_cmaps): Removed compiler
+	warnings in optimized mode relative to the `volatile' local
+	variables.  This was not a compiler bug after all, but the fact that
+	a pointer to a volatile variable is not the same as a volatile
+	pointer to a variable :-)
+
+	The fix was to change
+	  `volatile FT_Byte* p'
+	into
+	  `FT_Byte* volatile p'.
+
+	* src/pfr/pfrload.c (pfr_phy_font_load), src/pfr/pfrdrivr.c
+	(pfr_get_metrics), src/gzip/inftrees.c: Removed compiler warnings in
+	optimized modes.
+
+	* src/gzip/*.[hc]: Modified our zlib copy in order to prevent
+	exporting any zlib function names outside of the component.  This
+	prevents linking problems on some platforms, when applications want
+	to link FreeType _and_ zlib together.
+
+2002-11-05  Juliusz  <jch at pps.jussieu.fr>
+
+	* src/psaux/psobjs.c (ps_table_add): Modified increment loop in
+	order to implement exponential behaviour.
+
+2002-11-01  David Turner  <david at freetype.org>
+
+	Added PFR-specific public API.  Fixed the kerning retrieval routine
+	(it returned invalid values when the outline and metrics resolution
+	differ).
+
+	* include/freetype/ftpfr.h, include/freetype/internal/pfr.h: New
+	files.
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_PFR_H): New
+	macro for pfr.h.
+
+	* src/base/ftpfr.c: New file.
+	* src/base/Jamfile, src/base/descrip.mms: Updated.
+
+	* src/pfr/pfrdrivr.c: Include FT_INTERNAL_PFR_H.
+	(pfr_get_kerning, pfr_get_advance, pfr_get_metrics): New functions.
+	(pfr_service_rec): New format interface.
+	(pfr_driver_class): Use `pfr_service_rec'.
+	Replace `pfr_face_get_kerning' with `pfr_get_kerning'.
+	* src/pfr/pfrobjs.c: Remove dead code.
+
+	* src/base/ftobjs.c (ft_glyphslot_clear): Small internal fix to
+	better support bitmap-based font formats.
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Fix handling of
+	`scale'.
+	Fix arguments to `FT_Vector_From_Polar'.
+
+2002-10-31  David Turner  <david at freetype.org>
+
+	Add support for automatic handling of gzip-compressed PCF files.
+
+	* src/gzip/*: New files, taken from the zlib package (except
+	ftgzip.c).
+
+	* include/freetype/ftgzip.h, src/gzip/ftgzip.c: New files.
+	* include/freetype/config/ftheader.h (FT_GZIP_H): New macro for
+	`ftgzip.h'.
+
+	* src/pcf/pcfdriver.c: Include FT_GZIP_H and FT_ERRORS_H.
+	(PCF_Face_Init): If normal open fails, try to open gzip stream.
+	(PCF_Face_Done): Close gzip stream.
+
+	* include/freetype/internal/pcftypes.h (PCF_Public_FaceRec),
+	src/pcf/pcf.h (PCF_FaceRec): Add `gzip_stream' and `gzip_source'.
+
+	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_ZLIB):
+	New macro.
+	(T1_CONFIG_OPTION_DISABLE_HINTER, FT_CONFIG_OPTION_USE_CMAPS
+	FT_CONFIG_OPTION_NO_CONVENIENCE_FUNCS,
+	FT_CONFIG_OPTION_ALTERNATE_GLYPH_FORMATS): Removed.
+
+	(FT_EXPORT, FT_EXPORT_DEF, FT_DEBUG_LEVEL_ERROR,
+	FT_DEBUG_LEVEL_TRACE, FT_DEBUG_MEMORY): Comment out definitions so
+	that platform specific configuration file can override.
+
+	* include/freetype/internal/ftstream.h: Include FT_SYSTEM_H.
+
+2002-10-30  David Turner  <david at freetype.org>
+
+	* FreeType 2.1.3rc3 released.
+
+2002-10-25  David Turner  <david at freetype.org>
+
+	* include/freetype/ftcache.h (FT_POINTER_TO_ULONG): New macro.
+	(FTC_FACE_ID_HASH): Rewritten, using FT_POINTER_TO_ULONG.
+
+2002-10-22  Giuseppe Ghibò  <ghibo at mandrakesoft.com>
+
+	* include/freetype/freetype.h (FT_Encoding): Fix entry for latin-2.
+
+2002-10-07  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FT_Open_Face): Use `const' for `args'
+	(suggested by Graham).
+	* src/base/ftobjs.c (FT_Open_Face): Updated.
+	(ft_input_stream_new): Ditto.
+
+2002-10-05  David Turner  <david at freetype.org>
+
+	Adding support for embedded bitmaps to the PFR driver, and rewriting
+	its kerning loader/handler to use all kerning pairs in a physical
+	font (and not just the first item).
+
+	* src/pfr/pfr.c: Include `pfrsbit.c'.
+	* src/pfr/pfrgload.c: Include `pfrsbit.h'.
+	* src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): Rewritten.
+	(pfr_phy_font_done, pfr_phy_font_load): Updated.
+	* src/pfr/pfrobjs.c: Include `pfrsbit.h'.
+	(pfr_face_init): Handle kerning and embedded bitmaps.
+	(pfr_slot_load): Load embedded bitmaps.
+	(PFR_KERN_INDEX): Removed.
+	(pfr_face_get_kerning): Rewritten.
+	* src/pfr/pfrsbit.c, src/pfr/pfrsbit.h: New files.
+	* src/pfr/pfrtypes.h (PFR_KernItemRec): New structure.
+	(PFR_KERN_INDEX): New macro.
+	(PFR_PhyFontRec): Add items for kerning and embedded bitmaps.
+	* src/pfr/Jamfile (_sources) [FT2_MULTI]: Add `pfrsbit'.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Don't load bitmap fonts if
+	FT_LOAD_NO_RECURSE is set.
+	Load embedded bitmaps only if FT_LOAD_NO_BITMAP isn't set.
+
+	* src/tools/docmaker/content.py, src/tools/docmaker/sources.py,
+	src/tools/docmaker/tohtml.py: Fixing a few nasty bugs.
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_validate): The validator for format 4
+	sub-tables is now capable of dealing with invalid `length' fields at
+	the start of the sub-table.  This allows fonts like `mg______.ttf'
+	(i.e.  Marriage) to return accurate charmaps.
+
+	* docs/CHANGES: Updated.
+
+2002-10-05  Werner Lemberg  <wl at gnu.org>
+
+	* src/smooth/ftgrays.c (SUBPIXELS): Add cast to `TPos'.
+	Update all callers.
+	(TRUNC): Add cast to `TCoord'.
+	Update all callers.
+	(TRaster): Use `TPos' for min_ex, max_ex, min_ey, max_ey, and
+	last_ey.
+	Update all casts.
+	(gray_render_line): Fix casts for `p' and `first'.
+
+2002-10-02  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/bdf/bdflib.c (bdf_load_font): Allocate the _bdf_parse_t
+	structure with FT_ALLOC instead of using the stack.
+
+2002-09-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/include/freetype/internal/tttypes.h (num_sbit_strikes,
+	num_sbit_scales): Use `FT_ULong'.
+	* src/sfnt/sfobjs.c (sfnt_load_face): Updated accordingly.
+	* src/sfnt/ttsbit.c (tt_face_set_sbit_strike): Ditto.
+	(find_sbit_image): Remove cast.
+	* src/raster/ftrend1.c (ft_raster1_render): Fix cast.
+
+2002-09-27  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/sfnt/ttload.c (tt_face_load_names): Use cast.
+	* src/sfnt/ttcmap.c (code_to_next2): Use long constant.
+	(code_to_index4): Use cast.
+	(code_to_index8_12): Fix cast.
+	* src/sfnt/ttcmap0.c (tt_cmap4_char_next, tt_cmap8_char_index,
+	tt_cmap12_char_index): Use cast for `result'.
+	(tt_face_build_cmaps): Use cast.
+	* src/sfnt/sfobjs.c (tt_name_entry_ascii_from_ucs4): Use cast for
+	`code'.
+	(sfnt_load_face): Use FT_Int32 for `flags'.
+
+	* src/smooth/ftgrays.c (gray_render_scanline, gray_render_line,
+	gray_compute_cbox, gray_convert_glyph, gray_raster_reset): Add casts
+	to `TCoord' and `int'.
+	More 16bit fixes.
+	s/FT_Pos/TPos/.
+	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Add casts.
+
+2002-09-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names,
+	tt_face_get_ps_name): Replace switch statement with if clauses to
+	make it more portable.
+
+	* src/cff/cffobjs.c (cff_face_init): Ditto.
+
+	* include/freetype/ftmodule.h (FT_Module_Class): Use `FT_Long' for
+	`module_size'.
+	* include/freetype/ftrender.h (FT_Glyph_Class_): Use `FT_Long' for
+	`glyph_size'.
+
+	* src/base/ftobjs.c (FT_Render_Glyph): Change second parameter to
+	`FT_Render_Mode'.
+	(FT_Render_Glyph_Internal): Change third parameter to
+	`FT_Render_Mode'.
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Change second parameter
+	to `FT_Render_Mode'.
+
+	* src/raster/ftrend1.c (ft_raster1_render): Change third parameter
+	to `FT_Render_Mode'.
+	* src/smooth/ftsmooth.c (ft_smooth_render, ft_smooth_render_lcd,
+	ft_smooth_render_lcd_v): Ditto.
+	(ft_smooth_render_generic): Change third and fifth parameter to
+	`FT_Render_Mode'.
+
+	* include/freetype/freetype.h, include/freetype/internal/ftobjs.h,
+	include/freetype/ftglyph.h: Updated.
+
+	* src/cff/cffdrivr.c (Load_Glyph), src/pcf/pcfdriver.c
+	(PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load),
+	src/winfonts/winfnt.c (FNT_Load_Glyph), src/t42/t42objs.c
+	(T42_GlyphSlot_Load), src/bdf/bdfdrivr.c (BDF_Glyph_Load): Change
+	fourth parameter to `FT_Int32'.
+
+	* src/pfr/pfrobjs.c (pfr_face_init): Add two missing parameters
+	and declare them as unused.
+
+	* src/cid/cidparse.h (CID_Parser): Use FT_Long for `postscript_len'.
+
+	* src/psnames/psnames.h (PS_Unicode_Value_Func): Change return
+	value to FT_UInt32.
+	* src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table):
+	Updated accordingly.
+
+2002-09-26  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'.
+	(cff_get_glyph_name): Use cast for result of ft_strlen.
+	* src/cff/cffparse.c (cff_parse_real): User cast for assigning
+	`exp'.
+	* src/cff/cffload.c (cff_index_get_pointers): Use FT_ULong for
+	some local variables.
+	(cff_charset_load, cff_encoding_load): Use casts to FT_UInt for some
+	switch statements.
+	(cff_font_load): Use cast in call to CFF_Load_FD_Select.
+	* src/cff/cffobjs.c (cff_size_init): Use more casts.
+	(cff_face_init): Use FT_Int32 for `flags'.
+	* src/cff/cffgload.c (cff_operator_seac): Use cast for assigning
+	`adx' and `ady'.
+	(cff_decoder_parse_charstrings): Use FT_ULong for third parameter.
+	Use more casts.
+	* src/cff/cffcmap.c (cff_cmap_unicode_init): Use cast for `count'.
+
+	* src/cid/cidload.c (cid_read_subrs): Use FT_ULong for `len'.
+	* src/cid/cidgload.c (cid_load_glyph): Add missing cast for
+	`cid_get_offset'.
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings) <18>: Use
+	cast for `num_points'.
+	(t1_decoder_init): Use cast for assigning `decoder->num_glyphs'.
+
+	* src/base/ftdebug.c (ft_debug_init): Use FT_Int.
+	* include/freetype/internal/ftdriver.h (FT_Slot_LoadFunc): Use
+	`FT_Int32' for fourth parameter.
+	* src/base/ftobjs.c (open_face): Use cast for calling
+	clazz->init_face.
+
+	* src/raster/ftraster.c (Set_High_Precision): Use `1' instead of
+	`1L'.
+	(Finalize_Profile_Table, Line_Up, ft_black_init): Use casts.
+	* src/raster/ftrend1.c (ft_raster1_render): Ditto.
+
+	* src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long
+	constant.
+
+2002-09-26  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/include/freetype/config/ftmodule.h: Updated.
+
+2002-09-25  David Turner  <david at freetype.org>
+
+	* src/autohint/ahtypes.h (AH_HINT_METRICS): Disabling metrics
+	hinting in the auto-hinter.  This produces much better anti-aliased
+	text.
+
+	* docs/CHANGES: Updating the changes documentation.
+
+2002-09-25  Anthony Fok  <anthony at thizlinux.com>
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_validate, tt_cmap4_char_index,
+	tt_cmap4_char_next): Added support for opens___.ttf (it contains a
+	charmap that uses offset=0xFFFFU instead of 0x0000 to indicate a
+	missing glyph).
+
+2002-09-21  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	* src/truetype/ttdriver.c (Load_Glyph): Fourth parameter must be
+	FT_Int32.
+	* src/truetype/ttgload.c, src/truetype/ttgload.h (TT_Load_Glyph):
+	Ditto.
+
+2002-09-19  Wolfgang Domröse  <porthos.domroese at harz.de>
+
+	More 16bit fixes.
+
+	* src/autohint/ahglobal.c (sort_values): Use FT_Pos for `swap'.
+	(ah_hinter_compute_widths): Use FT_Pos for `dist'.
+	Use AH_MAX_WIDTHS.
+	* src/autohint/ahglyph.c (ah_outline_scale_blue_edges): Use FT_Pos
+	for `delta'.
+	(ah_outline_compute_edges): Replace some ints with FT_Int and
+	FT_Pos.
+	(ah_test_extrema): Clean up code.
+	(ah_get_orientation): Use 4 FT_Int variables instead of FT_BBox to
+	hold indices.
+	* src/autohint/ahtypes.h (AH_SegmentRec): Change type of `score'
+	to FT_Pos.
+
+2002-09-19  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/config.guess, builds/unix/config.sub: Updated to
+	recent versions.
+
+2002-09-18  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c (FT_Library_Version): Bugfix.
+
+	* FreeType 2.1.3rc2 (release candidate 2) is released!
+
+2002-09-17  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h, include/freetype/ftimage.h,
+	include/freetype/ftstroker.h, include/freetype/ftsysio.h,
+	include/freetype/ftsysmem.h, include/freetype/ttnameid.h: Updating
+	the in-source documentation.
+
+	* src/tools/docmaker/tohtml.py: Updating the HTML formatter in the
+	DocMaker tool.
+
+	* src/tools/docmaker.py: Removed.
+
+2002-09-17  Werner Lemberg  <wl at gnu.org>
+
+	More 16bit fixes.
+
+	* src/psaux/psobjs.c (reallocate_t1_table): Use FT_Long for
+	second parameter.
+
+2002-09-16  Werner Lemberg  <wl at gnu.org>
+
+	16bit fixes from Wolfgang Domröse.
+
+	* src/type1/t1parse.h (T1_ParserRec): Change type of `base_len'
+	and `private_len' to FT_Long.
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Remove cast for
+	`private_len'.
+	* src/type1/t1load.c: Use FT_Int cast for most calls of T1_ToInt.
+	Use FT_PtrDist where appropriate.
+	(parse_encoding): Use FT_Long for `count' and `n'.
+	(read_binary_data): Use FT_Long* for second parameter.
+	* src/type1/t1afm.c (afm_atoindex): Use FT_PtrDist.
+
+	* src/cache/ftcsbits.c (ftc_sbit_node_load): Remove unused label.
+	* src/pshinter/pshalgo3.c (psh3_hint_align): Remove unused variable.
+
+2002-09-14  Werner Lemberg  <wl at gnu.org>
+
+	Making ftgrays.c compile stand-alone again.
+
+	* include/freetype/ftimage.h: Include ft2build.h only if _STANDALONE_
+	isn't defined.
+	* src/smooth/ftgrays.c [_STANDALONE_]: Define ft_memset,
+	FT_BEGIN_HEADER, FT_END_HEADER.
+	(FT_MEM_ZERO): Define.
+	(TRaster) [GRAYS_USE_GAMMA]: Use `unsigned char' instead of FT_Byte.
+	(gray_render_span, gray_init_gamma): Don't use `FT_UInt'.
+	Don't cast with `FT_Byte'.
+	(grays_init_gamma): Don't use `FT_UInt'.
+
+2002-09-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftinit.c (FT_Add_Default_Modules): Improve error message.
+	* src/pcf/pcfdriver.c (PCF_Face_Done): Improve tracing message.
+	* include/freetype/config/ftoption.h (FT_MAX_MODULES): Increased
+	to 32.
+
+2002-09-10  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.ac (version_info): Set to 9:2:3.
+	* builds/unix/configure: Regenerated.
+	* docs/VERSION.DLL: Updated.
+
+2002-09-09  David Turner  <david at freetype.org>
+
+	* src/pshinter/pshalgo2.c (psh2_glyph_find_strong_points),
+	src/pshinter/pshalgo3.c (psh3_glyph_find_strong_points): Adding fix
+	to prevent segfault when hints are provided in an empty glyph.
+
+	* src/cache/ftccache.i (GEN_CACHE_LOOKUP) [FT_DEBUG_LEVEL_ERROR]:
+	Removed conditional code.  This fixes a bug that prevented
+	compilation in debug mode of template instantiation.
+
+	* include/freetype/ftimage.h: Removed incorrect `zft_' definitions
+	and updated constants documentation comments.
+
+	* src/cff/cffparse.c (cff_parser_run): Fixed the CFF table loader.
+	It didn't accept empty arrays, and this prevented the loading of
+	certain fonts.
+
+	* include/freetype/freetype.h (FT_FaceRec): Updating documentation
+	comment.  The `descender' value is always *negative*, not positive.
+
+2002-09-09  Owen Taylor  <owen at redhat.com>
+
+	* src/pcf/pcfdriver.c (PCF_Glyph_Load): Fixing incorrect computation
+	of bitmap metrics.
+
+2002-09-08  David Turner  <david at freetype.org>
+
+	Various updates to correctly support subpixel rendering.
+
+	* include/freetype/config/ftmodule.h: Add two renderers for LCD.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Updated.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render_lcd,
+	ft_smooth_render_lcd_v): Set FT_PIXEL_MODE_LCD and
+	FT_PIXEL_MODE_LCD_V, respectively.
+
+	* include/freetype/cache/ftcimage.h (FTC_ImageTypeRec): New
+	structure.
+	Updated all users.
+	(FTC_ImageDesc): Removed.
+	(FTC_ImageCache_Lookup): Second parameter is now of type
+	`FTC_ImageType'.
+	Updated all users.
+	(FTC_IMAGE_DESC_COMPARE): Updated and renamed to...
+	(FTC_IMAGE_TYPE_COMPARE): This.
+	(FTC_IMAGE_DESC_HASH): Updated and renamed to...
+	(FTC_IMAGE_TYPE_HASH): This.
+
+	* include/freetype/cache/ftcsbits.h (FTC_SBitRec): Field `num_grays'
+	replaced with `max_grays'.
+	`pitch' is now FT_Short.
+	(FTC_SBitCache_Lookup): Second parameter is now of type
+	`FTC_ImageType'.
+	Updated all users.
+
+	* src/cache/ftcimage.c (FTC_ImageQueryRec, FTC_ImageFamilyRec):
+	Updated.
+	(ftc_image_node_init): Updated.
+	Moved code to convert type flags to load flags to...
+	(FTC_Image_Cache_Lookup): This function.
+	(ftc_image_family_init): Updated.
+
+	* src/cache/ftcsbits.c (FTC_SBitQueryRec, FTC_SBitFamilyRec):
+	Updated.
+	(ftc_sbit_node_load): Updated.
+	Moved code to convert type flags to load flags to...
+	(FTC_SBitCache_Lookup): This function.
+
+	* src/autohint/ahtypes.h (AH_HinterRec): Replace `no_*_hints' with
+	`do_*_snapping'.
+	Update all users (with negation).
+	* src/autohint/ahhint.c (ah_compute_stem_width): Fix threshold for
+	`dist' for `delta' < 40.
+
+	* src/pshinter/pshalgo3.h (PSH3_GlyphRec): Replace `no_*_hints' with
+	`do_*_snapping'.
+	Update all users (with negation).
+	* src/pshinter/pshalgo3.c (psh3_dimension_quantize_len): New
+	function.
+	(psh3_hint_align): Use it.
+	Improve hinting code.
+	[STRONGER]: Removed.
+	(STRONGER): Removed.
+
+	* include/freetype/freetype.h (FT_Set_Hint_Flags, FT_HINT_*):
+	Removed.
+
+2002-09-05  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidobjs.c (CID_Size_Init): Renamed to...
+	(cid_size_init): This.
+	* src/psaux/psobjs.c (T1_Builder_Add_Point1): Renamed to...
+	(t1_builder_add_point1): This.
+
+	Updated all affected code.
+
+	* src/pshinter/pshalgo3.c (psh3_hint_align): Fix compiler warnings.
+	* src/type1/t1gload.c (T1_Compute_Max_Advance): Ditto.
+
+2002-09-04  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h: Corrected the definition of
+	ft_encoding_symbol to be FT_ENCODING_MS_SYMBOL (instead of
+	the erroneous FT_ENCODING_SYMBOL).
+
+	* builds/unix/unix-def.in (datadir): Initialize it (thanks to
+	Anthony Fok).
+
+2002-08-29  David Turner  <david at freetype.org>
+
+	Slight modification to the Postscript hinter to slightly increase
+	the contrast of smooth hinting.  This is very similar to what the
+	auto-hinter does when it comes to stem width computations.  However,
+	it produces better results with well-hinted fonts.
+
+	* include/freetype/internal/psaux.h (T1_Decoder_FuncsRec): Add hint
+	mode to `init' member function.
+	(T1_DecoderRec): Add hint mode.
+	* include/freetype/internal/pshints (T1_Hints_ApplyFunc,
+	T2_Hints_ApplyFunc): Pass `hint_mode', not `hint_flags'.
+	* src/psaux/t1decode.c (t1_decoder_init): Add hint mode argument.
+	* src/pshinter/pshalgo1.c (ps1_hints_apply): Pass hint mode, not
+	hint flags.
+	* src/pshinter/pshalgo2.c (ps2_hints_apply): Ditto.
+	* src/pshinter/pshalgo3.c (ps3_hints_apply): Ditto.
+	(STRONGER): New macro.
+	(psh3_hint_align, psh3_hint_table_align_hints): Pass `glyph' instead
+	of `hint_flags'.
+	Implement announced changes.
+	* src/pshinter/pshalgo3.h (PSH3_GlyphRec): Add flags to control
+	vertical and horizontal hints and snapping.
+
+	* README, docs/CHANGES: Updating for the 2.1.3 release.
+
+2002-08-27  David Turner  <david at freetype.org>
+
+	* Massive re-formatting changes to many, many source files.  I don't
+	want to list them all here.  The operations performed were all
+	logical transformations of the sources:
+
+	- trying to convert all enums and constants to CAPITALIZED_STYLE,
+	  #with define definitions like
+
+	    #define my_old_constants   MY_NEW_CONSTANT
+
+	- big, big update of the documentation comments
+
+	* include/freetype/freetype.h, src/base/ftobjs.c,
+	src/smooth/ftsmooth.c, include/freetype/ftimage.h: Adding support
+	for LCD-optimized rendering though the new constants/enums:
+
+	  FT_RENDER_MODE_LCD, FT_RENDER_MODE_LCD_V
+	  FT_PIXEL_MODE_LCD,  FT_PIXEL_MODE_LCD_V
+
+	This is still work in progress, don't expect everything to work
+	correctly though most of the features have been implemented.
+
+	* Adding new FT_LOAD_XXX flags, used to specify both hinting and
+	rendering targets:
+
+	  FT_LOAD_TARGET_NORMAL :: anti-aliased hinting & rendering
+	  FT_LOAD_TARGET_MONO   :: monochrome bitmaps
+	  FT_LOAD_TARGET_LCD    :: horizontal RGB/BGR decimated
+	                           hinting & rendering
+	  FT_LOAD_TARGET_LCD_V  :: vertical RGB/BGR decimated
+	                           hinting & rendering
+
+	Note that FT_LOAD_TARGET_NORMAL is 0, which means that the default
+	behaviour of the font engine is _unchanged_.
+
+	* include/freetype/ftimage.h
+	(FT_Outline_{Move,Line,Conic,Cubic}To_Func): Renamed to...
+	(FT_Outline_{Move,Line,Conic,Cubic}ToFunc): This.
+	(FT_Raster_Span_Func): Renamed to ...
+	(FT_SpanFunc): This.
+	(FT_Raster_{New,Done,Reset,Set_Mode,Render}_Func): Renamed to ...
+	(FT_Raster_{New,Done,Reset,SetMode,Render}Func}: This.
+
+	Updated all affected code.
+
+	* include/freetype/ftrender.h
+	(FT_Glyph_{Init,Done,Transform,BBox,Copy,Prepare}_Func): Renamed
+	to ...
+	(FT_Glyph_{Init,Done,Transform,GetBBox,Copy,Prepare}Func): This.
+	(FTRenderer_{render,transform,getCBox,setMode}): Renamed to ...
+	(FT_Renderer_{RenderFunc,TransformFunc,GetCBoxFunc,SetModeFunc}):
+	This.
+
+	Updated all affected code.
+
+	* src/autohint/ahtypes.h (AH_Point, AH_Segment, AH_Edge, AH_Globals,
+	AH_Face_Globals, AH_Outline, AH_Hinter): These typedefs are now
+	pointers to the corresponding `*Rec' structures.  All source files
+	have been updated accordingly.
+
+	* src/cff/cffgload.c (cff_decoder_init): Add hint mode as parameter.
+	* src/cff/cffgload.h (CFF_Decoder): Add `hint_mode' element.
+
+	* src/cid/cidgload.c (CID_Compute_Max_Advance): Renamed to...
+	(cid_face_compute_max_advance): This.
+	(CID_Load_Glyph): Renamed to...
+	(cid_slot_load_glyph): This.
+	* src/cid/cidload.c (CID_Open_Face): Renamed to...
+	(cid_face_open): This.
+	* src/cid/cidobjs.c (CID_GlyphSlot_{Done,Init}): Renamed to...
+	(cid_slot_{done,init}): This.
+	(CID_Size_{Get_Globals_Funcs,Done,Reset): Renamed to...
+	(cid_size_{get_globals_funcs,done,reset): This.
+	(CID_Face_{Done,Init}): Renamed to...
+	(cid_face_{done,init}): This.
+	(CID_Driver_{Done,Init}: Renamed to...
+	(cid_driver_{done,init}: This.
+	* src/cid/cidparse.c (CID_{New,Done}_Parser): Renamed to...
+	(cid_parser_{new,done}): This.
+	* src/cid/cidparse.h (CID_Skip_{Spaces,Alpha}): Renamed to...
+	(cid_parser_skip_{spaces,alpha}): This.
+	(CID_To{Int,Fixed,CoordArray,FixedArray,Token,TokenArray}): Renamed
+	to...
+	(cid_parser_to_{int,fixed,coord_array,fixed_array,token,token_array}):
+	This.
+	(CID_Load_{Field,Field_Table): Renamed to...
+	(cid_parser_load_{field,field_table}): This.
+	* src/cid/cidriver.c (CID_Get_Interface): Renamed to...
+	(cid_get_interface): This.
+
+	Updated all affected code.
+
+	* src/psaux/psobjs.c (PS_Table_*): Renamed to...
+	(ps_table_*): This.
+	(T1_Builder_*): Renamed to...
+	(t1_builder_*): This.
+	* src/psaux/t1decode.c (T1_Decoder_*): Renamed to...
+	(t1_decoder_*): This.
+
+	* src/psnames/psmodule.c (PS_*): Renamed to...
+	(ps_*): This.
+
+	Updated all affected code.
+
+	* src/sfnt/sfdriver (SFNT_Get_Interface): Renamed to...
+	(sfnt_get_interface): This.
+	* src/sfnt/sfobjs.c (SFNT_*): Renamed to...
+	(sfnt_*): This.
+	* src/sfnt/ttcmap.c (TT_CharMap_{Load,Free}): Renamed to...
+	(tt_face_{load,free}_charmap): This.
+	* src/sfnt/ttcmap0.c (TT_Build_CMaps): Renamed to...
+	(tt_face_build_cmaps): This.
+	* src/sfnt/ttload.c (TT_*): Renamed to...
+	(tt_face_*): This.
+	* src/sfnt/ttpost.c (TT_Post_Default_Names): Renamed to...
+	(tt_post_default_names): This.
+	(Load_*): Renamed to...
+	(load_*): This.
+	(TT_*): Renamed to...
+	(tt_face_*): This.
+	* src/sfnt/ttsbit.c (TT_*): Renamed to...
+	(tt_face_*): This.
+	({Find,Load,Crop}_*): Renamed to...
+	({find,load,crop}_*): This.
+
+	Updated all affected code.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render): Renamed to...
+	(ft_smooth_render_generic): This.
+	Make function more generic by adding vertical and horizontal scaling
+	factors.
+	(ft_smooth_render, ft_smooth_render_lcd, ft_smooth_render_lcd_v):
+	New functions.
+
+	(ft_smooth_lcd_renderer_class, ft_smooth_lcdv_renderer_class): New
+	classes.
+
+	* src/truetype/ttobjs.c (TT_{Done,New}_GlyphZone): Renamed to...
+	(tt_glyphzone_{done,new}): This.
+	(TT_{Face,Size,Driver}_*): Renamed to...
+	(tt_{face,size,driver}_*): This.
+	* src/truetype/ttpload.c (TT_Load_Locations): Renamed to...
+	(tt_face_load_loca): This.
+	(TT_Load_Programs): Renamed to...
+	(tt_face_load_fpgm): This.
+	(TT_*): Renamed to...
+	(tt_face_*): This.
+
+2002-08-27  Werner Lemberg  <wl at gnu.org>
+
+	* docs/VERSION.DLL: New file.
+
+2002-08-23  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/cff/cffgload.c (cff_operator_seac)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Incremental fonts (actually not
+	incremental in the case of CFF but just using callbacks to get glyph
+	recipes) pass the character code, not the glyph index, to the
+	get_glyph_data function; they have no valid charset table.
+
+	* src/cff/cffload.c (cff_font_load): Removed special cases for
+	FT_CONFIG_OPTION_INCREMENTAL, which are no longer necessary; CFF
+	fonts provided via the incremental interface now have to conform
+	more closely to the CFF font format.
+
+	* src/cff/cffload.h (cff_font_load): Removed argument now unneeded.
+
+	* src/cff/cffobjs.c (cff_face_init): Changed call to cff_font_load
+	to conform with new signature.
+
+2002-08-22  David Turner  <david at freetype.org>
+
+	* src/base/ftobject.c, src/base/ftsynth.c, src/base/ftstroker.c,
+	src/bdf/bdfdrivr.c: Removed compiler warnings.
+
+2002-08-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo3.c (psh3_glyph_compute_inflections,
+	psh3_glyph_compute_extrema, psh3_hint_table_find_strong_point): Fix
+	compiler warnings and resolve shadowing of local variables.
+
+2002-08-21  David Turner  <david at freetype.org>
+
+	The automatic and Postscript hinter now automatically detect
+	inflection points in glyph outlines and treats them specially.  This
+	is very useful to prevent nasty effect like the disappearing
+	diagonals of `S' and `s' in many, many fonts.
+
+	* src/autohint/ahtypes.h (ah_flag_inflection): New macro.
+	* src/autohint/ahangles.c (ah_angle_diff): New function.
+	* src/autohint/ahangles.h: Updated.
+	* src/autohint/ahglyph.c (ah_outline_compute_inflections): New
+	function.
+	(ah_outline_detect_features): Use it.
+	* src/autohint/ahhint.c (ah_hinter_align_strong_points)
+	[!AH_OPTION_NO_WEAK_INTERPOLATION]: Handle inflection.
+
+	* src/tools/docmaker/docmaker.py, src/tools/docmaker/utils.py,
+	src/tools/docmaker/tohtml.py: Updating the DocMaker tool.
+
+	* include/freetype/freetype.h: Changing the type of the `load_flags'
+	parameter from `FT_Int' to `FT_Int32', this in order to support more
+	options.  This should only break binary and/or source compatibility
+	on 16-bit platforms (Atari?).
+	(FT_LOAD_NO_AUTOHINT): New macro.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Updated.
+	Handle FT_LOAD_NO_AUTOHINT.
+	(FT_Load_Char): Updated.
+
+	* src/pshinter/pshalgo3.c, src/base/ftobjs.c, src/base/ftobject.c,
+	src/autohint/ahglyph.c, include/freetype/freetype.h: Fixing typos
+	and removing compiler warnings.
+
+2002-08-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (TT_Get_Metrics): Add guard for k = 0.
+
+2002-08-20  David Turner  <david at freetype.org>
+
+	* src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.c,
+	src/pshinter/pshglob.c, src/pshinter/pshrec.c,
+	src/autohint/ahmodule.c [DEBUG_HINTER]: Removing compiler warnings
+	(only used in development builds anyway).
+
+	Improve support of local extrema and stem edge points.
+
+	* src/pshinter/pshalgo3.h (PSH3_Hint_TableRec): Use PSH3_ZoneRec
+	for `zones'.
+	(PSH3_DIR_UP, PSH3_DIR_DOWN): Exchange values.
+	(PSH3_DIR_HORIZONTAL, PSH3_DIR_VERTICAL): New macros.
+	(PSH3_DIR_COMPARE, PSH3_DIR_IS_HORIZONTAL, PSH3_IS_VERTICAL): New
+	macros.
+	(PSH3_POINT_INFLEX): New enum.
+	(psh3_point_{is,set}_{off,inflex}): New macros.
+	(PSH3_POINT_{EXTREMUM,POSITIVE,NEGATIVE,EDGE_MIN,EDGE_MAX): New
+	enum values.
+	(psh3_point_{is,set}_{extremum,positive,negative,edge_min,edge_max}):
+	New macros.
+	(PSH3_PointRec): New members `flags2' and `org_v'.
+	(PSH3_POINT_EQUAL_ARG, PSH3_POINT_ANGLE): New macros.
+
+	* src/pshinter/pshalgo3.c [DEBUG_HINTER]: Removing compiler
+	warnings.
+	(COMPUTE_INFLEXS): New macro.
+	(psh3_hint_align): Simplify some basic arithmetic computations.
+	(psh3_point_is_extremum): Removed.
+	(psh3_glyph_compute_inflections) [COMPUTE_INFLEXS]: New function.
+	(psh3_glyph_init) [COMPUTE_INFLEXS]: Use it.
+	(psh3_glyph_compute_extrema): New function.
+	(PSH3_STRONG_THRESHOLD): Increased to 30.
+	(psh3_hint_table_find_strong_point): Improved.
+	(psh3_glyph_find_strong_points,
+	psh3_glyph_interpolate_strong_points): Updated.
+	(psh3_hints_apply): Use psh3_glyph_compute_extrema.
+
+	* test/gview.c (draw_ps3_hint, ps3_draw_control_points): New
+	functions.
+	Other small updates.
+
+	* Jamfile: Small updates.
+
+2002-08-18  Arkadiusz Miskiewicz  <misiek at pld.ORG.PL>
+
+	* builds/unix/install.mk (install, uninstall): Add $(DESTDIR) to
+	make life easier for package maintainers.
+
+2002-08-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/pcf/pcfdriver.c (PCF_Glyph_Load): Fix computation of
+	horiBearingX.
+	* src/bdf/bdfdrivr.c (BDF_Glyph_Load): Fix computation of
+	horiBearingY.
+
+2002-08-16  George Williams  <gww at silcom.com>
+
+	Add support for Apple composite glyphs.
+
+	* include/freetype/config/ftoption.h
+	(TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED): New macro.
+
+	* src/truetype/ttgload.c (OVERLAP_COMPOUND, SCALED_COMPONENT_OFFSET,
+	UNSCALED_COMPONENT_OFFSET): New macros for additional OpenType
+	glyph loading flags.
+	(load_truetype_glyph): Implement it.
+
+2002-08-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_free_glyph_data),
+	src/cff/cffload.c (cff_font_load): Use FT_UNUSED.
+
+2002-08-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Initialize `error'.
+	* src/sfnt/sfobjs.c (SFNT_Load_Face): Fix compiler warning.
+
+2002-08-15  Graham Asher  <graham.asher at btinternet.com>
+
+	Implemented the incremental font loading system for the CFF driver.
+	Tested using the GhostScript-to-FreeType bridge (under development).
+
+	* src/cff/cffgload.c (cff_get_glyph_data, cff_free_glyph_data): New
+	functions.
+	(cff_operator_seac, cff_compute_max_advance, cff_slot_load): Use
+	them.
+	* src/cff/cffload.c (cff_font_load): Add `face' parameter.
+	Load charset and encoding only if there are glyphs.
+	[FT_CONFIG_OPTION_INCREMENTAL]: Incremental fonts don't need
+	character recipes.
+	* src/cff/cffload.h, src/cff/cffobjs.c: Updated.
+
+	* src/cid/cidgload.c (cid_load_glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Corrected the incremental font
+	loading implementation to use the new system introduced on
+	2002-08-01.
+
+2002-08-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffcmap.c: Remove compiler warnings.
+	* src/cache/ftccache.c, src/cache/ftccache.i,
+	src/pfr/pfrload.c, src/pfr/pfrgload.c: s/index/idx/.
+	* src/cff/cffload.c: s/select/fdselect/.
+	* src/raster/ftraster.c: s/wait/waiting/.
+
+2002-08-01  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/type1/t1load.c (T1_Open_Face): Tolerate a face with no
+	charstrings if there is an incremental loading interface.  Type 1
+	faces supplied by PostScript interpreters like GhostScript will
+	typically not provide any charstrings at load time, so this is
+	essential if they are to work.
+
+2002-08-01  Graham Asher  <graham.asher at btinternet.com>
+
+	Modified incremental loading interface to be closer to David's
+	preferences.  The header freetype.h is not now affected, the
+	interface is specified via an FT_Parameter, the pointer to the
+	interface is hidden in an internal part of the face record, and all
+	the definitions are in ftincrem.h.
+
+	* include/freetype/freetype.h [FT_CONFIG_OPTION_INCREMENTAL]:
+	Removed.
+	* include/freetype/internal/ftobjs.h [FT_CONFIG_OPTION_INCREMENTAL]:
+	Include FT_INCREMENTAL_H.
+	(FT_Face_InternalRec) [FT_CONFIG_OPTION_INCREMENTAL]: Add
+	`incremental_interface'.
+
+	* src/base/ftobjs.c (open_face, FT_Open_Face)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+	* src/sfnt/sfobjs.c (SFNT_Load_Face) [FT_CONFIG_OPTION_INCREMENTAL]:
+	Updated.
+
+	* src/truetype/ttgload.c (load_truetype_glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+	Free loaded glyph data properly.
+	(compute_glyph_metrics, TT_Load_Glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+	* src/truetype/ttobjs.c (TT_Face_Init)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+
+	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+	(T1_Parse_Glyph) [FT_CONFIG_OPTION_INCREMENTAL]: Updated.
+	Free loaded glyph data properly.
+	(T1_Load_Glyph): Updated.
+	[FT_CONFIG_OPTION_INCREMENTAL]: Free loaded glyph data properly.
+
+2002-07-30  David Turner  <david at freetype.org>
+
+	* include/freetype/ftincrem.h: Adding new experimental header file
+	to demonstrate a `cleaner' API to support incremental font loading.
+
+	* include/freetype/config/ftheader.h (FT_INCREMENTAL_H): New macro.
+
+	* src/tools/docmaker/*: Adding new (more advanced) version of
+	the DocMaker tool, using Python's sophisticated regexps.
+
+2002-07-28  Werner Lemberg  <wl at gnu.org>
+
+	s/ft_memset/FT_MEM_SET/.
+	s/FT_MEM_SET/FT_MEM_ZERO/ where appropriate.
+
+2002-07-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (sfnt_dir_check): Make it work with TTCs.
+
+2002-07-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: s/memset/ft_memset/.
+
+	* src/autohint/ahhint.c (ah_hint_edges_3): Fix compiler warning.
+	* src/cff/cffload.c (cff_encoding_load): Remove `memory' variable.
+	* src/cff/cffcmap.c (cff_cmap_encoding_init): Remove `psnames'
+	variable.
+	* src/truetype/ttgload.c (load_truetype_glyph): Remove statement
+	without effect.
+	* src/truetype/ttdriver (Get_Char_Index, Get_Next_Char): Removed.
+
+	* src/pshinter/pshalgo3.c (psh3_hint_table_record,
+	psh3_hint_table_init, psh3_hint_table_activate_mask): Fix error
+	message.
+
+2002-07-24  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/truetype/ttobjs.c: Fix for bug reported by Sven Neumann
+	[sven at gimp.org] on the FreeType development forum: `If
+	FT_CONFIG_OPTION_INCREMENTAL is undefined (this is the default), the
+	TrueType loader crashes in line 852 of src/truetype/ttgload.c when
+	it tries to access face->glyph_locations.'
+
+2002-07-18  Graham Asher  <graham.asher at btinternet.com>
+
+	Added types and structures to support incremental typeface loading.
+	The FT_Incremental_Interface structure, defined in freetype.h, is
+	designed to be passed to FT_Open_Face to provide callback functions
+	to obtain glyph recipes and metrics, for fonts like those passed
+	from PostScript that do not necessarily provide all, or any, glyph
+	information, when first opened.
+
+	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_INCREMENTAL):
+	New configuration macro to enable incremental face loading.  By
+	default it is not defined.
+
+	* include/freetype/freetype.h (FT_Basic_Glyph_Metrics,
+	FT_Get_Glyph_Data_Func, FT_Get_Glyph_Metrics_Func,
+	FT_Incremental_Interface_Funcs, FT_Incremental_Interface)
+	[FT_CONFIG_OPTION_INCREMENTAL]: New.
+	(FT_Open_Args, FT_FaceRec) [FT_CONFIG_OPTION_INCREMENTAL]: New field
+	`incremental_interface'.
+	(FT_Open_Flags) [FT_CONFIG_OPTION_INCREMENTAL]: New enum
+	`ft_open_incremental'.
+
+	* include/freetype/fttypes.h: Include FT_CONFIG_CONFIG_H.
+	(FT_Data): New structure to represent binary data.
+
+	* src/base/ftobjs.c (open_face) [FT_CONFIG_OPTION_INCREMENTAL]:
+	Add parameter for incremental loading.
+	(FT_Open_Face) [FT_CONFIG_OPTION_INCREMENTAL]: Use incremental
+	interface.
+
+	* src/truetype/ttgload.c (load_truetype_glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Added the incremental loading system
+	for the TrueType driver.
+	(compute_glyph_metrics): Return FT_Error.
+	[FT_CONFIG_OPTION_INCREMENTAL]: Check for overriding metrics.
+	(TT_Load_Glyph) [FT_CONFIG_OPTION_INCREMENTAL]: Don't look for
+	the glyph table while handling an incremental font.
+	Get glyph offset.
+
+	* src/truetype/ttobjs.c (TT_Face_Init)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Added the incremental loading
+	system for the TrueType driver.
+
+	* src/cid/cidgload.c (cid_load_glyph)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Added the incremental loading system
+	for the CID driver.
+
+	* src/sfnt/sfobjs.c (SFNT_Load_Face) [FT_CONFIG_OPTION_INCREMENTAL]:
+	Changes to support incremental Type 42 fonts: Assume a font has
+	glyphs if it has an incremental interface object.
+
+	* src/type1/t1gload.c (T1_Parse_Glyph): Renamed to...
+	(T1_Parse_Glyph_And_Get_Char_String): This.
+	[FT_CONFIG_OPTION_INCREMENTAL]: Added support for incrementally
+	loaded Type 1 faces.
+	(T1_Parse_Glyph): New function.
+	(T1_Load_Glyph): Updated.
+
+2002-07-17  David Turner  <david at freetype.org>
+
+	Cleaning up the cache sub-system code; linear hashing is now the
+	default.
+
+	* include/freetype/cache/ftccache.h, src/cache/ftccache.i,
+	src/cache/ftccache.c [!FTC_CACHE_USE_LINEAR_HASHING]: Removed.
+	(FTC_CACHE_USE_LINEAR_HASHING): Removed also.
+
+	FT_CONFIG_OPTION_USE_CMAPS is now the default.
+
+	* include/freetype/internal/ftdriver.h (FT_Driver_ClassRec): Remove
+	`get_char_index' and `get_next_char'.
+
+	* include/freetype/config/ftoption.h,
+	include/freetype/internal/tttypes.h, src/base/ftobjs.c,
+	src/bdf/bdfdrivr.c, src/cff/cffobjs.c, src/pcf/pcfdrivr.c,
+	src/pfr/pfrdrivr.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c,
+	src/sfnt/ttcmap0.h, src/sfnt/ttload.c, src/type1/t1objs.c,
+	src/type42/t42objs.c, src/winfonts/winfnt.c
+	[!FT_CONFIG_OPTION_USE_CMAPS]: Removed.  The new cmap code is now
+	the default.
+
+	* src/type42/t42objs.c (T42_CMap_CharIndex, T42_CMap_CharNext):
+	Removed.
+	* src/type42/t42objs.h: Updated.
+
+	* src/cid/cidriver.c (Cid_Get_Char_Index, Cid_Get_Next_Char):
+	Removed.
+	(t1cid_driver_class): Updated.
+	* src/truetype/ttdriver.c (tt_driver_class): Updated.
+	* src/type1/t1driver.c (Get_Char_Index, Get_Next_Char): Removed
+	(t1_driver_class): Updated.
+	* src/type42/t42drivr.c (t42_driver_class): Updated.
+
+	* src/base/ftobjs.c (open_face): Select Unicode cmap by default.
+
+	* src/sfnt/ttload.c (TT_Load_SFNT_Header): Fixed a recent bug that
+	prevented OpenType fonts to be recognized by FreeType.
+
+2002-07-11  David Turner  <david at freetype.org>
+
+	Changing the SFNT loader to check for SFNT-based font files
+	differently.  We now ignore the range `helper' fields and check the
+	`head' table's magic number instead.
+
+	* include/freetype/internal/tttypes.h (SFNT_HeaderRec): Add `offset'
+	field.
+
+	* src/sfnt/ttload.c (sfnt_dir_check): New function.
+	(TT_Load_SFNT_HeaderRec): Renamed to...
+	(TT_Load_SFNT_Header): This.
+	Implement new functionality.
+	* src/sfnt/ttload.h: Updated.
+	* src/sfnt/sfdriver.c (sfnt_interface): Updated.
+
+	* src/base/ftobject.c, src/base/fthash.c: Updated object sub-system
+	and dynamic hash table implementation (still experimental, don't
+	use).
+	* include/freetype/internal/fthash.h: Updated.
+	* include/freetype/internal/ftobjs.h (FT_LibraryRec): New member
+	`meta_class'.
+
+	Fixing a bug in the Type 1 loader that prevented valid font bounding
+	boxes to be loaded from multiple master fonts.
+
+	* include/freetype/t1tables.h (PS_BlendRec): Add `bboxes' field.
+
+	* include/freetype/internal/psaux.h (T1_FieldType): Add
+	`T1_FIELD_TYPE_BBOX'.
+	(T1_FieldLocation): Add `T1_FIELD_LOCATION_BBOX'.
+	(T1_FIELD_BBOX): New macro.
+
+	* src/psaux/psobjs.c (PS_Parser_LoadField): Handle T1_FIELD_TYPE_BBOX.
+	* src/type1/t1load.c (t1_allocate_blend): Create blend->bboxes.
+	(T1_Done_Blend): Free blend->bboxes.
+	(t1_load_keyword): Handle T1_FIELD_LOCATION_BBOX.
+	(parse_font_bbox): Commented out.
+	(t1_keywords): Comment out `parse_font_bbox'.
+	* src/type1/t1tokens.h: Define `FontBBox' field.
+
+2002-07-10  David Turner  <david at freetype.org>
+
+	* src/cff/cffobjs.c: Small fix to select the Unicode charmap by
+	default when needed.
+	Small fix to allow OpenType fonts to support Adobe charmaps when
+	needed.
+
+	* src/cff/cffcmap.c, src/cff/cffcmap.h: New files to support
+	charmaps for CFF fonts.
+
+	* src/cff/cff.c, src/cff/Jamfile, src/cff/rules.mk: Updated.
+
+	* include/freetype/internal/cfftypes.h (CFF_EncodingRec): Use
+	fixed-length arrays for `sids' and `codes'.  Add `count' member.
+	(CFF_FontRec): Add `psnames' member.
+
+	* src/cff/cffdrivr.c, src/cff/cffload.c, src/cff/cffload.h,
+	src/cff/cffobjs.c, src/cff/cffobjs.h, src/cff/cffparse.c,
+	src/cffparse.h, src/cff/cffgload.c, src/cff/cffgload.h: Adding
+	support for CFF charmaps, reformatting the sources, and removing
+	some bugs in the Encoding and Charset loaders.
+	Many fonts renamed to use lowercase only:
+
+	  CFF_Builder_Init -> cff_builder_init
+	  CFF_Builder_Done -> cff_builder_done
+	  CFF_Init_Decoder -> cff_decoder_init
+	  CFF_Parse_CharStrings -> cff_decoder_parse_charstrings
+	  CFF_Load_Glyph -> cff_slot_load
+	  CFF_Init_Decoder -> cff_decoder_init
+	  CFF_Prepare_Decoder -> cff_decoder_prepare
+	  CFF_Get_Standard_Encoding -> cff_get_standard_encoding
+	  CFF_Access_Element -> cff_index_access_element
+	  CFF_Forget_Element -> cff_index_forget_element
+	  CFF_Get_Name -> cff_index_get_name
+	  CFF_Get_String -> cff_index_get_sid_string
+	  CFF_Get_FD -> cff_fd_select_get
+	  CFF_Done_Charset -> cff_charset_done
+	  CFF_Load_Charset -> cff_charset_load
+	  CFF_Done_Encoding -> cff_encoding_done
+	  CFF_Load_Encoding -> cff_encoding_load
+	  CFF_Done_SubFont -> cff_subfont_done
+	  CFF_Load_Font -> cff_font_load
+	  CFF_Done_Font -> cff_font_done
+	  CFF_Size_Get_Globals_Funcs -> cff_size_get_globals_funcs
+	  CFF_Size_Done -> cff_size_done
+	  CFF_Size_Init -> cff_size_init
+	  CFF_Size_Reset -> cff_size_reset
+	  CFF_GlyphSlot_Done -> cff_slot_done
+	  CFF_GlyphSlot_Init -> cff_slot_init
+	  CFF_StrCopy -> cff_strcpy
+	  CFF_Face_Init -> cff_face_init
+	  CFF_Face_Done -> cff_face_done
+	  CFF_Driver_Init -> cff_driver_init
+	  CFF_Driver_Done -> cff_driver_done
+	  CFF_Parser_Init -> cff_parser_init
+	  CFF_Parser_Run -> cff_parser_run
+
+	  add_point -> cff_builder_add_point
+	  add_point1 -> cff_builder_add_point1
+	  add_contour -> cff_builder_add_contour
+	  close_contour -> cff_builder_close_contour
+	  cff_explicit_index -> cff_index_get_pointers
+
+2002-07-09  Owen Taylor  <owen at redhat.com>
+
+	* src/pshinter/pshglob.c (psh_globals_new): Fixed a bug that
+	prevented the hinter from using correct standard width and height
+	values, resulting in hinting bugs with certain fonts (e.g. Utopia).
+
+2002-07-07  David Turner  <david at freetype.org>
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Added code to return
+	successfully when the function is called with a bitmap glyph (the
+	previous code simply returned with an error).
+
+	* docs/DEBUG.TXT: Adding debugging support documentation.
+
+	* src/base/ftdebug.c (ft_debug_init), builds/win32/ftdebug.c
+	(ft_debug_init), builds/amiga/src/ftdebug.c (ft_debug_init): Changed
+	the syntax of the FT2_DEBUG environment variable used to control
+	debugging output (i.e. logging and error messages).  It must now
+	look like:
+
+	  any:6 memory:4 io:3   or
+	  any:6,memory:4,io:3   or
+	  any:6;memory:4;io:3
+
+2002-07-07  Owen Taylor  <owen at redhat.com>
+
+	* src/pshinter/pshglob.c (psh_blues_snap_stem): Adding support for
+	blue fuzz.
+	* src/pshinter/pshglob.h (PSH_BluesRec): Add `blue_fuzz' field.
+	* src/type1/t1load.c (T1_Open_Face): Initialize `blue_fuzz'.
+
+	Adding support for hinter-specific bit flags, and the new
+	FT_Set_Hint_Flags high-level API.
+
+	* include/freetype/freetype.h (FT_Set_Hint_Flags): New function.
+	(FT_HINT_NO_INTEGER_STEM, FT_HINT_NO_HSTEM_ALIGN,
+	FT_HINT_NO_VSTEM_ALIGN): New macros.
+
+	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec): Add
+	`hint_flags' member.
+
+	* src/base/ftobjs.c (FT_Set_Hint_Flags): New function.
+
+	* include/freetype/internal/psaux.h (T1_DecoderRec): Add `hint_flags'
+	member.
+
+	* include/freetype/internal/pshints.h (T1_Hints_ApplyFunc,
+	T2_Hints_ApplyFunc): Add parameter to pass hint flags.
+
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings,
+	T1_Decoder_Init): Use decoder->hint_flags.
+	* src/cff/cffgload.h (CFF_Builder): Add `hint_flags' field.
+	* src/cff/cffgload.c (CFF_Builder_Init): Set builder->hint_flags.
+	(CFF_Parse_CharStrings): Updated.
+	* src/pshinter/pshalgo1.c (ps1_hints_apply): Add parameter to handle
+	hint flags (unused).
+	* src/pshinter/pshalgo1.h: Updated.
+	* src/pshinter/pshalgo2.c (ps2_hints_apply): Add parameter to handle
+	hint flags (unused).
+	* src/pshinter/pshalgo2.h: Updated.
+	* src/pshinter/pshalgo3.c (ps3_hints_apply): Add parameter to handle
+	hint flags.
+	* src/pshinter/pshalgo3.h: Updated.
+
+2002-07-04  David Turner  <david at freetype.org>
+
+	* src/pfr/pfrobjs.c (pfr_slot_load): Fixed a small bug that returned
+	incorrect advances when the outline resolution was different from
+	the metrics resolution.
+
+	* src/autohint/ahhint.c: Removing compiler warnings.
+
+	* src/autohint/ahglyph.c: s/FT_MEM_SET/FT_ZERO/ where appropriate.
+	(ah_outline_link_segments): Slight improvements to the serif
+	detection code.  More work is needed though.
+
+2002-07-03  David Turner  <david at freetype.org>
+
+	Small improvements to the automatic hinter.  Uneven stem-widths have
+	now disappeared and everything looks much better, even if there are
+	still issues with serifed fonts.
+
+	* src/autohint/ahtypes.h (AH_Globals): Added `stds' array.
+	* src/autohint/ahhint.c (OPTIM_STEM_SNAP): New #define.
+	(ah_snap_width): Commented out.
+	(ah_align_linked_edge): Renamed to...
+	(ah_compute_stem_width): This.
+	Don't allow uneven stem-widths.
+	(ah_align_linked_edge): New function.
+	(ah_align_serifed_edge): Don't strengthen serifs.
+	(ah_hint_edges_3, ah_hinter_scale_globals): Updated.
+
+2002-07-03  Owen Taylor  <owen at redhat.com>
+
+	Adding new algorithm based on Owen Taylor's recent work.
+
+	* src/pshinter/pshalgo3.c, src/pshinter/pshalgo3.h: New files.
+	* src/pshinter/pshalgo.h: Updated.
+	Use pshalgo3 by default.
+	* src/pshinter/pshinter.c: Include pshalgo3.c.
+
+	* src/pshinter/Jamfile, src/pshinter/rules.mk: Updated.
+
+2002-07-01  Owen Taylor  <owen at redhat.com>
+
+	* src/pshinter/pshalgo2.c (psh2_glyph_find_strong_points): Fix a bug
+	where, if a glyph has more than hint mask, the second mask gets
+	applied to points that should have been covered by the first mask.
+
+2002-07-01  Keith Packard  <keithp at keithp.com>
+
+	* src/sfnt/ttcmap0.c (tt_cmap8_char_next, tt_cmap12_char_next):
+	Fixing the cmap 8 and 12 parsing routines.
+
+2002-07-01  David Turner  <david at freetype.org>
+
+	* src/base/ftsynth.c: Include FT_TRIGONOMETRY_H.
+	(FT_Outline_Embolden): Renamed to...
+	(FT_GlyphSlot_Embolden): This.
+	Updated to new trigonometric functions.
+	(FT_Outline_Oblique): Renamed to...
+	(FT_GlyphSlot_Oblique): This.
+	(ft_norm): Removed.
+	* include/freetype/ftsynth.h: Updated.
+
+2002-06-26  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/ftobject.h: Updating the object
+	sub-system definitions (still experimental).
+
+	* src/base/fthash.c (ft_hash_remove): Fixing a small reallocation
+	bug.
+
+	* src/base/fttrigon.c (FT_Vector_From_Polar, FT_Angle_Diff): New
+	functions.
+	* include/freetype/fttrigon.h: Updated.
+
+
+	Adding path stroker component (work in progress).
+
+	* include/freetype/ftstroker.h, src/base/ftstroker.c: New files.
+	* src/base/Jamfile: Updated.
+
+	* include/freetype/config/ftheader.h (FT_STROKER_H): New macro.
+
+
+	* src/truetype/ttgload.c (TT_Load_Composite_Glyph),
+	src/base/ftoutln.c (FT_Vector_Transform): Fixed Werner's latest fix.
+	FT_Vector_Transform wasn't buggy, the TrueType composite loader was.
+
+2002-06-24  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 3.
+
+2002-06-21  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.2 released.
+	=========================
+
+
+2002-06-21  Roberto Alameda  <ojancano at geekmail.de>.
+
+	* include/freetype/internal/t42types.h (T42_Font): Removed since
+	it is already in t42objs.h.
+	(T42_Face): Use T1_FontRec.
+
+	* src/base/fttype1.c (FT_Get_PS_Font_Info): Updated.
+	(FT_Has_PS_Glyph_Names): Check for type42 driver name also.
+	* src/type42/t42objs.h: Include FT_INTERNAL_TYPE42_TYPES_H.
+	(T42_Face): Removed since it is already in t42types.h.
+
+2002-06-21  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/pfrgload.c (pfr_glyph_load_compound): Fix loading of composite
+	glyphs.
+
+2002-06-21  Sven Neumann  <sven at convergence.de>
+
+	* src/pfr/pfrtypes.h (PFR_KernPair): New structure.
+	(PFR_PhyFont): Use it.
+	(PFR_KernFlags): New enumeration.
+	* src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): New
+	function.
+	(pfr_phy_font_extra_items): Use it.
+	(pfr_phy_font_done): Updated.
+	* src/pfr/pfrobjs.c (pfr_face_init): Set kerning flag conditionally.
+	(pfr_face_get_kerning): New function.
+	* src/pfr/pfrobjs.h: Updated.
+	* src/pfr/pfrdrivr.c (pfr_driver_class): Updated.
+
+2002-06-21  David Turner  <david at freetype.org>
+
+	* README, docs/CHANGES: Preparing the 2.1.2 release.
+
+2002-06-19  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/base/fttype1.c: Include FT_INTERNAL_TYPE42_TYPES_H.
+	(t1_face_check_cast): Removed.
+	(FT_Get_PS_Font_Info): Make it work with CID and Type 42 drivers
+	also.
+
+2002-06-19  Sebastien BARRE  <http://barre.nom.fr/contact.html#email>
+
+	* src/type42/t42parse.c (t42_parse_sfnts): Fix compiler warning.
+
+2002-06-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftoutln.c (FT_Vector_Transform): Fix serious typo
+	(xy <-> yx).
+	* src/truetype/ttgload.c (load_truetype_glyph): Replace `|' with
+	`||' to make code easier to read.
+
+2002-06-18  Roberto Alameda  <ojancano at geekmail.de>.
+
+	* src/type42/t42objs.c (t42_check_size_change): Removed.
+	(T42_Size_SetChars, T42_Size_SetPixels): Use FT_Activate_Size
+	instead.
+	(T42_GlyphSlot_Load): Remove call to t42_check_size_change.
+
+2002-06-18  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/psaux/t1cmap.c (t1_cmap_custom_char_index,
+	t1_cmap_custom_char_next): Fix index computation -- indices start
+	with 0 and not with cmap->first.
+
+	Provide default charmaps.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdriver.c
+	(PCF_Face_Init), src/pfr/pfrobjs.c (pfr_face_init),
+	src/type1/t1objs (T1_Face_Init), src/winfonts/winfnt.c
+	(FNT_Face_Init): Implement it.
+
+2002-06-17  Sven Neumann  <sven at gimp.org>
+
+	* src/pfr/pfrobjs.c (pfr_face_init): Fix typo.
+
+2002-06-16  Leonard Rosenthol  <leonardr at lazerware.com>
+
+	Updated Win32/VC++ projects to include the new PFR driver.
+
+	* builds/win32/visualc/freetype.dsp: Updated.
+
+2002-06-16  Anthony Fok  <fok at debian.org>
+
+	Install freetype2.m4.
+
+	* builds/unix/install.mk (install, uninstall): Handle it.
+
+2002-06-16  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	Same fix for PFR driver.
+
+	* src/pfr/pfrcmap.c (pfr_cmap_char_index, pfr_cmap_char_next):
+	Increase return value by 1.
+	* src/pfr/pfrobjs.c (pfr_slot_load): Decrease index by 1.
+
+2002-06-15  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	Fix glyph indices to make index zero always the undefined glyph.
+
+	* src/bdf/bdfdrivr.c (bdf_cmap_init): Don't decrease
+	cmap->num_encodings.
+	(bdf_cmap_char_index, bdf_cmap_char_next, BDF_Get_Char_Index):
+	Increase result by 1 for normal cases.
+	(BDF_Glyph_Load): Decrease index by 1.
+
+	* src/pcf/pcfdriver.c (pcf_cmap_char_index, pcf_cmap_char_next,
+	PCF_Char_Get_Index): Increase result by 1 for normal cases.
+	(PCF_Glyph_Load): Decrease index by 1.
+	* src/pcf/pcfread.c (pcf_get_encodings): Don't decrease j for
+	allocating `encoding'.
+
+	* src/base/ftobjs.c (FT_Load_Glyph, FT_Get_Glyph_Name): Fix
+	bounding tests.
+
+2002-06-14  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	Add new cmap support to BDF driver.
+
+	* src/bdf/bdfdrivr.c (BDF_CMapRec) [FT_CONFIG_OPTION_USE_CMAPS]:
+	New structure.
+	(bdf_cmap_init, bdf_cmap_done, bdf_cmap_char_index,
+	bdf_cmap_char_next) [FT_CONFIG_OPTION_USE_CMAPS]: New functions.
+	(BDF_Get_Char_Index) [!FT_CONFIG_OPTION_USE_CMAPS]: Use only
+	conditionally.
+	(BDF_Face_Init): Handle `AVERAGE_WIDTH' and `POINT_SIZE' keywords.
+	Implement new cmap handling.
+	(bdf_driver_class): Updated.
+
+2002-06-14  Werner Lemberg  <wl at gnu.org>
+
+	* Makefile, configure, */*.mk, builds/unix/unix-def.in,
+	docs/CHANGES, docs/INSTALL: s/TOP/TOP_DIR/.
+
+2002-06-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdflib.c: s/FT_Short/short/ for consistency.
+
+2002-06-11  David Turner  <david at freetype.org>
+
+	* builds/win32/ftdebug.c: Added a missing #endif.
+
+	* src/sfnt/ttload.c, src/bdf/bdflib.c: Removing compiler warnings.
+
+	Removed the bug in Type 42 driver that prevented un-hinted outlines
+	to be loaded.
+
+	* src/type42/t42objs.c (T42_Face_Init): Call FT_Done_Size.
+	(T42_Size_Init): Call FT_Activate_Size.
+	(t42_check_size_change): New function.
+	(T42_Size_SetChars, T42_Size_SetPixels): Use it.
+	(ft_glyphslot_clear): Replace FT_MEM_SET with FT_ZERO.
+	(T42_GlyphSlot_Load): Use t42_check_size_change.
+	Initialize more fields of `glyph'.
+
+	* builds/win32/visualc/freetype.dsp: Updated.
+
+2002-06-09  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.1 released.
+	=========================
+
+
+2002-06-08  Juliusz Chroboczek  <jch at pps.jussieu.fr>
+
+	* include/freetype/internal/ftobjs.h, src/autohint/ahglyph.c,
+	src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/smooth/ftgrays.c: Don't
+	use `setjmp', `longjmp', and `jmp_buf' but `ft_setjmp', `ft_longjmp',
+	and `ft_jmp_buf'.
+	Removed direct references to <stdio.h> and <setjmp.h> when
+	appropriate, to eventually replace them with a
+	FT_CONFIG_STANDARD_LIBRARY_H.  Useful for the XFree86 Font Server
+	backend based on FT2.
+
+	* src/base/fttype1.c (FT_Has_PS_Glyph_Names): Fix return value.
+
+2002-06-08  David Turner  <david at freetype.org>
+
+	* src/pcf/pcfdriver.c (pcf_cmap_char_next): Fixed a bug that caused
+	the function to return invalid values.
+
+	* src/cache/ftccache.i: Removing a typo that prevented
+	the source's compilation.
+
+	* src/cache/ftccache.c (ftc_node_hash_unlink): Fixed a
+	bug that caused nasty memory overwrites.  The hash table's
+	buckets array wasn't correctly resized when shrunk.
+
+2002-06-08  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/smakefile, builds/amiga/makefile: Updated.
+
+2002-06-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c (ftc_node_hash_unlink, ftc_node_hash_link)
+	[FTC_CACHE_USE_LINEAR_HASHING]: Fix returned error code.
+	Fix debugging messages.
+	* src/cache/ftccache.i (GEN_CACHE_LOOKUP): Move declaration of
+	`family' and `hash' up to make it compilable with g++.
+
+	* src/type42/t42error.h: New file.
+	* src/type42/t42drivr.c, src/type42/t42objs.c,
+	src/type42/t42parse.c: Use t42 error codes.
+	* src/type42/rules.mk: Updated.
+
+	* src/base/ftnames.c: Include FT_INTERNAL_STREAM_H.
+
+2002-06-08  David Turner  <david at freetype.org>
+
+	* src/cache/ftccmap.c: GEN_CACHE_FAMILY_COMPARE,
+	GEN_CACHE_NODE_COMPARE, GEN_CACHE_LOOKUP) [FTC_CACHE_USE_INLINE]:
+	New macros.
+	(ftc_cmap_cache_lookup) [!FTC_CACHE_USE_INLINE]: Typedef to
+	ftc_cache_lookup.
+	(FTC_CMapCache_Lookup): Updated.
+
+	Adding various experimental optimizations to the cache manager.
+
+	* include/freetype/cache/ftccache.h (FTC_CACHE_USE_INLINE,
+	FTC_CACHE_USE_LINEAR_HASHING): New options.
+	(FTC_CacheRec) [FTC_CACHE_USE_LINEAR_HASHING]: New elements `p',
+	`mask', and `slack'.
+
+	* src/cache/ftccache.c (FTC_HASH_MAX_LOAD, FTC_HASH_MIN_LOAD,
+	FTC_HASH_SUB_LOAD) [FTC_CACHE_USE_LINEAR_HASHING,
+	FTC_HASH_INITIAL_SIZE]: New macros.
+	(ftc_node_mru_link, ftc_node_mru_up): Optimized.
+	(ftc_node_hash_unlink, ftc_node_hash_link)
+	[FTC_CACHE_USE_LINEAR_HASHING]: New variants.
+	(FTC_PRIMES_MIN, FTC_PRIMES_MAX, ftc_primes, ftc_prime_closest,
+	FTC_CACHE_RESIZE_TEST, ftc_cache_resize)
+	[!FTC_CACHE_USE_LINEAR_HASHING]: Define it conditionally.
+	(ftc_cache_init, ftc_cache_clear) [FTC_CACHE_USE_LINEAR_HASHING]:
+	Updated.
+	(ftc_cache_lookup) [FTC_CACHE_USE_LINEAR_HASHING]: Implement it.
+
+	* src/cache/ftccache.i: New file.
+
+	* src/cache/ftcsbits.c (GEN_CACHE_FAMILY_COMPARE,
+	GEN_CACHE_NODE_COMPARE, GEN_CACHE_LOOKUP) [FTC_CACHE_USE_INLINE]:
+	New macros.
+	(ftc_sbit_cache_lookup) [!FTC_CACHE_USE_INLINE]: Typedef to
+	ftc_cache_lookup.
+	(FTC_SBitCache_Lookup): Updated.
+
+	* src/type42/t42parse.c: Removing duplicate function.
+
+2002-06-07  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/base/ftobjs.c (FT_Render_Glyph_Internal): Changed definition
+	from FT_EXPORT_DEF to FT_BASE_DEF.
+
+2002-06-07  David Turner  <david at freetype.org>
+
+	Fixed the bug that prevented the correct display of fonts with
+	`ftview'.
+
+	* src/type42/t42drivr.c: Split into...
+	* src/type42/t42drivr.h, src/type42/t42parse.c,
+	src/type42/t42parse.h, src/type42/t42objs.h, src/type42/t42objs.c,
+	src/type42/type42.c: New files.
+
+	(t42_get_glyph_name, t42_get_ps_name, t42_get_name_index): Use
+	`face->type1'.
+
+	(Get_Interface): Renamed to...
+	(T42_Get_Interface): This.
+	Updated.
+	(T42_Open_Face, T42_Face_Done): Updated.
+	(T42_Face_Init): Add new cmap support.
+	Updated.
+	(T42_Driver_Init, T42_Driver_Done, T42_Size_Init, T42_Size_Done,
+	T42_GlyphSlot_Init, T42_GlyphSlot_Done): Updated.
+	(Get_Char_Index, Get_Next_Char): Renamed to...
+	(T42_CMap_CharIndex, T42_CMap_CharNext): This.
+	Updated.
+	(T42_Char_Size, T42_Pixel_Size): Renamed to...
+	(T42_Size_SetChars, T42_Size_SetPixels): This.
+	(T42_Load_Glyph): Renamed to...
+	(T42_GlyphSlot_Load): This.
+
+	(t42_init_loader, t42_done_loader): Renamed to...
+	(t42_loader_init, t42_loader_done): This.
+	(T42_New_Parser, T42_Finalize_Parser): Renamed to...
+	(t42_parser_init, t42_parser_done): This.
+	(parse_dict): Renamed to...
+	(t42_parse_dict): This.
+	(is_alpha, is_space, hexval): Renamed to...
+	(t42_is_alpha, t42_is_space, t42_hexval): This.
+	(parse_font_name, parse_font_bbox, parse_font_matrix,
+	parse_encoding, parse_sfnts, parse_charstrings, parse_dict):
+	Renamed to...
+	(t42_parse_font_name, t42_parse_font_bbox, t42_parse_font_matrix,
+	t42_parse_encoding, t42_parse_sfnts, t42_parse_charstrings,
+	t42_parse_dict): This.
+	Updated.
+
+	(t42_keywords): Updated.
+
+	* src/type42/Jamfile, src/type42/descrip.mms: Updated.
+
+2002-06-03  Werner Lemberg  <wl at gnu.org>
+
+	Add 8bpp support to BDF driver.
+
+	* src/bdf/bdflib.c (_bdf_parse_start): Handle 8bpp.
+	* src/bdf/bdfdrivr.c (BDF_Glyph_Load): Ditto.
+	* src/bdf/README: Updated.
+
+2002-06-02  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/pfr/pfrload.c (pfr_phy_font_done): Free `blue_values' array.
+
+2002-05-29  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/bdf/bdflib.c (_bdf_readstream): Allocate `buf' dynamically.
+	(_bdf_parse_glyphs): Use correct size for allocating
+	`font->unencoded'.
+	(bdf_load_font): Free array conditionally.
+	Return proper error code in case of failure.
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Make it more robust against
+	unusual fonts.
+
+2002-05-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/descrip.mms, src/type42/descrip.mms: New files.
+	* descrip.mms (all): Updated.
+
+	* src/bdf/bdflib.c (_bdf_parse_glyphs): Fix typo which prevented
+	compilation.
+	* src/pshglob.c (psh_blues_scale_zones): Fix compiler warning.
+
+2002-05-28  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/makefile, builds/amiga/smakefile,
+	amiga/include/freetype/config/ftmodule.h: Updated to include
+	support for BDF and Type42 drivers.
+
+	* docs/modules.txt: Updated.
+
+2005-05-28  David Turner  <david at freetype.org>
+
+	* docs/CHANGES: Updating file for next release (2.1.1).
+
+	* src/bdf/bdflib.c: Removing compiler warnings.
+
+	* include/freetype/ftxf86.h, src/base/ftxf86.c: New files.
+	They provide a new API (FT_Get_X11_Font_Format) to retrieve an
+	X11-compatible string describing the font format of a given face.
+	This was put in a new optional base source file, corresponding to a
+	new public header (named FT_XFREE86_H since this function should
+	only be used within the XFree86 font server IMO).
+
+	* include/freetype/config/ftheader.h (FT_XFREE86_H): New macro (not
+	documented yet).
+
+	* src/base/fttype1.c: New file, providing two new API functions
+	(FT_Get_PS_Font_Info and FT_Has_PS_Glyph_Names).
+	* include/freetype/t1tables.h: Updated.
+
+	* src/base/Jamfile, src/base/rules.mk, src/base/descrip.mms:
+	Updating build control files for the new files `ftxf86.c' and
+	`fttype1.c' in src/base.
+
+	* src/pshinter/pshglob.c (psh_blues_scale_zones): Fixed a bug that
+	prevented family blue zones substitution from happening correctly.
+
+	* include/freetype/ftbdf.h FT_Get_BDF_Charset_ID): Adding
+	documentation comment.
+
+2002-05-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftnames.c (FT_Get_Sfnt_Name): Don't use FT_STREAM_READ_AT
+	but FT_STREAM_READ.
+	Declare `stream' variable.
+
+	* src/bdf/bdflib.c (_bdf_parse_glyphs): Replace floating point math
+	with calls to `FT_MulDiv'.
+
+2002-05-28  David Turner  <david at freetype.org>
+
+	Fixing the SFNT name table loader to support various buggy fonts.
+	It now ignores empty name entries, entries with invalid pointer
+	Offsets and certain fonts containing tables with broken
+	`storageOffset' fields.
+
+	Name strings are now loaded on demand, which reduces the memory
+	requirements for a given FT_Face tremendously (for example, the name
+	table of Arial.ttf is about 10Kb and contains 70 names).
+
+	This is a temporary fix.  The whole name table loader and interface
+	will be rewritten in a much more cleanly way shortly, once CSEH have
+	been introduced in the sources.
+
+	* include/freetype/internal/tttypes.h (TT_NameEntryRec): Change
+	type of `stringOffset' to FT_ULong.
+	(TT_NameTableRec): Change type of `numNameRecords' and
+	`storageOffset' to FT_UInt.
+	Replace `storage' with `stream'.
+	* src/base/ftnames.c (FT_Get_Sfnt_Name): Load name on demand.
+	* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto.
+	Make code more robust.
+	* src/sfnt/sfobjs.c (TT_NameEntry_ConvertFunc): New typedef.
+	(tt_face_get_name): Use it.
+	Make code more robust.
+	* src/sfnt/ttload.c (TT_Load_Names): Use `static' for arrays.
+	Handle invalid `storageOffset' data better.
+	Set length fields to zero for invalid or ignored data.
+	Remove code within FT_DEBUG_LEVEL_TRACE.
+	(TT_Free_Names): Updated.
+
+2002-05-24  Tim Mooney  <enchanter at users.sourceforge.net>
+
+	* builds/unix/ft-munmap.m4: New file, extracted FT_MUNMAP_DECL and
+	FT_MUNMAP_PARAM from aclocal.m4 into here, so aclocal.m4 can be
+	rebuilt from sources.  Set macro serial to 1, and use third argument
+	to AC_DEFINE for our two custom symbols, so ftconfig.in could one day
+	be rebuilt with autoheader (not recommended now, ftconfig.in is a
+	custom source file)
+
+2002-05-22  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftheader.h (FT_BEZIER_H): Removed.
+	(FT_BDF_H): New macro for accessing `ftbdf.h'.
+
+	* src/type42/t42drivr.c (hexval): Fix typo.
+
+2002-05-21  Martin Muskens  <mmuskens at aurelon.com>
+
+	* src/psaux/psobjs.c (T1Radix): New function.
+	(t1_toint): Use it to handle numbers in radix format.
+
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Add dummy
+	for undocumented, obsolete opcode 15.
+
+2002-05-21  David Turner  <david at freetype.org>
+
+	* src/bdf/bdflib.c: Removed compiler warning, and changed all tables
+	to the `static const' storage specifier (instead of simply
+	`static').
+
+	* src/type42/t42drivr.c (hexval): Use more efficient code.
+	Removing compiler warnings.
+	* src/bdf/bdfdrivr.c: Removing compiler warnings.
+
+	* include/freetype/internal/ftbdf.h, src/base/ftbdf.c,
+	src/base/descrip.mms, src/base/Jamfile, src/base/rules.mk
+	(FT_Get_BDF_Charset_ID): New API to retrieve BDF-specific strings
+	from a face.  This is much cleaner than accessing the internal types
+	`BDF_Public_Face' defined in FT_INTERNAL_BDF_TYPES_H.
+
+2002-05-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/README: Mention Microsoft's SBIT tool.
+
+	* src/cff/cffdrivr.c, src/cid/cidriver.c, src/pcf/pcfdriver.c,
+	src/truetype/ttdriver.c, src/type1/t1driver.c,
+	src/winfonts/winfnt.c, src/type42/t42drivr.c, src/bdf/bdfdrivr.c
+	[FT_CONFIG_OPTION_DYNAMIC_DRIVERS]: Completely removed.  It has
+	been never used.
+
+2002-05-21  Roberto Alameda  <ojancano at geekmail.de>.
+
+	* src/type42/t42drivr.c: s/T42_ENCODING_TYPE_/T1_ENCODING_TYPE_/.
+	(parse_font_matrix): Remove unnecessary code.
+	(parse_sfnts): Initialize some variables.
+	(t42_driver_class) [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Use
+	ft_module_driver_has_hinter conditionally.
+	Moved some type 42 specific structure definitions to...
+	* include/freetype/internal/t42types.h: New file.
+	* include/freetype/internal/internal.h (FT_INTERNAL_T42_TYPES_H):
+	New macro.
+
+2002-05-20  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/cache/ftcsbits.h (FTC_SBit): Added a new field
+	`num_grays' for specifying the number of used gray levels.
+	* src/cache/ftcsbits.c (ftc_sbit_node_load): Initialize it.
+
+2002-05-19  Werner Lemberg  <wl at gnu.org>
+
+	Adding a driver for BDF fonts written by Francesco Zappa Nardelli
+	<Francesco.Zappa.Nardelli at ens.fr>.  Heavily modified by me to
+	better adapt it to FreeType, removing unneeded stuff.  Additionally,
+	it now supports Mark Leisher's BDF extension for anti-aliased
+	bitmap glyphs with 2 and 4 bpp.
+
+	* src/bdf/*: New driver.
+	* include/freetype/internal/bdftypes.h: New file.
+	* include/freetype/internal/fttrace.h: Added BDF driver components.
+	* include/freetype/fterrdef.h: Added error codes for BDF driver.
+	* include/freetype/config/ftmodule.h, src/Jamfile: Updated.
+	* include/freetype/internal/internal.h (FT_INTERNAL_BDF_TYPES_H):
+	New macro.
+
+	* include/freetype/config/ftstdlib.h (ft_sprintf): New alias for
+	sprintf.
+
+2002-05-18  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/fttrace.h: Added Type 42 driver
+	component.
+	* src/type42/t42drivr.c: Use it.
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_PCF_TYPES_H):
+	New macro.
+
+2002-05-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/type42/Jamfile: New file.
+
+2002-05-14  Werner Lemberg  <wl at gnu.org>
+
+	Adding a driver for Type42 fonts written by Roberto Alameda
+	<ojancano at geekmail.de>.
+
+	* src/type42/*: New driver.
+	* include/freetype/config/ftmodule.h, src/Jamfile: Updated.
+	* include/freetype/config/ftstdlib.h (ft_xdigit, ft_memcmp,
+	ft_atoi): New aliases for xdigit, memcmp, and atoi, respectively.
+
+2002-05-12  Owen Taylor  <otaylor at redhat.com>
+
+	* src/sfnt/ttload.c (TT_LookUp_Table): Protect against tables
+	with a zero length value.
+
+2002-05-12  Michael Pfeiffer  <michael.pfeiffer at utanet.at>
+
+	* builds/beos/beos.mk: Include `link-std.mk'.
+
+2002-05-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.h (T1_Loader): Renamed to...
+	(T1_LoaderRec): This.
+	(T1_Loader): Now pointer to T1_LoaderRec.
+	* src/type1/t1load.c: Updated.
+
+	* include/freetype/internal/t1types.h, src/type1/t1load.c,
+	src/type1/t1objs.c:
+	s/T1_ENCODING_TYPE_EXPORT/T1_ENCODING_TYPE_EXPERT/.
+
+2002-05-06  Werner Lemberg  <wl at gnu.org>
+
+	* README: Add a note regarding libttf vs. libfreetype.
+
+2002-05-05  Werner Lemberg  <wl at gnu.org>
+
+	FreeType 2 can now be built in an external directory with the
+	configure script also.
+
+	* builds/freetype.mk (INCLUDES): Add `OBJ_DIR'.
+
+	* builds/unix/detect.mk (have_mk): New variable to test for
+	external build.
+	(unix-def.mk): Defined according to value of `have_mk'.
+	* builds/unix/unix.mk (have_mk): New variable to test for
+	external build.
+	Select include paths for unix-def.mk and unix-cc.mk according
+	to value of `have_mk'.
+	* builds/unix/unix-def.in (OBJ_BUILD): New variable.
+	(DISTCLEAN): Use it.
+	* builds/unix/unix-cc.in (LIBTOOL): Define default value only
+	if not yet defined.
+	* builds/unix/install.mk (install): Use `OBJ_BUILD' for installing
+	freetype-config.
+
+	* configure: Don't depend on bash features.
+	(ft2_dir, abs_curr_dir, abs_ft2_dir): New variables (code
+	partially taken from Autoconf).
+	Build a dummy Makefile if not building in source tree.
+
+	* docs/INSTALL: Document it.
+
+2002-05-04  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgload.c (TT_Load_Glyph): Finally fixing the last
+	bug that prevented FreeType 2.x and FreeType 1.x to produce
+	bit-by-bit identical monochrome glyph bitmaps with native TrueType
+	hinting.  The culprit was a single-bit flag that wasn't set
+	correctly by the TrueType glyph loader.
+
+	* src/otlayout/otlayout.h, src/otlayout/otlbase.c,
+	src/otlayout/otlbase.h, src/otlayout/otlconf.h,
+	src/otlayout/otlgdef.c, src/otlayout/otlgdef.h,
+	src/otlayout/otlgpos.c, src/otlayout/otlgpos.h,
+	src/otlayout/otlgsub.c, src/otlayout/otlgsub.h,
+	src/otlayout/otljstf.c, src/otlayout/otljstf.h,
+	src/otlayout/otltable.c, src/otlayout/otltable.h,
+	src/otlayout/otltags.h: New OpenType Layout source files.  The
+	module is still incomplete.
+
+2002-05-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_char_index): Fix serious typo
+	(0xFFFU -> 0xFFFFU).
+
+2002-05-01  Werner Lemberg  <wl at gnu.org>
+
+	* docs/INSTALL: Fix URL of makepp.
+
+2002-05-01  David Turner  <david at freetype.org>
+
+	* src/sfnt/sfobjs.c (tt_face_get_name): Fixing a bug that caused
+	FreeType to crash when certain broken fonts (e.g. `hya6gb.ttf')
+	were opened.
+
+	* src/sfnt/ttload.c (TT_Load_Names): Applied a small work-around to
+	manage fonts containing a broken name table (e.g. `hya6gb.ttf').
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_validate): Fixed over-restrictive
+	validation test.  The charmap validator now accepts overlapping
+	ranges in format 4 charmaps.
+
+	* src/sfnt/ttcmap0.c (tt_cmap4_char_index): Switched to a binary
+	search algorithm.  Certain fonts contain more than 170 distinct
+	segments!
+
+	* include/freetype/config/ftstdlib.h: Adding an alias for the `exit'
+	function.  This will be used in the near future to panic in case of
+	unexpected exception (which shouldn't happen in theory).
+
+	* include/freetype/internal/fthash.h, src/base/fthash.c: New files.
+	This is generic implementation of dynamic hash tables using a linear
+	algorithm (to get rid of `stalls' during resizes).  In the future
+	this will be used in at least three parts of the library: the cache
+	sub-system, the object sub-system, and the memory debugger.
+
+	* src/base/Jamfile: Updated.
+
+	* include/freetype/internal/internal.h (FT_INTERNAL_HASH_H,
+	FT_INTERNAL_OBJECT_H): New macros.
+
+	* include/freetype/internal/ftcore.h: New file to group all new
+	definitions related to exception handling and memory management.  It
+	is very likely that this file will disappear or be renamed in the
+	future.
+
+	* include/freetype/internal/ftobject.h, include/freetype/ftsysmem.h:
+	Adding comments to better explain the object sub-system as well as
+	the new memory manager interface.
+
+2002-04-30  Wenlin Institute (Tom Bishop)  <wenlin at wenlin.com>
+
+	* src/base/ftmac.c (p2c_str): Removed.
+	(file_spec_from_path) [TARGET_API_MAC_CARBON]: Added support for
+	OS X.
+	(is_dfont) [TARGET_API_MAC_CARBON]: Define only for OS X.
+	Handle `nameLen' <= 6 also.
+	(parse_fond): Remove unused variable `name_table'.
+	Use functionality of old p2c_str directly.
+	Add safety checks.
+	(read_lwfn): Initialize `size_p'.
+	Check for size_p == NULL.
+	(new_memory_stream, open_face_from_buffer): Updated to FreeType 2.1.
+	(FT_New_Face_From_LWFN): Remove unused variable `memory'.
+	Remove some dead code.
+	(FT_New_Face_From_SFNT): Remove unused variable `stream'.
+	(FT_New_Face_From_dfont) [TARGET_API_MAC_CARBON]: Define only for
+	OS X.
+	(FT_New_Face_From_FOND): Remove unused variable `error'.
+	(ResourceForkSize): New function.
+	(FT_New_Face): Use it.
+	Handle empty resource forks.
+	Conditionalize some code for OS X.
+	Add code to call normal loader as a fallback.
+
+2002-04-30  Werner Lemberg  <wl at gnu.org>
+
+	`interface' is reserved on the Mac.
+
+	* include/freetype/ftoutln.h, include/freetype/internal/sfnt.h,
+	src/base/ftoutln.c: s/interface/func_interface/.
+	* src/base/ftbbox.c (FT_Outline_Get_BBox):
+	s/interface/bbox_interface/.
+	* src/cff/cffdrivr.c: s/interface/module_interface/.
+	* src/cff/cffload.c, src/cff/cffload.h:
+	s/interface/psnames_interface/.
+	* src/cid/cidriver.c: s/interface/cid_interface/.
+	* src/sfnt/sfdriver.c: s/interface/module_interface/.
+	* src/smooth/ftgrays.c: s/interface/func_interface/.
+	* src/truetype/ttdriver.c: s/interface/tt_interface/.
+	* src/type1/t1driver.c: s/interface/t1_interface/.
+
+	Some more variable renames to avoid troubles on the Mac.
+
+	* src/raster/ftraster.c:
+	s/Unknown|Ascending|Descending|Flat/\1_State/.
+	* src/smooth/ftgrays.c: s/TScan/TCoord/.
+
+	Other changes for the Mac.
+
+	* include/freetype/config/ftconfig.h: Define FT_MACINTOSH for
+	Mac platforms.
+	* src/base/ftobjs.c: s/macintosh/FT_MACINTOSH/.
+
+	* src/raster/ftrend1.c (ft_raster1_render): Make `pitch' always
+	an even number.
+
+2002-04-29  Jouk Jansen  <joukj at hrem.stm.tudelft.nl>
+
+	* descrip.mms (all): Add pfr driver.
+
+2002-04-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/pfrerror.h: New file.
+	* include/freetype/ftmoderr.h: Add PFR error codes.
+	* src/pfr/pfrgload.c: Include pfrerror.h.
+	Use PCF error codes.
+	(pfr_extra_item_load_stem_snaps): Fix debug message.
+	* src/pfr/pfrgload.c: Include pfrerror.h.
+	Use PCF error codes.
+	(pfr_extra_item_load_bitmap_info, pfr_glyph_load_simple,
+	pfr_glyph_load_compound): Fix debug message.
+	* src/pfr/pfrobjs.c: Include pfrerror.h.
+	Use PCF error codes.
+	(pfr_face_init): Return PFR_Err_Unknown_File_Format.
+	* src/pfr/rules.mk (PFR_DRV_H): Include pfrerror.h.
+
+	* src/pcf/pcfdriver.c (PCF_Face_Init) [!FT_CONFIG_OPTION_USE_CMAPS]:
+	`root' -> `face->root'.
+	* src/sfnt/ttcmap0.c (TT_Build_CMaps) [!FT_CONFIG_OPTION_USE_CMAPS]:
+	Removed.
+	* src/sfnt/ttcmap0.c: Declare TT_Build_CMaps only for
+	FT_CONFIG_OPTION_USE_CMAPS.
+
+2002-04-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c (ftc_cache_lookup),
+	src/cache/ftccmap.c (ftc_cmap_family_init),
+	src/cache/ftcmanag.c (ftc_family_table_alloc),
+	src/cache/ftcsbits.c (FTC_SBit_Cache_Lookup): Use FTC_Err_*.
+	src/cache/ftcimage.c (FTC_Image_Cache_Lookup): Use FTC_Err_*.
+	(FTC_ImageCache_Lookup): Fix handling of invalid arguments.
+
+2002-04-22  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.ac: Set `version_info' to 9:1:3 (FT2
+	version 2.0.9 has 9:0:3).
+	* builds/unix/configure: Regenerated (using autoconf 2.53).
+
+2002-04-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/pfrload.c (pfr_extra_items_parse): Fix debug message.
+	(pfr_phy_font_load): s/size/Size/ for local variable to avoid
+	compiler warning.
+	* src/pfr/pfrobjs.c (pfr_face_init): Fix debug message.
+	(pfr_slot_load): Remove redundant local variable.
+
+2002-04-19  David Turner  <david at freetype.org>
+
+	Adding a PFR font driver to the FreeType sources.  Note that it
+	doesn't support embedded bitmaps or kerning tables yet.
+
+	src/pfr/*: New files.
+
+	* include/freetype/config/ftmodule.h,
+	include/freetype/internal/fttrace.h, src/Jamfile: Updated.
+
+	* src/type1/t1gload.h (T1_Load_Glyph), src/type1/t1gload.c
+	(T1_Load_Glyph): Fixed incorrect parameter sign-ness in callback
+	function.
+
+	* include/freetype/internal/ftmemory.h (FT_MEM_ZERO, FT_ZERO): New
+	macros.
+
+	* include/freetype/internal/ftstream.h (FT_NEXT_OFF3, FT_NEXT_UOFF3,
+	FT_NEXT_OFF3_LE, FT_NEXT_UOFF3_LE): New macros to parse in-memory
+	24-bit integers.
+
+2002-04-18  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c, builds/win32/ftdebug.c,
+	builds/amiga/src/base/ftdebug.c: Version 2.1.0 couldn't be linked
+	against applications in Win32 and Amiga builds due to changes to
+	`src/base/ftdebug.c' that were not properly propagated to
+	`builds/win32' and `builds/amiga'.  This has been fixed.
+
+	* include/freetype/internal/ftobject.h,
+	include/freetype/internal/ftexcept.h, include/freetype/ftsysmem.h,
+	include/freetype/ftsysio.h, src/base/ftsysmem.c, src/base/ftsysio.c:
+	New experimental files.
+
+2002-04-17  David Turner  <david at freetype.org>
+
+
+	* Version 2.1.0 released.
+	=========================
+
+
+2002-04-17  Michael Jansson  <mjan at em2-solutions.com>
+
+	* src/type1/t1gload.c (T1_Compute_Max_Advance): Fixed a small bug
+	that prevented the function to return the correct value.
+
+2002-04-16  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli at ens.fr>
+
+	* src/pcf/pcfread.c (pcf_get_accel): Fix parsing of accelerator
+	tables.
+
+2002-04-15  David Turner  <david at freetype.org>
+
+	* docs/FTL.txt: Formatting.
+
+	* include/freetype/config/ftoption.h: Reduce the size of the
+	render pool from 32kByte to 16kByte.
+
+	* src/pcf/pcfread.c (pcf_seek_to_table_type): Remove compiler
+	warning.
+
+	* include/freetype/config/ftoption.h (FT_MAX_EXTENSIONS): Removed.
+
+	* docs/CHANGES: Preparing 2.1.0 release.
+
+2002-04-13  Werner LEMBERG  <wl at gnu.org>
+
+	* src/cff/cffgload.c (CFF_Parse_CharStrings): s/rand/Rand/ to avoid
+	compiler warning.
+
+2002-04-12  David Turner  <david at freetype.org>
+
+	* README.UNX: Updated the Unix-specific quick-compilation guide to
+	warn about the GNU Make requirement at compile time.
+
+	* include/freetype/config/ftstdlib.h,
+	include/freetype/config/ftconfig.h,
+	include/freetype/config/ftheader.h,
+	include/freetype/internal/ftmemory.h,
+	include/freetype/internal/ftobjs.h,
+
+	src/autohint/ahoptim.c,
+
+	src/base/ftdbgmem.c, src/base/ftdebug.c, src/base/ftmac.c,
+	src/base/ftobjs.c, src/base/ftsystem.c,
+
+	src/cache/ftcimage.c, src/cache/ftcsbits.c,
+
+	src/cff/cffdrivr.c, src/cff/cffload.c, src/cff/cffobjs.c,
+
+	src/cid/cidload.c, src/cid/cidparse.c, src/cid/cidriver.c,
+
+	src/pcf/pcfdriver.c, src/pcf/pcfread.c,
+
+	src/psaux/t1cmap.c, src/psaux/t1decode.c,
+
+	src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.c,
+	src/pshinter/pshrec.c,
+
+	src/psnames/psmodule.c,
+
+	src/raster/ftraster.c,
+
+	src/sfnt/sfdriver.c, src/sfnt/ttload.c,
+
+	src/smooth/ftgrays.c,
+
+	src/type1/t1afm.c, src/type1/t1driver.c, src/type1/t1gload.c,
+	src/type1/t1load.c, src/type1/t1objs.c, src/type1/t1parse.c,
+
+	builds/unix/ftconfig.in, builds/vms/ftconfig.h,
+
+	builds/amiga/src/base/ftdebug.c:
+
+	Added the new configuration file `ftstdlib.h' used to define
+	aliases for all ISO C library functions used by the engine
+	(e.g. strlen, qsort, setjmp, etc.).
+
+	This eases the porting of FreeType 2 to environments like
+	XFree86 modules/extensions.
+
+	Also removed many #include <string.h>, #include <stdlib.h>, etc.
+	from the engine's sources where they are not needed.
+
+	* src/sfnt/ttpost.c: Use macro name for psnames.h.
+
+2002-04-12  Vincent Caron  <v.caron at zerodeux.net>
+
+	* configure, builds/detect.mk: Updated the build system to print
+	a warning message in case GNU Make isn't used to build the library.
+
+2002-04-11  David Turner  <david at freetype.org>
+
+	* README, docs/CHANGES, Jamfile.in: Updates for the 2.1.0 release.
+
+	* docs/FTL.txt: Updated license text to provide a preferred
+	disclaimer and adjust copyright dates/extents.
+
+	* include/freetype/cache/ftcglyph.h: Removing obsolete (and
+	confusing) comment.
+
+	* Jamfile.in: New file.
+
+2002-04-11  Maxim Shemanarev  <mcseemagg at yahoo.com>
+
+	* src/smooth/ftgrays.c (gray_hline): Minor optimization.
+
+2002-04-02  Werner Lemberg  <wl at gnu.org>
+
+	Fixes from the stable branch:
+
+	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_OLD_CALCS):
+	Removed.
+	[FT_CONFIG_OPTION_OLD_CALCS]: Removed.
+	* include/freetype/internal/ftcalc.h, src/base/ftcalc.c
+	[FT_CONFIG_OPTION_OLD_CALCS]: Removed.
+
+	* src/base/fttrigon.c (FT_Vector_Length): Change algorithm to match
+	output of FreeType 1.
+
+	* src/pshinter/pshglob.c (psh_globals_scale_widths): Fixed a small
+	bug that created un-even stem widths when hinting Postscript fonts.
+
+	* src/type1/t1driver.c, src/type1/t1parse.c: 16bit fixes.
+
+2002-04-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c: 16bit fixes.
+	(TT_Load_Simple_Glyph): Improve debug messages.
+	(load_truetype_glyph): Remove dead code.
+	* src/truetype/ttinterp.c: 16bit fixes.
+	* src/truetype/ttobjs.c: Ditto.
+
+	* include/freetype/ftsnames.h, include/freetype/internal/sfnt.h,
+	src/cff/cffload.h, src/psaux/psobjs.h, src/truetype/ttinterp.[ch],
+	src/sfnt/ttpost.h: s/index/idx/.
+
+2002-03-31  Yao Zhang  <yaoz at vidar.niaaa.nih.gov>
+
+	* src/truetype/ttobjs.c (TT_Size_Init): Fix typo.
+
+2002-03-31  Werner Lemberg  <wl at gnu.org>
+
+	* src/otlayout/otlcommn.c, src/otlayout/otlcommn.h: s/index/idx/.
+	* src/psaux/t1cmap.c: Ditto.
+	* src/sfnt/ttcmap0.c: Ditto.
+
+	* include/freetype/internal/tttypes.h,
+	include/freetype/internal/sfnt.h (TT_Goto_Table_Func): Renamed to ...
+	(TT_Loader_GotoTableFunc): This.
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix debug
+	messages.
+	* src/psnames/psmodule.c (psnames_interface)
+	[!FT_CONFIG_OPTION_ADOBE_GLYPH_LIST]: Fix typo.
+	* src/sfnt/sfdriver.c (get_sfnt_table): 16bit fix.
+	* src/sfnt/ttcmap.c: 16bit fixes (0xFFFF -> 0xFFFFU).
+	* src/sfnt/ttcmap0.c: 16bit fixes.
+	(TT_Build_CMaps): Simplify debug messages.
+	(tt_cmap12_char_next): Fix offset.
+	* src/sfnt/ttload.c (TT_Load_Names, TT_Load_CMap): Fix debug
+	messages.
+	(TT_Load_OS2): 16bit fix.
+
+2002-03-30  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/tttypes.h: Adding comments to some of
+	the TT_FaceRec fields.
+
+	* src/sfnt/ttcmap0.c (TT_Build_CMaps): Removed compiler warnings.
+
+	* src/sfnt/sfobjs.c (tt_name_entry_ascii_from_{utf16,ucs4,other}:
+	New functions.
+	(tt_face_get_name): Use them to properly extract an ascii font name.
+
+2002-03-30  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/t1tables.h (t1_blend_max): Fix typo.
+	* src/base/ftstream.c: Simplify FT_ERROR calls.
+	* src/cff/cffdrivr.c (cff_get_glyph_name): Fix debug message.
+
+	* src/cff/cffobjs.c (CFF_Driver_Init, CFF_Driver_Done)
+	[TT_CONFIG_OPTION_EXTEND_ENGINE]: Removed.
+	* src/cff/sfobjs.c (SFNT_Load_Face)
+	[TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto.
+	* src/truetype/ttobjs.c (TT_Init_Driver, TT_Done_Driver)
+	[TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto.
+
+	* src/truetype/ttdriver.c, src/truetype/ttobjs.c,
+	src/truetype/ttobjs.h: Renaming driver functions to the
+	FT_<Subject>_<Action> scheme:
+
+	  TT_Init_Driver => TT_Driver_Init
+	  TT_Done_Driver => TT_Driver_Done
+	  TT_Init_Face   => TT_Face_Init
+	  TT_Done_Face   => TT_Face_Done
+	  TT_Init_Size   => TT_Size_Init
+	  TT_Done_Size   => TT_Size_Done
+	  TT_Reset_Size  => TT_Size_Reset
+
+2002-03-29  Werner Lemberg  <wl at gnu.org>
+
+	* builds/vms/ftconfig.h: Rename LOCAL_DEF and LOCAL_FUNC to
+	FT_LOCAL and FT_LOCAL_DEF, respectively, as with other ftconfig.h
+	files.
+	* builds/unix/ftconfig.in: Add argument to FT_LOCAL and
+	FT_LOCAL_DEF.
+	* src/truetype/ttinterp.c: s/FT_Assert/FT_ASSERT/.
+	* builds/unix/configure.ac: Temporarily deactivate creation of
+	../../Jamfile.
+	* builds/unix/configure: Updated.
+
+2002-03-28  KUSANO Takayuki  <AE5T-KSN at asahi-net.or.jp>
+
+	* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fix serious typos.
+
+2002-03-28  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (PSAux_ServiceRec): Fix
+	compiler warnings.
+	* include/freetype/internal/t1types.h (T1_FaceRec): Use `const' for
+	some members.
+	* src/base/ftapi.c (FT_New_Memory_Stream): Fix typos.
+	* src/psaux/t1cmap.c (t1_cmap_std_init, t1_cmap_unicode_init): Add
+	cast.
+	(t1_cmap_{standard,expert,custom,unicode}_class_rec): Use
+	`FT_CALLBACK_TABLE_DEF'.
+	* src/psaux/t1cmap.h: Updated.
+	* src/sfnt/ttcmap0.c (TT_Build_CMaps): Use `ft_encoding_none'
+	instead of zero.
+	* src/type1/t1objs.c (T1_Face_Init): Use casts.
+
+2002-03-26  David Turner  <david at freetype.org>
+
+	* src/sfnt/sfdriver.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c:
+	Fixed a small bug in the FT_CMaps support code.
+
+2002-03-25  David Turner  <david at freetype.org>
+
+	* src/truetype/ttinterp.c (Norm): Replaced with...
+	(TT_VecLen): This.
+	(TT_MulFix14, TT_DotFix14): New functions.
+	(Project, Dual_Project, Free_Project, Compute_Point_Displacement,
+	Ins_SHPIX, Ins_MIAP, Ins_MIRP): Use them.
+	[FT_CONFIG_OPTION_OLD_CALCS]: Removed all code.
+
+2002-03-22  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/type1/t1objs.c:
+	Various fixes to make the FT_CMaps support work correctly (more
+	tests are still needed).
+
+	* include/freetype/internal/ftobjs.h, src/sfnt/Jamfile,
+	src/sfnt/rules.mk, src/sfnt/sfnt.c, src/sfnt/sfobjs.c,
+	src/sfnt/ttload.c, src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h: Updated
+	the SFNT charmap support to use FT_CMaps.
+
+	* include/freetype/fterrdef.h: New file.
+	* include/freetype/fterrors.h: Include it.  It contains all error
+	codes.
+	* include/freetype/config/ftheader.h (FT_ERROR_DEFINITIONS_H): New
+	macro.
+
+	* include/freetype/internal/ftmemory.h, and a lot of other files:
+	Changed the names of memory macros.  Examples:
+
+	  MEM_Set   => FT_MEM_SET
+	  MEM_Copy  => FT_MEM_COPY
+	  MEM_Move  => FT_MEM_MOVE
+
+	  ALLOC     => FT_ALLOC
+	  FREE      => FT_FREE
+	  REALLOC   = >FT_REALLOC
+
+	FT_NEW was introduced to allocate a new object from a _typed_
+	pointer.
+
+	Note that ALLOC_ARRAY and REALLOC_ARRAY have been replaced by
+	FT_NEW_ARRAY and FT_RENEW_ARRAY which take _typed_ pointer
+	arguments.
+
+	This results in _lots_ of sources being changed, but makes the code
+	more generic and less error-prone.
+
+	* include/freetype/internal/ftstream.h, src/base/ftstream.c,
+	src/cff/cffload.c, src/pcf/pcfread.c, src/sfnt/ttcmap.c,
+	src/sfnt/ttcmap0.c, src/sfnt/ttload.c, src/sfnt/ttpost.c,
+	src/sfnt/ttsbit.c, src/truetype/ttgload.c, src/truetype/ttpload.c,
+	src/winfonts/winfnt.c: Changed the definitions of stream macros.
+	Examples:
+
+	  NEXT_Byte     => FT_NEXT_BYTE
+	  NEXT_Short    => FT_NEXT_SHORT
+	  NEXT_UShortLE => FT_NEXT_USHORT_LE
+	  READ_Short    => FT_READ_SHORT
+	  GET_Long      => FT_GET_LONG
+	  etc.
+
+	Also introduced the FT_PEEK_XXXX functions.
+
+	* src/cff/cffobjs.c (CFF_Build_Unicode_Charmap): Removed commented
+	out function.
+	(find_encoding): Removed.
+	(CFF_Face_Init): Remove charmap support.
+
+	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_CMAPS,
+	TT_CONFIG_CMAP_FORMAT{0,2,4,6,8,10,12}): New macros to fine-tune
+	support of cmaps.
+
+2002-03-21  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c, src/pcf/pcfdriver.c, src/pcf/pcfread.c: Updated
+	to new FT_CMap definitions.
+
+	* src/psaux/t1cmap.h, src/psaux/t1cmap.c, src/type1/t1cmap.h,
+	src/type1/t1cmap.c: Updating and moving the Type 1 FT_CMap support
+	from `src/type1' to `src/psaux' since it is going to be shared by
+	the Type 1 and CID font drivers.
+
+	* src/psaux/Jamfile, src/psaux/psaux.c, src/psaux/psauxmod.c,
+	src/psaux/rules.mk, include/freetype/internal/psaux.h: Added support
+	for Type 1 FT_CMaps.
+
+2002-03-20  David Turner  <david at freetype.org>
+
+	* src/base/ftgloadr.c (FT_GlyphLoader_CheckSubGlyphs): Fixed a
+	memory allocation bug that was due to un-careful renaming of the
+	FT_SubGlyph type.
+
+	* src/base/ftdbgmem.c (ft_mem_table_destroy): Fixed a small bug that
+	caused the library to crash with Electric Fence when memory
+	debugging is used.
+
+	* Renaming stream macros.  Examples:
+
+	  FILE_Skip    => FT_STREAM_SKIP
+	  FILE_Read    => FT_STREAM_READ
+	  ACCESS_Frame => FT_FRAME_ENTER
+	  FORGET_Frame => FT_FRAME_EXIT
+	  etc.
+
+	* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed memory leak.
+
+	* include/freetype/internal/ftobjs.h: Changing the definition of
+	FT_CMap_CharNextFunc slightly.
+
+	* src/cff/*.c: Updating CFF type definitions.
+
+2002-03-14  David Turner  <david at freetype.org>
+
+	* include/freetype/internal/autohint.h, src/autohint/ahmodule.c,
+	src/base/ftapi.c, src/base/ftobjs.c: Updating the type definitions
+	for the auto-hinter module.
+
+	  FT_AutoHinter_Interface  => FT_AutoHinter_ServiceRec
+	  FT_AutoHinter_Interface* => FT_AutoHinter_Service
+	  etc.
+
+	  FT_AutoHinter_Get_Global_Func  => FT_AutoHinter_GlobalGetFunc
+	  FT_AutoHinter_Done_Global_Func => FT_AutoHinter_GlobalDoneFunc
+	  etc.
+
+	* ahloader.h [_STANDALONE_]: Removed all conditional code.
+
+	* include/freetype/internal/cfftypes.h, src/cff/*.c: Updating the
+	type definitions of the CFF font driver.
+
+	  CFF_Font  => CFF_FontRec
+	  CFF_Font* => CFF_Font
+	  etc.
+
+	* include/freetype/internal/fnttypes.h, src/winfonts/*.c: Updating
+	type definitions of the Windows FNT font driver.
+
+	* include/freetype/internal/ftdriver.h,
+	include/freetype/internal/ftobjs.h, src/base/ftapi.c,
+	src/base/ftobjs.c, src/cff/cffdrivr.c, src/cff/cffdrivr.h,
+	src/cid/cidriver.c, src/cid/cidriver.h, src/pcf/pcfdriver.c,
+	src/pcf/pcfdriver.h, src/truetype/ttdriver.c,
+	src/truetype/ttdriver.h, src/type1/t1driver.c, src/type1/t1driver.h,
+	src/winfonts/winfnt.c, src/winfonts/winfnt.h: Updating type
+	definitions for font drivers.
+
+	  FTDriver_initFace      => FT_Face_InitFunc
+	  FTDriver_initGlyphSlot => FT_Slot_InitFunc
+	  etc.
+
+	* src/cid/cidobjs.c (CID_Face_Init): Remove dead code.
+
+	* include/freetype/internal/ftobjs.h, src/base/ftobjs.c: Updated a
+	few face method definitions:
+
+	  FT_PSName_Requester     => FT_Face_GetPostscriptNameFunc
+	  FT_Glyph_Name_Requester => FT_Face_GetGlyphNameFunc
+	  FT_Name_Index_Requester => FT_Face_GetGlyphNameIndexFunc
+
+	* src/base/ftapi.c: New file.  It contains backward compatibility
+	functions.
+
+	* include/freetype/internal/psaux.h, src/cid/cidload.c,
+	src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h,
+	src/psaux/t1decode.c, src/type1/t1load.c, src/type1/t1tokens.h:
+	Updated common PostScript type definitions.
+	Renamed all enumeration values like to uppercase variants:
+
+	  t1_token_any      => T1_TOKEN_TYPE_ANY
+	  t1_field_cid_info => T1_FIELD_LOCATION_CID_INFO
+	  etc.
+
+	* include/freetype/internal/psglobal.h: Removed.
+	* include/freetype/internal/pshints.h, src/pshinter/pshglob.h:
+	Updated.
+
+	* include/freetype/internal/tttypes.h,
+	include/freetype/internal/sfnt.h, src/base/ftnames.c,
+	src/cff/cffdrivr.c, src/sfnt/*.c, src/truetype/*.c: Updated
+	SFNT/TrueType type definitions.
+
+	* include/freetype/freetype.h, include/freetype/internal/ftgloadr.h:
+	Updating type definitions for the glyph loader.
+
+2002-03-13  Antoine Leca  <antoine at oriolnet.com>
+
+	* include/freetype/config/ftoption.h: Changed the automatic
+	detection of Microsoft C compilers to automatically support 64-bit
+	integers only since revision 9.00 (i.e. >= Visual C++ 2.0).
+
+2002-03-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftutil.c (FT_Realloc): Use MEM_Set instead of memset.
+
+2002-03-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftdbgmem.c (ft_mem_table_resize, ft_mem_table_new,
+	ft_mem_table_set, ft_mem_debug_alloc, ft_mem_debug_free,
+	ft_mem_debug_realloc, ft_mem_debug_done, FT_Alloc_Debug,
+	FT_Realloc_Debug, FT_Free_Debug): Fix compiler warnings.
+	* src/base/ftcalc.c (FT_MulFix): Ditto.
+	* src/cff/cffdrivr.c (cff_get_name_index): Ditto.
+	* src/cff/cffobjs.c (CFF_Size_Get_Globals_Funcs, CFF_Size_Init,
+	CFF_GlyphSlot_Init): Ditto.
+	* src/cid/cidobjs.c (CID_GlyphSlot_Init,
+	CID_Size_Get_Globals_Funcs): Ditto.
+	* src/type1/t1objs.c (T1_Size_Get_Globals_Funcs, T1_GlyphSlot_Init):
+	Ditto.
+	* src/pshinter/pshmod.c (pshinter_interface): Use `static const'.
+	* src/winfonts/winfnt.c (FNT_Get_Next_Char): Remove unused
+	variables.
+
+	* include/freetype/internal/psaux.h (T1_Builder_Funcs): Renamed
+	to...
+	(T1_Builder_FuncsRec): This.
+	(T1_Builder_Funcs): New typedef.
+	(PSAux_Interface): Remove compiler warnings.
+	* src/psaux/psauxmod.c (t1_builder_funcs), src/psaux/psobjs.h
+	(t1_builder_funcs): Updated.
+
+	* src/pshinter/pshglob.h (PSH_Blue_Align): Replaced with ...
+	(PSH_BLUE_ALIGN_{NONE,TOP,BOT}): New defines.
+	(PSH_AlignmentRec): Updated.
+
+	* include/freetype/internal/ftstream.h (GET_Char, GET_Byte): Fix
+	typo.
+	* include/freetype/internal/ftgloadr.h (FT_SubGlyph): Ditto.
+	* src/base/ftstream (FT_Get_Char): Rename to...
+	(FT_Stream_Get_Char): This.
+
+	* src/base/ftnames.c (FT_Get_Sfnt_Name): s/index/idx/ -- `index' is
+	a built-in function in gcc, causing warning messages with gcc 3.0.
+	* src/autohint/ahglyph.c (ah_outline_load): Ditto.
+	* src/autohint/ahglobal.c (ah_hinter_compute_blues): Ditto.
+	* src/cache/ftcmanag.c (ftc_family_table_alloc,
+	ftc_family_table_free, FTC_Manager_Done, FTC_Manager_Register_Cache):
+	Ditto.
+	* src/cff/cffload.c (cff_new_index, cff_done_index,
+	cff_explicit_index, CFF_Access_Element, CFF_Forget_Element,
+	CFF_Get_Name, CFF_Get_String, CFF_Load_SubFont, CFF_Load_Font,
+	CFF_Done_Font): Ditto.
+	* src/psaux/psobjs.c (PS_Table_Add, PS_Parser_LoadField): Ditto.
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto.
+	* src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_clear_bit,
+	ps_mask_set_bit, ps_dimension_add_t1stem, ps_hints_t1stem3,
+	* src/pshinter/pshalgo1.c (psh1_hint_table_record,
+	psh1_hint_table_record_mask, psh1_hint_table_activate_mask): Ditto.
+	* src/pshinter/pshalgo2.c (psh2_hint_table_record,
+	psh2_hint_table_record_mask, psh2_hint_table_activate_mask): Ditto.
+	* src/sfnt/ttpost.c (Load_Format_20, Load_Format_25,
+	TT_Get_PS_Name): Ditto.
+	* src/truetype/ttgload.c (TT_Get_Metrics, Get_HMetrics,
+	load_truetype_glyph): Ditto.
+	* src/type1/t1load.c (parse_subrs, T1_Open_Face): Ditto.
+	* src/type1/t1afm.c (T1_Get_Kerning): Ditto.
+	* include/freetype/cache/ftcmanag.h (ftc_family_table_free): Ditto.
+
+2002-03-06  David Turner  <david at freetype.org>
+
+	* src/type1/t1objs.c (T1_Face_Init), src/cid/cidobjs.c
+	(CID_Face_Init): Fixed another bug related to the
+	ascender/descender/text height of Postscript fonts.
+
+	* src/pshinter/pshalgo2.c (print_zone): Renamed to ...
+	(psh2_print_zone): This.
+	* src/pshinter/pshalgo1.c (print_zone): Renamed to ...
+	(psh1_print_zone): This.
+
+	* include/freetype/freetype.h, include/freetype/internal/ftobjs.h,
+	src/base/ftobjs.c: Adding the new FT_Library_Version API to return
+	the library's current version in dynamic links.
+	* src/base/ftinit.c (FT_Init_FreeType): Updated.
+
+2002-03-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshglob.h (PSH_DimensionRec): s/std/stdw/.
+	* src/pshinter/pshglob.c (psh_global_scale_widths,
+	psh_dimension_snap_width, psh_globals_destroy, psh_globals_new):
+	Ditto.
+
+2002-03-05  David Turner  <david at freetype.org>
+
+	* src/type1/t1objs.c (T1_Face_Init), src/cff/cffobjs.c
+	(CFF_Face_Init), src/cid/cidobjs.c (CID_Face_Init): Removing the bug
+	that returned global BBox values in 16.16 fixed format (instead of
+	integer font units).
+
+	* src/cid/cidriver.c (cid_get_postscript_name): Fixed a bug that
+	caused the CID driver to return Postscript font names with a leading
+	slash (`/') as in `/MOEKai-Regular'.
+
+	* src/sfnt/ttload.c (TT_Load_Names), src/sfnt/sfobjs.c (Get_Name),
+	src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed the loader so
+	that it accepts broken fonts like `foxjump.ttf', which made FreeType
+	crash when trying to load them.
+
+	Also improved the name table parser to be able to load
+	Windows-encoded entries before Macintosh or Unicode ones, since it
+	seems some fonts don't have reliable values here anyway.
+
+	* include/freetype/internal/psnames.h: Add typedef for
+	`PSNames_Service'.
+
+2002-03-05  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/aclocal.m4, builds/unix/ltmain.sh: Update to libtool
+	1.4.2.
+	Apply a small patch for AIX to make shared libraries work (this
+	patch is already in the CVS version of libtool).
+
+	* builds/unix/config.sub, builds/unix/config.guess: Updated to
+	recent versions.
+
+	* builds/unix/configure.ac: Fix typo
+	(AC_CONFIG_FILE->AC_CONFIG_FILES).
+
+	* builds/unix/configure: Regenerated.
+
+2002-02-28  David Turner  <david at freetype.org>
+
+	* include/freetype/ftconfig.h: Changed `FT_LOCAL xxxx' to
+	`FT_LOCAL( xxxx )' everywhere in the source.  The same goes for
+	`FT_LOCAL_DEF xxxx' which is translated to `FT_LOCAL_DEF( xxxxx )'.
+
+	* include/freetype/freetype.h (FREETYPE_MINOR, FREETYPE_PATCH):
+	Changing version to 2.1.0 to indicate an unstable branch.
+	Added the declarations of FT_Get_First_Char and FT_Get_Next_Char.
+
+	* src/base/ftobjs.c: Implement FT_Get_First_Char and
+	FT_Get_Next_Char.
+
+	* include/freetype/t1tables.h: Renaming structure types.  This
+
+	  typedef  T1_Struct_
+	  {
+	  } T1_Struct;
+
+	becomes
+
+	  typedef  PS_StructRec_
+	  {
+	  } PS_StructRec, *PS_Struct;
+
+	  typedef PS_StructRec  T1_Struct;  /* backward compatibility */
+
+	Hence, we increase the coherency of the source code by effectively
+	using the `Rec' prefix for structure types.
+
+2002-02-27  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttload.c (TT_Load_Names): Simplifying and securing the
+	names table loader.  Invalid individual name entries are now handled
+	correctly.  This allows the loading of very buggy fonts like
+	`foxjump.ttf' without allocating tons of memory and causing crashes.
+
+	* src/otlayout/otlcommon.h, src/otlayout/otlcommon.c: Adding (still
+	experimental) code for OpenType Layout tables validation and
+	parsing.
+
+	* src/type1/t1cmap.h, src/type1/t1cmap.c: Adding (still
+	experimental) code for Type 1 charmap processing.
+
+	* src/sfnt/ttcmap0.c: New file.  It contains a new, still
+	experimental SFNT charmap processing support.
+
+	* include/freetype/internal/ftobjs.h: Adding validation support as
+	well as internal charmap object definitions (FT_CMap != FT_CharMap).
+
+2002-02-24  David Turner  <david at freetype.org>
+
+	* Renaming stream functions to the FT_<Subject>_<Action> scheme:
+
+	  FT_Seek_Stream    => FT_Stream_Seek
+	  FT_Skip_Stream    => FT_Stream_Skip
+	  FT_Read_Stream    => FT_Stream_Read
+	  FT_Read_Stream_At => FT_Stream_Read_At
+	  FT_Access_Frame   => FT_Stream_Enter_Frame
+	  FT_Forget_Frame   => FT_Stream_Exit_Frame
+	  FT_Extract_Frame  => FT_Stream_Extract_Frame
+	  FT_Release_Frame  => FT_Stream_Release_Frame
+	  FT_Get_XXXX       => FT_Stream_Get_XXXX
+	  FT_Read_XXXX      => FT_Stream_Read_XXXX
+
+	  FT_New_Stream( filename, stream ) =>
+	    FT_Stream_Open( stream, filename )
+
+	    (The function doesn't create the FT_Stream structure, it simply
+	    initializes it for reading.)
+
+	  FT_New_Memory_Stream( library, FT_Byte*  base, size, stream ) =>
+	    FT_Stream_Open_Memory( stream, const FT_Byte* base, size )
+
+	  FT_Done_Stream  => FT_Stream_Close
+	  FT_Stream_IO    => FT_Stream_IOFunc
+	  FT_Stream_Close => FT_Stream_CloseFunc
+
+	  ft_close_stream => ft_ansi_stream_close (in base/ftsystem.c only)
+	  ft_io_stream    => ft_ansi_stream_io    (in base/ftsystem.c only)
+
+	* src/base/ftutil.c: New file.  Contains all memory and list
+	management code (previously in `ftobjs.c' and `ftlist.c',
+	respectively).
+
+	* include/freetype/internal/ftobjs.h: Moving all code related to
+	glyph loaders to ...
+	* include/freetype/internal/ftgloadr.h: This new file.
+	`FT_GlyphLoader' is now a pointer to the structure
+	`FT_GlyphLoaderRec'.
+	(ft_glyph_own_bitmap): Renamed to ...
+	(FT_GLYPH_OWN_BITMAP): This.
+	* src/base/ftobjs.c: Moving all code related to glyph loaders
+	to ...
+	* src/base/ftgloadr.c: This new file.
+
+2002-02-22  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftdebug.h (FT_Trace): Remove comma in
+	enum to avoid compiler warnings.
+
+2002-02-21  David Turner  <david at freetype.org>
+
+	Modified the debug sub-system initialization.  Trace levels can now
+	be specified within the `FT2_DEBUG' environment variable.  See the
+	comments within `ftdebug.c' for more details.
+
+	* src/base/ftdebug.c: (FT_SetTraceLevel): Removed.
+	(ft_debug_init): New function.
+	(ft_debug_dummy): Removed.
+	Updated to changes in ftdebug.h
+
+	* include/freetype/internal/ftdebug.h: Always define
+	FT_DEBUG_LEVEL_ERROR if FT_DEBUG_LEVEL_TRACE is defined.
+	(FT_Assert): Renamed to ...
+	(FT_ASSERT): This.
+	Some stuff from ftdebug.h has been moved to ...
+
+	* include/freetype/internal/fttrace.h: New file, to define the trace
+	levels used for debugging.  It is used both to define enums and
+	toggle names for FT2_DEBUG.
+
+	* include/freetype/internal/internal.h: Updated.
+
+	* src/base/ftobjs.c, src/base/ftstream.c: Updated.
+
+	* include/freetype/internal/ftextend.h, src/base/ftextend.c:
+	Removed.  Both files are now completely obsolete.
+	* src/base/Jamfile, src/base/rules.mk: Updated.
+
+	* include/freetype/fterrors.h: Adding `#undef FT_ERR_CAT' and
+	`#undef FT_ERR_XCAT' to avoid warnings with certain compilers (like
+	LCC).
+
+	* src/pshinter/pshalgo2.c (print_zone): Renamed to ...
+	(psh2_print_zone): This to avoid errors during compilation of debug
+	library.
+
+	* src/smooth/ftgrays.c (FT_COMPONENT): Change definition to as
+	`trace_smooth'.
+
+2002-02-20  David Turner  <david at freetype.org>
+
+	* README: Adding `devel at freetype.org' address for bug reports.
+
+2002-02-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/install.mk (check): New dummy target.
+	(.PHONY): Add it.
+
+2002-02-19  Werner Lemberg  <wl at gnu.org>
+
+	* builds/freetype.mk (FT_CFLAGS): Use $(INCLUDE_FLAGS) first.
+
+	* src/cache/ftccache.c (ftc_cache_resize): Mark `error' as unused
+	to avoid compiler warning.
+	* src/cff/cffload.c (CFF_Get_String): Ditto.
+	* src/cff/cffobjs.c (CFF_StrCopy): Ditto.
+	* src/psaux/psobjs.c (PS_Table_Done): Ditto.
+	* src/pcf/pcfread.c (pcf_seek_to_table_type): Ditto.
+	* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto.
+	(pcf_get_bitmaps): The same for `sizebitmaps'.
+	* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): The same for
+	`orig_y'.
+	(t1operator_seac): Comment out more dead code.
+	* src/pshinter/pshalgo2.c (ps2_hints_apply): Add `DEBUG_HINTER'
+	conditional.
+	* src/truetype/ttgload.c (TT_Process_Simple_Glyph,
+	load_truetype_glyph): Add `TT_CONFIG_OPTION_BYTECODE_INTERPRETER'
+	conditional.
+
+2002-02-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/autohint/ahglyph.c (ah_outline_link_segments): Remove unused
+	variables.
+	* src/autohint/ahhint.c (ah_align_serif_edge): Use FT_UNUSED instead
+	of UNUSED.
+	* src/autohint/ahmodule.c (ft_autohinter_reset): Ditto.
+	* src/pshinter/pshrec.c (ps_mask_table_merge): Fix typo in variable
+	swapping code.
+	* src/pshinter/pshglob.h (PSH_Blue_Align): Add PSH_BLUE_ALIGN_NONE.
+	* src/pshinter/pshglob.c (psh_blues_snap_stem): Use it.
+	* src/pshinter/pshalgo1.c (psh1_hint_table_optimize): Ditto.
+	* src/pshinter/pshalgo2.c (psh2_hint_align): Ditto.
+	* include/freetype/internal/ftobjs.h (UNUSED): Removed.
+
+2002-02-10  Roberto Alameda  <ojancano at geekmail.de>
+
+	Add support for ISOLatin1 PS encoding.
+
+	* include/freetype/freetype.h (ft_encoding_latin_1): New tag
+	(`lat1').
+	* include/freetype/internal/t1types.h (T1_Encoding_Type): Add
+	`t1_encoding_isolatin1'.
+	* src/type1/t1driver.c (Get_Char_Index, Get_Next_Char): Handle
+	ft_encoding_latin_1.
+	* src/type1/t1load.c (parse_encoding): Handle `ISOLatin1Encoding'.
+	* src/type1/t1objs.c (T1_Face_Init): Handle `t1_encoding_isolatin1'.
+
+----------------------------------------------------------------------------
+
+Copyright (C) 2002-2020 by
+David Turner, Robert Wilhelm, and Werner Lemberg.
+
+This file is part of the FreeType project, and may only be used, modified,
+and distributed under the terms of the FreeType project license,
+LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+indicate that you have read the license and understand and accept it
+fully.
+
+
+Local Variables:
+version-control: never
+coding: utf-8
+End:

Copied: trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.22 (from rev 60353, trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.22)
===================================================================
--- trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.22	                        (rev 0)
+++ trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.22	2021-08-29 06:19:44 UTC (rev 60360)
@@ -0,0 +1,2837 @@
+2006-05-12  Werner Lemberg  <wl at gnu.org>
+
+
+	* Version 2.2.1 released.
+	=========================
+
+
+	Tag sources with `VER-2-2-1'.
+
+2006-05-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/docmaker/sources.py (re_source_keywords): Add word
+	boundary markers.
+	* src/tools/docmaker/content.py (re_field): Allow `.' in field names
+	(but not at the beginning or end).
+	* src/tools/docmaker/tohtml.py (html_header_1): Use `utf-8' charset.
+	(block_footer): Split into...
+	(block_footer_start, block_footer_middle, block_footer_end): This to
+	add navigation buttons.
+	(HtmlFormatter::block_exit): Updated.
+
+	* include/freetype/*: Many minor documentation improvements (adding
+	links, spelling errors, etc.).
+
+2006-05-11  Werner Lemberg  <wl at gnu.org>
+
+	* README: Minor updates.
+
+	* include/freetype/*: s/scale/scaling value/ where appropriate.
+	Many other minor documentation improvements.
+
+	* src/tools/docmaker/sources.py (re_italic, re_bold): Handle
+	trailing punctuation.
+	* src/tools/docmaker/tohtml.py (HtmlFormatter::make_html_word): Add
+	warning message for undefined cross references.
+	Update handling of re_italic and re_bold.
+
+2006-05-11  Masatake YAMATO  <jet at gyve.org>
+
+	* builds/unix/ftsystem.c (FT_Stream_Open): Check errno only if
+	read system call returns -1.
+	Remove a redundant parenthesis.
+
+2006-05-10  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/ftsystem.c (FT_Stream_Open): Avoid infinite loop if
+	given an empty, un-mmap()able file.  Reported and suggested fix in
+	Savannah bug #16555.
+
+	* builds/freetype.mk (refdoc): Write-protect the `docmaker'
+	directory to suppress generation of .pyc files.  According to the
+	Python docs there isn't a more elegant solution (currently).
+
+	* builds/toplevel.mk (dist): New target which builds .tar.gz,
+	.tar.bz2, and .zip files.  Note that the version number is still
+	hard-coded.
+	(do-dist): Sub-target of `dist'.
+	(CONFIG_GUESS, CONFIG_SUB): New variables.
+	(.PHONY): Updated.
+
+2006-05-09  Rajeev Pahuja  <rpahuja at esri.com>
+
+	* builds/win32/visualc/freetype.sln,
+	builds/win32/visualc/freetype.vcproj: Upgraded to VS.NET 2005 from
+	VS.NET 2003
+	Added files ftbbox.c, fttype1.c, ftwinfnt.c, ftsynth.c.
+
+	* builds/win32/visualc/index.html: Updated.
+
+2006-05-07  Werner Lemberg  <wl at gnu.org>
+
+	Put version information into the configure script.  Reported by Paul
+	Watson <pwatson at redlinepy.com>.
+
+	* builds/unix/configure.ac: Renamed to...
+	* builds/unix/configure.raw: This which now serves (with appropriate
+	modifications) as a template for configure.ac.
+
+	* version.sed: New script.
+
+	* autogen.sh: Generate configure.ac from configure.raw, using
+	FREETYPE_MAJOR, FREETYPE_MINOR, and FREETYPE_PATCH from freetype.h.
+
+2006-05-06  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.
+
+	* builds/unix/configure.ac (version_info): Set to 9:10:3.
+
+	* builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj, builds/freetype.mk (refdoc),
+	Jamfile (RefDoc), README: s/220/221/, s/2.2.0/2.2.1/.
+	Minor updates.
+
+	* docs/CHANGES, docs/VERSION.DLL, docs/PROBLEMS, README.CVS:
+	Updated.
+
+	* builds/unix/install-sh: Updated from `texinfo' CVS module at
+	savannah.gnu.org.
+
+	* devel/ftoption.h: Synchronize with
+	include/freetype/config/ftoption.h.
+
+2006-05-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/lzw/ftlzw2.c: Renamed to...
+	* src/lzw/ftlzw.c: This.
+
+	* src/lzw/Jamfile, src/lzw/rules.mk: Updated.
+
+	* builds/mac/FreeType.m68k_cfm.make.txt,
+	builds/mac/FreeType.m68k_far.make.txt,
+	builds/mac/FreeType.ppc_carbon.make.txt,
+	builds/mac/FreeType.ppc_classic.make.txt: Updated.
+
+2006-05-03  David Turner  <david at freetype.org>
+
+	Allow compilation again with C++ compilers.
+
+	* include/freetype/internal/ftmemory.h (FT_ASSIGNP,
+	FT_ASSIGNP_INNER): New macros which do the actual assignment, and
+	which exist in two variants (for C and C++).
+	Update callers accordingly.
+
+2006-05-03  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftoption.h (FT_STRICT_ALIASING): Removed.
+
+2006-05-02  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftmemory.h: s/new/newsz/ (for C++).
+	(FT_ALLOC): Remove redundant redefinition.
+
+	* builds/compiler/gcc-dev.mk (CFLAGS) [g++]: Don't use
+	`-Wstrict-prototypes'.
+
+	* src/base/ftstream.c (FT_Stream_EnterFrame): Add cast.
+
+	* include/freetype/config/ftconfig.h (FT_BASE_DEF) [__cplusplus]:
+	Remove `extern'.
+
+2006-05-02  David Turner  <david at freetype.org>
+
+	Update the memory management functions and macros to safely deal
+	with array size buffer overflows.  This corresponds to attempts to
+	allocate arrays that are too large.  For an example, consider the
+	following code:
+
+	  count = read_uint32_from_file(); array = malloc( sizeof ( Item ) *
+	  count ); for ( nn = 0; nn < count; nn++ )
+	    array[nn] = read_item_from_file();
+
+	If `count' is larger than `FT_UINT_MAX/sizeof(Item)', the
+	multiplication overflows, and the array allocated os smaller than
+	the data read from the file.  In this case, the heap will be
+	trashed, and this can be used as a denial-of-service attack, or make
+	the engine crash later.
+
+	The FT_ARRAY_NEW and FT_ARRAY_RENEW macros now ensure that the new
+	count is no larger than `FT_INT_MAX/item_size', otherwise a new
+	error code `FT_Err_Array_Too_Large' will be returned.
+
+	Note that the memory debugger now works again when FT_DEBUG_MEMORY
+	is defined.  FT_STRICT_ALIASING has disappeared; the corresponding
+	code is now the default.
+
+
+	* include/freetype/config/ftconfig.h (FT_BASE_DEF) [!__cplusplus]:
+	Don't use `extern'.
+
+	* include/freetype/fterrdef.h (FT_Err_Array_Too_Large): New error
+	code.
+
+	* include/freetype/internal/ftmemory.h (FT_DEBUG_INNER)
+	[FT_DEBUG_MEMORY]: New macro.
+	(ft_mem_realloc, ft_mem_qrealloc): Pass new object size count also.
+	(ft_mem_alloc_debug, ft_mem_qalloc_debug, ft_mem_realloc_debug,
+	ft_mem_qrealloc_debug, ft_mem_free_debug): Removed.
+	(FT_MEM_ALLOC, FT_MEM_REALLOC, FT_MEM_QALLOC, FT_MEM_QREALLOC,
+	FT_MEM_FREE): Redefine.
+	(FT_MEM_NEW_ARRAY, FT_MEM_RENEW_ARRAY, FT_MEM_QNEW_ARRAY,
+	FT_MEM_QRENEW_ARRAY): Redefine.
+	(FT_ALLOC_MULT, FT_REALLOC_MULT, FT_MEM_QALLOC_MULT,
+	FT_MEM_QREALLOC_MULT): New macros.  Update callers where
+	appropriate.
+	(FT_MEM_SET_ERROR): Slightly redefine.
+
+
+	* src/base/ftdbgmem.c (_ft_debug_file, _ft_debug_lineno)
+	[FT_DEBUG_MEMORY]: New global variables, replacing...
+	(FT_MemTableRec) [FT_DEBUG_MEMORY]: Remove `filename' and
+	`line_no'.  Update all callers.
+	(ft_mem_debug_alloc) [FT_DEBUG_MEMORY]: Avoid possible integer
+	overflow.
+	(ft_mem_alloc_debug, ft_mem_realloc_debug, ft_mem_qalloc_debug,
+	ft_mem_qrealloc_debug, ft_mem_free_debug): Removed.
+
+	* src/base/ftmac.c (read_lwfn): Catch integer overflow.
+	* src/base/ftrfork.c (raccess_guess_darwin_hfsplus): Ditto.
+	* src/base/ftutil.c: Remove special code for FT_STRICT_ALIASING.
+	(ft_mem_alloc, ft_mem_realloc, ft_mem_qrealloc): Rewrite.
+
+
+	* include/freetype/ftstream.h (FT_FRAME_ENTER, FT_FRAME_EXIT,
+	FT_FRAME_EXTRACT, FT_FRAME_RELEASE): Use FT_DEBUG_INNER to report the
+	place where the frames were entered, extracted, exited or released
+	in the memory debugger.
+
+	* src/base/ftstream.c (FT_Stream_ReleaseFrame) [FT_DEBUG_MEMORY]:
+	Call ft_mem_free.
+	(FT_Stream_EnterFrame) [FT_DEBUG_MEMORY]: Use ft_mem_qalloc.
+	(FT_Stream_ExitFrame) [FT_DEBUG_MEMORY]: Use ft_mem_free.
+
+2006-04-30  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (Mac_Read_POST_Resource): Correct pfb_pos
+	initialization, remove extra cast to copy to pfb_lenpos.  This fixes
+	parsing of PFB fonts with MacOS resource fork (bug introduced
+	2003-09-11).  Patch provided by Huib-Jan Imbens <ft at imbens.nl>.
+
+2006-04-29  Werner Lemberg  <wl at gnu.org>
+
+	Further C library abstraction.  Based on a patch from
+	msn2 at bidyut.com.
+
+	* include/freetype/config/ftstdlib.h (FT_CHAR_BIT, FT_FILE,
+	ft_fopen, ft_fclose, ft_fseek, ft_ftell, ft_fread, ft_smalloc,
+	ft_scalloc, ft_srealloc, ft_sfree, ft_labs): New wrapper macros for
+	C library functions.  Update all users accordingly (and catch some
+	other places where the C library function was used instead of the
+	wrapper functions).
+
+	* src/base/ftsystem.c: Don't include stdio.h and stdlib.h.
+	* src/gzip/zutil.h [MSDOS && !(__TURBOC__ || __BORLANDC__)]: Don't
+	include malloc.h.
+
+
+	* builds/unix/unix-def.in (datarootdir): Define, for autoconf 2.59c
+	and forthcoming versions.
+
+2006-04-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/lzw/ftlzw.c, src/lzw/zopen.c, src/lzw/zopen.h: Removed,
+	obsolete.
+
+2006-04-27  yi luo  <luoyi.ly at gmail.com>
+
+	* builds/win32/visualc/freetype.vcproj: Updated.
+
+2006-04-26  David Turner  <david at freetype.org>
+
+
+	* Version 2.2 released.
+	=======================
+
+
+	Tag sources with `VER-2-2-0'.
+
+2006-04-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psobjs.c (shift_elements): Don't use FT_Long but
+	FT_PtrDist for `delta'.  Reported by Céline PILLET
+	<Celine.Pillet at Tagginfo.com>.
+
+2006-04-21  David Turner  <david at freetype.org>
+
+	* include/freetype/ftincrem.h: Documentation updates.
+	(FT_Incremental_Interface): New typedef.
+
+	* include/freetype/ftmodapi.h, include/freetype/ftglyph.h:
+	Documentation updates.
+
+	* include/freetype/freetype.h: Documentation update.
+	(FT_HAS_FAST_GLYPHS): Always set to 0.
+
+	* include/freetype/ftstroke.h, src/base/ftstroke.c (FT_Stroker_New):
+	Take an FT_Library argument instead of FT_Memory.
+
+	* src/sfnt/ttcmap.c: Remove compiler warnings (gcc-4.0.2).
+
+2006-04-13  David Turner  <david at freetype.org>
+
+	* src/autofit/afloader.c (af_loader_init, af_loader_load_g): Remove
+	superfluous code in the auto-fitter's loader.
+
+2006-04-05  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/makefile, builds/amiga/makefile.os4,
+	builds/amiga/smakefile: Added FT2_BUILD_LIBRARY define.
+
+2006-04-03  luoyi  <luoyi.ly at gmail.com>
+
+	* builds/compiler/intelc.mk (TE): New variable.
+	(ANSIFLAGS): Updated.
+
+2006-04-03  Werner Lemberg  <wl at gnu.org>
+
+	* builds/exports.mk (clean_symbols_list, clean_apinames): Removed.
+	(CLEAN): Add $(EXPORTS_LIST) and $(APINAMES_EXE).
+	(.PHONY): Updated.
+
+	* configure.ac: Minor fixes to improve --help output.
+
+
+	* docs/PROBLEMS: New file.
+
+2006-04-01  David Turner  <david at freetype.org>
+
+	* docs/CHANGES: Updated.
+
+	* include/freetype/ftcache.h, include/freetype/config/ftheader.h:
+	Update documentation comments.
+
+2006-04-01  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/install.mk (uninstall): Don't handle `cache'
+	directory which no longer exists.
+
+2006-03-29  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* src/psaux/psconv.c: Changed some variables which are expected to
+	hold negative values from `char' to `FT_Char' to allow building with
+	a compiler where `char' is unsigned by default.
+
+2006-03-27  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttkern.c (tt_face_get_kerning): Fix a serious bug that
+	causes some programs to go into an infinite loop when dealing with
+	fonts that don't have a properly sorted kerning sub-table.
+
+2006-03-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/bdf/bdflib.c (ERRMSG4): New macro.
+	(_bdf_parse_glyphs): Handle invalid BBX values.
+
+	* include/freetype/fterrdef.h (FT_Err_Bbx_Too_Big): New error
+	macro.
+
+2006-03-23  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+
+	* src/tools/docmaker/tohtml.py (html_header_2): Add horizontal
+	padding between table elements.
+	(html_header_1): The `DOCTYPE' comment must be in uppercase.
+	(make_html_para): Convert `...' quotations into real left and
+	right single quotes.
+	Use `para_header' and `para_footer'.
+
+	* src/tools/docmaker/sources.py (re_bold, re_italic): Accept "'"
+	also.
+
+2006-03-23  David Turner  <david at freetype.org>
+
+	Add FT_Get_SubGlyph_Info API to retrieve subglyph data.  Note that
+	we do not expose the FT_SubGlyphRec structure.
+
+	* include/freetype/internal/ftgloadr.h (FT_SUBGLYPH_FLAGS_*): Moved
+	to...
+	* include/freetype/freetype.h (FT_SUBGLYPH_FLAGS_*): Here.
+	(FT_Get_SubGlyph_Info): New declaration.
+
+	* src/base/ftobjs.c (FT_Get_SubGlyph_Info): New function.
+
+
+	* src/autofit/afloader.c (af_loader_load_g): Compute lsb_delta and
+	rsb_delta correctly in edge cases.
+
+2006-03-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c, (ftc_node_mru_up, FTC_Cache_Lookup)
+	[!FTC_INLINE]: Compile conditionally.
+	* src/cache/ftccache.h: Updated.
+
+	* src/cache/ftcglyph.c (FTC_GNode_Init, FTC_GNode_UnselectFamily,
+	FTC_GNode_Done, FTC_GNode_Compare, FTC_Family_Init, FTC_GCache_New):
+	s/FT_EXPORT/FT_LOCAL/.
+	(FTC_GCache_Init, FTC_GCache_Done): Commented out.
+	(FTC_GCache_Lookup) [!FTC_INLINE]: Compile conditionally.
+	s/FT_EXPORT/FT_LOCAL/.
+	* src/cache/ftcglyph.h: Updated.
+
+	* src/cache/ftcimage.c (FTC_INode_Free, FTC_INode_New):
+	s/FT_EXPORT/FT_LOCAL/.
+	(FTC_INode_Weight): Commented out.
+	* src/cache/ftcimage.h: Updated.
+
+	* src/cache/ftcmanag.c (FTC_Manager_Compress,
+	FTC_Manager_RegisterCache, FTC_Manager_FlushN):
+	s/FT_EXPORT/FT_LOCAL/.
+	* src/cache/ftcmanag.h: Updated.
+
+	* src/cache/ftcsbits.c (FTC_SNode_Free, FTC_SNode_New,
+	FTC_SNode_Compare): s/FT_EXPORT/FT_LOCAL/.
+	(FTC_SNode_Weight): Commented out.
+	* src/cache/ftcsbits.h: Updated.
+
+2006-03-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c, src/cache/ftccache.h (FTC_Node_Destroy):
+	Remove, unused.
+
+	* src/cache/ftccmap.h: Remove, unused.
+
+	* src/cache/rules.mk (CACHE_DRV_H): Remove ftccmap.h.
+
+2006-03-21  Zhe Su  <james.su at gmail.com>
+
+	* src/base/ftoutln.c (FT_Outline_Get_Orientation): Improve
+	algorithm.
+
+2006-03-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cfftypes.h (CFF_CharsetRec): Add `max_cid' member.
+
+	* src/cff/cffload.c (cff_charset_load): Set `charset->max_cid'.
+
+	* src/cff/cffgload.c (cff_slot_load): Change type of third parameter
+	to `FT_UInt'.
+	Check range of `glyph_index'.
+	* src/cff/cffgload.h: Updated.
+
+
+	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Handle invalid offset
+	correctly.
+
+
+	* builds/freetype.mk (refdoc), docs/CHANGES, Jamfile (RefDoc),
+	README: s/2.1.10/2.2/.
+
+2006-03-21  David Turner  <david at freetype.org>
+
+	* src/autofit/aflatin.c (af_latin_metrics_scale): Fix small bug
+	that crashes the auto-hinter (introduced by previous patch).
+
+2006-03-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/freetype.mk (CACHE_DIR, CACHE_H): Remove.
+	(FREETYPE_H): Updated.
+
+	* src/cache/rules.mk (CACHE_H_DIR): Remove.
+	(CACHE_DRV_H): Updated.
+
+2006-03-20  David Turner  <david at freetype.org>
+
+	* include/freetype/cache/ftccache.h,
+	include/freetype/cache/ftccmap.h, include/freetype/cache/ftcglyph.h
+	include/freetype/cache/ftcimage.h include/freetype/cache/ftcmanag.h
+	include/freetype/cache/ftcmru.h include/freetype/cache/ftcsbits.h:
+	Move to...
+
+	* src/cache/ftccache.h, src/cache/ftcglyph.h, src/cache/ftcimage.h,
+	src/cache/ftcsbits.h, src/cache/ftcmanag.h, src/cache/ftccmap.h,
+	src/cache/ftcmru.h: This new location.
+	Update declarations according to the changes in the corresponding
+	source files.
+
+	Note that these files are not used by FreeType clients; all public
+	APIs of the cache module have been already moved to
+	`include/freetype/ftcache.h', and all FT_CACHE_INTERNAL_XXXX_H
+	macros resolve to it.
+
+	Reason for the move is to allow modifications of the internals
+	without interferences with rogue clients.  Note that there are no
+	known clients that access the cache internals at the moment.
+
+	* builds/unix/install.mk (install): Don't install headers from
+	$(CACHE_H).
+	Remove `freetype/cache' from the target directory.
+
+	* include/freetype/config/ftheader.h (FT_CACHE_MANAGER_H,
+	FT_CACHE_INTERNAL_MRU_H, FT_CACHE_INTERNAL_MANAGER_H,
+	FT_CACHE_INTERNAL_CACHE_H, FT_CACHE_INTERNAL_GLYPH_H,
+	FT_CACHE_INTERNAL_IMAGE_H, FT_CACHE_INTERNAL_SBITS_H): Point to
+	FT_CACHE_H.
+
+	* src/cache/ftcbasic.c, src/cache/ftccache.h, src/cache/ftccback.h,
+	src/cache/ftccmap.c, src/cache/ftcglyph.c, src/cache/ftcglyph.h,
+	src/cache/ftcimage.c, src/cache/ftcimage.h, src/cache/ftcmanag.c,
+	src/cache/ftcmanag.h, src/cache/ftcmru.h, src/cache/ftcsbits.c,
+	src/cache/ftcsbits.h: Don't use the FT_CACHE_INTERNAL_XXX_H macros
+	but include the headers directly (which are now in `src/cache').
+
+	* src/cache/ftccache.c:  Don't use the FT_CACHE_INTERNAL_XXX_H
+	macros but include the headers directly.
+	(FTC_Cache_Init, FTC_Cache_Done, FTC_Cache_NewNode,
+	FTC_Cache_Lookup, FTC_Cache_RemoveFaceID): Declare as FT_LOCAL_DEF.
+
+	* src/cache/ftccache.c:  Don't use the FT_CACHE_INTERNAL_XXX_H
+	macros but include the headers directly.
+	(FTC_MruNode_Prepend, FTC_MruNode_Up, FTC_MruNode_Remove,
+	FTC_MruList_Init, FTC_MruList_Reset, FTC_MruList_Done,
+	FTC_MruList_New, FTC_MruList_Remove, FTC_MruList_RemoveSelection):
+	Declare as FT_LOCAL_DEF.
+	(FTC_MruList_Find, FTC_MruList_Lookup) [!FTC_INLINE]: Compile
+	conditionally.
+	Declare as FT_LOCAL_DEF.
+
+
+	* builds/win32/visualc/freetype.dsp: Update project file, add
+	missing base source files (ftstroke.c, ftxf86.c, etc.).
+
+
+	* src/autofit/afcjk.c, src/autofit/aflatin.c, src/base/ftobjs.c,
+	src/cff/cffobjs.c, src/cid/cidobjs.c, src/pfr/pfrobjs.c,
+	src/sfnt/sfobjs.c, src/sfnt/ttmtx.c, src/type1/t1afm.c,
+	src/type1/t1objs.c: Remove compiler warnings when building with
+	Visual C++ 6 and /W4.
+
+	* src/autofit/aflatin.c (af_latin_hints_init): Disable horizontal
+	hinting for italic/oblique fonts.
+
+
+
+	* src/truetype/ttpload.c, src/truetype/ttpload.h
+	(tt_face_get_device_metrics): Change second argument to `FT_UInt'.
+
+2006-03-06  David Turner  <david at freetype.org>
+
+	* src/cache/ftcmanag.c (FTC_Manager_Lookup_Size): Prevent crashes in
+	Mozilla/FireFox print preview in Ubuntu Hoary.
+
+2006-02-28  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftutil.c (ft_mem_qalloc) [FT_STRICT_ALIASING]: Do not
+	return error when size == 0.
+
+2006-02-28  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftobjs.c (FT_Done_Library): Remove modules in reverse
+	order so that type42 module is removed before truetype module.  This
+	avoids double free in some occasions.
+
+2006-02-28  David Turner  <david at freetype.org>
+
+	* Release candidate VER-2-2-0-RC4.
+	----------------------------------
+
+	* docs/CHANGES: Documentation updates.
+
+2006-02-28  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* modules.cfg (BASE_EXTENSIONS): Compile in ftgxval.c by default to
+	build ftvalid in ft2demos.  It works as dummy ABI if gxvalid is not
+	built.
+
+2006-02-27  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/cache/ftccache.h
+	[FT_CONFIG_OPTION_OLD_INTERNALS]: Remove declaration of
+	ftc_node_done.
+
+	* src/cache/ftccache.c (ftc_node_destroy)
+	[!FT_CONFIG_OPTION_OLD_INTERNALS]: Mark as FT_LOCAL_DEF.  This
+	should now fix all possible compilation options.
+
+2006-02-27  David Turner  <david at freetype.org>
+
+	* src/base/ftutil.c (ft_mem_alloc, ft_mem_qalloc, ft_mem_realloc,
+	ft_mem_qrealloc): Return an error if a negative size is passed in
+	parameters.
+
+	* src/cache/ftccache.c (ftc_node_destroy): Mark as FT_BASE_DEF since
+	it needs to be exported for rogue clients.
+
+	* src/pshinter/pshglob.c (psh_blues_set_zones_0): Prevent problems
+	with malformed fonts which have an odd number of blue values (these
+	are broken according to the specs).
+
+	* src/cff/cffload.c (cff_subfont_load), src/type1/t1load.c
+	(T1_Open_Face): Modify the loaders to force even-ness of
+	`num_blue_values'.
+
+	(cff_index_access_element): Ignore invalid entries in index files.
+
+2006-02-27  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Check the case where width
+	or height is 0.
+
+2006-02-27  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/mac/FreeType.m68k_cfm.make.txt,
+	builds/mac/FreeType.m68k_far.make.txt,
+	builds/mac/FreeType.ppc_carbon.make.txt,
+	builds/mac/FreeType.ppc_classic.make.txt: Update to new header
+	inclusion introduced on 2006-02-16.
+
+2006-02-27  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftobjs.c (GRID_FIT_METRICS): New macro.
+	(ft_glyphslot_grid_fit_metrics, FT_Load_Glyph) [GRID_FIT_METRICS]:
+	Re-enable glyph metrics grid-fitting.  It is now done in the base
+	layer.
+	(FT_Set_Char_Size, FT_Set_Pixel_Sizes): Make sure the width and
+	height are not too small or too large, just like we were doing in
+	2.1.10.
+
+	* src/autofit/afloader.c (af_loader_load_g): The vertical metrics
+	are not scaled.
+
+2006-02-26  Werner Lemberg  <wl at gnu.org>
+
+	* docs/release: Minor additions and clarifications.
+
+	* docs/CHANGES: Updated to reflect many fixes for backward
+	compatibility.  Still incomplete.
+
+2006-02-26  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c (ft_recompute_scaled_metrics): Re-enable
+	conservative rounding of metrics to avoid breaking clients like
+	Pango (see https://bugzilla.gnome.org/show_bug.cgi?id=327852).
+
+2006-02-25  Werner Lemberg  <wl at gnu.org>
+
+	* devel/ftoption.h: Synchronize with
+	include/freetype/config/ftoption.h.
+
+	* src/cache/ftccache.c (ftc_node_destroy): Use FT_LOCAL_DEF (again).
+
+2006-02-25  David Turner  <david at freetype.org>
+
+	Fix compiler warnings as well as C++ compilation problems.
+	Add missing prototypes.
+
+	* src/autofit/afcjk.c, src/base/ftobjs.c, src/base/ftutil.c,
+	src/bdf/bdfdrivr.c, src/cff/cffcmap.c, src/cff/cffobjs.c,
+	src/psaux/afmparse.c,, src/psaux/t1cmap.c, src/smooth/ftgrays.c
+	src/tools/apinames.c, src/truetype/ttdriver.c: Add various casts,
+	initialize variables, and decorate functions with FT_CALLBACK_DEF,
+	etc., to fix compiler warnings (and C++ compiling errors).
+
+	* src/cache/ftcbasic.c: Fix `-Wmissing-prototypes' warnings with
+	gcc.
+
+	* builds/unix/ftsystem.c: Don't include FT_INTERNAL_OBJECTS_H but
+	FT_INTERNAL_STREAM_H.
+
+	* src/base/ftsystem.c: Include FT_INTERNAL_STREAM_H.
+
+	* include/freetype/config/ftheader.h (FT_PFR_H): New macro.
+
+	* include/freetype/config/ftoption.h (FT_STRICT_ALIASING): Don't
+	define for C++.
+
+	* include/freetype/internal/services/svotval.h: Don't include
+	FT_OPENTYPE_VALIDATE_H but FT_INTERNAL_VALIDATE_H.
+
+	* include/freetype/internal/services/svpfr.h: Include FT_PFR_H.
+
+	* src/gzip/ftgzip.c: Include FT_GZIP_H.
+
+	* src/lzw/ftlzw.c, src/lzw/ftlzw2.c: Include FT_LZW_H.
+
+	* src/sfnt/ttbdf.c (tt_face_load_bdf_props): Rearrange code.
+
+2006-02-24  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftoutln.c (FT_OUTLINE_GET_CONTOUR, ft_contour_has,
+	ft_contour_enclosed, ft_outline_get_orientation): Commented out.  We
+	have to wait until `FT_GlyphSlot_Own_Bitmap' is stabilized.
+	(FT_Outline_Embolden): Use `FT_Outline_Get_Orientation'.
+
+2006-02-24  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/ftbitmap.h (FT_Bitmap_Embolden): Update
+	documentation.
+
+	* include/freetype/ftsynth.h (FT_GlyphSlot_Own_Bitmap),
+	src/base/ftsynth.c (FT_GlyphSlot_Own_Bitmap): New function to make
+	sure a glyph slot owns its bitmap.  It is also marked experimental
+	and due to change.
+	(FT_GlyphSlot_Embolden): Undo the last change.  It turns out that
+	rendering the outline confuses some applications.
+
+2006-02-24  David Turner  <david at freetype.org>
+
+	* Release candidate VER-2-2-0-RC3.
+	----------------------------------
+
+	* src/cache/ftcbasic.c: Correct compatibility hack bug.
+
+2006-02-24  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/freetype.h (FT_Size_RequestRec): Change the type
+	of `width' and `height' to `FT_Long'.
+	(enum FT_Size_Request_Type), src/base/ftobjs.c (FT_Request_Metrics):
+	New request type `FT_SIZE_REQUEST_TYPE_SCALES' to specify the scales
+	directly.
+
+2006-02-23  David Turner  <david at freetype.org>
+
+	Two BDF patches from Debian libfreetype6 for 2.1.10.
+
+	* src/bdf/bdflib.c (_bdf_parse_glyphs): Fix a bug with zero-width
+	glyphs.
+	Fix a problem with large encodings.
+
+
+	Fix binary compatibility issues for gnustep-back (GNUstep backend
+	module) which still crashes under Sarge.
+
+	* src/cache/ftccmap.c (FTC_OldCMapType, FTC_OldCMapIdRec,
+	FTC_OldCMapDesc) [FT_CONFIG_OPTION_OLD_INTERNALS]: New data
+	structures and enumerations.
+	(FTC_CMapCache_Lookup) [FT_CONFIG_OPTION_OLD_INTERNALS]: New
+	compatibility code.
+
+	* src/cache/ftcbasic.c: Fix a silly bug that prevented our `hack' to
+	support rogue clients compiled against 2.1.7 to work correctly.
+	This probably explains the GNUstep crashes with the second release
+	candidate.
+
+2006-02-23  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/ftoutln.h (enum FT_Orientation): New value
+	`FT_ORIENTATION_NONE'.
+
+	* src/base/ftoutln.c (FT_OUTLINE_GET_CONTOUR, ft_contour_has,
+	ft_contour_enclosed, ft_outline_get_orientation): Another version of
+	`FT_Outline_Get_Orientation'.  This version differs from the public
+	one in that each part (contour not enclosed in another contour) of the
+	outline is checked for orientation.
+	(FT_Outline_Embolden): Use `ft_outline_get_orientation'.
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Render the outline and
+	use bitmap's embolden routine when the outline one failed.
+
+2006-02-22  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* modules.cfg: Compile in ftotval.c and ftxf86.c by default for ABI
+	compatibility.
+
+	* src/sfnt/sfobjs.c (sfnt_done_face): Fix a memory leak.
+
+	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_bit_aligned,
+	tt_sbit_decoder_load_byte_aligned) [FT_OPTIMIZE_MEMORY]: Fix sbit
+	loading.  (Only tested with bit aligned sbit with x_pos == 0.)
+
+	* src/truetype/ttpload.c (tt_face_load_hdmx,
+	tt_face_get_device_metrics) [FT_OPTIMIZE_MEMORY]: `hdmx' is not
+	actually used.
+
+2006-02-21  David Turner  <david at freetype.org>
+
+	Add a new API named FT_Get_TrueType_Engine_Type to determine whether
+	we have a patented, unpatented, or unimplemented TrueType bytecode
+	interpreter.
+
+	The FT_Get_Module_Flags API was removed consequently.
+
+	* include/freetype/ftmodapi.h (FT_Module_Get_Flags): Removed.
+	Replaced with...
+	(FT_Get_TrueType_Engine_Type): This.
+	(FT_TrueTypeEngineType): New enumeration.
+
+	* include/freetype/internal/ftserv.h (FT_SERVICE_TRUETYPE_ENGINE_H):
+	New macro.
+
+	* src/base/ftobjs.c: Include FT_SERVICE_TRUETYPE_ENGINE_H.
+	(FT_Module_Get_Flags): Removed.  Replaced with...
+	(FT_Get_TrueType_Engine_Type): This.
+
+	* src/truetype/ttdriver.c: Include FT_SERVICE_TRUETYPE_ENGINE_H.
+	(tt_service_truetype_engine): New service structure.
+	(tt_services): Register it.
+
+	* include/freetype/internal/services/svtteng.h: New file.
+
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Fix silly bug that prevented
+	embedded bitmaps from being correctly listed and used.
+
+
+	* src/sfnt/ttmtx.c (tt_face_load_hmtx): Disable memory optimization
+	if FT_CONFIG_OPTION_OLD_INTERNALS is used.  The is necessary because
+	libXfont is directly accessing the HMTX data, unfortunately.
+	Fix some compiler warnings.
+	(tt_face_get_metrics): Ditto.
+
+
+	* src/pfr/pfrsbit.c (pfr_slot_load_bitmap): Fix handling of
+	character advances.
+
+2006-02-20  David Turner  <david at freetype.org>
+
+	Support binary compatibility with the X.Org server's Xfont library.
+	Note that this change unfortunately prevents memory optimizations
+	for the embedded bitmap loader.
+
+	* include/freetype/internal/sfnt.h (SFNT_Interface): Move
+	`set_sbit_strike' and `load_sbit_metrics' fields to the location of
+	version 2.1.8.
+
+	* src/sfnt/sfdriver.c (tt_face_set_sbit_strike_stub): Call
+	FT_Size_Request.
+	(sfnt_interface): Updated.
+
+	* src/sfnt/ttsbit.c [FT_CONFIG_OPTION_OLD_INTERNALS]: Don't load
+	ttsbit0.c.
+	(tt_load_sbit_metrics): Make `sbit_small_metrics_fields' static.
+
+	* src/sfnt/ttsbit.h: Updated.
+
+2006-02-17  David Turner  <david at freetype.org>
+
+	* builds/unix/unix-cc.in (LINK_LIBRARY): Don't filter out exported
+	functions anymore.  This ensures that all FT_BASE internal functions
+	are available for dynamic linking.
+
+	* include/freetype/ftcache.h (FTC_IMAGE_TYPE_COMPARE,
+	FTC_IMAGE_TYPE_HASH), src/cache/ftcbasic.c (FTC_OldFontRec,
+	FTC_OldImageDescRec, FTC_ImageCache_Lookup, FTC_Image_Cache_New,
+	FTC_OldImageDesc, FTC_OLD_IMAGE_FORMAT, ftc_old_image_xxx,
+	ftc_image_type_from_old_desc, FTC_Image_Cache_Lookup,
+	FTC_SBitCache_Lookup, FTC_SBit_Cache_New, FTC_SBit_Cache_Lookup)
+	[FT_CONFIG_OPTION_OLD_INTERNALS]: Try to revive old functions of the
+	cache sub-system.  We try to recognize old legacy signatures with a
+	gross hack (hope it works).
+
+2006-02-17  Werner Lemberg  <wl at gnu.org>
+
+	* devel/ftoption.h: Synchronize with
+	include/freetype/config/ftoption.h.
+
+2006-02-16  David Turner  <david at freetype.org>
+
+	Massive changes to the internals to respect the internal object
+	layouts and exported functions of FreeType 2.1.7.  Note that the
+	cache sub-system cannot be fully retrofitted, unfortunately.
+
+	* include/freetype/config/ftoption.h
+	(FT_CONFIG_OPTION_OLD_INTERNALS): New macro.
+
+	* include/freetype/ftcache.h, include/freetype/cache/ftccache.h,
+	include/freetype/cache/ftccmap.h,
+	include/freetype/internal/ftcalc.h,
+	include/freetype/internal/ftdriver.h,
+	include/freetype/internal/ftmemory.h,
+	include/freetype/internal/ftobjs.h,
+	include/freetype/internal/psaux.h, include/freetype/internal/sfnt.h,
+	include/freetype/internal/t1types.h,
+	include/freetype/internal/tttypes.h, src/base/ftcalc.c,
+	src/base/ftdbgmem.c, src/base/ftobjs.c, src/base/ftutil.c,
+	src/bdf/bdfdrivr.c, src/cache/ftccache.c, src/cache/ftccback.h,
+	src/cache/ftcmanag.c, src/cff/cffdrivr.c, src/cid/cidriver.c,
+	src/pcf/pcfdrivr.c, src/pfr/pfrdrivr.c, src/psaux/psauxmod.c,
+	src/sfnt/sfdriver.c, src/truetype/ttdriver.c, src/type1/t1driver.c,
+	src/type1/t1objs.c, src/type42/t42drivr.c, src/winfonts/winfnt.c:
+	Use FT_CONFIG_OPTION_OLD_INTERNALS to revive old functions and data
+	structures.
+
+	Move newly added structure elements to the end of the affected
+	structure and add stub fields (if FT_CONFIG_OPTION_OLD_INTERNALS is
+	defined) to assure binary compatibility with older FreeType
+	versions.
+	Use FT_CONFIG_OPTION_OLD_INTERNALS to add function stubs for old
+	functions:
+
+	  ft_stub_set_char_sizes
+	  ft_stub_set_pixel_sizes
+
+	Rename the following internal functions to provide the old function
+	names as stubs:
+
+	  FT_Alloc          -> ft_mem_alloc
+	  FT_QAlloc         -> ft_mem_qalloc
+	  FT_Realloc        -> ft_mem_realloc
+	  FT_QRealloc       -> ft_mem_qrealloc
+	  FT_Free           -> ft_mem_free
+	  FT_Alloc_Debug    -> ft_mem_alloc_debug
+	  FT_QAlloc_Debug   -> ft_mem_qalloc_debug
+	  FT_Realloc_Debug  -> ft_mem_realloc_debug
+	  FT_QRealloc_Debug -> ft_mem_qrealloc_debug
+	  FT_Free_Debug     -> ft_mem_free_debug
+
+2006-02-15  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec): Remove
+	unused `max_points' and `max_contours'.
+
+	* src/cid/cidobjs.c (cid_face_init), src/type1/t1objs.c
+	(T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Update.
+
+	* include/freetype/internal/tttypes.h (TT_FaceRec): Remove unused
+	`max_components'.
+
+	* src/truetype/ttinterp.h (TT_ExecContextRec): Remove unused
+	`loadSize' and `loadStack'.
+
+	* src/truetype/ttinterp.c (TT_Done_Context, TT_Load_Context),
+	src/sfnt/ttload.c (tt_face_load_maxp): Update.
+
+	* src/cff/cffobjs.h (cff_size_select), src/sfnt/sfdriver.c
+	(sfnt_interface), src/truetype/ttdriver.c (tt_size_request): Fix
+	compiler errors/warnings when TT_CONFIG_OPTION_EMBEDDED_BITMAPS is not
+	defined.
+
+	* src/sfnt/ttmtx.c (tt_face_load_hmtx, tt_face_get_metrics): Fix
+	possible segment faults for the non-FT_OPTIMIZE_MEMORY'ed versions.
+	(finally!)
+
+
+	For most OpenType tables, `tt_face_load_xxxx' simply loads the table
+	and `face->root' is set later in `sfnt_load_face'.  Here, we try to
+	make this work for _all_ tables.  Also improve tracing messages.
+
+	* src/sfnt/ttsbit.c, src/sfnt/ttsbit0.c, src/sfnt/ttload.c,
+	src/sfnt/ttmtx.c: all `tt_face_load_xxxx' should load the table and
+	then exit.  Error handling or setting face->root is done later in
+	`sfnt_load_face'.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Work harder.
+	Mac bitmap-only fonts are not scalable.
+	Check that `face->header.Units_Per_EM' is not zero.
+	(LOAD_, LOADM_): Emit pretty trace messages.
+
+	* src/sfnt/ttsbit0.c (tt_face_load_strike_metrics): Read metrics
+	from `eblc'.
+
+	* src/sfnt/ttcmap.c (tt_face_build_cmaps), src/sfnt/ttpost.c
+	(load_format_20, load_format_25, tt_face_get_ps_name): Use
+	face->max_profile.numGlyphs, instead of face->root.num_glyphs.
+
+2006-02-14  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftoutln.h (FT_Outline_Embolden): Mention in
+	documentation that negative strength values are possible.
+	Give an example call.
+
+	* include/freetype/freetype.h (FT_GlyphSlotRec): Improve
+	documentation of `outline' field.
+
+	* src/sfnt/sfobjs.c: Include FT_INTERNAL_DEBUG_H.
+	* src/sfnt/sfdriver.c: Include ttmtx.h.
+
+	* src/autofit/afcjk.c: Include aftypes.h and aflatin.h.
+
+2006-02-14  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttmtx.c (tt_face_get_metrics): Typo.
+
+2006-02-14  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttmtx.c (tt_face_load_hhea, tt_face_load_hmtx): Simply
+	return error if table is missing.
+	Check table length in non-FT_OPTIMIZE_MEMORY'ed `tt_face_load_hmtx'.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Take care of missing metrics
+	tables.  The last change makes Mac bitmap-only font not load and
+	this fixes it.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix compilation
+	error when FT_CONFIG_OPTION_INCREMENTAL is defined.
+
+2006-02-13  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	Clean up the SFNT_Interface.  In this final pass, `load_hmtx' is
+	split from `load_hhea'.
+
+	* include/freetype/internal/sfnt.h, src/sfnt/sfdriver.c,
+	src/sfnt/ttmtx.c, src/sfnt/ttmtx.h: Split `hmtx' from `hhea'.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Update.
+
+2006-02-13  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttmtx.h, src/sfnt/ttmtx.c: Why are there two copies of
+	code...
+
+2006-02-13  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	Clean up the SFNT_Interface.  In this pass, we want to treat the
+	font directory (offset table and table directory) as a normal table
+	like the others.  This also means that TTCs are no longer recognized
+	there but in `init_face'.
+
+	* include/freetype/internal/sfnt.h (SFNT_Interface),
+	src/sfnt/sfdriver.c: `load_sfnt_header' and `load_directory' are
+	combined and renamed to `load_font_dir'.
+
+	* src/sfnt/ttload.h, src/sfnt/ttload.c:
+	s/sfnt_dir_check/check_table_dir/.
+	`sfnt_init' is moved to sfobjs.c and renamed to `sfnt_open_font'.
+	`tt_face_load_sfnt_header' and `tt_face_load_directory' are combined
+	and renamed to `tt_face_load_font_dir'.
+
+	* src/sfnt/sfobjs.c (sfnt_init_face): Recognize TTC here.
+
+2006-02-13  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	Clean up the SFNT_Interface.  Table loading functions are now named
+	after the tables' tags; `hdmx' is TrueType-specific and thus the
+	code is moved to the truetype module; `get_metrics' is moved here
+	from the truetype module so that the code can be shared with the cff
+	module.
+
+	This pass involves no real changes.  That is, the code is moved
+	verbatim mostly.  The only exception is the return value of
+	`tt_face_get_metrics'.
+
+	* include/freetype/internal/sfnt.h, src/sfnt/rules.mk,
+	src/sfnt/sfdriver.c, src/sfnt/sfnt.c, src/sfnt/sfobjs.c,
+	src/sfnt/ttload.c, src/sfnt/ttload.h, src/sfnt/ttsbit.c,
+	src/sfnt/ttsbit.h, src/sfnt/ttsbit0.c: Clean up the SFNT_Interface.
+
+	* src/sfnt/ttmtx.c, src/sfnt/ttmtx.h: New files.  Metrics-related
+	tables' loading and parsing code is moved to here.
+	Move `tt_face_get_metrics' here from the truetype module.  The
+	return value is changed from `void' to `FT_Error'.
+
+	* include/freetype/internal/fttrace.h: New trace: ttmtx.
+
+	* src/truetype/ttpload.c, src/truetype/ttpload.h: `hdmx' loading and
+	parsing code is moved here.
+	New function `tt_face_load_prep' split from `tt_face_load_fpgm'.
+	`tt_face_load_fpgm' returns `FT_Err_Ok' if `fpgm' doesn't exist.
+
+	* src/cff/cffgload.c, src/cff/cffobjs.c: Update.
+
+	* src/truetype/ttgload.c, src/truetype/ttobjs.c: Update.
+
+2006-02-11  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/autofit/afcjk.c (af_cjk_metrics_init): Fix a stupid bug...
+
+	* src/autofit/aflatin.c (af_latin_metrics_init_widths): Use
+	AF_LatinMetricsRec as the dummy metrics because we cast the metrics
+	to it later in `af_latin_hints_link_segments'.
+
+2006-02-11  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/config/ftoption.h (AF_CONFIG_OPTION_CJK): #define
+	to enable autofit CJK script support.  (#define'd by default.)
+
+	* src/autofit/aflatin.h (AF_LATIN_CONSTANT): New macro.
+
+	* src/autofit/aflatin.c (af_latin_metrics_init_widths): Make sure
+	that `edge_distance_threshold' is always set.
+	(af_latin_hints_link_segments): Potential divide-by-zero bug.
+	Use latin constant in the scoring formula.
+
+	* src/autofit/afcjk.c: Minor updates due to the above three changes.
+
+	* docs/TODO, docs/CHANGES: Updated.
+
+2006-02-09  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	Introduce experimental autofit CJK module based on akito's autohint
+	patch.  You need to #define AF_MOD_CJK in afcjk.c to enable it.
+
+	* src/autofit/afglobal.c, src/autofit/afcjk.h, src/autofit/afcjk.c,
+	src/autofit/rules.mk, src/autofit/autofit.c, src/autofit/aftypes.h:
+	Add CJK module based on akito's autohint patch.
+
+	* src/autofit/afhints.h (AF_SegmentRec): New field `len' for the
+	overlap length of the segments.
+	(AF_SEGMENT_LEN, AF_SEGMENT_DIST): New macros.
+
+	* src/autofit/aflatin.h (af_latin_metrics_init_widths),
+	src/autofit/aflatin.c (af_latin_metrics_init_widths): Made
+	`FT_LOCAL'.
+	Use the character given by the caller.
+	(af_latin_metrics_init_widths, af_latin_hints_link_segments): Scale
+	the thresholds.
+
+	* src/autofit/afloader.c (af_loader_load_g): Respect
+	AF_SCALER_FLAG_NO_ADVANCE.
+
+2006-02-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/cid/cidparse.c (cid_parse_new): Remove shadowing variable.
+
+2006-02-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/cid/cidparse.c (cid_parse_new): Fix for abnormally short or
+	broken CIDFont.  Reported by Taek Kwan(TK) Lee (see ft-devel
+	2005-11-02).
+
+2006-02-08  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.ac: Fix bug for `--with-old-mac-fonts'
+	option on UNIX platform.  It has been broken since 2006-01-11.
+
+2006-02-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/module.mk: s/otvalid_module_class/otv_module_class/.
+	* src/gxvalid/module.mk: s/gxvalid_module_class/gxv_module_class/.
+
+	* builds/unix/unixddef.mk: Actually do define PLATFORM (fixing
+	change from 2006-01-31).
+	(TOP_DIR, OBJ_DIR): Update.
+
+	* builds/unix/install.mk (install): Fix path for ftmodule.h.
+
+	* Makefile, *.mk, builds/unix/unix-cc.in, builds/unix-def.in: Use
+	`?=' where appropriate.
+
+	* builds/detect.mk (TOP_DIR), builds/os2/os2-dev.mk (TOP_DIR),
+	builds/win32/w32-dev.mk (TOP_DIR): Removed.  Defined elsewhere.
+
+2006-01-31  Werner Lemberg  <wl at gnu.org>
+
+	Implement new, simplified module selection.  With GNU make it is now
+	sufficient to modify a single file, `modules.cfg', to control the
+	inclusion of modules and base extension files.
+
+	This change also fixes the creation of ftmodule.h; it now depends on
+	`modules.cfg' and thus is rebuilt only if necessary.
+
+	Finally, a version of `ftoption.h' in OBJ_DIR is preferred over the
+	default location.
+
+	* modules.cfg: New file.
+
+	* builds/freetype.mk: Don't include `modules.mk'.
+	Include all `rules.mk' files as specified in `modules.cfg'.
+	(FTOPTION_FLAG, FTOPTION_H): New variables.
+	(FT_CFLAGS): Add macro definition for FT_CONFIG_MODULES_H.
+	Add FTOPTION_FLAG.
+	($(FT_INIT_OBJ)): Don't use FT_MODULE_LIST.
+	(CONFIG_H): Add FTMODULE_H and FTOPTION_H.
+	(INCLUDES): Add DEVEL_DIR.
+	(INCLUDE_FLAGS, FTSYS_SRC, FTSYS_OBJ, FTDEBUG_SRC, FTDEBUG_OBJ,
+	OBJ_M, OBJ_S): Use `:=', not `='.
+	(remove_ftmodule_h): New phony target to delete `ftmodule.h'.
+	(distclean): Add remove_ftmodule_h.
+
+	* builds/modules.mk: (MODULE_LIST): Removed.
+	(make_module_list, clean_module_list): Replace targets
+	with...
+	(FTMODULE_H_INIT, FTMODULE_H_CREATE, FTMODULE_H_DONE): New
+	variables.  Reason for the change is that it is not possible to have
+	a phony prerequisite which is run only if the target file must be
+	rebuilt (phony prerequisites act like subroutines and are *always*
+	executed).  We only want to rebuild `ftmodule.h' if `module.cfg' is
+	changed.
+	Update all callers.
+	($FTMODULE_H)): Rule to create `ftmodule.h', depending on
+	`modules.cfg'.
+
+	* builds/toplevel.mk: Rewrite and simplify module handling.
+	(MODULES_CFG, FTMODULE_H): New variables.
+	Include MODULES_CFG.
+	(MODULES): New variable to include all `module.mk' and `rules.mk'
+	files.  We no longer use make's `wildcard' function for this.
+
+	* Makefile (USE_MODULES): Remove.  Update all users.
+	(OBJ_DIR): Define it here.
+
+	* src/*/module.mk: Change
+
+	    make_module_list: foo
+	    foo: ...
+
+	to
+
+	    FTMODULE_H_COMMANDS += FOO
+	    define FOO
+	    ...
+	    endef
+
+	in all files.  `FTMODULE_H_COMMANDS' is used in `FTMODULE_H_CREATE'.
+
+	* src/base/rules.mk (BASE_EXT_SRC): Use BASE_EXTENSIONS.
+
+	* builds/unix/detect.mk (setup): Always execute `configure' script.
+	(have_mk): Rename to...
+	(have_Makefile): This.
+	Don't use `strip' function.
+
+	* builds/unix/unix.mk: Include `install.mk' only if BUILD_PROJECT is
+	defined.
+	(have_mk): Don't use `strip' function.
+	Test for unix-def.mk in OBJ_DIR, not BUILD_DIR (and invert the test
+	accordingly).
+
+	* builds/unix/install.mk (install, uninstall): Handle `ftmodule.h'.
+
+	* builds/os2/os2-dev.mk, builds/unix/unix-dev.mk,
+	builds/win32/w32-bccd.mk, builds/win32/w32-dev.mk: Don't define
+	BUILD_DIR but DEVEL_DIR for development header files.
+
+	* builds/ansi/ansi-def.mk (TOP_DIR, OBJ_DIR),
+	builds/beos/beos-def.mk (TOP_DIR, OBJ_DIR), builds/unix/unix-def.in
+	(TOP_DIR, OBJ_DIR): Removed.  Defined elsewhere.
+
+	* builds/dos/dos-def.mk (OBJ_DIR), builds/os2/os2-def.mk (OBJ_DIR),
+	builds/win32/win32-def.mk (OBJ_DIR): Removed.  Defined elsewhere.
+
+	* builds/unix/unixddef.mk: Don't define BUILD_DIR but DEVEL_DIR for
+	development header files.
+	Don't define PLATFORM.
+
+	* configure: Copy `modules.cfg' to builddir if builddir != srcdir.
+	Update snippet taken from autoconf's m4sh.m4 to current CVS version.
+	Be more verbose.
+
+	* include/freetype/config/ftmodule.h: Add comments -- this file is
+	no longer used if FreeType is built with GNU make.
+
+	* docs/CHANGES, docs/CUSTOMIZE, docs/INSTALL, docs/INSTALL.ANY,
+	docs/INSTALL.GNU, docs/INSTALL.UNX: Document new build mechanism.
+	Other minor updates.
+
+	* modules.txt: Removed.  Contents included in `modules.cfg'.
+
+
+	* include/freetype/internal/ftmemory.h (FT_QAlloc_Debug,
+	FT_Free_Debug) [FT_STRICT_ALIASING]: Fix typos.
+
+	* src/base/ftdbgmem.c (FT_Alloc_Debug, FT_Realloc_Debug,
+	FT_QAlloc_Debug, FT_QRealloc_Debug, FT_Free_Debug)
+	[FT_STRICT_ALIASING]: Implement.
+
+2006-01-31  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c
+	(cid_face_init), src/pfr/pfrobjs.c (pfr_face_init),
+	src/type1/t1objs.c (T1_Face_Init): Set face->height to MAX(1.2 *
+	units_per_EM, ascender - descender).
+
+2006-01-31  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/t1types.h (AFM_FontInfo),
+	src/psaux/afmparse.c, src/tools/test_afm.c: Read `FontBBox',
+	`Ascender', and `Descender' from an AFM.
+
+	* src/type1/t1afm.c (T1_Read_Metrics): Use the metrics from the AFM.
+
+	* include/freetype/freetype.h (FT_FaceRec): Mention that fields may
+	be changed after file attachment.
+
+2006-01-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/*/module.mk (.PHONY): Add.
+
+2006-01-27  Werner Lemberg  <wl at gnu.org>
+
+	* README, docs/FTL.TXT: Fix email address for bug reports.
+	Other minor formatting.
+
+	* devel/ftoption.h: Synchronize with
+	include/freetype/config/ftoption.h.
+
+	* src/autofit/module.mk (add_autofit_module), src/bdf/module.mk
+	(add_bdf_module), src/type42/module.mk (add_type42_driver): Fix
+	whitespace.
+
+	* src/smooth/module.mk (add_smooth_renderer): Add lcd and lcdv
+	renderer classes.
+
+2006-01-27  David Turner  <david at freetype.org>
+
+	* builds/unix/configure.ac: Fix build problem on Cygwin.
+
+	* builds/unix/install.mk (install): Don't install the internal
+	headers, and remove existing ones if found in the target install
+	directory.
+
+	* src/autofit/afwarp.c: Add simple #ifdef to prevent compilation
+	if the warp hinter isn't active (it shouldn't, still experimental).
+
+	* Jamfile, include/freetype/config/ftmodule.h: Remove `gxvalid'
+	and `otvalid' from the list of modules that are linked statically
+	to a given FreeType library.  Functionality has been moved to the
+	`ftvalid' CVS module.
+
+	Note also that current Make-based build system still compiles the
+	modules though.
+
+	* include/freetype/config/ftoption.h (FT_STRICT_ALIASING): New macro
+	which controls the definitions of the memory management functions to
+	avoid warnings with recent versions of GCC.  This macro is only here
+	to be disabled, in case we detect problems with the new scheme.
+
+	NOTE: Disable macro to use the memory debugger -- this will be fixed
+	      later!
+
+	* include/freetype/internal/ftmemory.h, src/base/ftutil.c (FT_Alloc,
+	FT_QAlloc, FT_Realloc, FT_QRealloc, FT_Free) [FT_STRICT_ALIASING]:
+	New versions.
+
+
+	* builds/win32/visualc/freetype.dsp: Updating project file to
+	define FT2_BUILD_LIBRARY, and remove gxvalid + otvalid modules from
+	compilation.
+
+
+	* builds/freetype.mk (FT_CFLAGS), Jamfile (DEFINES): Define the
+	macro FT2_BUILD_LIBRARY when compiling the library.
+
+	* include/freetype/config/ftheader.h: Remove inclusions of internal
+	headers except if the macro FT2_BUILD_LIBRARY is defined.
+
+
+	* include/freetype/internal/psaux.h (AFM_KernPair, AFM_TrackKern,
+	AFM_FontInfo): Move structure declarations to...
+	* include/freetype/internal/t1types.h: This file.
+
+
+	* (many files): Fix compiler warnings.
+	Various minor reorganizations.
+
+
+	* src/cff/cffload.c (cff_font_done): Don't free static array
+	`subfonts'.
+
+	* src/otvalid/otvcommn.c (otv_ClassDef_validate),
+	src/otvalid/otvgpos.c (otv_x_sxy): Fix debugging information.
+
+
+	Get rid of writable static variables (i.e., the string table) in
+	afmparse, and fix compilation in FT2_MULTI mode.
+
+	* src/psaux/afmparse.c: Include ft2build.h and FT_FREETYPE_H.
+	(AFM_MAX_ARGUMENTS): Define...
+	* src/psaux/afmparse.h: Here.
+	* src/psaux/Jamfile (_sources): Add afmparse.
+
+	* src/psaux/psconv.c: Include psconv.h.
+
+	* src/type1/t1afm.c: Don't include FT_INTERNAL_TYPE1_TYPES_H but
+	FT_INTERNAL_POSTSCRIPT_AUX_H.
+	* src/type1/t1afm.h: Include FT_INTERNAL_TYPE1_TYPES_H.
+
+2006-01-23  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/freetype.h (FT_Select_Size): Rename the second
+	argument from `idx' to `strike_index'.
+	(FT_Size_Request_Type): Add FT_SIZE_REQUEST_TYPE_MAX to the end of
+	this enum.
+
+	* include/freetype/internal/ftobjs.h (FT_REQUEST_WIDTH,
+	FT_REQUEST_HEIGHT): New macros to get the width and height of a
+	request, in fractional pixels.
+
+	* include/freetype/internal/ftobjs.h (FT_Select_Metrics,
+	FT_Request_Metrics), src/base/ftobjs.c (FT_Select_Metrics,
+	FT_Request_Metrics): New base functions to set the font metrics.  They
+	were part of FT_Select_Size/FT_Request_Size and are made independent
+	functions so that metrics are not set again and again.
+
+	* src/base/ftobjs.c (FT_Select_Size, FT_Request_Size): Metrics are set
+	only when driver's size_select/size_request is NULL.  That is, drivers
+	should set the metrics themselves.
+	(FT_Match_Size): Round before matching.  This was what we did and it
+	does cause some problems without rounding.
+
+	* src/cff/cffobjs.c (cff_size_select), src/truetype/ttdriver.c
+	(tt_size_select): Set the font metrics.
+	s/index/strike_index/.
+	The scaled metrics are always preferred over strikes' metrics, even
+	when some strike is selected.  This is done because the strikes'
+	metrics are not reliable, e.g., the sign of the descender is wrong for
+	some fonts.
+
+	* src/cff/cffobjs.c (cff_size_request), src/truetype/ttdriver.c
+	(tt_size_request): Set the font metrics.
+	Call cff_size_select/tt_size_select when some strike is matched.
+
+	* src/bdf/bdfdrivr.c, src/cff/cffobjs.c, src/cid/cidobjs.c,
+	src/pcf/pcfdrivr.c, src/truetype/ttdriver.c, src/type1/t1objs.c,
+	src/type1/t1objs.h, src/type42/t42objs.c, src/winfonts/winfnt.c:
+	Set the font metrics.
+	s/index/strike_index/.
+
+	* src/tools/test_afm.c, src/psaux/psconv.c: Older versions of these
+	files were committed.  Just a catch-up.
+	(PS_Conv_ToFixed): Remove the `goto'.
+	(PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Speed up a little.
+
+	* src/sfnt/ttsbit.c (tt_face_load_sbit_strikes,
+	tt_face_load_strike_metrics), src/sfnt/ttsbit0.c
+	(tt_face_load_sbit_strikes, tt_face_load_strike_metrics): The
+	advertised metrics in `available_sizes' are different from those
+	actually used.
+
+2006-01-23  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/psaux/psaux.c src/psaux/psauxmod.c src/type1/t1driver.c: Make
+	AFM parser optional, controlled by `T1_CONFIG_OPTION_NO_AFM'.
+
+2006-01-22  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
+	`texinfo' CVS module at savannah.gnu.org.
+
+2006-01-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/rules.mk (AUTOF_DRV_SRC): Add afwarp.c.
+
+	* src/autofit/afloader.c (af_loader_load_g): Move AF_USE_WARPER up
+	to avoid compiler warnings.
+
+	* src/autofit/afwarp.c (af_warper_compute_line_best): Remove
+	shadowing variable declarations.
+	Fix warning parameters and replace printf with AF_LOG.
+	(af_warper_compute): Remove unused variable.
+
+2006-01-20  David Turner  <david at freetype.org>
+
+	Adding experimental implementation of `warp hinting' (new hinting
+	algorithm for gray-level and LCD rendering).  It is disabled by
+	default, you need to #define AF_USE_WARPER in aftypes.h.
+
+	* src/autofit/afhints.c (af_glyph_hints_scale_dim) [AF_USE_WARPER]:
+	New function.
+	* src/autofit/afhints.h: Updated.
+
+	* src/autofit/aflatin.c [AF_USE_WARPER]: Include afwarp.h.
+	(af_latin_hints_init) [AF_USE_WARPER]: Reset mode to
+	FT_RENDER_MODE_NORMAL if an LCD mode is selected.
+	(af_latin_hints_apply) [AF_USE_WARPER]: Call af_warper_compute
+	appropriately.
+
+	* src/autofit/afloader.c (af_loader_load_g) [!AF_USER_WARPER]:
+	Isolate code for adjusting metrics.
+
+	* src/autofit/aftypes.h (AF_USE_WARPER): New macro (commented out by
+	default).
+
+	* src/autofit/afwarp.c, src/autofit/afwarp.h: New files.
+
+	* src/autofit/autofit.c [AF_USE_WARPER]: Include afwarp.c.
+
+	* src/autofit/Jamfile (_sources): Add afwarp.
+
+2006-01-19  David Turner  <david at freetype.org>
+
+	* src/sfnt/ttsbit0.c (tt_face_load_strike_metrics): Fix small bug
+	that prevented compilation when FT_OPTIMIZE_MEMORY is defined.
+
+2006-01-19  Brian Weed  <bw at imaginengine.com>
+
+	* builds/win32/visualc/freetype.dsp: Updated.
+
+2006-01-17  Werner Lemberg  <wl at gnu.org>
+
+	Use pscmap service in CFF module.
+
+	* src/cff/cffcmap.c (cff_cmap_uni_pair_compare): Removed.
+	(cff_sid_to_glyph_name): New function.
+	(cff_cmap_unicode_init, cff_cmap_unicode_done,
+	cff_cmap_unicode_char_index, cff_cmap_unicode_char next): Use pscmap
+	service.
+	(cff_cmap_unicode_class_rec): Updated.
+	* src/cff/cffcmap.h (CFF_CMapUnicode, CFF_CMap_UniPair): Removed.
+
+
+	* src/psnames/psmodule.c (ps_unicodes_char_next): Fix `unicode'
+	return value.
+
+
+	* src/psaux/afmparse.c (afm_parser_read_vals): Use double casting
+	to avoid compiler warnings regarding type-punning.
+
+2006-01-16  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/psaux/afmparse.c, src/psaux/afmparse.h: New files which
+	implement an AFM parser.
+
+	* src/psaux/psconv.c, src/psaux/psconv.h: New files to provide
+	conversion functions (e.g., PS real number => FT_Fixed) for the
+	PS_Parser and AFM_Parser.  Some of the functions are taken, with
+	some modifications, from the file psobjs.c.
+
+	* src/psaux/psobjs.c: Use functions from psconv.c.
+
+	* include/freetype/internal/psaux.h, src/psaux/psauxmod.c: Add
+	`AFM_Parser' to the `psaux' service.
+
+	* src/psaux/psaux.c, src/psaux/rules.mk (PSAUX_DRV_SRC): Include
+	those new files.
+
+	* src/tools/test_afm.c: A test program for AFM parser.
+
+	* include/freetype/internal/services/svkern.h: New file providing a
+	`Kerning' service.  It is currently only used to get the track
+	kerning information.
+
+	* include/freetype/internal/ftserv.h (FT_SERVICE_KERNING_H): New
+	macro.
+
+	* src/type1/t1driver.c, src/type1/t1objs.c, src/type1/t1afm.c,
+	src/type1/t1afm.h: Update to use the AFM parser.
+	Provide the `Kerning' service.
+
+	* include/freetype/freetype.h, src/base/ftobjs.c: New API
+	`FT_Get_Track_Kerning'.
+
+2006-01-15  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/ftobjs.h, src/base/ftobjs.c,
+	src/bdf/bdfdrivr.c, src/cff/cffgload.c, src/cid/cidgload.c,
+	src/pcf/pcfdrivr.c, src/type1/t1gload.c, src/winfonts/winfnt.c:
+	s/ft_fake_vertical_metrics/ft_synthesize_vertical_metrics/.
+
+	* docs/CHANGES: Mention that vertical metrics are synthesized for
+	fonts not having this info.
+
+2006-01-15  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/ftobjs.h (ft_fake_vertical_metrics),
+	src/base/ftobjs.c (ft_fake_vertical_metrics): New function to fake
+	vertical metrics.
+
+	* src/cff/cffgload.c, src/cid/cidgload.c, src/pcf/pcfdrivr.c,
+	src/type1/t1gload.c, src/winfonts/winfnt.c: Fake vertical metrics,
+	which are monotone.
+
+	* src/truetype/ttgload.c (compute_glyph_metrics): Some fixes and
+	formattings in vertical metrics faking.  There is still room for
+	improvements (and so does the CFF module).
+
+2006-01-15  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/pcf/pcfdrivr.c
+	(PCF_Glyph_Load), src/winfonts/winfnt.c (FNT_Load_Glyph): Don't set
+	the linear advance fields as they are only used by the outline
+	glyphs.
+
+	* include/freetype/freetype.h: Documentation updates and
+	clarifications.
+	The meaning of FT_LOAD_FORCE_AUTOHINT is changed so that no real
+	change need be made to the code.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Resolve flag dependencies and
+	decide whether to use the auto-hinter according to documentation.
+	There should to be no real difference.
+	Some checks (e.g., is text height positive?) after the glyph is
+	loaded.
+	(FT_Select_Size, FT_Request_Size): Scales are set to wrong values.
+	Be careful that scales won't be negative.
+
+2006-01-14  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* docs/CHANGES: Mention the size selection change.
+
+	* src/bdf/bdfdrivr.c (BDF_Size_Request, BDF_Size_Select),
+	src/pcf/pcfdrivr.c (PCF_Size_Request, PCF_Size_Select),
+	src/winfonts/winfnt.c (FNT_Size_Request, FNT_Size_Select): Do size
+	matching for requests of type NOMINAL and REAL_DIM.
+
+	* src/winfonts/winfnt.c (FNT_Face_Init): Print trace message when
+	`pixel_height' is used for nominal height.
+
+	* src/base/ftobjs.c (FT_Request_Size): Call `FT_Match_Size' if the
+	face is bitmap only and driver doesn't provide `request_size'.  This
+	is added merely for completion as no driver satisfies the conditions.
+
+2006-01-13  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	Introduce new size selection interface.
+
+	* include/freetype/internal/ftdriver.h (struct FT_Driver_ClassRec):
+	Replace `set_char_sizes' and `set_pixel_sizes' by `request_size' and
+	`select_size'.
+
+	* include/freetype/freetype.h (FT_Select_Size, FT_Size_Request_Type,
+	FT_Size_Request, FT_Request_Size, FT_Select_Size), src/base/ftobjs.c
+	(FT_Select_Size, FT_Request_Size): API additions to export the new
+	size selection interface.
+
+	* src/base/ftobjs.c (FT_Set_Char_Size, FT_Set_Pixel_Sizes): Use
+	`FT_Request_Size'.
+
+	* include/freetype/internal/ftobjs.h (FT_Match_Size),
+	src/base/ftobjs.c (FT_Match_Size): New function to match a size
+	request against `available_sizes'.  Drivers supporting bitmap strikes
+	can use this function to implement `request_size'.
+
+	* src/bdf/bdfdrivr.c, src/cid/cidobjs.c, src/cid/cidobjs.h,
+	src/cid/cidriver.c, src/pcf/pcfdrivr.c, src/type1/t1driver.c,
+	src/type1/t1objs.c, src/type1/t1objs.h, src/type42/t42drivr.c,
+	src/type42/t42objs.c, src/type42/t42objs.h, src/winfonts/winfnt.c:
+	Update to new size selection interface.
+
+	* src/cff/cffdrivr.c, src/cff/cffgload.c, src/cff/cffobjs.c,
+	src/cff/cffobjs.h, src/truetype/ttdriver.c, src/truetype/ttgload.c,
+	src/truetype/ttobjs.c, src/truetype/ttobjs.h: Update to new size
+	selection interface.
+	Make `strike_index' FT_ULong and always defined.
+	Use `load_strike_metrics' provided by SFNT interface.
+
+2006-01-13  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/sfnt.h (SFNT_Interface): New method
+	`load_strike_metrics' used to load the strike's metrics.
+
+	* src/sfnt/sfdriver.c, src/sfnt/ttsbit.c, src/sfnt/ttsbit.h,
+	src/sfnt/ttsbit0.c: New function `tt_face_load_strike_metrics'.
+
+	* src/pfr/pfrobjs.c (pfr_face_init): Set FT_Bitmap_Size correctly.
+
+	* src/winfonts/winfnt.c (FNT_Face_Init): Use `nominal_point_size' for
+	nominal size unless it is obviously incorrect.
+
+	* include/freetype/freetype.h (FT_Bitmap_Size): Update the comments on
+	FNT driver.
+
+2006-01-12  Werner Lemberg  <wl at gnu.org>
+
+	Prepare use of pscmap service within CFF module.
+
+	* include/freetype/internal/services/svpscmap.h: Include
+	FT_INTERNAL_OBJECTS_H.
+	(PS_Unicode_Index_Func): Removed.  Unused.
+	(PS_Macintosh_Name_Func): Renamed to...
+	(PS_Macintosh_NameFunc): This.
+	Update all callers.
+	(PS_Adobe_Std_Strings_Func): Renamed to...
+	(PS_Adobe_Std_StringsFunc): This.
+	Update all callers.
+	(PS_UnicodesRec): This is the former `PS_Unicodes' structure.
+	Add `cmap' member.
+	Update all callers.
+	(PS_Unicodes): This is now a typedef'd pointer to PS_UnicodesRec.
+	Update all callers.
+	(PS_Glyph_NameFunc): New typedef.
+	(PS_Unicodes_InitFunc): Change arguments to expect a function
+	and generic data pointer which returns a glyph name from a given
+	index.
+
+	* src/psnames/psmodule.c (ps_unicodes_init, ps_unicodes_char_index,
+	ps_unicodes_char_next, pscmaps_interface): Updated.
+
+	* include/freetype/internal/t1types.h (T1_FaceRec): Updated.
+
+	* src/psaux/t1cmap.h (T1_CMapStdRec): Updated.
+	(T1_CMapUnicode, T1_CMapUnicodeRec): Removed.
+
+	* src/psaux/t1cmap.c (t1_get_glyph_name): New callback function.
+	(t1_cmap_unicode_init, t1_cmap_unicode_done,
+	t1_cmap_unicode_char_index, t1_cmap_unicode_char_next,
+	t1_cmap_unicode_class_rec): Updated.
+
+	* src/type42/t42types.h (T42_FaceRec): Updated.
+
+2006-01-11  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* include/freetype/ftmac.h: Add declaration of new functions
+	FT_New_Face_From_FSRef and FT_GetFile_From_Mac_ATS_Name that
+	were introduced by the jumbo patch on  2006-01-11.
+
+2006-01-11  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #15056 and use pscmap service in psaux module.
+
+	* include/freetype/internal/services/svpscmap.h (PS_UniMap): Use
+	FT_UInt32 for `glyph_index'.
+	(PS_Unicodes_InitFunc): Use FT_String for `glyph_names'.
+	(PS_Unicodes_CharIndexFunc): Use FT_UInt32 for `unicode'.
+	(PS_Unicodes_CharNextFunc): Make second argument a pointer to
+	FT_UInt32.
+
+	* src/psnames/psmodule.c (VARIANT_BIT, BASE_GLYPH): New macros.
+	(ps_unicode_value): Set VARIANT_BIT in return value if glyph is a
+	variant glyph (this is, it has non-leading `.' in its name).
+	(compare_uni_maps): Sort base glyphs before variant glyphs.
+	(ps_unicodes_init): Use FT_String for `glyph_names' argument.
+	Reallocate only if number of used entries is much smaller.
+	Updated to handle variant glyphs.
+	(ps_unicodes_char_index, ps_unicodes_char_next): Prefer base glyphs
+	over variant glyphs.
+	Simplify code.
+
+	* src/psaux/t1cmap.c (t1_cmap_uni_pair_compare): Removed.
+	(t1_cmap_unicode_init, t1_cmap_unicode_char_index,
+	t1_cmap_unicode_char_next): Use pscmap service.
+	(t1_cmap_unicode_done): Updated.
+
+	* src/psaux/t1cmap.h (T1_CMapUniPair): Removed.
+	(T1_CMapUnicode): Use PS_Unicodes structure.
+
+2006-01-11  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Jumbo patch to fix `deprecated' warning of cross-build for Tiger on
+	Intel, as reported by Sean McBride <sean at rogue-research.com> on
+	2005-08-24.
+
+	* src/base/ftmac.c: Heavy change to build without deprecated Carbon
+	functions on Tiger.
+
+	* builds/unix/configure.ac: Add options and autochecks for Carbon
+	functions availabilities, for MacOS X.
+
+	* builds/mac/ascii2mpw.py: Add converter for character `\305'.
+	* builds/mac/FreeType.m68k_{far|cfm}.make.txt: Add conditional
+	macros to avoid unavailable functions.
+	ftmac.c must be compiled without `-strict ansi', because it disables
+	cpp macro to use ToolBox system call.
+
+	* builds/mac/FreeType.ppc_{classic|carbon}.make.txt: Add conditional
+	macros to avoid unavailable functions.
+
+	* builds/mac/README: Detailed notes on function availabilities.
+
+	* docs/CHANGES: Notes about (possible) incompatibilities.
+
+2006-01-08  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2006-01-08  Huw D M Davies  <h.davies1 at physics.ox.ac.uk>
+
+	* include/freetype/ftmodapi.h (FT_Module_Get_Flags): New
+	declaration.
+
+	* src/base/ftobjs.c (FT_Module_Get_Flags): New function.
+
+2006-01-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/pcf/pcfread.c (pcf_get_bitmaps): Remove unused variable
+	`bitmaps'.  Reported by Yu Lei <yulei0 at gmail.com>.
+
+	* src/base/ftutil.c (ft_highpow2): s/FT_BASE/FT_BASE_DEF/.
+	Reported by Niels Boldt <nielsboldt at gmail.com>.
+
+2005-12-28  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/sfnt/sfnt/ttbdf.c: Add newline '\n' to the end of file, for
+	MPW compiler.
+
+2005-12-23  David Turner  <david at freetype.org>
+
+	* Jamfile (RefDoc), docs/reference/README: Fix it so that `jam
+	refdoc' works correctly to generate the API reference in
+	`docs/reference'.
+
+	* src/tools/docmaker/tohtml.py (print_html_field,
+	print_html_field_list): Update to output nicer fields lists in the
+	API reference.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): FT_LOAD_TARGET_LIGHT now
+	forces auto-hinting.
+
+	* freetype/freetype.h: Updating the documentation for
+	FT_LOAD_TARGET_XXX and FT_Render_Mode values.
+
+2005-12-23  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c (FT_New_Face_From_Suitcase): Count scalable faces
+	in supported formats (sfnt, LWFN) only, and ignore bitmap faces in
+	unsupported formats (fbit, NFNT).  The number of available faces are
+	passed via face->num_faces.  If bitmap faces are embedded in sfnt
+	resource, face->num_fixed_size is correctly set.  In public API,
+	FT_New_Face() and FT_New_Face_From_FSSpec() count the faces as
+	FT_GetFile_From_Mac_Name(), which ignores NFNT resources.
+
+	* doc/CHANGES: Mention the changes.
+
+2005-12-17  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttinterp.c (Update_Max): Set current size of buffer
+	correctly (so that memory debug system won't panic).
+
+2005-12-16  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/ftobjs.h (ft_glyphslot_grid_fit_metrics),
+	src/base/ftobjs.c (ft_glyphslot_grid_fit_metrics): Removed.
+
+	* src/base/ftobjs.c (ft_recompute_scaled_metrics): Do not round.
+
+	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
+	(cid_slot_load_glyph), src/truetype/ttgload.c (compute_glyph_metrics),
+	src/type1/t1gload.c (T1_Load_Glyph): Do not round glyph metrics.
+
+	* doc/CHANGES: Mention the changes.
+
+2005-12-13  David Turner  <david at freetype.org>
+
+	Change the implementation of the LIGHT hinting mode to completely
+	disable horizontal hinting.  This is an experimental effort to
+	integrate David Chester's latest patch without affecting the other
+	hinting modes as well.
+
+	Note that this doesn't force auto-hinting for all fonts, however.
+
+	* src/autofit/afhints.c (af_glyph_hints_reload): Don't set
+	scaler_flags here but...
+	(af_glyph_hints_rescale): Here.
+
+	* src/autofit/aflatin.c (af_latin_hints_init): Disable horizontal
+	hinting for `light' hinting mode.
+
+
+	* Jamfile: Small fix to ensure that ftexport.sym is placed into the
+	same location as other generated objects (i.e., within the `objs'
+	directory of the current directory).
+
+
+	Add support for an embedded `BDF ' table within SFNT-based bitmap
+	font files.  This is used to store atoms & properties from the
+	original BDF fonts that were used to generate the font file.
+
+	The feature is controlled by TT_CONFIG_OPTION_BDF within
+	`ftoption.h' and is used to implement FT_Get_BDF_Property for these
+	font files.
+
+	At the moment, this is still experimental, the BDF table format
+	isn't cast into stone yet.
+
+	* include/freetype/config/ftoption.h (TT_CONFIG_OPTION_BDF): New
+	macro.
+
+	* include/freetype/config/ftstdlib.h (ft_memchr): New macro.
+
+	* include/freetype/internal/tttypes.h (TT_BDFRec, TT_BDF)
+	[TT_CONFIG_OPTION_BDF]: New structure.
+	(TT_FaceRec) [TT_CONFIG_OPTION_BDF]: New member `bdf'.
+
+	* include/freetype/tttags.h (TTAG_BDF): New macro.
+
+	* src/sfnt/Jamfile (_sources): Add ttbdf.
+
+	* src/sfnt/rules.mk (SFNT_DRV_SRC): Add ttbdf.c.
+
+	* src/sfnt/sfdriver.c [TT_CONFIG_OPTION_BDF]: Include ttbdf.h and
+	FT_SERVICE_BDF_H.
+	(sfnt_get_charset_it) [TT_CONFIG_OPTION_BDF]: New function.
+	(sfnt_service_bdf) [TT_CONFIG_OPTION_BDF]: New service.
+	(sfnt_services) [TT_CONFIG_OPTION_BDF]: Add sfnt_service_bdf.
+
+	* src/sfnt/sfnt.c [TT_CONFIG_OPTION_BDF]: Include ttbdf.c.
+
+	* src/sfnt/sfobjs.c [TT_CONFIG_OPTION_BDF]: Include ttbdf.h.
+	(sfnt_done_face) [TT_CONFIG_OPTION_BDF]: Call
+	tt_face_free_bdf_props.
+
+	* src/sfnt/ttbdf.h, src/sfnt/ttbdf.c: New files.
+
+2005-12-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_init_face): Move tag check to...
+	* src/sfnt/ttload.c (sfnt_init): Here, before handling TTCs.
+
+2005-12-06  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttobjs.c (tt_size_init): size->ttmetrics.valid is
+	initialized twice.
+	size->strike_index is not initialized.
+
+2005-12-02  Taek Kwan(TK) Lee  <taeklee at gmail.com>
+
+	* src/type42/t42objs.c (T42_Face_Init): Replace call to
+	FT_New_Memory_Face with call to FT_Open_Face to pass `params'.
+
+2005-11-30  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Document ftdump's `-v' option.
+	Document latest charmap code changes.
+
+	* src/sfnt/ttcmap.c, src/sfnt/ttcmap.h:
+	s/TT_CMAP_FLAG_OVERLAPPED/TT_CMAP_FLAG_OVERLAPPING/.
+
+2005-11-30  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttcmap.c (tt_cmap4_char_map_binary,
+	tt_cmap12_char_map_binary): Fix compiler warnings.
+
+2005-11-29  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	Major update to distinguish between unsorted and overlapping
+	segments for cmap format 4.  For overlapping but sorted segments,
+	which is previously considered unsorted, we still use binary search.
+
+	* src/sfnt/ttcmap.h (TT_CMapRec_): Replace `unsorted' by `flags'.
+	(TT_CMAP_FLAG_UNSORTED, TT_CMAP_FLAG_OVERLAPPED): New macros.
+
+	* src/sfnt/ttcmap.c (OPT_CMAP4): Removed as it is always defined.
+	(TT_CMap4Rec_): Remove `old_charcode' and `table_length'.
+	(tt_cmap4_reset): Removed.
+	(tt_cmap4_init): Updated accordingly.
+	(tt_cmap4_next): Updated accordingly.
+	Take care of overlapping segments.
+	(tt_cmap4_validate): Make sure the subtable is large enough.
+	Do not check glyph_ids because some fonts set the length wrongly.
+	Also, if all segments have offset 0, glyph_ids is always invalid.
+	It does not cause any problem so far only because the check misses
+	equality.
+	Distinguish between unsorted and overlapping segments.
+	(tt_cmap4_char_map_linear, tt_cmap4_char_map_binary): New functions
+	to do `charcode => glyph index' by linear/binary search.
+	(tt_cmap4_char_index, tt_cmap4_char_next): Use
+	tt_cmap4_char_map_linear and tt_cmap4_char_map_binary.
+	(tt_face_build_cmaps): Treat the return value of validator as flags
+	for cmap.
+
+2005-11-29  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttcmap.c (TT_CMap12Rec_, tt_cmap12_init, tt_cmap12_next):
+	New structures and functions for fast `next char'.
+	(tt_cmap12_char_map_binary): New function to do `charcode => glyph
+	index' by binary search.
+	(tt_cmap12_char_index, tt_cmap12_char_next): Use
+	tt_cmap12_char_map_binary.
+	(tt_face_build_cmaps): Check table and offset correctly (equality is
+	missing).
+
+2005-11-15  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/smakefile: Adjusted the compiler options
+	to the current sources, now really builds the gxvalid, gzip
+	and psnames modules.
+
+	* builds/amiga/src/base/ftsystem.c: The assumed Seek() position
+	in the file cache was off by one byte which could cause false
+	errors in font files.
+
+2005-11-24  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/mac/FreeType.m68k_far.make.txt,
+	builds/mac/FreeType.m68k_cfm.make.txt,
+	builds/mac/FreeType.ppc_classic.make.txt,
+	builds/mac/FreeType.ppc_carbon.make.txt:
+	Updated for MPW to build all available modules.
+
+2005-11-21  Håvard Wall  <haavardw at ifi.uio.no>
+
+	* src/bdf/bdfdrivr.c (bdf_interpret_style, BDF_Face_Done): Fix small
+	memory leak.
+
+2005-11-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (sfnt_init): Add tracing message.
+
+2005-11-21  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Image_offset was
+	added twice to image_start if image_format was 2 or 5.
+
+2005-11-21  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/sfobjs.c (sfnt_init_face): Check that format_tag is known
+	before loading the table directory.
+
+	* src/sfnt/ttload.c (tt_face_load_sfnt_header,
+	tt_face_load_directory): Delay sfnt_dir_check from
+	tt_face_load_sfnt_header to tt_face_load_directory.
+
+2005-11-20  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttload.c (sfnt_dir_check): Clean up and return correct
+	error code.
+	(sfnt_init): New function to fill in face->ttc_header.  A non-TTC font
+	is synthesized into a TTC font with one offset table.
+	(tt_face_load_sfnt_header): Use sfnt_init.
+	Fix an invalid access if the font is TTC and face_index is -1.
+
+2005-11-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (tt_face_load_metrics): Ignore excess number
+	of metrics instead of aborting.  Patch suggested by Derek Noonburg.
+
+	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
+	(cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Scale
+	the glyph properly if no hinter is available.
+
+	* docs/CHANGES: Mention scaling bug.
+
+2005-11-18  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* include/freetype/ftgxval.h, src/base/ftgxval.c
+	(FT_TrueTypeGX_Free, FT_ClassicKern_Free): New functions to free
+	buffers allocated by gxvalid module.
+	* include/freetype/ftotval.h, src/base/ftotval.c
+	(FT_OpenType_Free): New function to free buffer allocated by
+	otvalid module.
+
+2005-11-18  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* builds/unix/ftsystem.c (FT_Stream_Open, FT_New_Memory,
+	FT_Done_Memory), builds/vms/ftsystem.c (FT_Stream_Open, FT_New_Memory,
+	FT_Done_Memory), builds/win32/ftdebug.c (FT_Message, FT_Panic):
+	s/FT_EXPORT/FT_BASE/.
+
+2005-11-17  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/src/base/ftdebug.c (FT_Trace_Get_Count,
+	FT_Trace_Get_Name, FT_Message, FT_Panic),
+	builds/amiga/src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory,
+	FT_Stream_Open): s/FT_EXPORT/FT_BASE/.
+
+2005-11-17  Detlef Würkner  <TetiSoft at apg.lahn.de>
+
+	* builds/amiga/makefile, builds/amiga/makefile.os4,
+	builds/amiga/smakefile,
+	builds/amiga/include/freetype/config/ftmodule.h: Updated the Amiga
+	build files (added support for the gxvalid module).
+
+2005-11-17  Werner Lemberg  <wl at gnu.org>
+
+	Add vertical metrics support to OpenType CFF outlines.  Based on a
+	patch from Mike Moening <MikeM at RetekSolutions.com>.
+
+	* src/cff/cffgload.c (cff_face_get_vertical_metrics): New function.
+	(cff_slot_load): Use cff_face_get_vertical_metrics.
+
+	* docs/CHANGES: Updated.
+
+2005-11-17  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftcalc.c (FT_MulTo64): Commented out.
+
+	* include/freetype/internal/ftcalc.h (FT_SqrtFixed),
+	src/base/ftcalc.c (FT_SqrtFixed),
+	include/freetype/internal/ftdebug.h (FT_Trace_Get_Count,
+	FT_Trace_Get_Name, FT_Message, FT_Panic), src/base/ftdebug.c
+	(FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic),
+	include/freetype/internal/ftobjs.h (FT_New_Memory, FT_Done_Memory),
+	include/freetype/internal/ftstream.h (FT_Stream_Open),
+	src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory, FT_Stream_Open):
+	s/FT_EXPORT/FT_BASE/.
+
+	* builds/exports.mk: Manually add TT_New_Context to EXPORTS_LIST
+	too.
+
+2005-11-15  David Turner  <david at freetype.org>
+
+	* src/base/fttrigon.c (ft_trig_prenorm): Fix a bug that created
+	invalid computations, resulting in very weird bugs in TrueType
+	bytecode hinted fonts.
+
+	* src/truetype/ttinterp.c (FT_UNUSED_EXEC): Don't perform a
+	structure copy each time.
+
+2005-11-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/cache/ftccache.c (FTC_Cache_Clear), src/cache/ftcmanag.c
+	(FTC_Manager_Check): Remove FT_EXPORT_DEF tag.
+
+	* src/base/ftcalc.c (FT_Add64): Remove FT_EXPORT_DEF tag.
+	(FT_Div64by32, FT_Sqrt32): Commented out.  Unused.
+
+	* include/freetype/internal/ftcalc.h (SQRT_32): Removed.  Unused.
+	(FT_Sqrt32): Commented out.  Unused.
+
+	* include/freetype/cache/ftccache.h:
+	s/ftc_node_destroy/FTC_Node_Destroy/.
+
+	* src/cache/ftccback.h (ftc_node_destroy): New declaration.
+
+	* src/cache/ftccache.c (ftc_node_destroy): Use FT_LOCAL_DEF tag.
+	(FTC_Node_Destroy): New exported wrapper function for
+	ftc_node_destroy.
+
+	* src/cache/ftcmanag.c: Include ftccback.c.
+
+2005-11-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/afangles.c, src/autofit/aftypes.h (af_angle_diff):
+	Comment out.  Unused.
+
+	* builds/exports.mk ($(EXPORTS_LIST)): Add TT_RunIns.
+
+2005-11-10  Christian Biesinger  <cbiesinger at web.de>
+
+	* builds/beos/beos.mk: Call beos-def.mk before anything else to
+	define the separator.
+
+	* builds/unix/unix-cc.in (LINK_LIBRARY): Add `-no-undefined' flag.
+
+2005-11-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1afm.c (T1_Read_PFM): Zero offset means `no kerning
+	table available'.  From Sergey Tolstov <stolstov at esri.com>.
+
+2005-11-03  Ville Syrjälä  <syrjala at sci.fi>
+
+	* src/base/ftobjs.c (FT_Open_Face): Avoid possible memory leak.
+
+2005-11-02  Werner Lemberg  <wl at gnu.org>
+
+	Make compiling instructions in docs/CUSTOMIZE work again.
+
+	* builds/unix/unix-cc.in (CPPFLAGS): New variable.
+	(CFLAGS): Don't include @CPPFLAGS at .
+	* builds/freetype.mk (FT_CFLAGS): Add CPPFLAGS.
+
+2005-10-28  David Turner  <david at freetype.org>
+
+	Update build system to support the generation of a list of exported
+	symbols or Windows .DEF files by parsing the public headers with the
+	`apinames' tool located in src/tools/apinames.c.
+
+	Only tested on Unix at the moment.  On Windows, the .DEF file is
+	generated but isn't used yet to generate a DLL.
+
+	* builds/exports.mk: New file.
+
+	* builds/freetype.mk: Include exports.mk.
+	(dll): New target.
+	(clean_project_dos): Fix rule.
+
+	* builds/compiler/visualc.mk (TE), builds/dos/dos-def.mk (E),
+	builds/os2/os2-def.mk (E), builds/win32/win32-def.mk (E): New
+	variables for controlling executable extensions.
+
+	* builds/unix/unix-cc.in (EXPORTS_LIST, CCexe),
+	builds/win32/w32-bcc.mk, builds/win32/w32-gcc.mk,
+	builds/win32/w32-icc.mk, builds/win32/w32-icc.mk,
+	builds/win32/w32-mingw32.mk, builds/win32/w32-vcc,
+	builds/win32/w32-wat.mk (EXPORTS_LIST, EXPORT_OPTIONS,
+	APINAMES_OPTIONS): New targets for controlling the `apinames' tool.
+
+	* Jamfile (GenExportSymbols): Updated.
+
+
+	* src/pfr/pfrtypes.h, src/pfr/pfrload.c, src/pfr/pfrobjs.c
+	[!FT_OPTIMIZE_MEMORY]: Fold memory optimization code into
+	FT_OPTIMIZE_MEMORY chunks for better maintainability and simplicity.
+
+
+	* src/base/fttrigon.c (ft_trig_prenorm), src/base/ftcalc.c
+	(FT_MulFix): Performance optimizations.
+
+
+	* include/freetype/internal/ftgloadr.h (FT_GLYPHLOADER_CHECK_P,
+	FT_GLYPHLOADER_CHECK_C, FT_GLYPHLOADER_CHECK_POINTS): New macros for
+	checking points and contours.  Update callers to use
+	FT_GLYPHLOADER_CHECK_POINTS instead of FT_GlyphLoader_CheckPoints
+	at profile-detected hot-spots.
+
+	* src/base/ftgloadr.c (FT_GlyphLoader_CheckPoints): Set `adjust'
+	to 0 to not call `AdjustPoints' every time.
+
+
+	* src/autofit/aftypes.h (AF_ANGLE_DIFF): New macro to inline
+	FT_Angle_Diff.
+
+	* src/autofit/afhints.c (af_direction_compute): Re-implement.
+	(af_glyph_hints_compute_inflections, af_glyph_hints_reload): Use
+	AF_ANGLE_DIFF to speed up the detection of inflexions.
+
+
+	* src/tools/apinames.c: Include <string.h>.
+	(OutputFormat): New enumeration.
+	(names_dump): Add two parameters to control output format and DLL
+	name.
+	(names_dump_windef): Removed.  Code folded into `names_dump'.
+	(read_header_file): Use isalnum, not isalpha.  Otherwise function
+	names with digits aren't read correctly.
+	(usage): Updated.
+	(main): New option `-o' to control output file name.
+	New option `-d' to indicate DLL file name.
+	Extend `-w' flag to handle Borland and Watcom compilers and linkers.
+
+2005-10-28  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/mac/ftlib.prj, builds/mac/freetype.mak: Removed.
+	ftlib.prj is unmaintained and incompatible with current tree.
+	freetype.mak is unrecoverably broken.
+
+	* builds/mac/ftlib.prj.xml: Added.
+	Generated by Metrowerks CodeWarrior 9.0.
+
+	* builds/mac/FreeType.m68k_far.make.txt,
+	builds/mac/FreeType.m68k_cfm.make.txt,
+	builds/mac/FreeType.ppc_classic.make.txt,
+	builds/mac/FreeType.ppc_carbon.make.txt: Added.
+	Skeleton files of MPW makefiles.
+
+	* builds/mac/ascii2mpw.py: Added.
+	Python script to make MPW makefile from skeleton.
+
+	* builds/mac/README: Updated.
+	Almost rewritten to use new files.
+
+2005-10-28  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c: Fix invalid casts from NULL to integer typed
+	variables.  Advised by David Turner, Masatake YAMATO, Sean McBride,
+	and George Williams.
+
+2005-10-27  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftsysmem.h, include/freetype/ftsysio.h: Removed.
+	Obsolete.
+
+2005-10-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfdriver.c (sfnt_interface): Move out
+	`tt_face_get_kerning' from a #ifdef clause.  Reported by Tony J.
+	Ibbs <tibs at sj.co.uk>.
+
+2005-10-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftdbgmem.c (ft_mem_debug_realloc): Make it compile with
+	C++.
+
+2005-10-21  David Turner  <david at freetype.org>
+
+	* src/base/ftdbgmem.c (ft_mem_table_set, ft_mem_debug_realloc):
+	Another realloc memory counting bug fix.
+
+	* src/tools/Jamfile: Add missing file.
+
+	* src/lzw/Jamfile: Fix incorrect source file reference.
+
+2005-10-20  David Turner  <david at freetype.org>
+
+	* src/base/ftdbgmem.c (ft_mem_table_set, ft_mem_table_remove,
+	ft_mem_debug_alloc, ft_mem_debug_free, ft_mem_debug_realloc): Fixes
+	to better account for memory reallocations.
+
+	* src/lzw/ftlzw2.c, src/lzw/ftzopen.h, src/lzw/ftzopen.c,
+	src/lzw/rules.mk: First version of LZW loader re-implementation.
+	Apparently, this saves about 330 KB of heap memory when loading
+	timR24.pcf.Z.
+
+2005-10-20  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/ftbitmap.h (FT_Bitmap_Copy, FT_Bitmap_Embolden),
+	src/base/ftbdf.c (FT_Get_BDF_Property), src/cache/ftcmru.c
+	(FTC_MruList_Reset, FTC_MruList_Done, FTC_MruList_Lookup): Fix
+	FT_EXPORT/FT_EXPORT_DEF tagging.
+
+2005-10-19  Chia-I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttgload.c (TT_Load_Glyph): Allow size->ttmetrics to
+	be invalid when FT_LOAD_NO_SCALE is set.
+
+2005-10-17  David Turner  <david at freetype.org>
+
+	* src/base/ftobjs.c (FT_Open_Face): Don't call FT_New_GlyphSlot and
+	FT_New_Size if we are opening a face with face_index < 0 (which is
+	only used for testing the format).
+
+	* src/gxvalid/gxvmort0.c (gxv_mort_subtable_type0_entry_validate):
+	Remove compiler warning.
+
+2005-10-16  David Turner  <david at freetype.org>
+
+	* src/tools/apinames.c: Add new tool to extract public API function
+	names from header files.
+
+2005-10-05  Werner Lemberg  <wl at gnu.org>
+
+	Add FT_FACE_FLAG_HINTER to indicate that a specific font driver has
+	a hinting engine of its own.
+
+	* include/freetype/freetype.h (FT_FACE_FLAG_HINTER): New macro.
+
+	* src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c
+	(cid_face_init), src/truetype/ttobjs.c (tt_face_init)
+	[TT_CONFIG_OPTION_BYTECODE_INTERPRETER], src/type1/t1objs.c
+	(T1_Face_Init), src/type42/t42objs.c (T42_Face_Init)
+	[TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Update face flags.
+
+	* docs/CHANGES: Document it.
+
+2005-09-27  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype2.m4: Add license exception so that the file
+	can be used in any other autoconf script.
+
+2005-09-26  David Turner  <david at freetype.org>
+
+	* src/autofit/aflatin.c (af_latin_compute_stem_width): Fix bad
+	computation of the `vertical' flag, causing ugly things in LCD mode
+	and others.
+
+2005-09-23  David Turner  <david at freetype.org>
+
+	* src/autofit/aflatin.c (af_latin_hints_init): Fix a bug that
+	prevented internal hint mode bitflags from being computed correctly.
+
+	* src/base/Jamfile: Adding src/base/ftgxval.c.
+
+	* src/gxvalid/gxvbsln.c, src/gxvalid/gxvcommn.c,
+	src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, src/gxvalid/gxvkern.c,
+	src/gxvalid/gxvlcar.c, src/gxvalid/gxvmort.c,
+	src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c,
+	src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c,
+	src/gxvalid/gxvmort5.c, src/gxvalid/gxvmorx.c,
+	src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c,
+	src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx5.c,
+	src/gxvalid/gxvopbd.c, src/gxvalid/gxvprop.c,
+	src/truetype/ttgload.c: Remove _many_ compiler warnings when
+	compiling with Visual C++ at maximum level (/W4).
+
+	* src/autofit/afangles.c (af_angle_atan): Replaced CORDIC-based
+	implementation with one using lookup tables.  This simple thing
+	speeds up glyph loading by 18%, according to ftbench!
+
+	* src/sfnt/sfdriver.c (sfnt_get_interface): Don't check for
+	`get_sfnt' and `load_sfnt' module interfaces.
+
+2005-09-22  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Mention SING Glyphlet support.
+
+2005-09-22  David Turner  <david at freetype.org>
+
+	* src/base/Jamfile: Disable compilation of ftgxval module
+	temporarily.
+
+2005-09-19  David Somers  <dsomers at omz13.com>
+
+	* src/sfnt/ttload.c (sfnt_dir_check): Modified to allow a
+	font to have no `head' table if tables `SING' and `META' are
+	present; this is to support `SING Glyphlet'.
+
+	`SING Glyphlet' is an extension to OpenType developed by Adobe
+	primarily to facilitate adding supplemental glyphs to an OpenType
+	font (with emphasis on, but not necessarily limited to, gaiji to a
+	CJK font).  A SING Glyphlet Font is an OpenType font that contains
+	the outline(s), either in a `glyf' or `CFF' table, for a glyph;
+	`cmap', `BASE', and `GSUB' tables are present with the same format
+	and functionality as a regular OpenType font; there are no `name',
+	`head', `OS/2', and `post' tables; there are two new tables, `SING'
+	which contains details about the glyphlet, and `META' which contains
+	metadata.
+
+	Further information on the SING Glyphlet format can be found at:
+
+	  https://www.adobe.com/content/dam/acom/en/devnet/font/pdfs/5148.SING_Tutorial.pdf
+
+	* include/freetype/tttags.h (TTAG_SING, TTAG_META): New macros for
+	the OpenType tables `SING' and `META'.  These two tables are used in
+	SING Glyphlet Format fonts.
+
+2005-09-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Reactivate code to set
+	FT_FACE_FLAG_KERNING which has been commented out erroneously.
+
+	* docs/CHANGES: Document it.
+
+2005-09-05  Werner Lemberg  <wl at gnu.org>
+
+	Fixes for `make multi' and using C++ compiler.
+
+	* src/gxvalid/gxvcommn.c (gxv_set_length_by_ushort_offset,
+	gxv_set_length_by_ulong_offset, gxv_array_getlimits_byte,
+	gxv_array_getlimits_ushort): Declare with FT_LOCAL_DEF.
+	(gxv_compare_ranges): Make it static.
+	(gxv_LookupTable_fmt0_validate, gxv_LookupTable_fmt2_validate,
+	gxv_LookupTable_fmt4_validate, gxv_LookupTable_fmt6_validate,
+	gxv_LookupTable_fmt8_validate, gxv_LookupTable_validate): Improve
+	trace messages.
+	(gxv_StateArray_validate, gxv_XStateArray_validate): s/class/clazz/.
+	(GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE,
+	GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Move to
+	gxvcommn.h.
+
+	* src/gxvalid/gxvcommn.h: Add prototypes for
+	gxv_StateTable_subtable_setup, gxv_XStateTable_subtable_setup,
+	gxv_XStateTable_validate, gxv_array_getlimits_byte,
+	gxv_array_getlimits_ushort, gxv_set_length_by_ushort_offset,
+	gxv_set_length_by_ulong_offset, gxv_odtect_add_range,
+	gxv_odtect_validate.
+	(GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE,
+	GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Moved from
+	gxvcommn.c.
+
+	* src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate,
+	gxv_bsln_parts_fmt1_validate): Improve trace messages.
+
+	* src/gxvalid/gxvfeat.c: Split off predefined registry stuff to...
+	* src/gxvalid/gxvfeat.h: New file.
+
+	* src/gxvalid/gxvjust.c (gxv_just_wdc_entry_validate): Improve trace
+	message.
+
+	* src/gxvalid/gxvkern.c (GXV_kern_Dialect): Add KERN_DIALECT_UNKNOWN.
+	(gxv_kern_subtable_fmt1_valueTable_load,
+	gxv_kern_subtable_fmt1_subtable_setup,
+	gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors.
+	(gxv_kern_coverage_validate): Use KERN_DIALECT_UNKNOWN.
+	Improve trace message.
+	(gxv_kern_validate_generic): Fix C++ compiler error.
+	Improve trace message.
+	(gxv_kern_validate_classic): Fix C++ compiler error.
+
+	* src/gxvalid/gxvmort0.c (gxv_mort_subtable_type0_validate): Declare
+	with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmort1.c
+	(gxv_mort_subtable_type1_substitutionTable_load,
+	gxv_mort_subtable_type1_subtable_setup): Fix C++ compiler errors.
+	(gxv_mort_subtable_type1_substTable_validate): Improve trace
+	message.
+	(gxv_mort_subtable_type1_validate): Declare with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmort2.c (gxv_mort_subtable_type2_opttable_load,
+	gxv_mort_subtable_type2_subtable_setup,
+	gxv_mort_subtable_type2_ligActionOffset_validate,
+	gxv_mort_subtable_type2_ligatureTable_validate): Fix C++ compiler
+	errors.
+	(gxv_mort_subtable_type2_validate): Declare with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmort4.c (gxv_mort_subtable_type4_validate): Declare
+	with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmort5.c (gxv_mort_subtable_type5_subtable_setup,
+	gxv_mort_subtable_type5_InsertList_validate): Fix C++ compiler
+	errors.
+	(gxv_mort_subtable_type5_validate): Declare with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmort.c: Include gxvfeat.h.
+	(gxv_mort_featurearray_validate, gxv_mort_coverage_validate):
+	Declare with FT_LOCAL_DEF.
+	(gxv_mort_subtables_validate, gxv_mort_validate): Improve trace
+	messages.
+
+	* src/gxvalid/gxvmort.h (gxv_mort_feature_validate): Remove.
+
+	* src/gxvalid/gxvmorx0.c (gxv_morx_subtable_type0_validate): Declare
+	with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmorx1.c
+	(gxv_morx_subtable_type1_substitutionTable_load,
+	gxv_morx_subtable_type1_subtable_setup,
+	gxv_morx_subtable_type1_entry_validate,
+	gxv_morx_subtable_type1_substitutionTable_validate): Fix C++
+	compiler errors.
+	(gxv_morx_subtable_type1_validate): Declare with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmorx2.c (gxv_morx_subtable_type2_opttable_load,
+	gxv_morx_subtable_type2_subtable_setup,
+	gxv_morx_subtable_type2_ligActionIndex_validate,
+	gxv_morx_subtable_type2_ligatureTable_validate): Fix C++ compiler
+	errors.
+	(gxv_morx_subtable_type2_validate): Declare with FT_LOCAL_DEF.
+	Fix typo.
+
+	* src/gxvalid/gxvmorx4.c (gxv_morx_subtable_type4_validate): Declare
+	with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmorx5.c (gxv_morx_subtable_type5_insertionGlyph_load,
+	gxv_morx_subtable_type5_subtable_setup): Fix C++ compiler error.
+	(gxv_morx_subtable_type5_validate): Declare with FT_LOCAL_DEF.
+
+	* src/gxvalid/gxvmorx.c (gxv_morx_subtables_validate,
+	gxv_morx_validate): Improve trace message.
+
+	* src/gxvalid/gxvopbd.c (gxv_opbd_LookupFmt4_transit): Fix compiler
+	warnings.
+	(gxv_opbd_validate): Improve trace message.
+
+	* src/gxvalid/gxvprop.c: Decorate constants with `U' and `L' where
+	appropriate.
+	(gxv_prop_zero_advance_validate, gxv_prop_validate): Improve trace
+	message.
+
+	* src/gxvalid/gxvtrak.c (gxv_trak_trackTable_validate): Remove unused
+	parameter.  Update all callers.
+	(gxv_trak_validate): Improve trace message.
+
+	* rules.mk (GXV_DRV_H): Add gxvfeat.h.
+
+2005-09-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/gxvalid/gxvbsln.c (GXV_BSLN_VALUE_EMPTY): Add `U'.
+
+	* src/gxvalid/gxvmort1.c (GXV_MORT_SUBTABLE_TYPE1_HEADER_SIZE),
+	src/gxvalid/gxvmort2.c (GXV_MORT_SUBTABLE_TYPE2_HEADER_SIZE): Fix
+	typo.
+
+	* src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c,
+	src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx4.c,
+	src/gxvalid/gxvmorx5.c, src/gxvalid/gxvmort.c: Improve trace
+	messages.
+	Decorate constants with `U' and `L' where appropriate.
+	Fix compiler warnings.
+
+2005-08-31  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix typo.
+
+	* src/gxvalid/gxvbsln.c (gxv_bsln_validate): Fix trace message.
+
+	* src/gxvalid/gxvcommn.c (gxv_odtect_add_range): Use `const'.
+
+	* src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c,
+	src/gxvalid/gxvkern.c, src/gxvalid/gxvlcar.c, src/gxvalid/gxvmod.c,
+	src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c,
+	src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c,
+	src/gxvalid/gxvmort5.c, src/gxvalid/gxvmort.c: Improve trace
+	messages.
+	Decorate constants with `U' and `L' where appropriate.
+	Fix compiler warnings.
+
+2005-08-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/gxvalid/README: Revised.
+	* src/gxvalid/gxvbsln.c: Fix compiler warnings.
+	* src/gxvalid/gxvcommn.c: Fix compiler warnings.
+	(gxv_XEntryTable_validate, gxv_compare_ranges): Remove unused
+	parameter.  Update all callers.
+	Improve trace messages.
+	Some formatting.
+
+2005-08-29  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h, include/freetype/ftchapters.h: Add
+	a preliminary section with some explanations about user allocation.
+
+	* src/tools/docmaker/tohtml.py (HtmlFormatter.section_enter):
+	Don't abort if there are no data types, functions, etc., in a
+	section.
+	Print synopsis only if we have a data type, function, etc.
+
+	* docs/INSTALL.ANY, docs/INSTALL, docs/INSTALL.UNX, docs/CUSTOMIZE,
+	docs/INSTALL.GNU, docs/TRUETYPE, docs/DEBUG, docs/UPGRADE.UNX,
+	docs/VERSION.DLL, docs/formats.txt: Revised, formatted.
+
+2005-08-28  George Williams  <gww at silcom.com>
+
+	* src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed.
+	(load_truetype_glyph): Limit recursion depth by `maxComponentDepth'.
+
+2005-08-25  J. Ali Harlow  <ali at avrc.city.ac.uk>
+
+	* builds/unix/freetype2.in (CFlags): Add missing directory.
+
+2005-08-24  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Mention gxvalid module.
+
+2005-08-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/aflatin.c (af_latin_metrics_scale): Initialize
+	render mode properly.  Reported by chris at dokein.co.uk.
+
+2005-08-23  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Add gxvalid module to validate TrueType GX/AAT tables.
+
+	Modifications on existing files:
+
+	* Jamfile: Register gxvalid module.
+	* src/base/Jamfile: Register ftgxval.c.
+	* src/base/rule.mk: Register ftgxval.c.
+	* docs/INSTALL.ANY: Register gxvalid/gxvalid.c.
+
+	* include/freetype/config/ftheader.h (FT_GX_VALIDATE_H): New macro
+	to include gxvalid header file.
+	* include/freetype/config/ftmodule.h: Register gxv_module_class.
+
+	* include/freetype/ftchapters.h: Add comment about gx_validation.
+	* include/freetype/ftotval.h: Change keyword FT_VALIDATE_XXX
+	to FT_VALIDATE_OTXXX to co-exist with gxvalid.
+	* include/freetype/tttags.h: Add tags for TrueType GX/AAT tables.
+
+	* include/freetype/internal/ftserv.h (FT_SERVICE_GX_VALIDATE_H): New
+	macro for gxvalid service.
+	* include/freetype/internal/fttrace.h: Add trace facilities for
+	gxvalid.
+
+	New files on existing directories:
+
+	* include/freetype/internal/services/svgxval.h: Registration of
+	validation service for TrueType GX/AAT and classic kern table.
+	* include/freetype/ftgxval.h: Public API definition to use gxvalid.
+	* src/base/ftgxval.c: Public API of gxvalid.
+
+	New files under src/gxvalid/:
+
+	* src/gxvalid/Jamfile src/gxvalid/README src/gxvalid/module.mk
+	src/gxvalid/rules.mk src/gxvalid/gxvalid.c src/gxvalid/gxvalid.h
+	src/gxvalid/gxvbsln.c src/gxvalid/gxvcommn.c src/gxvalid/gxvcommn.h
+	src/gxvalid/gxverror.h src/gxvalid/gxvfeat.c src/gxvalid/gxvfgen.c
+	src/gxvalid/gxvjust.c src/gxvalid/gxvkern.c src/gxvalid/gxvlcar.c
+	src/gxvalid/gxvmod.c src/gxvalid/gxvmod.h src/gxvalid/gxvmort.c
+	src/gxvalid/gxvmort.h src/gxvalid/gxvmort0.c src/gxvalid/gxvmort1.c
+	src/gxvalid/gxvmort2.c src/gxvalid/gxvmort4.c src/gxvalid/gxvmort5.c
+	src/gxvalid/gxvmorx.c src/gxvalid/gxvmorx.h src/gxvalid/gxvmorx0.c
+	src/gxvalid/gxvmorx1.c src/gxvalid/gxvmorx2.c src/gxvalid/gxvmorx4.c
+	src/gxvalid/gxvmorx5.c src/gxvalid/gxvopbd.c src/gxvalid/gxvprop.c
+	src/gxvalid/gxvtrak.c: New files, gxvalid body.
+
+2005-08-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (TT_Load_Glyph): Only translate outline
+	to (0,0) if bit 1 of the `head' table isn't set.  This improves
+	rendering of buggy fonts.
+
+2005-08-20  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttdriver.c (Load_Glyph): Don't check the validity of
+	ttmetrics here.  TrueType fonts with only sbits always have
+	ttmetrics.valid set to false.
+
+	* src/truetype/ttgload.c (TT_Load_Glyph): Check that ttmetrics is
+	valid before loading outline glyph.
+
+	* src/cache/ftcimage.c (FTC_INode_New): Fix a memory leak.
+
+2005-08-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/ttload.c (tt_face_load_metrics_header): Ignore missing
+	`hhea' table for SFNT Mac fonts.  Change based on a patch by
+	mpsuzuki at hiroshima-u.ac.jp.
+
+2005-08-20  Masatake YAMATO  <jet at gyve.org>
+
+	* src/otvalid/otvmod.c (otv_validate): Use ft_validator_run instead
+	of ft_setjmp.
+
+2005-08-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix compiler
+	warnings.
+
+2005-08-16  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttinterp.c, src/truetype/ttinterp.h: Update copyright
+	messages.
+
+2005-08-16  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original
+	TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context
+	with slight changes.
+	Update all callers.
+	(TT_New_Context): Now takes TT_Driver argument directly.
+	Update all callers.
+
+	* src/truetype/ttobjs.h (tt_slot_init): New function.
+	* src/truetype/ttobjs.c (tt_driver_init): Initialize execution
+	context here.
+	(tt_slot_init): New function to create extra points for the internal
+	glyph loader.  We then use it directly, instead of face's glyph
+	loader, when loading glyph.
+
+	* src/truetype/ttdriver.c (tt_driver_class): Use tt_slot_init for
+	glyph slot initialization.
+	(Load_Glyph): Load flag dependencies are handled here.  Return error
+	if size is NULL.
+
+	* src/truetype/ttgload.c: Heavy cleanup and refactoring.
+	(org_to_cur): Removed.
+	(TT_Load_Simple_Glyph): Call FT_GlyphLoader_CheckPoints.
+	(TT_Hint_Glyph): New function to hint a zone, prepared by caller.
+	(TT_Process_Simple_Glyph): s/load/loader/.
+	Use loader->pp values instead of recalculation.
+	Use TT_Hint_Glyph.
+	No need to save/restore loader->stream before and after
+	TT_Vary_Get_Glyph_Deltas now.
+	(TT_LOADER_SET_PP): New macro to calculate and set the four phantom
+	points.
+	(load_truetype_glyph): Never set exec->glyphSize to 0.  This closes
+	Savannah bug #13107.
+	Forget glyph frame before calling TT_Process_Simple_Glyph.
+	Use TT_LOADER_SET_PP.
+	Scale all four phantom points.
+	Split off some functionality to ...
+	(TT_Process_Composite_Component, TT_Process_Composite_Glyph): These
+	new functions.
+	(TT_Load_Glyph): Set various fields of `glyph' here, not in
+	load_truetype_glyph and compute_glyph_metrics.
+	Split off some functionality to ...
+	(load_sbit_image, tt_loader_init): These new functions.
+	(compute_glyph_metrics): Call FT_Outline_Get_CBox.
+
+2005-08-08  Werner Lemberg  <wl at gnu.org>
+
+	* docs/INSTALL.ANY: Updated.
+
+2005-08-05  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_builder_close_contour),
+	src/psaux/psobjs.c (t1_builder_close_contour): Protect against
+	zero `outline' pointer.
+
+	* src/base/ftgloadr.c (FT_GlyphLoader_Add): Protect against zero
+	`loader' address.
+
+2005-08-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfdriver.c (sfnt_interface) [FT_OPTIMIZE_MEMORY]:
+	Reactivate pointers to tt_find_sbit_image and tt_load_sbit_metrics
+	to make X work again.
+
+2005-08-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/otvcommn.h: Remove dead code.
+
+2005-07-31  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New
+	functions.
+
+	* src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New
+	functions.
+	(tt_size_init): Add 4, instead of 2, (phantom) points to twilight
+	zone.
+	Move code that runs fpgm to tt_size_run_fpgm.
+	(Reset_Outline_Size): Move code that runs prep to tt_size_run_prep.
+	(tt_glyphzone_new): Allocate right size of arrays.
+	Set max_points and max_contours properly.
+
+2005-07-26  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/truetype/ttdriver.c (Set_Char_Sizes): Avoid unnecessary
+	computations and clean up.
+
+	* src/truetype/ttobjs.h (struct TT_SizeRec_): Comment on the
+	internal copy of metrics.
+
+2005-07-12  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftoutln.h (FT_Outline_Embolden): Fix prototype.
+	Reported by Xerxes.
+
+2005-07-04  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/ftmemory.h (FT_REALLOC_ARRAY): Fix typo.
+	Reported by Brett Hutley.
+
+2005-06-30  David Turner  <david at freetype.org>
+
+	* src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c:
+	Removing compiler warnings (Visual C++ /W4).
+
+
+	Implement a work-around for broken C preprocessor in Visual C++ (it
+	has been confirmed by the MS developers that it is indeed a bug
+	which won't be fixed in the very near future).
+
+	* Jamfile (FT2_COMPONENTS): Include otvalid (again).
+
+	* src/otvalid/otvcommn.h (OTV_NAME, OTV_FUNC): New macros.
+	(OTV_NEST1, OTV_NEST2, OTV_NEST3): Use OTV_NAME and OTV_FUNC to
+	avoid argument expansion by argument prescan.
+	Append `Func' to all affected macros and change them to take just a
+	single argument.  Example: `AttachList' is renamed to
+	`AttachListFunc'.
+
+	* src/otvalid/otvgdef.c, src/otvalid/otvgpos.c,
+	src/otvalid/otvgsub.c, src/otvjstf.c: Append `Func' to macros
+	affected by the changes to OTV_NESTx and modify them to take just a
+	single argument.
+
+2005-06-20  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* include/freetype/internal/ftobjs.h, src/base/ftobjs.c: New function
+	ft_glyphslot_grid_fit_metrics.
+
+	* src/truetype/ttgload.c (compute_glyph_metrics): Use
+	ft_glyphslot_grid_fit_metrics.
+
+	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
+	(cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Use
+	ft_glyphslot_grid_fit_metrics.
+	FT_Outline_Get_CBox is called twice.
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Modify metrics to more
+	reasonable values when emboldening outline glyphs.  The theoretic
+	ones are unrealistic.
+
+2005-06-16  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/base/ftoutln.c (FT_Outline_Embolden): Strength should be
+	halved.
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Change the default
+	strength.
+	Don't increase slot->advance.y.
+
+2005-06-16  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FREETYPE_MINOR): Set to 2.
+	(FREETYPE_PATCH): Set to 0.
+
+	* builds/unix/configure.ac (version_info): Set to 9:9:3.
+	Currently, we are still binary compatible.
+
+	* builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/.
+
+	* builds/freetype.mk (refdoc), README, Jamfile (RefDoc):
+	s/2.1.9/2.1.10/.
+
+	* docs/CHANGES, docs/VERSION.DLL: Updated.
+
+	* ChangeLog: Split off older entries into...
+	* ChangeLog.20, ChangeLog.21: These new files.
+
+2005-06-15  Kirill Smelkov  <kirr at mns.spb.ru>
+
+	The next release will be 2.2.0, so don't worry about source code
+	backward compatibility.
+
+	* include/freetype/ftimage.h (FT_Outline_MoveToFunc,
+	FT_Outline_LineToFunc, FT_Outline_ConicToFunc,
+	FT_Outline_CubicToFunc, FT_SpanFunc, FT_Raster_RenderFunc),
+	include/freetype/ftrender.h (FT_Glyph_TransformFunc,
+	FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Decorate
+	parameters with `const' where appropriate.
+
+2005-06-15  Chia I Wu  <b90201047 at ntu.edu.tw>
+
+	* src/sfnt/ttsbit.c (tt_face_load_sbit_image): Compute vertBearingY
+	to make glyphs centered vertically.
+
+	* src/truetype/ttgload.c (compute_glyph_metrics): Compute
+	vertBearingY to make glyphs centered vertically.
+	Fix some bugs in vertical metrics:
+
+	  . loader->pp3.y and loader->pp4.y are in 26.6 format, not in font
+	    units.
+	  . As we use the glyph's cbox to calculate the top bearing now
+	    there is no need to adjust `top'.
+
+2005-06-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/otvcommn.h (OTV_OPTIONAL_TABLE): Use FT_UShort to be
+	in sync with OTV_OPTIONAL_OFFSET.  Reported by YAMATO Masatake.
+
+2005-06-13  Werner Lemberg  <wl at gnu.org>
+
+	* docs/release: Update.
+
+----------------------------------------------------------------------------
+
+Copyright (C) 2005-2020 by
+David Turner, Robert Wilhelm, and Werner Lemberg.
+
+This file is part of the FreeType project, and may only be used, modified,
+and distributed under the terms of the FreeType project license,
+LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+indicate that you have read the license and understand and accept it
+fully.
+
+
+Local Variables:
+version-control: never
+coding: utf-8
+End:

Copied: trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.23 (from rev 60353, trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.23)
===================================================================
--- trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.23	                        (rev 0)
+++ trunk/Build/source/libs/freetype2/freetype-src/ChangeLog.23	2021-08-29 06:19:44 UTC (rev 60360)
@@ -0,0 +1,7948 @@
+2010-02-13  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.12 released.
+	==========================
+
+
+	Tag sources with `VER-2-3-12'.
+
+	* docs/CHANGES: Updated.
+
+	* docs/VERSION.DLL: Update documentation and bump version number to
+	2.3.12.
+
+	* README, Jamfile (RefDoc),
+	builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+	builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/wince/vc2005-ce/freetype.vcproj,
+	builds/wince/vc2005-ce/index.html,
+	builds/wince/vc2008-ce/freetype.vcproj,
+	builds/wince/vc2008-ce/index.html: s/2.3.11/2.3.12/, s/2311/2312/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 12.
+
+	* builds/unix/configure.raw (version_info): Set to 10:0:4.
+
+2010-02-12  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improve autotool version checking to work with beta releases.
+
+	* autogen.sh (check_tool_version): Improve the extraction of version
+	number from "tool --version" output.  Some beta releases of
+	autotools have extra strings before version number.
+
+2010-02-12  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Fix overallocating bug in FT_Outline_New_Internal().
+
+	* src/base/ftoutln.c (FT_Outline_New_Internal): The length of
+	FT_Outline->points[] should be numPoints, not 2 * numPoints.
+	Found by Paul Messmer, see
+	https://lists.gnu.org/archive/html/freetype-devel/2010-02/msg00003.html
+
+2010-02-10  Ken Sharp  <ken.sharp at artifex.com>
+
+	Really fix Savannah bug #28678 (part 2).
+
+	Since we consider `sbw' for the horizontal direction only, we still have
+	to synthesize vertical metrics if the user wants to use the vertical
+	writing direction.
+
+	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
+	(cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph):
+	Synthesize vertical metrics (only) if FT_LOAD_VERTICAL_LAYOUT is
+	set.
+
+2010-02-10  Ken Sharp  <ken.sharp at artifex.com>
+
+	Really fix Savannah bug #28678 (part 1).
+
+	After long discussion, we now consider the character width vector
+	(wx,wy) returned by the `sbw' Type 1 operator as being part of *one*
+	direction only.  For example, if you are using the horizontal
+	writing direction, you get the horizontal and vertical components of
+	the advance width for this direction.  Note that OpenType and CFF fonts
+	don't have such a vertical component; instead, the GPOS table can be
+	used to generate two-dimensional advance widths (but this isn't
+	handled by FreeType).
+
+	* include/freetype/ftincrem.h (FT_Incremental_MetricsRec): Add
+	`advance_v' field to hold the vertical component of the advance
+	value.
+
+	* src/truetype/ttgload.c (tt_get_metrics), src/cff/cffgload.c
+	(cff_slot_load), src/type1/t1gload.c
+	(T1_Parse_Glyph_And_Get_Char_String), src/cid/cidgload.c
+	(cid_load_glyph): Use it.
+
+2010-02-08  Werner Lemberg  <wl at gnu.org>
+
+	* devel/ftoption.h [FT_CONFIG_OPTION_PIC]: Define.
+
+2010-02-04  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Prevent NULL pointer dereference passed to FT_Module_Requester.
+
+	* src/sfnt/sfdriver.c (sfnt_get_interface): Don't use `module'.
+	* src/psnames/psmodule.c (psnames_get_interface): Ditto.
+
+	* src/cff/cffdrivr.c (cff_get_interface): Check NULL `driver'.
+	* src/truetype/ttdriver.c (tt_get_interface): Ditto.
+
+2010-01-29  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Fix memory leaks in previous patch.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Don't overwrite the strings
+	allocated for face->root.family_name and style_name.
+
+2010-01-29  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	New parameters for FT_Open_Face() to ignore preferred family names.
+
+	Preferred family names should be used for legacy systems that
+	can hold only a few faces (<= 4) for a family name. Suggested by
+	Andreas Heinrich.
+	https://lists.gnu.org/archive/html/freetype/2010-01/msg00001.html
+
+	* include/freetype/ftsnames.h (FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY,
+	FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY): Define.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Check the arguments and
+	ignore preferred family and subfamily names if requested.
+
+2010-01-27  Ken Sharp  <ken.sharp at artifex.com>
+
+	Fix Savannah bug #28678.
+
+	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
+	(cid_load_glyph): Handle vertical metrics correctly.
+
+	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Handle
+	vertical metrics correctly.
+	(T1_Load_Glyph): Don't synthesize vertical metrics.
+
+2010-01-14  Werner Lemberg  <wl at gnu.org>
+
+	Make FT_Set_Transform work if no renderer is available.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Apply `standard' transformation
+	if no renderer is compiled into the library.
+
+2010-01-14  Werner Lemberg  <wl at gnu.org>
+
+	Fix compilation warning.
+
+	* src/base/ftbase.h: s/LOCAL_DEF/LOCAL/.
+	* src/base/ftobjs.c: Include ftbase.h conditionally.
+
+2010-01-11  Kwang Yul Seo  <skyul at company100.net>
+
+	Provide inline assembly code for RVCT compiler.
+	This is Savannah patch #7059.
+
+	* include/freetype/config/ftconfig.h (FT_MULFIX_ASSEMBLER,
+	FT_MulFix_arm) [__CC_ARM || __ARM_CC]: Define.
+
+2010-01-08  Ken Sharp  <ken.sharp at artifex.com>
+
+	Fix Savannah bug #28521.
+
+	Issue #28226 involved a work-around for a font which used the
+	`setcurrentpoint' operator in an invalid way; this operator is only
+	supposed to be used with the result of OtherSubrs, and the font used
+	it directly.  The supplied patch removed the block of code which
+	checked this usage entirely.
+
+	This turns out to be a Bad Thing.  If `setcurrentpoint' is being
+	used correctly it should reset the flex flag in the decoder.  If we
+	don't do this then the flag never gets reset and we omit any further
+	contours from the glyph (at least until we close the path or
+	similar).
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+	<op_setcurrentpoint>: Handle `flex_state' correctly.
+
+2010-01-05  Werner Lemberg  <wl at gnu.org>
+
+	Apply reports from clang static analyzer.
+
+	* src/lzw/ftlzw.c (ft_lzw_file_init), src/base/ftstroke.c
+	(FT_Stroker_ParseOutline), src/base/ftsynth.c
+	(FT_GlyphSlot_Embolden): Remove dead code.
+
+	* src/base/ftpatent.c (_tt_check_patents_in_table): Initialize
+	`offset_i' and `length_i'.
+
+2010-01-05  Ralph Giles  <giles at ghostscript.com>
+
+	Enable the incremental font interface by default.
+
+	Ghostscript requires the incremental font interface for handling
+	some Postscript documents.  It is moving to using FreeType as its
+	primary renderer; supporting this in the default build makes it
+	Ghostscript to be linked against the system FreeType when one is
+	available.
+
+	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_INCREMENTAL):
+	Uncomment.
+
+2010-01-05  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #28395.
+
+	* src/truetype/ttdriver.c (Load_Glyph), src/type1/t1gload.c
+	(T1_Load_Glyph): Don't check `num_glyphs' if incremental interface
+	is used.
+
+2010-01-05  Ken Sharp  <ken.sharp at artifex.com>
+
+	Make Type 1 `seac' operator work with incremental interface.
+	This fixes Savannah bug #28480.
+
+	* src/psaux/t1decode.c (t1operator_seac): Don't check `glyph_names'
+	if incremental interface is used.
+
+2010-01-04  Ken Sharp  <ken.sharp at artifex.com>
+
+	Make incremental interface work with TrueType fonts.
+	This fixes Savannah bug #28478.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Don't check
+	`glyf_offset' if incremental interface is used.
+
+2009-12-31  Lars Abrahamsson  <wonko at opera.com>
+
+	Make compilation with FT_CONFIG_OPTION_PIC work again.
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap) [FT_CONFIG_OPTION_PIC]:
+	Declare `library' for FT_BITMAP_GLYPH_CLASS_GET.
+
+	* src/base/ftinit.c (ft_destroy_default_module_classes,
+	ft_create_default_module_classes): Use proper casts (needed for C++
+	compilation).
+
+	* src/sfnt/ttcmap.c (tt_cmap13_class_rec): Use FT_DEFINE_TT_CMAP.
+
+2009-12-22  Marc Kleine-Budde  <mkl at pengutronix.de>
+
+	Make freetype-config aware of $SYSROOT.
+	This is Savannah patch #7040.
+
+	* builds/unix/freetype-config.in: Decorate with ${SYSROOT} where
+	appropriate.
+
+2009-12-20  Werner Lemberg  <wl at gnu.org>
+
+	Fix compiler warning.
+	Reported by Sean.
+
+	* src/base/ftdbgmem.c [!FT_DEBUG_MEMORY]: ANSI C doesn't like empty
+	source files; however, some compilers warn about an unused variable
+	declaration.  This is now replaced with a typedef.
+
+2009-12-18  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #28320.
+
+	There exist corrupt, subsetted fonts (embedded in PDF files) which
+	contain a private dict that ends with an unterminated floating point
+	number (no operator following).  We now ignore this error (as
+	acrobat does).
+
+	* src/cff/cffparse.c (cff_parser_run): Don't emit a syntax error for
+	unterminated floating point numbers.
+
+2009-12-16  Werner Lemberg  <wl at gnu.org>
+
+	Really fix compiler warnings.
+	Reported by Sean.
+
+	* src/truetype/ttgxvar.c (GX_PT_POINTS_ARE_WORDS,
+	GX_PT_POINT_RUN_COUNT_MASK): Convert enum values to macros.
+
+2009-12-16  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improve configure.raw to copy some options from CFLAGS to LDFLAGS.
+	The linker of Mac OS X 10.6 is sensitive to the architecture.  If
+	the architectures are specified explicitly for the C compiler, the
+	linker requires the architecture specifications too.
+
+	* builds/unix/configure.raw: Replace `-isysroot' option parser by
+	more generic argument parser.
+
+2009-12-15  Werner Lemberg  <wl at gnu.org>
+
+	Fix compiler warnings.
+	Reported by Sean.
+
+	* src/truetype/ttgxvar.c (ft_var_readpackeddeltas): Fix counter data
+	type.
+
+2009-12-14  Ken Sharp  <ken.sharp at artifex.com>
+
+	Ignore invalid `setcurrentpoint' operations in Type 1 fonts.
+	This fixes Savannah bug #28226.
+
+	At least two wild PostScript files of unknown provenance contain
+	Type 1 fonts, apparently converted from TrueType fonts in earlier
+	PDF versions of the files, which use the `setcurrentpoint' operator
+	inappropriately.
+
+	FreeType currently throws an error in this case, but Ghostscript and
+	Adobe Distiller both accept the fonts and ignore the problem.  This
+	commit #ifdefs out the check so PostScript interpreters using
+	FreeType can render these files.
+
+	The specification says `setcurrentpoint' should only be used to set
+	the point after a `Subr' call, but these fonts use it to set the
+	initial point to (0,0).  Unnecessarily so, as they correctly use an
+	`hsbw' operation which implicitly sets the initial point.
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+	<op_setcurrentpoint>: Comment out code.
+
+2009-12-14  Bram Tassyns  <bramt at enfocus.be>
+
+	Fix parsing of /CIDFontVersion.
+	This fixes Savannah bug #28287.
+
+	* src/cid/cidtoken.h: `cid_version' in CID_FaceInfoRec (in
+	t1tables.h) is of type FT_Fixed.
+
+2009-12-14  Werner Lemberg  <wl at gnu.org>
+
+	Trace glyph index in CID module.
+	Suggested in Savannah patch #7023.
+
+	* src/cid/cidgload.c (cid_load_glyph): Add tracing message.
+
+2009-12-03  Werner Lemberg  <wl at gnu.org>
+
+	Fix compiler warnings.
+
+	* src/truetype/ttgload.c (tt_get_metrics): Put `Exit' label into the
+	proper preprocessor conditional.
+	* src/pfr/pfrobjs.c (pfr_slot_load): Pacify gcc.
+
+2009-11-25  John Tytgat  <John.Tytgat at esko.com>
+
+	Better handling of start of `eexec' section.
+	This fixes Savannah bug #28090.
+
+	* src/type1/t1parse.c (T1_Get_Private_Dict): Skip all whitespace
+	characters before start of `eexec' section.
+
+2009-11-20  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #27742.
+
+	* src/base/ftstroke.c (ft_stroker_outside): Avoid silent division by
+	zero, using a threshold for `theta'.
+
+2009-11-20  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #28036.
+
+	* src/type1/t1afm.c (t1_get_index): Fix comparison.
+
+2009-11-16  Werner Lemberg  <wl at gnu.org>
+
+	Fix compiler warnings.
+	Reported by Kevin Blenkinsopp <arqon at promode.org>.
+
+	* src/sfnt/ttload.c (check_table_dir): Use proper data type.
+
+2009-11-15  Werner Lemberg  <wl at gnu.org>
+
+	Really fix FreeDesktop bug #21197.
+	This also fixes Savannah bug #28021.
+
+	* src/autofit/aflatin.c (af_latin_metrics_check_digits),
+	src/autofit/aflatin2.c (af_latin2_metrics_check_digits): Fix loop.
+
+2009-11-15  Werner Lemberg  <wl at gnu.org>
+
+	Add tracing messages for advance values.
+
+	* src/base/ftobjs.c (FT_Load_Glyph), src/truetype/ttgload.c
+	(TT_Get_HMetrics, TT_Get_VMetrics): Do it.
+
+2009-11-08  Werner Lemberg  <wl at gnu.org>
+
+	Fix compiler warning.
+	Reported by Jeremy Manson <jeremy.manson at gmail.com>.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Initialize `error'.
+
+2009-11-04  Werner Lemberg  <wl at gnu.org>
+
+	Remove compiler warning.
+	Reported by Sean McBride <sean at rogue-research.com>.
+
+	* src/tools/apinames.c (read_header_file)<STATE_TYPE>: Use a cast to
+	`int', as specified in the printf(3) man page.
+
+2009-11-04  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #27921.
+
+	* src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c
+	(cid_face_init), src/type1/t1afm.c (T1_Read_Metrics),
+	src/type1/t1objs.c (T1_Face_Init): Don't use unsigned constant
+	values for rounding if the argument can be negative.
+
+2009-11-03  Bram Tassyns  <bramt at enfocus.be>
+
+	Add basic support for Type1 charstrings in CFF.
+	This fixes Savannah bug #27922.
+
+	* src/cff/cffgload.c (CFF_Operator, cff_argument_counts): Handle
+	`seac', `sbw', and `setcurrentpoint' opcodes.
+	(cff_compute_bias): Add parameter to indicate the charstring type.
+	Update all callers.
+	(cff_operator_seac): Add parameter for side bearing.
+	(cff_decoder_parse_charstrings): Updated for more Type1 support.
+
+2009-11-03  Werner Lemberg  <wl at gnu.org>
+
+	Return correct `linearHoriAdvance' value for embedded TT bitmaps too.
+	Reported by Jeremy Manson <jeremy.manson at gmail.com>.
+
+	src/truetype/ttgload.c (load_truetype_glyph): Add parameter to
+	quickly load the glyph header only.
+	Update all callers.
+	(tt_loader_init): Add parameter to quickly load the `glyf' table
+	only.
+	Update all callers.
+	(TT_Load_Glyph): Compute linear advance values for embedded bitmap
+	glyphs too.
+
+2009-11-03  Werner Lemberg  <wl at gnu.org>
+
+	Improve code readability.
+
+	* src/ttgload.c (load_truetype_glyph): Move metrics calculation
+	to...
+	(tt_get_metrics): This new function.
+
+2009-10-26  Bram Tassyns  <bramt at enfocus.be>
+
+	Fix Savannah bug #27811.
+
+	* src/truetype/ttxgvar.c (ft_var_readpackeddeltas): Fix
+	signed/unsigned mismatch.
+
+2009-10-19  Ning Dong  <flintning at 163.com>
+
+	Fix handling of `get' and `put' CFF instructions.
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_get,
+	cff_op_put>: Appendix B of Adobe Technote #5177 limits the number of
+	elements for the `get' and `put' operators to 32.
+	* src/cff/cffgload.h (CFF_MAX_TRANS_ELEMENTS): Define.
+	(CFF_Decoder): Use it for `buildchar' and remove `len_buildchar'.
+
+2009-10-18  Werner Lemberg  <wl at gnu.org>
+
+	Fix handling of `dup' CFF instruction.
+	Problem and solution reported by Ning Dong <flintning at 163.com>.
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_dup>:
+	Increase `args' by 2, not 1.
+
+2009-10-10  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.11 released.
+	==========================
+
+
+	Tag sources with `VER-2-3-11'.
+
+	* docs/VERSION.DLL: Update documentation and bump version number to
+	2.3.11.
+
+	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj: s/2.3.10/2.3.11/, s/2310/2311/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 11.
+
+	* builds/unix/configure.raw (version_info): Set to 9:22:3.
+
+2009-10-10  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES, docs/release: Updated.
+
+2009-10-10  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/pcf/pcfread.c (pcf_get_properties): Fix a bug in the nprops
+	truncation.  Reported by Martin von Gagern and Peter Volkov.
+	https://bugs.gentoo.org/288357 and https://bugs.gentoo.org/288256
+
+2009-10-06  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.10 released.
+	==========================
+
+
+	Tag sources with `VER-2-3-10'.
+
+	* builds/toplevel.mk (major, minor, patch): Fix regexp to allow more
+	than a single digit.
+	(dist): We now use git.
+
+	* docs/VERSION.DLL: Update documentation and bump version number to
+	2.3.10.
+
+	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj: s/2.3.9/2.3.10/, s/239/2310/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.
+
+	* builds/unix/configure.raw (version_info): Set to 9:21:3.
+
+2009-10-06  Werner Lemberg  <wl at gnu.org>
+
+	Fix `make multi'.
+
+	* src/cache/ftccache.c, src/cache/ftcsbits.c (FT_COMPONENT): Define.
+
+	* src/sfnt/sfdriver.c: Include FT_INTERNAL_DEBUG_H.
+
+2009-09-27  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	[cache] Fix Savannah bug #27441, clean up Redhat bugzilla #513582.
+	Tricky casts in FTC_{CACHE,GCACHE,MRULIST}_LOOKUP_CMP() are removed.
+	Now these functions should be called with FTC_Node or FTC_MruNode
+	variable, and the caller should cast them to appropriate pointers to
+	concrete data.  These tricky casts can GCC-4.4 optimizer (-O2)
+	confused and the crashing binaries are generated.
+
+	* src/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Drop tricky cast.
+	Now the 4th argument `node' of this function should be typed as
+	FTC_MruNode.
+
+	* src/cache/ftcglyph.h (FTC_GCACHE_LOOKUP_CMP): For inline
+	implementation, new temporal variable FTC_MruNode `_mrunode' to take
+	the pointer from FTC_MRULIST_LOOKUP_CMP().  For non-inline
+	implementation, tricky cast is dropped.
+
+	* src/cache/ftcmanag.c (FTC_SIZE_NODE): New macro casting
+	to FTC_SizeNode.
+	(FTC_Manager_LookupSize): Replace FTC_SizeNode `node' by FTC_MruNode
+	`mrunode', and FTC_SIZE_NODE() is inserted.
+	(FTC_FACE_NODE): New macro casting to FTC_FaceNode.
+	(FTC_Manager_LookupFace) Replace FTC_FaceNode `node' by FTC_MruNode
+	`mrunode', and FTC_FACE_NODE() is inserted.
+
+	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup): Change the type of
+	`node' from FTC_INode to FTC_Node.  Extra casting macro FTC_NODE()
+	is dropped.
+	(FTC_ImageCache_LookupScaler): Ditto.
+	(FTC_SBitCache_Lookup): Change the type of `node' from FTC_SNode to
+	FTC_Node.  Extra casting macro FTC_NODE() is dropped.  FTC_SNODE()
+	is inserted.
+	(FTC_SBitCache_LookupScaler): Ditto.
+
+	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Change the type of
+	`node' from FTC_CMapNode to FTC_Node.  Extra casting macro
+	FTC_NODE() is dropped, FTC_CMAP_NODE() is inserted.
+
+2009-09-25  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	[cache, psaux, type1] Fix for multi build.
+	In multi build, some cpp functions are left as unresolved symbols.
+
+	* src/cache/ftcbasic.c: Include FT_INTERNAL_DEBUG_H for FT_TRACE1().
+
+	* src/psaux/t1decode.c: Include FT_INTERNAL_CALC_H for
+	FIXED_TO_INT().
+	* src/type1/t1gload.c: Ditto.
+	* src/type1/t1objs.c: Ditto.
+
+2009-09-25  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	[autofit] Fix for multi build.
+
+	* src/autofit/afmodule.h: Include FT_INTERNAL_OBJECTS_H to use
+	FT_DECLARE_MODULE() macro in multi build.
+
+	* src/autofit/aflatin.c: Include <ft2build.h> to handle
+	FT_ADVANCES_H correctly in multi build.
+
+2009-09-24  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	[cache] Check the face filled by FTC_Manager_LookupFace().
+
+	* src/cache/ftcbasic.c (ftc_basic_family_get_count): Return
+	immediately if FTC_Manager_LookupFace() fills face by NULL.  Such
+	case can occur when the code is optimized by GCC-4.2.x.
+
+2009-09-23  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2009-09-12  Werner Lemberg  <wl at gnu.org>
+
+	[raster] Fix 5-levels grayscale output.
+	This was broken since version 2.3.0.
+
+	* src/raster/ftraster.c (count_table): Use pre-2.3.0 values (which
+	were then computed dynamically).
+	(Vertical_Gray_Sweep_Step): Updated.
+
+	(ft_black_render): Initialize `worker->gray_lines' (problem found by
+	valgrind).
+
+	(FT_RASTER_OPTION_ANTI_ALIASING, DEBUG_RASTER): Don't #undef, just
+	comment out.
+
+2009-09-12  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improve configure.raw for cross build.
+
+	* builds/unix/configure.raw: Remove temporal files created by the
+	suffix checking for CC_BUILD.  Set XX_ANSIFLAGS and XX_CFLAGS when
+	cross compiler is GCC.  AC_PROG_CC checks whether the cross compiler
+	is GCC, its result is stored in GCC.
+
+2009-09-12  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	[BDF] Modify hash API to take size_t value instead of void *.
+
+	The hash API in BDF driver is designed to be generic, it takes
+	void * typed data.  But BDF driver always gives an unsigned long
+	integer (the index to a property).  To reduce non-essential
+	casts from unsigned long to void* and from void* to unsigned
+	long, the hash API is changed to take size_t integer.
+	The issue of incompatible cast between unsigned long and void*
+	on LLP64 platform is reported by NightStrike from MinGW-Win64
+	project.  See
+	https://lists.gnu.org/archive/html/freetype/2009-09/msg00000.html
+
+	* src/bdf/bdf.h: The type of hashnode->data is changed from
+	void* to size_t.
+
+	* src/bdf/bdflib.c (hash_insert): Get size_t data, instead of
+	void* data.
+	(bdf_create_property): Get the name length of new property by
+	size_t variable, with a cut-off at FT_ULONG_MAX.
+	(_bdf_set_default_spacing): Get the name length of the face by
+	size_t variable, with a cut-off at 256.
+	(bdf_get_property): Get the property id by size_t variable to
+	reduce the casts between 32-bit prop ID & hashnode->data during
+	simple copying.
+	(_bdf_add_property): Ditto.
+	(_bdf_parse_start): Calculate the index to the property array
+	by size_t variable.
+	(bdf_get_font_property): Drop a cast to unsigned long.
+
+2009-09-10  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	[Win64] Improve the computation of random seed from stack address.
+
+	On LLP64 platform, the conversion from pointer to FT_Fixed need
+	to drop higher 32-bit.  Explicit casts are required. Reported by
+	NightStrike from MinGW-w64 project.  See
+	https://lists.gnu.org/archive/html/freetype/2009-09/msg00000.html
+
+	* src/cff/cffgload.c: Convert the pointers to FT_Fixed explicitly.
+
+	* src/psaux/t1decode.c: Ditto.
+
+
+2009-09-03  Werner Lemberg  <wl at gnu.org>
+
+	[raster] Improvements for stand-alone mode.
+
+	* src/raster/rules.mk: Don't handle ftmisc.h.  It is needed for
+	stand-alone mode only.
+
+	* src/raster/ftmisc.h (FT_MemoryRec, FT_Alloc_Func, FT_Free_Func,
+	FT_Realloc_Func): Copy declarations from ftsystem.h.
+
+2009-09-02  Bram Tassyns  <bramt at enfocus.be>
+
+	Improve vertical metrics calculation (Savannah bug #27364).
+
+	The calculation of `vertBearingX' is not defined in the OTF font
+	spec so FreeType does a `best effort' attempt.  However, this value
+	is defined in the PDF and PostScript specs, and that algorithm is
+	better than the one FreeType currently uses:
+
+	  FreeType: Use the middle of the bounding box as the X coordinate
+	            of the vertical origin.
+
+	  Adobe PDF spec: Use the middle of the horizontal advance vector as
+	                  the X coordinate of the vertical origin.
+
+	FreeType's algorithm goes wrong if you have a really small glyph
+	(like the full-width, circle-like dot at the end of the sentence, as
+	used in CJK scripts) with large bearings.  With the FreeType
+	algorithm this dot gets centered on the baseline; with the PDF
+	algorithm it gets the correct location (in the top right).  Note
+	that this is a serious issue, it's like printing the dot at the end
+	of a Roman sentence at the center of the textline instead of on the
+	baseline like it should. So i believe the PDF spec's algorithm
+	should be used in FreeType as well.
+
+	The `vertBearingY' value for such small glyphs is also very strange
+	if no `vmtx' information is present, since the height of the bbox is
+	not representable for the height of the glyph visually (the
+	whitespace up to the baseline is part of the glyph).  The fix also
+	includes some code for a better estimate of `vertBearingY'.
+
+	* src/base/ftobjs.c (ft_synthesize_vertical_metrics): `vertBearingX'
+	is now calculated as described by the Adobe PDF Spec.  Estimate for
+	`vertBearingY' now works better for small glyphs completely above or
+	below the baseline into account.
+
+	* src/cff/cffgload.c (cff_slot_load): `vertBearingX' is now
+	calculated as described by the Adobe PDF Spec.  Vertical metrics
+	information was always ignored when FT_CONFIG_OPTION_OLD_INTERNALS
+	was not defined.
+
+	* src/truetype/ttgload.c (compute_glyph_metrics): `vertBearingX' is
+	now calculated as described by the Adobe PDF Spec.
+
+2009-09-01  John Tytgat  <John.Tytgat at esko.com>
+
+	Fix custom cmap for empty Type 1 font (Savannah bug #27294).
+
+	* include/freetype/internal/t1types.h (T1_EncodingRecRec_): Update
+	comment to reflect revised code_last meaning.
+	* src/type1/t1load.c (T1_Open_Face), src/type42/t42objs.c
+	(T42_Open_Face): Assign max_char as highest character code + 1 and
+	use this for T1_EncodingRecRec_::code_last.
+	* src/psaux/t1cmap.c (t1_cmap_custom_init): Follow revised
+	T1_EncodingRecRec_::code_last meaning.
+
+2009-08-25  Werner Lemberg  <wl at gnu.org>
+
+	Fix rendering of horizontally compressed CFFs.
+	Bug reported by Ivan Nincic <inincic at pdftron.com>.
+
+	* src/cff/cffgload.c (cff_slot_load): Thinko: Check `xx' element of
+	`font_matrix' also.
+
+	* docs/CHANGES: Updated.
+
+2009-08-03  suyu0925 at gmail.com
+
+	Don't call `ft_fseek' every time when executing `ft_fread'.
+
+	* src/base/ftstream.c (FT_Stream_Seek), src/base/ftsystem.c
+	(ft_ansi_stream_io): Implement it.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Cast a charcode to 32-bit in cmap format 14 parser.
+
+	* src/sfnt/ttcmap.c (tt_cmap14_char_var_index,
+	tt_cmap14_char_var_isdefault, tt_cmap14_char_variants,
+	tt_cmap14_variant_chars): Correct mismatches from
+	FT_CMap_CharVarIndexFunc prototype, FT_ULong arguments
+	are replaced by FT_UInt32 arguments.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Cast a charcode to 32-bit in cmap format 12 parser.
+
+	* src/sfnt/ttcmap.c (tt_cmap12_char_next):
+	Insert explicit cast from FT_UFast to FT_UInt32
+	for return value.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	psaux: Fix a few casts to FT_Int32 value.
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings):
+	Fix a few casts setting `value' from FT_Long to FT_Int32,
+	because `value' is typed as FT_Int32 since 2009-06-22.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Fix a data type mismatching with its source.
+
+	* src/sfnt/ttcmap.c (tt_cmap13_char_next): Fix the
+	type of `gindex' from FT_ULong to FT_UInt because
+	it is set by FT_UInt tt_cmap13_char_map_binary() or
+	TT_CMap13->cur_gindex.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Extend a few local variables to load 32-bit values.
+
+	* src/sfnt/ttkern.c (tt_face_load_kern): Extend `count'
+	and `kern' to load 32-bit values.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pfr: Extend `num_aux' to take 32-bit value.
+
+	* src/pfr/pfrload.c (pfr_phy_font_load): Extend
+	`num_aux' to load 32-bit value.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Truncate FT_ULong `nprops' to fit to int PCF_Face->nprops.
+
+	* src/pcf/pcfread.c (pcf_get_properties): Load `nprops'
+	as FT_ULong value from PCF file, but truncate it as
+	int to fit PCF_Face->nprops.  The number of truncated
+	properties is shown in the trace message.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Extend a few local variables to reduce the casts.
+
+	* src/gxvalid/gxvmorx.c (gxv_morx_subtables_validate):
+	Extend `type' and `rest' to take FT_ULong values.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Extend `settingTable' to take 32-bit offset.
+
+	* src/gxvalid/gxvfeat.c (gxv_feat_name_validate):
+	Extend `settingTable' to take 32-bit offset.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	autofit: Cast FT_Long glyph_count to compare with FT_UInt GID.
+
+	* src/autofit/afglobal.c (af_face_globals_is_digit,
+	af_face_globals_compute_script_coverage): Cast FT_Long
+	globals->glyph_count to FT_ULong, to compare with FT_UInt
+	gindex.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	smooth: Exclude 16-bit system in invalid pitch/height check.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render_generic):
+	pitch and height are typed as FT_UInt but checked to fit
+	16-bit range, to avoid the overflows.  On 16-bit system,
+	this checking inserts a conditional that never occurs.
+
+2009-07-03  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cff: Type large constants > 0x7FFF as long for 16-bit systems.
+
+	* src/cff/cffload.c (cff_charset_load): Type large
+	constants > 0x7FFF as long, because normal constants
+	are typed signed integer that is less than 0x8000 on
+	16-bit systems.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	base: Remove an unused variable.
+
+	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Remove an
+	unused variable `library'.  glyph->library is used.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Check higher bits in flags for non ILP32 systems.
+
+	4 public functions ought to take FT_ULong flags, but take
+	FT_UInt flags. To keep binary compatibility, we drop higher
+	bits on non ILP32 platforms,
+		ILP64 systems: No drop occurs.
+		LP64 systems: Higher bits are not used.
+		16-bit systems: Drop can occur.
+	See
+	https://lists.gnu.org/archive/html/freetype-devel/2008-12/msg00065.html
+	These functions will be refined to take FT_ULong flags in
+	next bump with incompatible API change.
+
+	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup):
+	Check `flags' in `type', the 2nd argument.
+	(FTC_SBitCache_Lookup): Ditto.
+	(FTC_ImageCache_LookupScaler): Check `load_flags',
+	the 3rd argument.
+	(FTC_SBitCache_LookupScaler): Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Ignore invalid GIDs in glyph name lookup.
+
+	* include/freetype/internal/fttrace.h:
+	New trace module for sfdriver.c is added.
+
+	* src/sfnt/sfdriver.c (sfnt_get_name_index):
+	Restrict glyph name lookup to FT_UInt GID.
+	Genuine TrueType can hold 16-bit glyphs.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Fix a comparison between FT_Long and FT_ULong.
+
+	* src/pcf/pcfread.c (pcf_get_bitmaps): Return an error
+	if PCF_Face->nmetrics is negative.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Guarantee `nFeatureFlags' size up to 32-bit.
+
+	* src/gxvalid/gxvmort.c (gxv_mort_featurearray_validate):
+	Extend the 3rd argument `nFeatureFlags' to FT_ULong.
+	* src/gxvalid/gxvmort.h: Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Insert explicit cast for LP64 system.
+
+	* src/sfnt/ttkern.c (tt_face_load_kern): Insert
+	cast from unsigned long to FT_UInt32.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Guarantee `just' table size upto 32-bit.
+
+	* src/gxvalid/gxvjust.c (gxv_just_validate):
+	The type of `offset' is changed from FT_UInt to
+	FT_Offset, for 16-bit platforms.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Guarantee `trak' table size upto 32-bit.
+
+	* src/gxvalid/gxvtrak.c (gxv_trak_validate):
+	The type of `offset' is changed from FT_UInt to
+	FT_Offset, for 16-bit platforms.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	type1: Fix a data type mismatching with its source.
+
+	* include/freetype/internal/t1types.h: The type of
+	T1_Face->buildchar is matched with T1_Decoder->top.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pfr: Fix a data type mismatching with its source.
+
+	* src/pfr/pfrtypes.h: The type of PFR_KernItem->offset
+	is extended from FT_UInt32 to FT_Offset, because it is
+	calculated with the pointer difference, in
+	pfr_extra_item_load_kerning_pairs().
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pfr: Fix a data type mismatching with its source.
+
+	* src/pfr/pfrtypes.h: The type of PFR_PhyFont->chars_offset
+	is extended from FT_UInt32 to FT_Offset, because it is
+	calculated with the pointer difference in pfr_phy_font_load().
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pfr: Fix a data type mismatching with its source.
+
+	* src/pfr/pfrtypes.h: The type of PFR_PhyFont->bct_offset
+	is extended from FT_UInt32 to FT_Long, because it is
+	loaded by FT_STREAM_POS() in pfr_phy_font_load().
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	smooth: Improve the format in debug message.
+
+	* src/smooth/ftgrays.c (gray_dump_cells): Improve the
+	format specifications to dump variables.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Fix a data type mismatching with its source.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): The type of
+	local `flags' is matched with FT_Face->face_flags.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	psaux: Fix a data type mismatching with its source.
+
+	* include/freetype/internal/psaux.h: The type of
+	T1_DecoderRec.buildchar is matched with
+	T1_DecoderRec.top.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Extend TrueType GX packed deltas to FT_Offset.
+
+	* src/truetype/ttgxvar.c (ft_var_readpackeddeltas):
+	The type of 2nd argument `delta_cnt' is changed from
+	FT_Int to FT_Offset, because its source can be cvt
+	table size calculated from stream position.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Extend mmvar_len to hold size_t values.
+
+	* src/truetype/ttgxvar.h: The type of
+	GX_BlendRec.mmvar_len is changed from FT_Int to
+	FT_Offset, because TT_Get_MM_Var() calculates it
+	by sizeof() results.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Check invalid function number in IDEF instruction.
+
+	* src/truetype/ttinterp.c (Ins_IDEF): Check
+	if the operand fits to 8-bit opcode limitation.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Check invalid function number in FDEF instruction.
+
+	* src/truetype/ttinterp.c (Ins_FDEF): Check
+	if the operand fits 16-bit function number.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Truncate the deltas of composite glyph at 16-bit values.
+
+	* src/truetype/ttgload.c (load_truetype_glyph):
+	Insert cast from FT_Long (deltas[i].{x,y}) to
+	FT_Int16 in the summation of deltas[] for composite
+	glyphs.  Because deltas[i] is typed as FT_Pos,
+	its component x, y are typed as FT_Long, but
+	their sources are always FT_Int16 when they are
+	loaded by ft_var_readpackeddeltas().  However,
+	the limitation about the summed deltas is unclear.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Truncate the instructions upto 16-bit per a glyph.
+
+	* src/truetype/ttgload.c (TT_Hint_Glyph): Truncate
+	the instructions upto 16-bit length per a glyph.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Cast the numerical operands to 32-bit for LP64 systems.
+
+	* src/truetype/ttinterp.c (Ins_SPHIX, INS_MIAP,
+	Ins_MIRP): Insert cast from long (args[], the
+	operands passed to TrueType operator) to FT_Int32
+	(the argument of TT_MulFix14()).
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Cast the project vector to 32-bit for LP64 system.
+
+	* src/truetype/ttinterp.c (Project, DualProject):
+	Insert casts from FT_Pos (the arguments `dx', `dy')
+	to FT_UInt32 (the argument to TT_DotFix14()).
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Cast the scaling params to 32-bit for LP64 system.
+
+	* src/truetype/ttgload.c (TT_Process_Composite_Component):
+	Insert casts from long (return value of FT_MulFix()) to
+	FT_Int32 (the argument to FT_SqrtFixed()).
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Cast a character code to FT_UInt32 for LP64 system.
+
+	* src/sfnt/ttcmap.c (tt_cmap14_char_map_nondef_binary,
+	tt_cmap14_variants, tt_cmap14_char_variants,
+	tt_cmap14_def_char_count, tt_cmap14_get_def_chars,
+	tt_cmap14_get_nondef_chars, tt_cmap14_variant_chars)
+	Insert casts when FT_UInt32 variable is loaded by
+	TT_NEXT_{UINT24|ULONG}.  Because most of them are
+	compared with FT_UInt32 values in public API, replacing
+	FT_UFast is not recommended.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Cast a character code to FT_UInt32 for LP64 system.
+
+	* src/sfnt/ttcmap.c (tt_cmap4_init, tt_cmap4_next):
+	Insert the casts from unsigned long constant to
+	FT_UInt32.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Extend TT_BDF->strings_size to FT_ULong for huge BDF.
+
+	* include/freetype/internal/tttypes.h: The type
+	of TT_BDF->string_size is extended from FT_UInt32
+	to FT_ULong, because BDF specification does not
+	restrict the length of string.
+	* src/sfnt/ttbdf.c: The scratch variable `strings'
+	to load TT_BDF->string_size is matched with
+	TT_BDF->string_size.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	psaux: Handle the string length by FT_Offset variables.
+
+	* src/psaux/afmparse.c (afm_parser_next_key,
+	afm_tokenize, afm_parse_track_kern,
+	afm_parse_kern_pairs, afm_parse_kern_data,
+	afm_parser_skip_section, afm_parser_parse):
+	The length of key is handled by FT_Offset,
+	instead of FT_UInt.  Although the length of
+	PostScript strings or name object is 16-bit,
+	AFM_STREAM_KEY_LEN() calculates the length
+	from the pointer difference.
+
+	* src/psaux/afmparse.h (afm_parser_next_key):
+	Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Fix some data types mismatching with their sources.
+
+	* src/pcf/pcfread.c (pcf_get_bitmaps): The types
+	of `nbitmaps', `i', `sizebitmaps' are matched with
+	the type of area FT_Bitmap.pitch * FT_Bitmap.rows.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Handle the string length by size_t variables.
+
+	* src/pcf/pcfread.c (pcf_interpret_style): The types
+	of nn, len, lengths[4] are changed to size_t, because
+	they are loaded by (or compared with) ft_strlen().
+
+	* src/pcf/pcfutil.c (BitOrderInvert, TwoByteSwap,
+	FourByteSwap): The type of the 2nd argument `nbytes'
+	is changed to size_t, for similarity with ANSI C
+	string functions.
+
+	* src/pcf/pcfdrivr.c (PCF_Glyph_Load): The type of
+	`bytes' is changed to FT_Offset, because it is passed
+	to FT_ALLOC(), via ft_glyphslot_alloc_bitmap().  At
+	least, using unsigned type is better.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Fix some data types mismatching with their sources.
+
+	* src/pcf/pcfread.c (pcf_seek_to_table_type,
+	pcf_has_table_type): The type of 3rd argument
+	`ntables' is matched with PCF_Toc->count.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	otvalid: Truncate the glyph index to 16-bit.
+
+	* src/otvalid/otvalid.c (otv_validate): Checks
+	face->num_glyphs does not exceed 16-bit limit,
+	pass FT_UInt num_glyphs to backend functions
+	otv_{GPOS|GSUB|GDEF|JSTF|MATH}_validate().
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Insert explicit casts for LP64 systems.
+
+	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup,
+	FTC_SBitCache_Lookup): The type of FTC_ImageType->width
+	is FT_Int, so the cast to unsigned larger type FT_ULong
+	is introduced for the comparisons with 0x10000L for
+	LP64 platform.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Fix some data types mismatching with their sources.
+
+	* src/cache/ftccache.h: The type of return value
+	by FTC_Node_WeightFunc function is changed to
+	FT_Offset.  The type of FTC_CacheClass->cache_size
+	is changed to FT_Offset, too.
+
+	* src/cache/ftccback.h (ft_inode_weight,
+	ftc_snode_weight): Ditto.
+
+	* src/cache/ftccmap.c (ftc_cmap_node_weight): Ditto.
+
+	* src/cache/ftcimage.c (ftc_inode_weight,
+	FTC_INode_Weight): Ditto.
+
+	* src/cache/ftcsbits.c (ftc_snode_weight,
+	FTC_SNode_Weight): Ditto.
+
+	* src/cache/ftcmru.h: The type of
+	FTC_MruListClass->node_size is changed to FT_Offset,
+	because it is passed to FT_ALLOC() to specify the
+	size of buffer.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	XXX_cmap_encoding_char_next() return FT_UInt32 values.
+
+	* include/freetype/internal/services/svpscmap.h:
+	The size of the charcode value returned by
+	the function typed PS_Unicodes_CharNextFunc is
+	matched with its input charcode value.
+
+	* src/cff/cffmap.c (cff_cmap_encoding_char_next,
+	cff_cmap_unicode_char_next): Ditto.
+
+	* src/pfr/pfrmap.c (pfr_cmap_encoding_char_next):
+	Ditto.
+
+	* src/psaux/t1cmap.c (t1_cmap_std_char_next,
+	t1_cmap_custom_char_next, t1_cmap_unicode_char_next):
+	Ditto.
+
+	* src/psnames/psmodule.c (ps_unicodes_char_next):
+	Ditto.
+
+	* src/winfonts/winfnt.c (fnt_cmap_char_next):
+	Ditto.
+
+	* src/sfnt/ttcmap.c (tt_cmap0_char_next,
+	tt_cmap2_char_next, tt_cmap4_char_next,
+	tt_cmap6_char_next, tt_cmap10_char_next,
+	tt_cmap12_char_next, tt_cmap13_char_next): Ditto.
+	(tt_cmap14_char_variants): Handle base unicode
+	codepoint by FT_UInt32 variable to avoid overflow
+	on 16-bit platforms.
+	(tt_cmap14_ensure): The type of `num_results' is
+	extend to FT_UInt32, to cover unsigned 32-bit
+	`numVarSelectorRecords' in cmap14 table header.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	truetype: Extend TT_Face->num_locations for broken TTFs.
+
+	* include/freetype/internal/tttypes.h:
+	TT_Face->num_locations are extended from FT_UInt
+	to FT_ULong, to stand with broken huge loca table.
+	Some people insists there are broken TTF including
+	the glyphs over 16-bit limitation, in PRC market.
+	* src/truetype/ttpload.c (tt_face_load_loca):
+	Remove unrequired 16-bit truncation for FT_UInt
+	TT_Face->num_locations.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	smooth: Fix some data types mismatching with their sources.
+
+	* src/smooth/ftgrays.c: The type of `TCoord' is
+	matched to `TPos', because they are mixed in
+	gray_set_cell().  The type of TCell->x is extended
+	to `TPos', because gray_find_cell() sets it by
+	TWorker.ex.  The type of TCell->cover is extended
+	to `TCoord', because gray_render_scanline() adds
+	TCoord value to it.  The type of TWork.cover is matched
+	with TCell->cover.  The types of
+	TWork.{max_cells,num_cells} are changed to FT_PtrDist,
+	because they are calculated from the memory addresses.
+	The type of TWork.ycount is changed to TPos, because
+	it is calculated from TPos variables.
+	(gray_find_cell): The type of `x' is matched with
+	its initial value ras.ex.
+	(gray_render_scanline): The types of `mod', `lift'
+	and `rem' are changed to TCoord, because their values
+	are set with explicit casts to TCoord.  When ras.area
+	is updated by the differential values including
+	`delta', they are explicitly cast to TArea, because
+	the type of `delta' is not TArea but TCoord.
+	(gray_render_line): The type of `mod' is extended
+	from int to TCoord, because (TCoord)dy is added to mod.
+	(gray_hline): The argument `acount' is extended to
+	TCoord, to match with the parameters in the callers.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cff: Fix some data types mismatching with their sources.
+
+	* src/cff/cffobjs.c (cff_face_init): The type of
+	`scaling' is matched with the scaling parameter
+	in FT_Matrix_Multiply_Scaled() and
+	FT_Vector_Transform_Scaled().
+
+	* src/cff/cffparse.c (cff_parse_real): The type of
+	`power_ten', `scaling', `exponent_add',
+	`integer_length', `fraction_length',
+	`new_fraction_length' and `shift' are matched with
+	the type of `exponent' to avoid unexpected truncation.
+	(cff_parse_fixed_scaled): The type of `scaling' is
+	matched with the `scaling' argument to
+	cff_parse_real().
+	(cff_parse_fixed_dynamic): Ditto.
+	(cff_parse_font_matrix): The type of `scaling' is
+	matched with the `scaling' argument to
+	cff_parse_dynamic().
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	autofit: Fix some data types mismatching with their sources.
+
+	* src/autofit/afglobal.c: Correct the type of
+	AF_FaceGlobalsRec.glyph_count to match with
+	FT_Face->num_glyphs.
+	(af_face_globals_compute_script_coverage):
+	Insert explicit cast to compare
+	FT_Long AF_FaceGlobalsRec.glyph_count versus
+	FT_UInt gindex.  The type of `nn' is changed
+	to scan glyph index upto AF_FaceGlobalsRec.glyph_count.
+	(af_face_globals_get_metrics): The type of `script_max'
+	is changed to cover size_t value.  Insert explicit cast
+	to compare FT_Long AF_FaceGlobalsRec.glyph_count versus
+	FT_UInt gindex.
+
+	* src/autofit/afhints.c (af_axis_hints_new_segment):
+	Insert explicit cast to calculate `big_max' from
+	integer and size_t values.
+	(af_axis_hints_new_edge): Ditto.
+
+	* src/autofit/aflatin.c (af_latin_metrics_init_blues):
+	The type of `best_y' is matched to FT_Vector.y.
+	(af_latin_compute_stem_width): The type of `delta' is
+	matched to `dist' and `org_dist'.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	autofit: Count the size of the memory object by ptrdiff_t.
+
+	* src/autofit/afcjk.c (af_cjk_hint_edges): The
+	number of edges `n_edges' should be counted by
+	FT_PtrDist variable instead of FT_Int.
+
+	* src/autofit/aflatin.c (af_latin_hint_edges):
+	Ditto.
+
+	* src/autofit/aftypes.h: In AF_ScriptClassRec,
+	the size of metric `script_metrics_size' should
+	be counted by FT_Offset variable instead of FT_UInt.
+
+	* src/autofit/afhints.c
+	(af_glyph_hints_align_strong_points): The cursors
+	for the edges `min', `max', `mid' in the memory
+	buffer should be typed FT_PtrDist.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	autofit: Fix for unused variable `first'.
+
+	* src/autofit/afhints.c (af_glyph_hints_reload): Insert
+	FT_UNUSED() to hide the unused variable warning.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improve bitmap size or pixel variables for 16-bit systems.
+
+	* include/freetype/config/ftstdlib.h: Introduce
+	FT_INT_MIN, to use in signed integer overflow in
+	16-bit and 64-bit platforms.
+
+	* include/freetype/internal/fttrace.h: Add a tracer
+	to ftsynth.c.
+
+	* src/base/ftbitmap.c (FT_Bitmap_Embolden): Check
+	invalid strength causing integer overflow on 16-bit
+	platform.
+
+	* src/base/ftcalc.c (ft_corner_orientation): Change
+	the internal calculation from FT_Int to FT_Long, to
+	avoid an overflow on 16-bit platforms.  The caller of
+	this function should use only the sign of result,
+	so the cast to FT_Int is acceptable.
+
+	* src/base/ftsynth.c: Introduce a tracer for synth module.
+	(FT_GlyphSlot_Embolden): Check invalid strength causing
+	integer overflow on 16-bit platform.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): The glyph index
+	in FT2 API is typed as FT_UInt, although BDF driver
+	can handle unsigned long glyph index internally.  To
+	avoid integer overflow on 16-bit platform, too large
+	glyph index should be excluded.
+	(BDF_Glyph_Load): The glyph pitch in FT2 is typed as
+	FT_UInt, although BDF driver can handle unsigned long
+	glyph pitch internally.  To avoid integer overflow on
+	16-bit platform, too large glyph pitch should not be
+	returned.
+
+	* src/pfr/pfrsbit.c (pfr_slot_load_bitmap): The glyph
+	pitch in FT2 is typed as FT_UInt, although PFR font
+	format can include huge bitmap glyph with 24-bit pitch
+	(however, a glyph spends 16.7 pixel, it's not realistic).
+	To avoid integer overflow on 16-bit platform, huge
+	bitmap glyph should be excluded.
+
+	* src/smooth/ftgrays.c (gray_hline): As FT_Span.x is
+	truncated to fit its type (16-bit short), FT_Span.y
+	should be truncated to fit its type (FT_Int).
+
+	* src/cff/cffdrivr.c (cff_get_ros): CFF specification
+	defines the supplement in ROS as a real number.
+	Truncate it to fit public FT2 API.
+
+	* src/cff/cffparse.c (cff_parse_cid_ros): Warn the
+	supplement if it is truncated or rounded in cff_get_ros().
+
+	* src/cff/cfftypes.h: Change the type of internal variable
+	`supplement' from FT_Long to FT_ULong to fit the signedness
+	to the type in public API.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	psaux: Prevent invalid arguments to afm_parser_read_vals().
+
+	* src/psaux/afmparse.c (afm_parser_read_vals): Change
+	the type of `n' to prevent negative number how many
+	arguments should be parsed.
+
+	* src/psaux/afmparse.h (afm_parser_read_vals): Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	base: Prevent some overflows on LP64 systems.
+
+	* src/base/ftadvanc.c (FT_Get_Advances): Cast the
+	unsigned long constant FT_LOAD_ADVANCE_ONLY to FT_UInt32
+	for LP64 platforms.
+
+	* src/base/ftcalc.c (FT_Sqrt32): All internal variables
+	are changed to FT_UInt32 from FT_ULong.
+	(FT_MulDiv): Insert casts to FT_Int32 for LP64 platforms.
+	This function is designed for 32-bit integer, although
+	their arguments and return value are FT_Long.
+
+	* src/base/ftobjs.c (FT_Get_Char_Index): Check `charcode'
+	is within unsigned 32-bit integer for LP64 platforms.
+	(FT_Face_GetCharVariantIndex): Check `charcode' and
+	`variantSelector' are within 32-bit integer for LP64
+	platforms.
+	(FT_Face_GetCharsOfVariant): Check `variantSelector' is
+	within unsigned 32-bit integer for LP64 platforms.
+
+	* src/base/fttrigon.c (ft_trig_downscale): The FT_Fixed
+	variable `val' and unsigned long constant FT_TRIG_SCALE
+	are cast to FT_UInt32, when calculates FT_UInt32.
+	(FT_Vector_Rotate): The long constant 1L is cast to
+	FT_Int32 to calculate FT_Int32 `half'.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cff: Cast the long variables to 32-bit for LP64 systems.
+
+	* src/cff/cffdrivr.c (cff_get_advances): Insert
+	explicit cast to modify a 32-bit flag by unsigned
+	long constant.
+
+	* src/cff/cffobjs.c (cff_face_init): Ditto.
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings):
+	Replace the casts to FT_Long by the casts to FT_Int32
+	for LP64 platforms.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Improve PCF_PropertyRec.value names on LP64 platforms.
+
+	* src/pcf/pcf.h: In PCF_PropertyRec.value, the member
+	`integer' is replaced by `l', `cardinal' is replaced
+	by `ul', to fix the difference between the name and
+	the types on LP64 platforms.
+
+	* src/pcf/pcfdrivr.c (pcf_get_bdf_property): Reflect
+	PCF_PropertyRec.value change, with appropriate casts
+	to FT_Int32/FT_UInt32.  Their destinations
+	BDF_PropertyRec.{integer|cardinal} are public and
+	explicitly defined as FT_Int32/FT_UInt32.
+
+	* src/pcf/pcfread.c (pcf_get_properties, pcf_load_font):
+	Reflect PCF_PropertyRec.value change.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	pcf: Fix some data types mismatching with their sources.
+
+	* src/pcf/pcfdrivr.c (pcf_cmap_char_index): The type of
+	`code' is matched to PCF_Encoding->enc.
+	(pcf_cmap_char_next): The type of `charcode' is matched
+	to PCF_Encoding->enc.  When *acharcode is set by charcode,
+	an overflow is checked and cast to unsigned 32-bit
+	integer.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	bdf: Improve bdf_property_t.value names for LP64 platforms.
+
+	* src/bdf/bdf.h: In bdf_property_t.value, the member
+	`int32' is replaced by `l', `card32' is replaced by
+	`ul', to fix the difference between the name and the
+	types on LP64 platforms.
+
+	* src/bdf/bdfdrivr.c (BDF_Face_Init): Reflect
+	bdf_property_t.value change.
+	(bdf_get_bdf_property): Reflect bdf_property_t.value
+	change, with appropriate casts to FT_Int32/FT_UInt32.
+	Their destinations BDF_PropertyRec.{integer|cardinal}
+	are public and explicitly defined as FT_Int32/FT_UInt32.
+
+	* src/bdf/bdflib.c (_bdf_add_property): Reflect
+	bdf_property_t.value change.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	bdf: Fix some data types mismatching with their sources.
+
+	* src/bdf/bdfdrivr.c (bdf_cmap_char_index): The type
+	of `code' is matched with BDF_encoding_el->enc.
+	(bdf_cmap_char_next): The type of `charcode' is
+	matched with BDF_encoding_el->enc.  When *acharcode
+	is set by charcode, an overflow is checked and
+	cast to unsigned 32-bit integer.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	autofit: Improve Unicode range definitions.
+
+	* src/autofit/aftypes.h (AF_UNIRANGE_REC): New macro
+	to declare a range by two unsigned 32-bit integer,
+	to avoid 64-bit range definition on LP64 platforms.
+
+	* src/autofit/aflatin.c (af_latin_uniranges): Ditto.
+
+	* src/autofit/aflatin2.c (af_latin2_uniranges): Ditto.
+
+	* src/autofit/afindic.c (af_indic_uniranges): Ditto.
+
+	* src/autofit/afcjk.c (af_cjk_uniranges): Declare
+	the ranges by AF_UNIRANGE_REC.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	smooth: Fix a data type mismatching with its source.
+
+	* src/smooth/ftgrays.c (gray_sweep): The type of
+	`area' is matched with the 3rd argument `area'
+	of gray_hline().
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	smooth: Fix a data type mismatching with its source.
+
+	* src/smooth/ftgrays.c (gray_render_line): The type
+	of `area' is matched with TWorker.area.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Disable the legacy compatibility if 16-bit system.
+
+	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup): Exclude
+	the legacy behaviour from 16-bit platform, because the
+	current hack cannot detect the caller uses this function
+	via legacy convention.
+	(FTC_SBitCache_Lookup): Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Check 32-bit glyph index on 16-bit systems.
+
+	* src/cache/ftcbasic.c (ftc_basic_family_get_count):
+	Check overflow caused by the face including large
+	number of glyphs > 64k.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Fix some data types mismatching with their sources.
+
+	* src/cache/ftccache.c (ftc_cache_resize): The types of
+	`p', `mask', `count' are matched with FTC_Cache->{p,mask}.
+	(FTC_Cache_Clear): The type of `old_index' is matched to
+	FTC_Cache->{p,mask}.
+
+	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): The type
+	of `_idx' is matched with FTC_Cache->{p,mask}.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Fix some data types mismatching with their sources.
+
+	* src/cache/ftcsbits.c (ftc_snode_load): The types
+	of `xadvance' and `yadvance' are matched with
+	FT_GlyphSlot->advance.{x|y}.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cache: Cast NULL to a required function type explicitly.
+
+	* src/cache/ftcmanag.c (FTC_Manager_RemoveFaceID):
+	Insert explicit cast from NULL to function type.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	fttypes.h: Cast FT_MAKE_TAG output to FT_Tag explicitly.
+
+	* include/freetype/fttypes.h (FT_MAKE_TAG):
+	Cast the result to FT_Tag.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	psnames: Handle Unicode codepoints by FT_UInt32 variables.
+
+	* src/psnames/psmodule.c (BASE_GLYPH): Cast the result
+	to unsigned 32-bit integer for LP64 platform.
+	(ps_unicode_value): Return the value by unsigned 32-bit
+	integer instead of unsigned long.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	psaux: Use size_t variable to pass the buffer size.
+
+	* src/psaux/psaux.h (to_bytes): The type of `max_bytes'
+	(the argument to pass the buffer size) is changed to
+	size_t, to match with ANSI C string functions.
+
+	* src/psaux/psconv.h (PS_Conv_StringDecode,
+	PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Ditto.
+
+	* src/psaux/psconv.c (PS_Conv_StringDecode,
+	PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Ditto.
+
+	* src/psaux/psobjs.h (ps_parser_to_bytes): Ditto.
+
+	* src/psaux/psobjs.c (ps_parser_to_bytes): Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	type1: Use size_t variable to pass the string length.
+
+	* psaux.h: The type of `len' (the argument to pass
+	the buffer size to the function in AFM_ParserRec)
+	is changed to size_t, to match with ANSI C string
+	functions.
+
+	* t1afm.c (t1_get_index): Ditto.
+
+	* test_afm.c (dummy_get_index): Ditto.
+
+	* afmparse.c (afm_parser_read_vals): To call
+	AFM_ParserRec.get_index, the length of token
+	`len' is cast to size_t.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cid: Fix some data types mismatching with their sources.
+
+	* src/cid/cidparse.c (cid_parser_new): The types of
+	`read_len' and `stream_len' are matched to
+	FT_Stream->size.  Unrequired cast is removed.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cff: Fix for unused variable `rest'.
+
+	* src/cff/cffparse.c (cff_parse_real): Insert
+	FT_UNUSED() to hide the unused variable warning.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	cff: Fix some data types mismatching with their sources.
+
+	* src/cff/cffgload.c (cff_slot_load): The types of
+	`top_upm' and `sub_upm' are matched with
+	CFF_FontRecDict->units_per_em.
+
+	* src/cff/cffobjs.c (cff_size_select): Ditto.
+	(cff_size_request): Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	bdf: Fix some data types mismatching with their sources.
+
+	* bdflib.c (_bdf_list_ensure): The type of `num_items'
+	is matched with _bdf_list_t.used.  Also the types of
+	`oldsize', `newsize', `bigsize' are matched too.
+	(_bdf_readstream): `cursor' is used as an offset to
+	the pointer, it should be typed as FT_Offset.  Also
+	the types of `bytes', `start', `end', `avail' are matched.
+
+	* bdfdrivr.c: The type of BDF_CMap->num_encodings is
+	matched with FT_CMap->clazz->size.
+	(bdf_cmap_char_index): The types of `min', `max', `mid'
+	are matched with BDF_CMap->num_encodings.  The type of
+	`result' is matched with encoding->glyph.
+	(bdf_cmap_char_next): Ditto, the type of `code' is
+	matched with BDF_encoding_el.enc.
+	(bdf_interpret_style): The type of `lengths' is changed
+	to size_t, to take the value by ft_strlen().  Also the
+	types of `len', `nn', `mm' are matched.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	sfnt: Count the size of the memory object by ptrdiff_t.
+
+	* src/sfnt/ttbdf.c (tt_face_find_bdf_prop): The type of
+	`property_len' is changed from FT_UInt to FT_Offset,
+	to match with size_t, which is appropriate type for the
+	object in the memory buffer.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	lzw: Count the size of the memory object by ptrdiff_t.
+
+	* src/lzw/ftzopen.h: The types of FT_LzwState->{buf_total,
+	stack_size} are changed from FT_UInt to FT_Offset, to match
+	with size_t, which is appropriate type for the object in
+	the memory buffer.
+
+	* src/lzw/ftzopen.c (ft_lzwstate_stack_grow): The types of
+	`old_size' and `new_size' are changed from FT_UInt to
+	FT_Offset, to match with size_t, which is appropriate type
+	for the object in the memory buffer.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	otvalid: Count the table size on memory by ptrdiff_t.
+
+	* src/otvalid/otvgpos.c (otv_ValueRecord_validate):
+	Change the type of table size from FT_UInt to
+	FT_PtrDist because it is calculated by the memory
+	addresses.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	otvalid: Prevent an overflow by GPOS/GSUB 32b-bit offset.
+
+	* src/otvalid/otvgpos.c (otv_ExtensionPos_validate):
+	Extend ExtensionOffset from FT_UInt to FT_ULong, to
+	cover 32-bit offset on 16-bit platform.
+
+	* src/otvalid/otvgsub.c (otv_ExtensionSubst_validate):
+	Ditto.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	ftobjs.c: Prevent an overflow in glyph index handling.
+
+	* src/base/ftobjs.c (FT_Face_GetCharsOfVariant):
+	Improve the cast in comparison to avoid the truncation.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improve the variable types in raccess_make_file_name().
+
+	* src/base/ftrfork.c (raccess_make_file_name):
+	Change the type of cursor variable `tmp' to const char*,
+	to prevent the unexpected modification of original pathname.
+	(raccess_make_file_name): Change the type of new_length
+	to size_t.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	ftpatent.c: Fix for unused variable `error'.
+
+	* src/base/ftpatent.c (_tt_check_patents_in_range):
+	Fix warning for unused variable `error'.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	type1: Check invalid string longer than PostScript limit.
+
+	* src/type1/t1afm.c (t1_get_index): Check invalid string
+	which exceeds the limit of PostScript string/name objects.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gzip: Use FT2 zcalloc() & zfree() in ftgzip.c by default.
+
+	* src/gzip/ftgzip.c (zcalloc, zcfree): Disable all
+	zcalloc() & zfree() by zlib in zutil.c, those in
+	ftgzip.c by FT2 are enabled by default.  To use
+	zlib zcalloc() & zfree(), define USE_ZLIB_ZCALLOC.
+	See discussion:
+	https://lists.gnu.org/archive/html/freetype-devel/2009-02/msg00000.html
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gzip: Distinguish PureC from TurboC on MSDOS.
+
+	* src/gzip/zutil.c (zcalloc, zcfree): Enable only for
+	MSDOS platform.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Insert PureC pragma to allow unevaluated variables.
+
+	* builds/atari/ATARI.H: Insert PureC pragma not to
+	warn against set-but-unevaluated variable in gxvalid
+	module.
+
+2009-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	gxvalid: Pass the union by the pointer instead of the value.
+
+	* src/gxvalid/gxvcommn.h:
+	  - Declare new type `GXV_LookupValueCPtr'.
+	  - Update the type of the 2nd argument to pass GXV_LookupValueDesc
+	    data to the function prototyped as GXV_Lookup_Value_Validate_Func,
+	    from GXV_LookupValueDesc to GXV_LookupValueCPtr.
+	  - Likewise for the function prototyped as
+	    GXV_Lookup_Fmt4_Transit_Func.
+
+	  - Declare new type `GXV_StateTable_GlyphOffsetCPtr'.
+	  - Update the type of the 3rd argument to pass
+	    GXV_StateTable_GlyphOffsetDesc data to the function prototyped
+	    as GXV_StateTable_Entry_Validate_Func, from
+	    GXV_StateTable_GlyphOffsetDesc to GXV_StateTable_GlyphOffsetCPtr.
+
+	  - Declare new type `GXV_XStateTable_GlyphOffsetCPtr'.
+	  - Update the type of the 3rd argument to pass
+	    GXV_XStateTable_GlyphOffsetDesc data to the function prototyped
+	    as GXV_XStateTable_Entry_Validate_Func,
+	    from GXV_XStateTable_GlyphOffsetDesc
+	    to GXV_XStateTable_GlyphOffsetCPtr.
+
+	* src/gxvalid/gxvcommn.c (gxv_LookupTable_fmt0_validate,
+	gxv_XClassTable_lookupval_validate,
+	gxv_XClassTable_lookupfmt4_transit):
+	Update from GXV_LookupValueDesc to GXV_LookupValueCPtr.
+
+	* src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate,
+	gxv_bsln_LookupFmt4_transit): Ditto.
+
+	* src/gxvalid/gxvjust.c
+	(gxv_just_pcTable_LookupValue_entry_validate,
+	gxv_just_classTable_entry_validate,
+	gxv_just_wdcTable_LookupValue_validate): Ditto.
+
+	* src/gxvalid/gxvkern.c
+	(gxv_kern_subtable_fmt1_entry_validate): Ditto.
+
+	* src/gxvalid/gxvlcar.c (gxv_lcar_LookupValue_validate,
+	gxv_lcar_LookupFmt4_transit): Ditto.
+
+	* src/gxvalid/gxvopbd.c (gxv_opbd_LookupValue_validate,
+	gxv_opbd_LookupFmt4_transit): Ditto.
+
+	* src/gxvalid/gxvprop.c (gxv_prop_LookupValue_validate,
+	gxv_prop_LookupFmt4_transit): Ditto.
+
+	* src/gxvalid/gxvmort4.c
+	(gxv_mort_subtable_type4_lookupval_validate): Ditto.
+
+	* src/gxvalid/gxvmort0.c
+	(gxv_mort_subtable_type0_entry_validate): Update
+	from GXV_StateTable_GlyphOffsetDesc
+	to GXV_StateTable_GlyphOffsetCPtr.
+
+	* src/gxvalid/gxvmort1.c
+	(gxv_mort_subtable_type1_entry_validate): Ditto.
+
+	* src/gxvalid/gxvmort2.c
+	(gxv_mort_subtable_type2_entry_validate): Ditto.
+
+	* src/gxvalid/gxvmort5.c
+	(gxv_mort_subtable_type5_entry_validate): Ditto.
+
+	* src/gxvalid/gxvmorx2.c
+	(gxv_morx_subtable_type2_entry_validate): Ditto.
+
+	* src/gxvalid/gxvmorx5.c
+	(gxv_morx_subtable_type5_entry_validate): Ditto.
+
+	* src/gxvalid/gxvmorx1.c
+	(gxv_morx_subtable_type1_entry_validate): Ditto.
+	(gxv_morx_subtable_type1_LookupValue_validate,
+	gxv_morx_subtable_type1_LookupFmt4_transit):
+	Update from GXV_LookupValueDesc to GXV_LookupValueCPtr.
+
+	* src/gxvalid/gxvmorx0.c
+	(gxv_morx_subtable_type0_entry_validate): Update
+	from GXV_XStateTable_GlyphOffsetDesc
+	to GXV_XStateTable_GlyphOffsetCPtr.
+
+2009-07-29  Fabrice Bellet  <fabrice at bellet.info>
+
+	Fix Redhat bugzilla #513582 and Savannah bug #26849.
+
+	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP) <FTC_INLINE>: Fix
+	aliasing bug.
+
+2009-07-19  Werner Lemberg  <wl at gnu.org>
+
+	Document recent library changes.
+
+	* docs/CHANGES: Do it.
+
+2009-07-17  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #23786.
+
+	* src/truetype/ttobjs.c (tt_size_init_bytecode): Don't reset x_ppem
+	and y_ppem.  Otherwise the `*_CVT_Stretched' functions in ttinterp.c
+	get never called.
+	An anonymous guy suggested this change on Savannah, and it seems to
+	be the right solution.
+
+2009-07-15  Werner Lemberg  <wl at gnu.org>
+
+	* docs/release: Updated.
+
+2009-07-15  Werner Lemberg  <wl at gnu.org>
+
+	README.CVS -> README.git
+
+	* README.CVS: Renamed to...
+	* README.git: This.
+	Updated.
+
+2009-07-15  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Borland C++ compiler patch proposed by Mirco Babin.
+	https://lists.gnu.org/archive/html/freetype/2009-07/msg00016.html.
+
+	* builds/exports.mk: Delete unused flags, CCexe_{CFLAGS,LDFLAGS}.
+	Fix APINAMES_C and APINAMES_EXE pathnames to reflect the platform
+	specific pathname syntax.
+	* builds/compiler/bcc.mk: Remove unused flag, CCexe_LDFLAGS.
+	Define TE = `-e' separately (bcc32 cannot specify the pathname of
+	binary executable by T = `-o').
+	Extend the large page size in linking freetype.lib.
+	Add extra CLEAN target to delete bcc specific temporary files.
+	* builds/compiler/bcc-dev.mk: Ditto.
+
+2009-07-14  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #27026.
+
+	* builds/win32/vc2005/freetype.sln: Use correct version number.
+
+2009-07-12  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Add a script to check the undefined and unused trace macros.
+
+	* src/tools/chktrcmp.py: A script to check trace_XXXX macros
+	that are used in C source but undefined in fttrace.h, or
+	defined in fttrace.h but unused in C sources.  See
+	https://lists.gnu.org/archive/html/freetype-devel/2009-07/msg00013.html.
+	* docs/DEBUG: Mention on chktrcmp.py.
+	* docs/release: Ditto.
+
+2009-07-09  Werner Lemberg  <wl at gnu.org>
+
+	[ftraster] Make it compile again with -D_STANDALONE_.
+
+	* src/raster/ftraster.c [_STANDALONE_]: Define
+	FT_CONFIG_STANDARD_LIBRARY_H.
+	Include `string.h'.
+	Don't include `rastpic.h'.
+	Define FT_DEFINE_RASTER_FUNCS.
+
+2009-07-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	smooth: Check glyph size by width/height, instead of pitch/height.
+	Suggested by der Mouse <mouse at Rodents-Montreal.ORG>.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Improve
+	the check for too large glyph.  Replace the pair of `pitch' and
+	`height' by the pair of `width' and `height'.  `pitch' cannot
+	be greater than `height'.  The required is checking the product
+	`pitch' * `height' <= FT_ULONG_MAX, but we use cheap checks for
+	the realistic case only.
+
+2009-07-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Register 2 missing trace components, t1afm and ttbdf.
+
+	* include/freetype/internal/fttrace.h: Add FT_TRACE_DEF( t1afm )
+	and FT_TRACE_DEF( ttbdf ).  See
+	https://lists.gnu.org/archive/html/freetype-devel/2009-07/msg00013.html
+
+2009-07-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Register a trace component for ftgloadr.c.
+
+	* include/freetype/internal/fttrace.h: Add FT_TRACE_DEF( gloader ).
+	The macro `trace_gloader' was already used in the initial version
+	on 2002-02-24.
+
+2009-07-08  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Prevent the overflows by a glyph with too many points or contours.
+	The bug is reported by Boris Letocha <b.letocha at gmc.net>.  See
+	https://lists.gnu.org/archive/html/freetype-devel/2009-06/msg00031.html
+	https://lists.gnu.org/archive/html/freetype-devel/2009-07/msg00002.html
+
+	* include/freetype/ftimage.h (FT_OUTLINE_CONTOURS_MAX,
+	FT_OUTLINE_POINTS_MAX): New macros to declare the maximum
+	values of FT_Outline.{n_contours,n_points}.
+	* src/base/ftgloadr.c (FT_GlyphLoader_CheckPoints): Check the
+	total numbers of points and contours cause no overflows in
+	FT_Outline.{n_contours,n_points}.
+
+	* include/freetype/internal/ftgloadr.h (FT_GLYPHLOADER_CHECK_P,
+	FT_GLYPHLOADER_CHECK_C): Compare the numbers of points and
+	contours as unsigned long number, instead of signed int, to
+	prevent the overflows on 16-bit systems.
+
+2009-07-05  Bram Tassyns  <bramt at enfocus.be>
+
+	Improve compatibility to Acroread.
+	This fixes Savannah bug #26944.
+
+	* src/cff/cffload.c (cff_charset_compute_cids): For multiple GID to
+	single CID mappings, make the lowest value win.
+
+2009-06-28  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	ftpatent: Fix a bug by wrong usage of service->table_info().
+	https://lists.gnu.org/archive/html/freetype-devel/2008-12/msg00039.html
+
+	* include/freetype/internal/services/svsfnt.h: Extend
+	FT_SFNT_TableInfoFunc() to take new argument to obtain the offset
+	to the specified table.
+	* src/sfnt/sfdriver.c (sfnt_table_info): Extend to return the
+	table-offset to the caller function.
+	* src/base/ftpatent.c (_tt_check_patents_in_table): Use new
+	service->table_info().
+	* src/base/ftobjs.c (FT_Sfnt_Table_Info): Synchronize to new
+	service->table_info().
+
+2009-06-28  Werner Lemberg  <wl at gnu.org>
+
+	[psaux, cff] Protect against nested `seac' calls.
+
+	* include/freetype/internal/psaux.h (T1_Decoder), src/cff/cffgload.h
+	(CFF_Decoder): Add `seac' boolean variable.
+
+	* src/cff/cffgload.c (cff_operator_seac), src/psaux/t1decode.c
+	(t1operator_seac): Use it.
+
+2009-06-28  Werner Lemberg  <wl at gnu.org>
+
+	Thinko.
+
+	* src/psaux/t1decode.c (t1operator_seac)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Test for existence of incremental
+	interface.
+
+2009-06-28  Werner Lemberg  <wl at gnu.org>
+
+	* devel/ftoption.h [FT_CONFIG_OPTION_INCREMENTAL]: Define.
+
+2009-06-27  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Add tools to preprocess the source files for AtariST PureC.
+
+	* builds/atari/deflinejoiner.awk: New file to filter C source files
+	for broken C preprocessor of PureC compiler.
+
+	* builds/atari/gen-purec-patch.sh: New file to generate a patch set
+	for PureC, by using deflinejoiner.awk.
+
+2009-06-27  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Keep existing modules.cfg in the building tree.
+
+	* configure: If `configure' is executed outside of the source tree,
+	an existing `modules.cfg' file in the build directory should be
+	kept, not overwritten by the version in the source tree.
+
+2009-06-27  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Filter --srcdir= option before invoking builds/unix/configure.
+
+	* configure: If builds/unix/configure is invoked with --srcdir
+	option, the option should take `builds/unix' directory instead of
+	the top source directory.  Thus the configure script in the top
+	directory should modify the --srcdir= option if
+	`builds/unix/configure' is invoked.
+
+2009-06-27  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improve configure.raw for cross-building on exe-suffixed systems.
+
+	* builds/unix/configure.raw: Fix a bug in sed script to extract
+	native suffix for binary executables, patch by Peter Breitenlohner.
+	https://lists.gnu.org/archive/html/freetype-devel/2009-04/msg00036.html
+
+2009-06-26  Werner Lemberg  <wl at gnu.org>
+
+	[truetype] Remove TT_SubGlyphRec.
+
+	* src/truetype/ttobjs.h (TT_SubGlyphRec): Removed, unused.
+
+2009-06-26  Werner Lemberg  <wl at gnu.org>
+
+	* */*: For warning messages, replace FT_ERROR with FT_TRACE0.
+
+	FT_ERROR is now used only if a function produces a non-zero `error'
+	value.
+
+	Formatting, improving and harmonizing debug strings.
+
+2009-06-25  Werner Lemberg  <wl at gnu.org>
+
+	Provide version information better.
+
+	* src/base/ftinit.c (FT_Init_FreeType): Don't set version here
+	but...
+	* src/base/ftobjs.c (FT_New_Library): Here.
+
+2009-06-22  Werner Lemberg  <wl at gnu.org>
+
+	Use 16.16 format while parsing Type 1 charstrings.
+	This fixes Savannah bug #26867.
+
+	Previously, only integers have been used which can lead to serious
+	rounding errors.
+
+	However, fractional values are only used internally; after the
+	charstrings (of either Type 1 or 2) have been processed, the
+	resulting coordinates get rounded to integers currently -- before
+	applying scaling.  This should be fixed; at the same time a new load
+	flag should be introduced, to be used in combination with
+	FT_LOAD_NO_SCALE, which indicates that font units are returned in
+	16.16 format.  Similarly, the incremental interface should be
+	extended to allow fractional values for metrics.
+
+	* include/freetype/internal/psaux.h (T1_BuilderRec): Remove `shift'
+	field.
+	* include/freetype/internal/pshints.h (T1_Hints_SetStemFunc,
+	T1_Hints_SetStem3Func): Use FT_Fixed for coordinates.
+
+	* src/psaux/psobjs.c: Include FT_INTERNAL_CALC_H.
+	(t1_build_add_point): Always convert fixed to integer.
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings):
+	Use 16.16 format everywhere (except for large integers followed by a
+	`div').
+	[CAN_HANDLE_NON_INTEGRAL_T1_OPERANDS]: Remove #ifdef and activate
+	code unconditionally.
+	Add support for random numbers and update remaining code
+	accordingly; this should work now.
+	(t1operator_seac): Updated.
+	* src/psaux/pshrec.c: Include FT_INTERNAL_CALC_H.
+	(ps_hints_t1stem3, t1_hints_stem): Updated.
+
+	* src/cid/cidgload.c: Include FT_INTERNAL_CALC_H.
+	(cid_load_glyph) [FT_CONFIG_OPTION_INCREMENTAL],
+	(cid_face_compute_max_advance, cid_slot_load_glyph): Updated.
+
+	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String)
+	[FT_CONFIG_OPTION_INCREMENTAL], (T1_Get_Advances, T1_Load_Glyph):
+	Updated.
+	* src/type1/t1load.c: Include FT_INTERNAL_CALC_H.
+	* src/type1/t1objs.c (T1_Face_Init): Updated.
+
+2009-06-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshrec.c: Use PSH_Err_Ok.
+
+2009-06-21  Werner Lemberg  <wl at gnu.org>
+
+	Code beautification.
+
+	* src/type1/t1load.c (FT_INT_TO_FIXED): Removed.
+	Replace everywhere with INT_TO_FIXED.
+	(FT_FIXED_TO_INT): Move to ...
+	* include/freetype/internal/ftcalc.h (FIXED_TO_INT): Here.
+	Update all users.
+
+2009-06-20  Werner Lemberg  <wl at gnu.org>
+
+	Remove unused variables.
+
+	* include/freetype/internal/psaux.h (T1_BuilderRec),
+	src/cff/cffgload.h (CFF_Builder): Remove `last'.
+	Update all users.
+
+2009-06-20  Werner Lemberg  <wl at gnu.org>
+
+	[psaux] Check large integers while parsing charstrings.
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Large
+	integers must be followed by a `div' operator.
+
+2009-06-20  Werner Lemberg  <wl at gnu.org>
+
+	[cff] Revert last change.
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Do it.
+	Next time, don't confuse Type 2 charstring opcodes with TOP DICT
+	values...
+
+2009-06-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/aflatin.c (af_latin_metrics_check_digits): Fix
+	compiler warning.
+
+2009-06-20  Werner Lemberg  <wl at gnu.org>
+
+	* builds/compiler/gcc.mk (CFLAGS): Use -O3, not -O6.
+
+2009-06-19  Werner Lemberg  <wl at gnu.org>
+
+	[cff] Fix handling of reserved byte 0xFF.
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Abort if byte
+	0xFF is encountered.
+
+2009-06-19  Werner Lemberg  <wl at gnu.org>
+
+	Improve debug messages for Type1 charstrings.
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Emit newlines
+	after instructions.
+	Prettify output.
+
+2009-06-19  Werner Lemberg  <wl at gnu.org>
+
+	More ftgray fixes for FT_STATIC_RASTER.
+	Problems reported by suyu at cooee.cn.
+
+	* src/smooth/ftgrays.c (gray_move_to, gray_raster_render): Use
+	RAS_VAR.
+
+2009-06-18  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2009-06-18  Werner Lemberg  <wl at gnu.org>
+
+	Fix B/W rasterization of subglyphs with different drop-out modes.
+
+	Normally, the SCANMODE instruction (if present) to set the drop-out
+	mode in a TrueType font is located in the `prep' table only and thus
+	valid for all glyphs.  However, there are fonts like `pala.ttf'
+	which additionally contain this instruction in the hinting code of
+	some glyphs (but not all).  As a result it can happen that a
+	composite glyph needs multiple drop-out modes for its subglyphs
+	since the rendering state gets reset for each subglyph.
+
+	FreeType collects the hinted outlines from all subglyphs, then it
+	sends the data to the rasterizer.  It also sends the drop-out mode
+	-- after hinting has been applied -- and here is the error: It sends
+	the drop-out mode of the last subglyph only; drop-out modes of all
+	other subglyphs are lost.
+
+	This patch fixes the problem; it adds a second, alternative
+	mechanism to pass the drop-out mode: For each contour, the
+	rasterizer now checks the first `tags' array element.  If bit 2 is
+	set, bits 5-7 contain the contour's drop-out mode, overriding the
+	global drop-out mode.
+
+	* include/freetype/ftimage.h (FT_CURVE_TAG_HAS_SCANMODE): New macro.
+
+	* src/truetype/ttgload.c (TT_Hint_Glyph): Store drop-out mode in
+	`tags[0]'.
+
+	* src/raster/ftraster.c (Flow_Up, Overshoot_Top, Overshoot_Bottom):
+	Use bits 3-5 instead of 0-2.
+	(New_Profile): Set the drop-out mode in the profile's `flags' field.
+	(Decompose_Curve): Check `tags[0]' and set `dropOutControl' if
+	necessary.
+	(Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
+	Horizontal_Gray_Sweep_Drop, Draw_Sweep): Use the profile's drop-out
+	mode.
+
+2009-06-16  Werner Lemberg  <wl at gnu.org>
+
+	Improve scan conversion rules 4 and 6.
+
+	Two new constraints are introduced to better identify a `stub' -- a
+	concept which is only vaguely described in the OpenType
+	specification.  The old code was too rigorous and suppressed more
+	pixel than it should.
+
+	  . The intersection of the two profiles with the scanline is less
+	    than a half pixel.  Code related to this was already present in
+	    the sources but has been commented out.
+
+	  . The endpoint of the original contour forming a profile has a
+	    distance (`overshoot') less than half a pixel to the scanline.
+
+	Note that the two additional conditions fix almost all differences
+	to the Windows rasterizer, but some problematic cases remain.
+
+	* src/raster/ftraster.c (Overshoot_Top, Overshoot_Bottom): New
+	macros for the `flags' field in the `TProfile' structure.
+	(IS_BOTTOM_OVERSHOOT, IS_TOP_OVERSHOOT): New macros.
+	(New_Profile, End_Profile): Pass overshoot flag as an argument and
+	set it accordingly.
+	Update callers.
+	(Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement the two new
+	constraints.
+
+2009-06-11  Werner Lemberg  <wl at gnu.org>
+
+	Increase precision for B/W rasterizer.
+
+	* src/raster/ftraster.c (Set_High_Precision): Add two more bits to
+	the precision.  This corrects rendering of some small glyphs, for
+	example, glyph `xi' in verdana.ttf at 13 ppem.  Testing with ftbench
+	on my GNU/Linux box I don't see a performance degradation.
+
+2009-06-08  Michael Zucchi  <notzed at gmail.com>
+
+	Handle FT_STROKER_LINECAP_BUTT.
+	This fixes Savannah bug #26757.
+
+	* src/base/ftstroke.c (ft_stroker_cap): Implement it.
+
+2009-06-07  Harald Fernengel  <harry at kdevelop.org>
+
+	Fix some potential out-of-memory crashes.
+
+	* src/base/ftobjs.c (ft_glyphslot_done): Check `slot->internal'.
+	* src/base/ftstream.c (FT_Stream_ReleaseFrame): Check `stream'.
+	* src/truetype/ttinterp.c (TT_New_Context): Avoid double-free of
+	`exec' in case of failure.
+
+2009-06-07  Werner Lemberg  <wl at gnu.org>
+
+	Simplify math.
+	Suggested by Alexei Podtelezhnikov <apodtele at gmail.com>.
+
+	* src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
+	Horizontal_Gray_Sweep_Drop): Do it.
+
+2009-06-04  Werner Lemberg  <wl at gnu.org>
+
+	Preparation for fixing scan conversion rules 4 and 6.
+
+	* src/raster/ftraster.c (TFlow): Replace enumeration with...
+	(Flow_Up): This macro.
+	(TProfile): Replace `flow' member with `flags' bit field.
+	Update all affected code.
+
+2009-05-29  James Cloos  <cloos at jhcloos.com>
+
+	Enable autohinting for glyphs rotated by multiples of 90°.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Alter check for permitted
+	matrices to allow rotations by multiples of 90°, not only unrotated,
+	possibly slanted matrices.
+
+2009-05-28  Werner Lemberg  <wl at gnu.org>
+
+	Remove compiler warning.
+	Reported by Krzysztof Kowalczyk <kkowalczyk at gmail.com>.
+
+	* src/autofit/aflatin2.c (af_latin2_hint_edges): Move declaration of
+	`n_edges' into `#if' block.
+
+2009-05-28  Werner Lemberg  <wl at gnu.org>
+
+	Make compilation work with FT_CONFIG_OPTION_USE_ZLIB not defined.
+	Reported by Krzysztof Kowalczyk <kkowalczyk at gmail.com>.
+
+	* src/pcf/pcfdrivr.c (PCF_Face_Init) [!FT_CONFIG_OPTION_USE_ZLIB]:
+	Make it work.
+	Simplify #ifdef logic.
+
+2009-05-22  Werner Lemberg  <wl at gnu.org>
+
+	Improve b/w rasterizer.
+	Problem reported by Krzysztof Kotlenga <pocek at users.sf.net>.
+
+	* src/raster/raster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
+	Horizontal_Gray_Sweep_Drop): For smart drop-out mode, if
+	intersections are equally distant relative to next pixel center,
+	select the left pixel, not the right one.
+
+2009-05-19  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #26600.
+
+	* src/type42/t42parse.c (t42_load_keyword): Handle
+	T1_FIELD_LOCATION_FONT_EXTRA.
+
+2009-04-30  Werner Lemberg  <wl at gnu.org>
+
+	Document recent changes to ftview.
+
+	* docs/CHANGES: Do it.
+
+2009-04-27  Werner Lemberg  <wl at gnu.org>
+
+	autohinter: Don't change digit widths if all widths are the same.
+	This fixes FreeDesktop bug #21197.
+
+	* src/autofit/afglobal.c (AF_DIGIT): New macro.
+	(af_face_globals_compute_script_coverage): Mark ASCII digits in
+	`glyph_scripts' array.
+	(af_face_globals_get_metrics): Updated.
+	(af_face_globals_is_digit): New function.
+	* src/autofit/afglobal.h: Updated.
+	(AF_ScriptMetricsRec): Add `digits_have_same_width' flag.
+
+	* src/autofit/aflatin.c: Include FT_ADVANCES_H.
+	(af_latin_metrics_check_digits): New function.
+	(af_latin_metrics_init): Use it.
+	* src/autofit/aflatin.h: Updated.
+	* src/autofit/afcjk.c (af_cjk_metrics_init): Updated.
+
+	* src/autofit/aflatin2.c: Similar changes as with aflatin.c.
+
+	* src/autofit/afloader.c (af_loader_load_g): Test digit width.
+
+	* docs/CHANGES: Document it.
+
+2009-04-26  Werner Lemberg  <wl at gnu.org>
+
+	Make ftgrays compile with _STANDALONE_ and FT_STATIC_RASTER again.
+	Problems reported by suyu at cooee.cn.
+
+	* src/smooth/ftgrays.c (FT_DEFINE_OUTLINE_FUNCS,
+	FT_DEFINE_RASTER_FUNCS) [_STANDALONE_]: Define.
+	[!_STANDALONE_]: Include ftspic.h only here.
+	(ras): Define/declare after definition of `TWorker'.
+	Use `RAS_VAR_' where necessary.
+
+2009-04-21  Karl Berry  <karl at gnu.org>
+
+	Fix AC_CHECK_FT2.
+
+	* builds/unix/freetype2.m4: Only check PATH for freetype-config if
+	we did not already find it from a prefix option.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Add #error to modules and files that do not support PIC yet.
+
+	When FT_CONFIG_OPTION_PIC is defined the following files will
+	create #error:
+	* src/bdf/bdfdrivr.h
+	* src/cache/ftcmanag.c
+	* src/cid/cidriver.h
+	* src/gxvalid/gxvmod.h
+	* src/gzip/ftgzip.c
+	* src/lzw/ftlzw.c
+	* src/otvalid/otvmod.h
+	* src/pcf/pcfdrivr.h
+	* src/pfr/pfrdrivr.h
+	* src/psaux/psauxmod.h
+	* src/type1/t1driver.h
+	* src/type42/t42drivr.h
+	* src/winfonts/winfnt.h
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in autofit module.
+
+	* include/freetype/internal/autohint.h add macros to init
+	instances of FT_AutoHinter_ServiceRec.
+
+	* src/autofit/afmodule.h declare autofit_module_class
+	using macros from ftmodapi.h,
+	when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/autofit/afmodule.c when FT_CONFIG_OPTION_PIC is defined
+	af_autofitter_service and autofit_module_class structs
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from afpic.h in order to access them.
+
+	* src/autofit/aftypes.h add macros to init and declare
+	instances of AF_ScriptClassRec.
+
+	* src/autofit/afcjk.h declare af_cjk_script_class
+	using macros from aftypes.h,
+	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
+	* src/autofit/afcjk.c when FT_CONFIG_OPTION_PIC is defined
+	af_cjk_script_class struct will have function to init it instead of
+	being allocated in the global scope.
+
+	* src/autofit/afdummy.h declare af_dummy_script_class
+	using macros from aftypes.h,
+	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
+	* src/autofit/afdummy.c when FT_CONFIG_OPTION_PIC is defined
+	af_dummy_script_class struct will have function to init it instead of
+	being allocated in the global scope.
+
+	* src/autofit/afindic.h declare af_indic_script_class
+	using macros from aftypes.h,
+	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
+	* src/autofit/afindic.c when FT_CONFIG_OPTION_PIC is defined
+	af_indic_script_class struct will have function to init it instead of
+	being allocated in the global scope.
+
+	* src/autofit/aflatin.h declare af_latin_script_class
+	using macros from aftypes.h,
+	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
+	* src/autofit/aflatin.c when FT_CONFIG_OPTION_PIC is defined
+	af_latin_script_class struct will have function to init it instead of
+	being allocated in the global scope.
+	Change af_latin_blue_chars to be PIC-compatible by being a two
+	dimensional array rather than array of pointers.
+
+
+	* src/autofit/aflatin2.h declare af_latin2_script_class
+	using macros from aftypes.h,
+	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
+	* src/autofit/aflatin2.c when FT_CONFIG_OPTION_PIC is defined
+	af_latin2_script_class struct will have function to init it instead of
+	being allocated in the global scope.
+	Change af_latin2_blue_chars to be PIC-compatible by being a two
+	dimensional array rather than array of pointers.
+
+	* src/autofit/afglobal.c when FT_CONFIG_OPTION_PIC is defined
+	af_script_classes array initialization was moved to afpic.c and
+	is later referred using macros defined in afpic.h.
+
+	New Files:
+	* src/autofit/afpic.h declare struct to hold PIC globals for autofit
+	module and macros to access them.
+	* src/autofit/afpic.c implement functions to allocate, destroy and
+	initialize PIC globals for autofit module.
+
+	* src/autofit/autofit.c add new file to build: afpic.c.
+	* src/autofit/jamfile add new files to FT2_MULTI build: afpic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in pshinter module.
+
+	* include/freetype/internal/pshints.h add macros to init
+	instances of PSHinter_Interface.
+
+	* src/pshinter/pshmod.h declare pshinter_module_class
+	using macros from ftmodapi.h,
+	when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/pshinter/pshmod.c when FT_CONFIG_OPTION_PIC is defined
+	pshinter_interface and pshinter_module_class structs
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from pshpic.h in order to access them.
+
+	New Files:
+	* src/pshinter/pshpic.h declare struct to hold PIC globals for pshinter
+	module and macros to access them.
+	* src/pshinter/pshpic.c implement functions to allocate, destroy and
+	initialize PIC globals for pshinter module.
+
+	* src/pshinter/pshinter.c add new file to build: pshpic.c.
+	* src/pshinter/jamfile add new files to FT2_MULTI build: pshpic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in psnames module.
+
+	* include/freetype/internal/services/svpscmap.h add macros to init
+	instances of FT_Service_PsCMapsRec.
+
+	* src/psnames/psmodule.h declare psnames_module_class
+	using macros from ftmodapi.h,
+	when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/psnames/psmodule.c when FT_CONFIG_OPTION_PIC is defined
+	pscmaps_interface and pscmaps_services structs
+	and psnames_module_class array
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from pspic.h in order to access them.
+
+	New Files:
+	* src/psnames/pspic.h declare struct to hold PIC globals for psnames
+	module and macros to access them.
+	* src/psnames/pspic.c implement functions to allocate, destroy and
+	initialize PIC globals for psnames module.
+
+	* src/psnames/psnames.c add new file to build: pspic.c.
+	* src/psnames/jamfile add new files to FT2_MULTI build: pspic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in raster renderer.
+
+	* src/raster/ftrend1.h declare ft_raster1_renderer_class
+	and ft_raster5_renderer_class
+	using macros from ftrender.h,
+	when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/smooth/ftrend1.c when FT_CONFIG_OPTION_PIC is defined
+	ft_raster1_renderer_class and ft_raster5_renderer_class structs
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	Macros will be used from rastpic.h in order to access
+	ft_standard_raster from the pic_container (allocated in ftraster.c).
+	In ft_raster1_render when PIC is enabled, the last letter of
+	module_name is used to verify the renderer class rather than the
+	class pointer.
+
+	* src/raster/ftraster.c when FT_CONFIG_OPTION_PIC is defined
+	ft_standard_raster struct will have function to init it
+	instead of being allocated in the global scope.
+
+	New Files:
+	* src/raster/rastpic.h declare struct to hold PIC globals for raster
+	renderer and macros to access them.
+	* src/raster/rastpic.c implement functions to allocate, destroy and
+	initialize PIC globals for raster renderer.
+
+	* src/raster/raster.c add new file to build: rastpic.c.
+	* src/raster/jamfile add new files to FT2_MULTI build: rastpic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in smooth renderer.
+
+	* src/smooth/ftsmooth.h declare ft_smooth_renderer_class,
+	ft_smooth_lcd_renderer_class and ft_smooth_lcdv_renderer_class
+	using macros from ftrender.h,
+	when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/smooth/ftsmooth.c when FT_CONFIG_OPTION_PIC is defined
+	the following structs:
+	ft_smooth_renderer_class, ft_smooth_lcd_renderer_class
+	and ft_smooth_lcdv_renderer_class
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from ftspic.h in order to access
+	ft_grays_raster from the pic_container (allocated in ftgrays.c).
+
+	* src/smooth/ftgrays.h include FT_CONFIG_CONFIG_H
+	* src/smooth/ftgrays.c when FT_CONFIG_OPTION_PIC is NOT defined
+	func_interface was moved from gray_convert_glyph_inner function
+	to the global scope.
+	When FT_CONFIG_OPTION_PIC is defined
+	func_interface and ft_grays_raster structs
+	will have functions to init them
+	instead of being allocated in the global scope.
+	And func_interface will be allocated on the stack of
+	gray_convert_glyph_inner.
+
+	New Files:
+	* src/smooth/ftspic.h declare struct to hold PIC globals for smooth
+	renderer and macros to access them.
+	* src/smooth/ftspic.c implement functions to allocate, destroy and
+	initialize PIC globals for smooth renderer.
+
+	* src/smooth/smooth.c add new file to build: ftspic.c.
+	* src/smooth/jamfile add new files to FT2_MULTI build: ftspic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in cff driver.
+
+	* include/freetype/internal/services/svcid.h add macros to init
+	instances of FT_Service_CIDRec.
+	* include/freetype/internal/services/svpsinfo.h add macros to init
+	instances of FT_Service_PsInfoRec.
+
+	* src/cff/cffcmap.h declare cff_cmap_encoding_class_rec
+	and cff_cmap_unicode_class_rec using macros from
+	ftobjs.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/cff/cffcmap.c when FT_CONFIG_OPTION_PIC is defined
+	the following structs:
+	cff_cmap_encoding_class_rec and cff_cmap_unicode_class_rec
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+
+	* src/cff/cffdrivr.h declare cff_driver_class using macros from
+	ftdriver.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/cff/cffdrivr.c when FT_CONFIG_OPTION_PIC is defined
+	the following structs:
+	cff_service_glyph_dict, cff_service_ps_info, cff_service_ps_name
+	cff_service_get_cmap_info, cff_service_cid_info, cff_driver_class,
+	and cff_services array
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from cffpic.h in order to access them
+	from the pic_container.
+	Use macros from cffpic.h in order to access the
+	structs allocated in cffcmap.c
+
+	* src/cff/cffobjs.c Use macros from cffpic.h in order to access the
+	structs allocated in cffcmap.c
+
+	* src/cff/parser.c when FT_CONFIG_OPTION_PIC is defined
+	implement functions to create and destroy cff_field_handlers array
+	instead of being allocated in the global scope.
+	And macros will be used from cffpic.h in order to access it
+	from the pic_container.
+
+	New Files:
+	* src/cff/cffpic.h declare struct to hold PIC globals for cff
+	driver and macros to access them.
+	* src/cff/cffpic.c implement functions to allocate, destroy and
+	initialize PIC globals for cff driver.
+
+	* src/cff/cff.c add new file to build: cffpic.c.
+	* src/cff/jamfile add new files to FT2_MULTI build: cffpic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in sfnt driver.
+
+	* include/freetype/internal/services/svbdf.h add macros to init
+	instances of FT_Service_BDFRec.
+	* include/freetype/internal/services/svgldict.h add macros to init
+	instances of FT_Service_GlyphDictRec.
+	* include/freetype/internal/services/svpostnm.h add macros to init
+	instances of FT_Service_PsFontNameRec.
+	* include/freetype/internal/services/svsfnt.h add macros to init
+	instances of FT_Service_SFNT_TableRec.
+	* include/freetype/internal/services/svttcmap.h add macros to init
+	instances of FT_Service_TTCMapsRec.
+	* include/freetype/internal/sfnt.h add macros to init
+	instances of SFNT_Interface.
+
+	* src/sfnt/sfdriver.h declare sfnt_module_class using macros from
+	ftmodapi.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/sfnt/sfdriver.c when FT_CONFIG_OPTION_PIC is defined
+	the following structs:
+	sfnt_service_sfnt_table, sfnt_service_glyph_dict, sfnt_service_ps_name
+	tt_service_get_cmap_info, sfnt_service_bdf, sfnt_interface,
+	sfnt_module_class, and sfnt_services array
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from sfntpic.h in order to access them
+	from the pic_container.
+
+	* src/sfnt/ttcmap.h add macros to init
+	instances of TT_CMap_ClassRec.
+	* src/sfnt/ttcmap.c when FT_CONFIG_OPTION_PIC is defined
+	the following structs:
+	tt_cmap0_class_rec, tt_cmap2_class_rec, tt_cmap4_class_rec
+	tt_cmap6_class_rec, tt_cmap8_class_rec, tt_cmap10_class_rec,
+	tt_cmap12_class_rec, tt_cmap14_class_rec and tt_cmap_classes array
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from sfntpic.h in order to access them
+	from the pic_container.
+	The content of tt_cmap_classes is now described in the
+	new file 'ttcmapc.h'.
+
+	New Files:
+	* src/sfnt/sfntpic.h declare struct to hold PIC globals for sfnt
+	driver and macros to access them.
+	* src/sfnt/sfntpic.c implement functions to allocate, destroy and
+	initialize PIC globals for sfnt driver.
+	* src/sfnt/ttcmapc.h describing the content of
+	tt_cmap_classes allocated in ttcmap.c
+
+	* src/sfnt/sfnt.c add new file to build: sfntpic.c.
+	* src/sfnt/jamfile add new files to FT2_MULTI build: sfntpic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support in truetype driver.
+
+	* include/freetype/internal/services/svmm.h add macros to init
+	instances of FT_Service_MultiMastersRec.
+	* include/freetype/internal/services/svttglyf.h add macros to init
+	instances of FT_Service_TTGlyfRec.
+
+	* src/truetype/ttdriver.h declare tt_driver_class using macros from
+	ftdriver.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
+	functions will be declared.
+	* src/truetype/ttdriver.c when FT_CONFIG_OPTION_PIC is defined
+	the following structs:
+	tt_service_gx_multi_masters, tt_service_truetype_glyf, tt_driver_class
+	and tt_services array,
+	will have functions to init or create and destroy them
+	instead of being allocated in the global scope.
+	And macros will be used from ttpic.h in order to access them
+	from the pic_container.
+	* src/truetype/ttobjs.c change trick_names array to be
+	PIC-compatible by being a two dimensional array rather than array
+	of pointers.
+
+	New Files:
+	* src/truetype/ttpic.h declare struct to hold PIC globals for truetype
+	driver and macros to access them.
+	* src/truetype/ttpic.c implement functions to allocate, destroy and
+	initialize PIC globals for truetype driver.
+
+	* src/truetype/truetype.c add new file to build: ttpic.c.
+	* src/truetype/jamfile add new files to FT2_MULTI build: ttpic.c.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Position Independent Code (PIC) support and infrastructure in base.
+
+	* include/freetype/config/ftoption.h add FT_CONFIG_OPTION_PIC
+	* include/freetype/internal/ftobjs.h Add pic_container member to
+	FT_LibraryRec.
+	Add macros to declare and init instances of FT_CMap_ClassRec.
+	Add macros to init instances of FT_Outline_Funcs and FT_Raster_Funcs.
+	Add macros to declare, allocate and initialize modules
+	(FT_Module_Class).
+	Add macros to declare, allocate and initialize renderers
+	(FT_Renderer_Class).
+	Add macro to init instances of FT_Glyph_Class.
+	Add macros to declare, allocate and initialize drivers
+	(FT_Driver_ClassRec).
+	* include/freetype/internal/ftpic.h new file to declare the
+	FT_PIC_Container struct and the functions to allocate and destroy it.
+	* include/freetype/internal/ftserv.h add macros to allocate and
+	destroy arrays of FT_ServiceDescRec.
+	* include/freetype/internal/internal.h define macro to include
+	ftpic.h.
+
+	New Files:
+	* src/base/ftpic.c implement functions to allocate and destroy the
+	global pic_container.
+	* src/base/basepic.h declare struct to hold PIC globals for base and
+	macros to access them.
+	* src/base/basepic.c implement functions to allocate, destroy and
+	initialize PIC globals for base.
+
+	* src/base/ftinit.c when FT_CONFIG_OPTION_PIC is defined implement
+	functions that allocate and destroy ft_default_modules according to
+	FT_CONFIG_MODULES_H in the pic_container instead of the global scope
+	and use macro from basepic.h to access it.
+	* src/base/ftobjs.c add calls to the functions that allocate and
+	destroy the global pic_container when the library is created and
+	destroyed.
+
+	* src/base/jamfile add new files to FT2_MULTI build:
+	ftpic.c and basepic.c.
+	* src/base/ftbase.c add new files to build:
+	ftpic.c and basepic.c.
+
+	* src/base/ftglyph.c when FT_CONFIG_OPTION_PIC is defined
+	ft_bitmap_glyph_class and ft_outline_glyph_class will be allocated
+	in the pic_container instead of the global scope and use macros from
+	basepic.h to access them.
+	* src/base/ftbbox.c allocate bbox_interface struct on the stack
+	instead of the global scope when FT_CONFIG_OPTION_PIC is defined.
+	* src/base/ftstroke.c access ft_outline_glyph_class allocated in
+	ftglyph.c via macros from basepic.h
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Preparing changes in cff parser later needed for PIC version.
+
+	* src/cff/cffload.c, src/cff/cffload.h, src/cff/cffobjs.c,
+	src/cff/cffparse.c, src/cff/cffparse.h: Add library pointer to
+	'CFF_ParserRec' set by `cff_parser_init'.
+	Route library pointer from 'cff_face_init' to 'cff_subfont_load'
+	for `cff_parser_init'.
+
+	* src/cff/cffparse.c (CFF_Field_Handler): Move it to...
+	* src/cff/cffparse.h: This file, to be used by other C files.
+
+2009-04-05  Oran Agra  <oran at monfort.co.il>
+
+	Minor change in ftstroke.c.
+
+	* src/base/ftstroke.c (FT_StrokerRec): Replace `memory' member with
+	`library' needed for PIC version.
+	Update all callers.
+
+2009-04-04  Werner Lemberg  <wl at gnu.org>
+
+	ftnames.c -> ftsnames.c
+
+	* src/base/ftnames.c: Rename to...
+	* src/base/ftsnames.c: This.
+	* src/base/Jamfile, src/base/rules.mk, src/base/ftbase.c: Updated.
+
+2009-04-04  Werner Lemberg  <wl at gnu.org>
+
+	Add support for cmap type 13.
+
+	* devel/ftoption.h, include/freetype/config/ftoption.h
+	(TT_CONFIG_CMAP_FORMAT_13): New macro.
+
+	* src/sfnt/ttcmap.c (TT_CMap13Rec, tt_cmap13_init,
+	tt_cmap13_validate, tt_cmap13_char_index, tt_cmap13_char_next,
+	tt_cmap13_get_info, tt_cmap13_char_map_def_binary,
+	tt_cmap14_class_rec): New functions and structures for cmap 13
+	support.
+	(tt_cmap_classes): Register tt_cmap13_class_rec.
+
+	* docs/CHANGES: Mention cmap 13 support.
+
+2009-04-01  Werner Lemberg  <wl at gnu.org>
+
+	Ignore empty contours in CFF glyphs.
+
+	Problem reported by Albert Astals Cid <aacid at kde.org>.
+
+	* src/cff/cffgload.c (cff_builder_close_contour): Synchronize with
+	t1_builder_close_contour.
+
+2009-03-21  Werner Lemberg  <wl at gnu.org>
+
+	Another redundant header inclusion.
+
+	* src/truetype/ttgxvar.c: Fix Ghostscript Coverity issue #4041.
+
+2009-03-21  Werner Lemberg  <wl at gnu.org>
+
+	Remove redundant header inclusions.
+
+	This covers many Ghostscript Coverity issues.
+
+	* src/*: Do it.
+
+2009-03-21  Werner Lemberg  <wl at gnu.org>
+
+	Fix Ghostscript Coverity issue #3904.
+
+	* src/truetype/ttgxvar.c (ft_var_readpackedpoints): Protect against
+	invalid values of `runcnt'.
+
+2009-03-20  Werner Lemberg  <wl at gnu.org>
+
+	Fix `make multi' run.
+
+	* src/smooth/ftsmooth.h: Include FT_INTERNAL_DEBUG_H.
+
+2009-03-20  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #25923.
+
+	* src/cache/ftccmap.c (FTC_CMAP_HASH): Fix typo.
+
+2009-03-20  Werner Lemberg  <wl at gnu.org>
+
+	Protect against too large glyphs.
+
+	Problem reported by Tavis Ormandy <taviso at google.com>.
+
+	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Don't allow
+	`pitch' or `height' to be larger than 0xFFFF.
+
+2009-03-20  Werner Lemberg  <wl at gnu.org>
+	    Tavis Ormandy  <taviso at google.com>
+
+	Fix validation for various cmap table formats.
+
+	* src/sfnt/ttcmap.c (tt_cmap8_validate, tt_cmap10_validate,
+	tt_cmap12_validate): Check `length' correctly.
+	(tt_cmap_14_validate): Check `length' and `numMappings' correctly.
+
+2009-03-20  Werner Lemberg  <wl at gnu.org>
+
+	Protect against malformed compressed data.
+
+	* src/lzw/ftzopen.c (ft_lzwstate_io): Test whether `state->prefix' is
+	zero.
+
+2009-03-20  Werner Lemberg  <wl at gnu.org>
+
+	Protect against invalid SID values in CFFs.
+
+	Problem reported by Tavis Ormandy <taviso at google.com>.
+
+	* src/cff/cffload.c (cff_charset_load): Reject SID values larger
+	than 64999.
+
+2009-03-19  Vincent Richomme  <richom.v at free.fr>
+
+	Update WinCE Visual C project files.
+
+	* builds/wince/vc2005-ce/freetype.vcproj,
+	builds/wince/vc2008-ce/freetype.vcproj: Add missing base extension
+	files.
+
+2009-03-19  Werner Lemberg  <wl at gnu.org>
+
+	Remove unused Win32 code.
+
+	* builds/wince/ftdebug.c: Remove code guarded with `!_WIN32_WCE'.
+	Since Win32 is handled separately this is no longer needed.
+
+2009-03-19  Vincent Richomme  <richom.v at free.fr>
+
+	Make `gzip' module compile on WinCE.
+
+	* src/gzip/zconf.h [_WIN32_WCE]: Define NO_ERRNO_H.
+
+2009-03-19  Werner Lemberg  <wl at gnu.org>
+
+	Remove unused WinCE code.
+
+	* builds/win32/ftdebug.c: Remove code guarded with `_WIN32_WCE'.
+	Since WinCE is handled separately this is no longer needed.
+
+2009-03-16  Werner Lemberg  <wl at gnu.org>
+
+	docmaker: Don't ignore single-line code blocks.
+
+	* src/tools/docmaker/content.py (DocBlock::_init__): Fix change from
+	2009-01-31.
+
+2009-03-15  Steve Langasek  <steve.langasek at canonical.com>
+
+	Use __asm__ for declaring assembly instead of asm.
+
+	* builds/unix/ftconfig.in (FT_MulFix_arm): Use __asm__ instead of
+	asm on arm, fixing a build failure on armel with -pedantic.
+
+2009-03-14  Werner Lemberg  <wl at gnu.org>
+
+	Fix valgrind warning.
+
+	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_bit_aligned): Don't read
+	past the end of the frame.
+
+2009-03-12  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.9 released.
+	=========================
+
+
+	Tag sources with `VER-2-3-9'.
+
+2009-03-12  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/freetype2.in: Move @FT2_EXTRA_LIBS@ to `Libs.private'.
+
+2009-03-12  Werner Lemberg  <wl at gnu.org>
+
+	Fix some FreeType Coverity issues as reported for Ghostscript.
+
+	* src/base/ftobjs.c (FT_New_Face, FT_New_Memory_Face): Initialize
+	`args.stream' (#3874, #3875).
+	(open_face_PS_from_sfnt_stream): Improve error management (#3786).
+	* src/base/ftmm.c (ft_face_get_mm_service): Fix check of `aservice'
+	(#3870).
+	* src/base/ftstroke.c (ft_stroke_border_get_counts): Remove dead
+	code (#3790).
+	* src/base/ftrfork.c (raccess_guess_apple_generic): Check error
+	value of `FT_Stream_Skip' (#3784).
+
+	* src/type1/t1gload.c (T1_Load_Glyph): Check `size' before accessing
+	it (#3872)
+
+	* src/pcf/pcfdrivr.c (PCF_Glyph_Load): Check `face' before accessing
+	it (#3871).
+	* src/pcf/pcfread.c (pcf_get_metrics): Handle return value of
+	`pcf_get_metric' (#3789, #3782).
+	(pcf_get_properties): Use FT_STREAM_SKIP (#3783).
+
+	* src/cache/ftcmanag.c (FTC_Manager_RegisterCache): Fix check of
+	`acache' (#3797)
+
+	* src/cff/cffdrivr.c (cff_ps_get_font_info): Fix check of `cff'
+	(#3796).
+	* src/cff/cffgload.c (cff_decoder_prepare): Check `size' (#3795).
+	* src/cff/cffload.c (cff_index_get_pointers): Add comment (#3794).
+
+	* src/bdf/bdflib.c (_bdf_add_property): Check `fp->value.atom'
+	(#3793).
+	(_bdf_parse_start): Add comment (#3792).
+
+	* src/raster/ftraster.c (Finalize_Profile_Table): Check
+	`ras.fProfile' (#3791).
+
+	* src/sfnt/ttsbit.c (Load_SBit_Image): Use FT_STREAM_SKIP (#3785).
+
+	* src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Properly ignore
+	seek error (#3781).
+
+2009-03-11  Michael Toftdal  <toftdal at gmail.com>
+
+	Extend CID service functions to handle CID-keyed CFFs as CID fonts.
+
+	* include/freetype/ftcid.h (FT_Get_CID_Is_Internally_CID_keyed,
+	FT_Get_CID_From_Glyph_Index): New functions.
+
+	* include/freetype/internal/services/svcid.h
+	(FT_CID_GetIsInternallyCIDKeyedFunc,
+	FT_CID_GetCIDFromGlyphIndexFunc): New function typedefs.
+	(CID Service): Use them.
+
+	* src/base/ftcid.c: Include FT_CID_H.
+	(FT_Get_CID_Is_Internally_CID_keyed, FT_Get_CID_From_Glyph_Index):
+	New functions.
+
+	* src/cff/cffdrivr.c (cff_get_is_cid, cff_get_cid_from_glyph_index):
+	New functions.
+	(cff_service_cid_info): Add them.
+	* src/cff/cffload.c (cff_font_load): Don't free `font->charset.sids'
+	-- it is needed for access as a CID-keyed font.  It gets deleted
+	later on.
+
+	* src/cid/cidriver.c (cid_get_is_cid, cid_get_cid_from_glyph_index):
+	New functions.
+	(cid_service_cid_info): Add them.
+
+	* docs/CHANGES: Updated.
+
+2009-03-11  Bram Tassyns  <bramt at enfocus.be>
+
+	Fix Savannah bug #25597.
+
+	* src/cff/cffparse.c (cff_parse_real): Don't allow fraction_length
+	to become larger than 9.
+
+2009-03-11  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #25814.
+
+	* builds/unix/freetype2.in: As suggested in the bug report, move
+	@LIBZ@ to `Libs.private'.
+
+2009-03-11  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #25781.
+	We now simply check for a valid `offset', no longer handling `delta
+	= 1' specially.
+
+	* src/sfnt/ttcmap.c (tt_cmap4_validate): Don't check `delta' for
+	last segment.
+	(tt_cmap4_set_range, tt_cmap4_char_map_linear,
+	tt_cmap4_char_map_binary): Check offset.
+
+2009-03-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/Jamfile: Fix handling of ftadvanc.c.
+	Reported by Oran Agra <oran at monfort.co.il>.
+
+2009-03-10  Vincent Richomme  <richom.v at free.fr>
+
+	Restructure Win32 and Wince compiler support.
+
+	* src/builds/win32: Remove files for WinCE.
+	Move VC 2005 support to a separate directory.
+	Add directory for VC 2008 support.
+
+	* src/builds/wince: New directory hierarchy for WinCE compilers
+	(VC 2005 and VC 2008).
+
+2009-03-09  Werner Lemberg  <wl at gnu.org>
+
+	More preparations for 2.3.9 release.
+
+	* docs/CHANGES: Updated.
+
+	* Jamfile, README: s/2.3.8/2.3.9/, s/238/239/.
+
+2009-03-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/rules.mk (SFNT_DRV_H): Add ttsbit0.c.
+
+2009-03-09  Alexey Kryukov  <anagnost at yandex.ru>
+
+	Fix handling of EBDT formats 8 and 9 (part 2).
+
+	This patch fixes the following problems in ttsbit0.c:
+
+	. Bitmaps for compound glyphs were never allocated.
+
+	. `SBitDecoder' refused to load metrics if some other metrics have
+	  already been loaded.  This condition certainly makes no sense for
+	  recursive calls, so I've just disabled it.  Another possibility
+	  would be resetting `decoder->metrics_loaded' to false before
+	  loading each composite component.  However, we must restore the
+	  original metrics after finishing the recursion; otherwise we can
+	  get a misaligned glyph.
+
+	. `tt_sbit_decoder_load_bit_aligned' incorrectly handled `x_pos',
+	  causing some glyph components to be shifted too far to the right
+	  (especially noticeable for small sizes).
+
+	Note that support for grayscale bitmaps (not necessarily compound) is
+	completely broken in ttsbit0.c.
+
+	* src/sfnt/tt_sbit_decoder_load_metrics: Always load metrics.
+	(tt_sbit_decoder_load_bit_aligned): Handle `x_pos' correctly in case
+	of `h == height'.
+	(tt_sbit_decoder_load_compound): Reset metrics after loading
+	components.
+	Allocate bitmap.
+
+2009-03-09  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.raw (version_info): Set to 9:20:3.
+
+2009-03-03  David Turner  <david at freetype.org>
+
+	Protect SFNT kerning table parser against malformed tables.
+
+	This closes Savannah BUG #25750.
+
+	* src/sfnt/ttkern.c (tt_face_load_kern, tt_face_get_kerning): Fix a
+	bug where a malformed table would be successfully loaded but later
+	crash the engine during parsing.
+
+2009-03-03  David Turner  <david at freetype.org>
+
+	Update documentation and bump version number to 2.3.9.
+
+	* include/freetype/freetype.h: Bump patch version to 9.
+	* docs/CHANGES: Document the ABI break in 2.3.8.
+	* docs/VERSION.DLL: Update version numbers table for 2.3.9.
+
+2009-03-03  David Turner  <david at freetype.org>
+
+	Remove ABI-breaking field in public PS_InfoFontRec definition.
+
+	Instead, we define a new internal PS_FontExtraRec structure to
+	hold the additional field, then place it in various internal
+	positions of the corresponding FT_Face derived objects.
+
+	* include/freetype/t1tables.h (PS_FontInfoRec): Remove the
+	`fs_type' field from the public structure.
+	* include/freetype/internal/psaux.h (T1_FieldLocation): New
+	enumeration `T1_FIELD_LOCATION_FONT_EXTRA'.
+	* include/freetype/internal/t1types.h (PS_FontExtraRec): New
+	structure.
+	(T1_FontRec, CID_FaceRec): Add it.
+
+	* src/cid/cidload.c (cid_load_keyword): Handle
+	T1_FIELD_LOCATION_FONT_EXTRA.
+	* src/cid/cidtoken.h, src/type1/t1tokens.h, src/type42/t42parse.c:
+	Adjust FT_STRUCTURE and T1CODE properly to handle `FSType'.
+	* src/type1/t1load.c (t1_load_keyword): Handle
+	T1_FIELD_LOCATION_FONT_EXTRA.
+
+	* include/freetype/internal/services/svpsinfo.h (PsInfo service):
+	Add `PS_GetFontExtraFunc' function typedef.
+
+	* src/base/ftfstype.c: Include FT_INTERNAL_SERVICE_H and
+	FT_SERVICE_POSTSCRIPT_INFO_H.
+	(FT_Get_FSType_Flags): Use POSTSCRIPT_INFO service.
+
+	* src/cff/cffdrivr.c (cff_service_ps_info): Updated.
+	* src/cid/cidriver.c (cid_ps_get_font_extra): New function.
+	(cid_service_ps_info): Updated.
+	* src/type1/t1driver.c (t1_ps_get_font_extra): New function.
+	(t1_service_ps_info): Updated.
+	* src/type42/t42drivr.c (t42_ps_get_font_extra): New function.
+	(t42_service_ps_info): Updated.
+
+2009-03-02  Alexey Kryukov  <anagnost at yandex.ru>
+
+	Fix handling of EBDT formats 8 and 9.
+
+	The main cycle in `blit_sbit' makes too many iterations: it actually
+	needs the count of lines in the source bitmap rather than in the
+	target image.
+
+	* src/sfnt/ttsbit.c (blit_sbit) [FT_CONFIG_OPTION_OLD_INTERNALS]:
+	Add parameter `source_height' and use it for main loop.
+	(Load_SBit_Single) [FT_CONFIG_OPTION_OLD_INTERNALS]: Updated.
+
+2009-02-23  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #25669.
+
+	* src/base/ftadvanc.h (FT_Get_Advances): Fix serious typo.
+
+	* src/base/ftobjs.c (FT_Select_Metrics, FT_Request_Metrics): Fix
+	scaling factor for non-scalable fonts.
+
+	* src/cff/cffdrivr.c (cff_get_advances): Use correct advance width
+	value to prevent incorrect scaling.
+
+	* docs/CHANGES: Document it.
+
+2009-02-15  Matt Godbolt  <matt at godbolt.org>
+
+	Fix Savannah bug #25588.
+
+	* builds/unix/ftconfig.in (FT_MulFix_arm): Use correct syntax for
+	`orr' instruction.
+
+2009-02-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttobjs.c (tt_check_trickyness): Add `DFKaiShu'.
+	Reported by David Bevan <dbevan at emtex.com>.
+
+2009-02-09  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #25495.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Test for bitmap strikes before
+	setting metrics and bbox values.  This ensures that the check for a
+	font with neither a `glyf' table nor bitmap strikes can be performed
+	early enough to set metrics and bbox values too.
+
+2009-02-04  Werner Lemberg  <wl at gnu.org>
+
+	Fix Savannah bug #25480.
+
+	* builds/unix/freetype-config.in: For --ftversion, don't use $prefix
+	but $includedir.
+
+2009-01-31  Werner Lemberg  <wl at gnu.org>
+
+	Minor docmaker improvements.
+
+	* src/tools/docmaker/content.py (DocBlock::__init__): Ignore empty
+	code blocks.
+
+2009-01-25  Werner Lemberg  <wl at gnu.org>
+
+	Fix SCANCTRL handling in TTFs.
+	Problem reported by Alexey Kryukov <anagnost at yandex.ru>.
+
+	* src/truetype/ttinterp.c (Ins_SCANCTRL): Fix threshold handling.
+
+2009-01-23  Werner Lemberg  <wl at gnu.org>
+
+	Move FT_Get_FSType_Flags to a separate file.
+	Problem reported by Mickey Gabel <mickey at monfort.co.il>.
+
+	* src/base/ftobjs.c (FT_Get_FSType_Flags): Move to...
+	* src/base/ftfstype.c: This new file.
+
+	* modules.cfg (BASE_EXTENSION): Add ftfstype.c.
+
+	* docs/INSTALL.ANY: Updated.
+
+	* builds/mac/*.txt, builds/amiga/*makefile*,
+	builds/win32/{visualc,visualce}/freetype.*, builds/symbian/*:
+	Updated.
+
+2009-01-22  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/ftsystem.c (FT_Stream_Open): Fix 2 error
+	messages ending without "\n".
+
+2009-01-22  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Fix Savannah bug #25347.
+
+	* src/base/ftobjs.c (open_face_PS_from_sfnt_stream): Rewind
+	the stream to the original position passed to this function,
+	when ft_lookup_PS_in_sfnt_stream() failed.
+	(Mac_Read_sfnt_Resource): Rewind the stream to the head of
+	sfnt resource body, when open_face_PS_from_sfnt_stream()
+	failed.
+
+2009-01-19  Michael Lotz  <mmlr at mlotz.ch>
+
+	Fix Savannah bug #25355.
+
+	* include/freetype/config/ftconfig.h (FT_MulFix_i386): Make
+	assembler code work with gcc 2.95.3 (as used by the Haiku project).
+	Add `cc' register to the clobber list.
+
+2009-01-18  Werner Lemberg  <wl at gnu.org>
+
+	Protect FT_Get_Next_Char.
+
+	* src/sfnt/ttcmap.c (tt_cmap4_set_range): Apply fix similar to
+	change from 2008-07-22.
+
+	Patch from Ronen Ghoshal <rghoshal at emtex.com>.
+
+2009-01-18  Werner Lemberg  <wl at gnu.org>
+
+	Implement FT_Get_Name_Index for SFNT driver.
+
+	* src/sfnt/sfdriver.c (sfnt_get_name_index): New function.
+	(sfnt_service_glyph_dict): Use it.
+
+	Problem reported by Truc Truong <tructv at necsv.com>.
+
+2009-01-18  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftstroke.h (FT_Outline_GetInsideBorder): Fix
+	documentation.  Problem reported by Truc Truong <tructv at necsv.com>.
+
+	* docs/CHANGES: Updated.
+
+2009-01-14  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.8 released.
+	=========================
+
+
+	Tag sources with `VER-2-3-8'.
+
+	* docs/VERSION.DLL: Update documentation and bump version number to
+	2.3.8.
+
+	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj: s/2.3.7/2.3.8/, s/237/238/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 8.
+
+	* builds/unix/configure.raw (version_info): Set to 9:19:3.
+
+	* docs/release: Updated.
+
+2009-01-14  Werner Lemberg  <wl at gnu.org>
+
+	* builds/toplevel.mk (dist): Compress better.
+
+2009-01-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Get_FSType_Flags): Cast for compilation
+	with C++.
+
+2009-01-13  Werner Lemberg  <wl at gnu.org>
+
+	Don't use stdlib.h and friends directly.
+	Reported by Mickey Gabel <mickey at monfort.co.il>.
+
+	* src/base/ftdbgmem.c: s/<stdlib.h>/FT_CONFIG_STANDARD_LIBRARY_H/.
+
+	* src/gzip/ftgzip.c, src/lzw/ftlzw.c, src/raster/ftmisc.h:
+	s/<string.h>/FT_CONFIG_STANDARD_LIBRARY_H/.
+
+	* src/autofit/aftypes.h, src/autofit/afhints.c,
+	src/pshinter/pshalgo.c: s/<stdio.h>/FT_CONFIG_STANDARD_LIBRARY_H/
+
+	* src/lzw/ftlzw.c, src/base/ftdbgmem.c: Don't include stdio.h.
+
+2009-01-12  Werner Lemberg  <wl at gnu.org>
+
+	Avoid compiler warnings.
+
+	* */*: s/do ; while ( 0 )/do { } while ( 0 )/.
+	Reported by Sean McBride <sean at rogue-research.com>.
+
+2009-01-12  Werner Lemberg  <wl at gnu.org>
+
+	Fix stdlib dependencies.
+
+	Problem reported by Mickey Gabel <mickey at monfort.co.il>.
+
+	* include/freetype/config/ftstdlib.h (ft_exit): Removed.  Unused.
+
+	* src/autofit/afhints.c, src/base/ftlcdfil.c, src/smooth/ftsmooth.c:
+	s/memcpy/ft_memcpy/.
+	* src/psaux/t1decode.c: s/memset/ft_memset/, s/memcpy/ft_memcpy/.
+
+2009-01-11  Werner Lemberg  <wl at gnu.org>
+
+	* docs/formats.txt: Add link to PCF specification.
+
+	* include/freetype/ftbdf.h (FT_Get_BDF_Property): Improve
+	documentation.
+
+2009-01-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftadvanc.c (_ft_face_scale_advances, FT_Get_Advance,
+	FT_Get_Advances): Change the type of load_flags from FT_UInt32 to
+	FT_Int32, to match with the flags for FT_Load_Glyph().
+	* src/cff/cffdrivr.c (cff_get_advances): Ditto.
+	* src/truetype/ttdriver.c (tt_get_advances): Ditto.
+	* include/freetype/ftadvanc.h (FT_Get_Advance, FT_Get_Advances):
+	Ditto.
+	* include/freetype/internal/ftdriver.h (FT_Face_GetAdvancesFunc):
+	Ditto.
+
+2009-01-09  Daniel Zimmermann  <netzimme at aol.com>
+
+	* src/gxvalid/gxvmort.c (gxv_mort_feature_validate): Fix wrong
+	length check.  From Savannah patch #6682.
+
+2009-01-09  Werner Lemberg  <wl at gnu.org>
+
+	Fix problem with T1_FIELD_{NUM,FIXED}_TABLE2.
+
+	* src/psaux/psobjs.c (ps_parser_load_field_table): Don't handle
+	`count_offset' if it is zero (i.e., unused).  Otherwise, the first
+	element of the structure which holds the data is erroneously
+	modified.  Problem reported by Chi Nguyen <chint at necsv.com>.
+
+2009-01-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftadvanc.c (_ft_face_scale_advances, FT_Get_Advance,
+	FT_Get_Advances): Extend the type of load_flags from FT_UInt to
+	FT_UInt32, to pass 32-bit flags on 16bit platforms.
+	* src/cff/cffdrivr.c (cff_get_advances): Ditto.
+	* src/truetype/ttdriver.c (tt_get_advances): Ditto.
+	* include/freetype/ftadvanc.h (FT_Get_Advance, FT_Get_Advances):
+	Ditto.
+	* include/freetype/internal/ftdriver.h (FT_Face_GetAdvancesFunc):
+	Ditto.
+
+2009-01-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (FT_Done_Library): Issue an error message when
+	FT_Done_Face() cannot free all faces. If the list of the opened
+	faces includes broken face which FT_Done_Face() cannot free,
+	FT_Done_Library() retries FT_Done_Face() and it can fall into
+	an endless loop. See the discussion:
+	https://lists.gnu.org/archive/html/freetype-devel/2008-09/msg00047.html
+	https://lists.gnu.org/archive/html/freetype-devel/2008-10/msg00000.html
+
+2009-01-07  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Document new key `a' in ftdiff.
+
+2009-01-06  Werner Lemberg  <wl at gnu.org>
+
+	* autogen.sh: Don't use GNUisms while calling sed.  Problem reported
+	by Sean McBride.
+
+2009-01-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftbitmap.c (FT_Bitmap_Convert): Handle FT_PIXEL_MODE_LCD
+	and FT_PIXEL_MODE_LCD_V.  Problem reported by Chi Nguyen
+	<chint at necsv.com>.
+
+2009-01-06  Diego Pettenò  <flameeyes at gmail.com>
+
+	* builds/unix/configure.raw: Don't call AC_CANONICAL_BUILD and
+	AC_CANONICAL_TARGET and use $host_os only.  A nice explanation for
+	this change can be found at
+	https://blog.flameeyes.eu/s/canonical-target.
+
+	From Savannah patch #6712.
+
+2009-01-06  Sean McBride  <sean at rogue-research.com>
+
+	* src/base/ftdbgmem.c (_debug_mem_dummy): Make it static.
+
+	* src/base/ftmac.c: Remove some #undefs.
+
+2008-12-26  Werner Lemberg  <wl at gnu.org>
+
+	Set `face_index' field in FT_Face for all font formats.
+
+	* cff/cffobjs.c (cff_face_init), winfonts/winfnt.c (FNT_Face_Init),
+	sfnt/sfobjs.c (sfnt_init_face): Do it.
+
+	* docs/CHANGES: Document it.
+
+2008-12-22  Steve Grubb
+
+	* builds/unix/ftsystem.c (FT_Stream_Open): Reject zero-length files.
+	Patch from Savannah bug #25151.
+
+2008-12-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/pfrdrivr.c, src/winfonts/winfnt.c, src/cache/ftcmanag.c,
+	src/smooth/ftgrays.c, src/base/ftobjs.c, src/sfobjs.c:
+	s/_Err_Bad_Argument/_Err_Invalid_Argument/.  The former is for
+	errors in the bytecode interpreter only.
+
+2008-12-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftpfr.c (FT_Get_PFR_Metrics): Protect against NULL
+	arguments.
+	Fix return value for non-PFR fonts.  Both problems reported by Chi
+	Nguyen <chint at necsv.com>.
+
+2008-12-21  anonymous
+
+	FT_USE_MODULE declares things as:
+
+	  extern const FT_Module_Class
+
+	(or similar for C++).  However, the actual types of the variables
+	being declared are often different, e.g., FT_Driver_ClassRec or
+	FT_Renderer_Class.  (Some are, indeed, FT_Module_Class.)
+
+	This works with most C compilers (since those structs begin with an
+	FT_Module_Class struct), but technically it's undefined behavior.
+
+	To quote the ISO/IEC 9899:TC2 final committee draft, section 6.2.7
+	paragraph 2:
+
+	  All declarations that refer to the same object or function shall
+	  have compatible type; otherwise, the behavior is undefined.
+
+	(And they are not compatible types.)
+
+	Most C compilers don't reject (or even detect!) code which has this
+	issue, but the GCC LTO development branch compiler does.  (It
+	outputs the types of the objects while generating .o files, along
+	with a bunch of other information, then compares them when doing the
+	final link-time code generation pass.)
+
+	Patch from Savannah bug #25133.
+
+	* src/base/ftinit.c (FT_USE_MODULE): Include variable type.
+
+	* builds/amiga/include/freetype/config/ftmodule.h,
+	include/freetype/config/ftmodule.h, */module.mk: Updated to declare
+	pass correct types to FT_USE_MODULE.
+
+2008-12-21  Hongbo Ni  <hongbo at njstar.com>
+
+	* src/autofit/aflatin.c (af_latin_hint_edges),
+	src/autofit/aflatin2.c (af_latin2_hint_edges), src/autofit/afcjk.c
+	(af_cjk_hint_edges): Protect against division by zero.  This fixes
+	Savannah bug #25124.
+
+2008-12-18  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2008-12-18  David Bevan  <dbevan at emtex.com>
+
+	Provide API for accessing embedding and subsetting restriction
+	information.
+
+	* include/freetype.h (FT_FSTYPE_INSTALLABLE_EMBEDDING,
+	FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING,
+	FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING, FT_FSTYPE_EDITABLE_EMBEDDING,
+	FT_FSTYPE_NO_SUBSETTING, FT_FSTYPE_BITMAP_EMBEDDING_ONLY): New
+	macros.
+	(FT_Get_FSType_Flags): New function declaration.
+
+	* src/base/ftobjs.c (FT_Get_FSType_Flags): New function.
+
+	* src/cid/cidtoken.h, src/type1/t1tokens.h, src/type42/t42parse.c
+	(t42_keywords): Handle `FSType'.
+
+	* include/freetype/t1tables.h (PS_FontInfoRec): Add `fs_type' field.
+
+2008-12-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Don't use internal
+	macros so that copying the source code into an application works
+	out of the box.
+
+2008-12-17  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftsynth.h, src/base/ftsynth.c: Move
+	FT_GlyphSlot_Own_Bitmap to...
+	* include/freetype/ftbitmap.h, src/base/ftbitmap.c: These files.
+
+	* docs/CHANGES: Document it.
+
+2008-12-10  Werner Lemberg  <wl at gnu.org>
+
+	Generalize the concept of `tricky' fonts by introducing
+	FT_FACE_FLAG_TRICKY to indicate that the font format's hinting
+	engine is necessary for correct rendering.
+
+	At the same time, slightly modify the behaviour of tricky fonts:
+	FT_LOAD_NO_HINTING is now ignored.  To really force raw loading
+	of tricky fonts (without hinting), both FT_LOAD_NO_HINTING and
+	FT_LOAD_NO_AUTOHINT must be used.
+
+	Finally, tricky TrueType fonts always use the bytecode interpreter
+	even if the patented code is used.
+
+	* include/freetype/freetype.h (FT_FACE_FLAG_TRICKY, FT_IS_TRICKY):
+	New macros.
+
+	* src/truetype/ttdriver.c (Load_Glyph): Handle new load flags
+	semantics as described above.
+
+	* src/truetype/ttobjs.c (tt_check_trickyness): New function, using
+	code of ...
+	(tt_face_init): This function, now simplified and updated to new
+	semantics.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Don't use autohinter for tricky
+	fonts.
+
+	* docs/CHANGES: Document it.
+
+2008-12-09  Werner Lemberg  <wl at gnu.org>
+
+	Really fix Savannah bug #25010: An SFNT font with neither outlines
+	nor bitmaps can be considered as containing space `glyphs' only.
+
+	* src/truetype/ttpload.c (tt_face_load_loca): Handle the case where
+	a `glyf' table is missing.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Abort if we have no
+	`glyf' table but a non-zero `loca' entry.
+	(tt_loader_init): Handle missing `glyf' table.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Undo change 2008-12-05.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): A font with neither outlines
+	nor bitmaps is scalable.
+
+2008-12-05  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/aflatin.c (af_latin_uniranges): Add more ranges.  This
+	fixes Savannah bug #21190 which also provides a basic patch.
+
+2008-12-05  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/freetype.h (FT_LOAD_ADVANCE_ONLY): Use value
+	0x100 instead of 0x10000; the latter value is already occupied by
+	FT_LOAD_TARGET_LIGHT.  Bug reported by James Cloos.
+
+
+	Handle SFNT with neither outlines nor bitmaps.  This fixes Savannah
+	bug #25010.
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Reject fonts with neither
+	outlines nor bitmaps.
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Don't return an error if there
+	is no table with glyphs.
+
+
+	* src/sfnt/ttload.c (tt_face_lookup_table): Improve debugging
+	message.
+
+2008-12-01  Werner Lemberg  <wl at gnu.org>
+
+	GDEF tables need `glyph_count' too for validation.  Problem reported
+	by Chi Nguyen <chint at necsv.com>.
+
+	* src/otvalid/otvgdef.c (otv_GDEF_validate), src/otvalid/otvalid.h
+	(otv_GDEF_validate), src/otvalid/otvmod.c (otv_validate): Pass
+	`glyph_count'.
+
+2008-11-29  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/afcjk.c, src/base/ftoutln.c, src/base/ftrfork.c,
+	src/bdf/bdfdrivr.c, src/gxvalid/gxvmorx.c, src/otvalid/otvmath.c,
+	src/pcf/pcfdrivr.c, src/psnames/pstables.h, src/smooth/ftgrays.c,
+	src/tools/glnames.py, src/truetype/ttinterp.c, src/type1/t1load.c,
+	src/type42/t42objs.c, src/winfonts/winfnt.c: Fix compiler warnings
+	(Atari PureC).
+
+2008-11-29  James Cloos  <cloos at jhcloos.com>
+
+	* src/type/t1load.c (mm_axis_unmap): Revert previous patch and fix
+	it correctly by using FT_INT_TO_FIXED (FreeType expects 16.16 values
+	in the /BlendDesignMap space).
+
+2008-11-29  James Cloos  <cloos at jhcloos.com>
+
+	* src/type1/t1load.c (mm_axis_unmap): `blend_points' is FT_Fixed*,
+	whereas `design_points' is FT_Long*.  Therefore, return blend rather
+	than design points.
+
+2008-11-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffparse.c (cff_parse_real): Handle more than nine
+	significant digits correctly.  This fixes Savannah bug #24953.
+
+2008-11-25  Daniel Zimmermann  <netzimme at aol.com>
+
+	* src/base/ftstream.c (FT_Stream_ReadFields): Don't access stream
+	before the NULL check.  From Savannah patch #6681.
+
+2008-11-24  Werner Lemberg  <wl at gnu.org>
+
+	Fixes from the gnuwin32 port.
+
+	* src/base/ftlcdfil.c: s/EXPORT/EXPORT_DEF/.
+
+	* src/base/ftotval.c: Include FT_OPENTYPE_VALIDATE_H.
+
+	* src/psaux/psobjs.c (ps_table_add): Check `length'.
+
+2008-11-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttinterp.c (tt_default_graphics_state): The default
+	value for `scan_type' is zero, as confirmed by Greg Hitchcock from
+	Microsoft.  Problem reported by Michal Nowakowski
+	<miszka at limes.com.pl>.
+
+2008-11-12  Tor Andersson  <tor.andersson at gmail.com>
+
+	* src/cff/cffdrivr.c (cff_get_cmap_info): Initialize `format' field.
+	This fixes Savannah bug #24819.
+
+2008-11-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Remove #if 0/#endif guards
+	since OpenType version 1.5 has been released.
+
+	* include/ttnameid.h (TT_NAME_ID_WWS_FAMILY,
+	TT_NAME_ID_WWS_SUBFAMILY): New macros for OpenType 1.5.
+	(TT_URC_COPTIC, TT_URC_VAI, TT_URC_NKO, TT_URC_BALINESE,
+	TT_URC_PHAGSPA, TT_URC_NON_PLANE_0, TT_URC_PHOENICIAN,
+	TT_URC_TAI_LE, TT_URC_NEW_TAI_LUE, TT_URC_BUGINESE,
+	TT_URC_GLAGOLITIC, TT_URC_YIJING, TT_URC_SYLOTI_NAGRI,
+	TT_URC_LINEAR_B, TT_URC_ANCIENT_GREEK_NUMBERS, TT_URC_UGARITIC,
+	TT_URC_OLD_PERSIAN, TT_URC_SHAVIAN, TT_URC_OSMANYA,
+	TT_URC_CYPRIOT_SYLLABARY, TT_URC_KHAROSHTHI, TT_URC_TAI_XUAN_JING,
+	TT_URC_CUNEIFORM, TT_URC_COUNTING_ROD_NUMERALS, TT_URC_SUNDANESE,
+	TT_URC_LEPCHA, TT_URC_OL_CHIKI, TT_URC_SAURASHTRA, TT_URC_KAYAH_LI,
+	TT_URC_REJANG, TT_URC_CHAM, TT_URC_ANCIENT_SYMBOLS,
+	TT_URC_PHAISTOS_DISC, TT_URC_OLD_ANATOLIAN, TT_URC_GAME_TILES): New
+	macros for OpenType 1.5.
+
+2008-11-08  Wenlin Institute  <wenlin at wenlin.com>
+
+	* src/base/ftobjs.c (ft_glyphslot_free_bitmap): Protect against
+	slot->internal == NULL.  Reported by Graham Asher.
+
+2008-11-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (tt_face_get_name): Modified to return an error
+	code so that memory allocation problems can be distinguished from
+	missing table entries.  Reported by Graham Asher.
+	(GET_NAME): New macro.
+	(sfnt_load_face): Use it.
+
+2008-11-05  Werner Lemberg  <wl at gnu.org>
+
+	* devel/ftoption.h, include/freetype/config/ftoption.h
+	[TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Undefine
+	TT_CONFIG_OPTION_UNPATENTED_HINTING.  This fixes the return value of
+	`FT_Get_TrueType_Engine_Type' (and makes it work as documented).
+	Reported in bug #441638 of bugzilla.novell.com.
+
+	* docs/CHANGES: Document it.
+
+2008-11-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_subrs): Use an endless loop.  There are
+	fonts (like HELVI.PFB version 003.001, used on OS/2) which define
+	some `subrs' elements more than once.  Problem reported by Peter
+	Weilbacher <mozilla at weilbacher.org>.
+
+2008-10-15  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/sfnt/ttpost.c (tt_post_default_names): Add `const'.
+
+2008-10-15  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgxvar.c (TT_Set_MM_Blend): Disambiguate for
+	meddlesome compilers' warning against `for ( ...; ...; ...) ;'.
+
+2008-10-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Remove compiler warning.
+	Suggested by Bram Tassyns in Savannah patch #6651.
+
+2008-10-12  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Fix computation of
+	`underline_position'.
+
+2008-10-12  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2008-10-09  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Fix Savannah bug #24468.
+
+	According to include/freetype/internal/ftobjs.h, the appropriate
+	type to interchange single character codepoint is FT_UInt32. It
+	should be distinguished from FT_UInt which can be 16bit integer.
+
+	* src/sfnt/ttcmap.c (tt_cmap4_char_map_linear): Change the type
+	of the second argument `pcharcode' from FT_UInt* to FT_UInt32*.
+	(tt_cmap4_char_map_binary): Ditto.
+	(tt_cmap14_get_nondef_chars): Change the type of return value
+	from FT_UInt* to FT_UInt32*.
+
+2008-10-08  John Tytgat  <John.Tytgat at esko.com>
+
+	Fix Savannah bug #24485.
+
+	* src/type1/t1load.c (parse_charstrings): Assure that we always have
+	a .notdef glyph.
+
+2008-10-05  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c: Include FT_TRUETYPE_TAGS_H for multi build.
+	* builds/mac/ftmac.c: Ditto.
+
+2008-10-05  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* include/freetype/tttags.h (TTAG_TYP1, TTAG_typ1): Fix definitions.
+	* src/base/ftobjs.c: Include FT_TRUETYPE_TAGS_H.
+
+2008-10-05  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/sfnt/sfobjs.c (sfnt_open_font): Allow `typ1' version tag in
+	the beginning of sfnt container.
+	* src/sfnt/ttload.c (check_table_dir): Return
+	`SFNT_Err_Table_Missing' when sfnt table directory structure is
+	correct but essential tables for TrueType fonts (`head', `bhed' or
+	`SING') are missing.  Other errors are returned by
+	SFNT_Err_Unknown_File_Format.
+
+	* src/base/ftobjs.c (FT_Open_Face): When TrueType driver returns
+	`FT_Err_Table_Missing', try `open_face_PS_from_sfnt_stream'.  It is
+	enabled only when old mac font support is configured.
+
+2008-10-04  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* include/freetype/tttags.h (TTAG_CID, TTAG_FOND, TTAG_LWFN,
+	TTAG_POST, TTAG_sfnt, TTAG_TYP1, TTAG_typ1): New tags to simplify
+	the repeated calculations of these values in ftobjs.c and ftmac.c.
+	* src/base/ftobjs.c: Replace all FT_MAKE_TAG by new tags.
+	* src/base/ftmac.c: Ditto.
+	* builds/mac/ftmac.c: Ditto.
+
+2008-10-04  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (ft_lookup_PS_in_sfnt_stream): Remove wrong
+	initialization of *is_sfnt_cid.
+
+2008-10-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (open_face_PS_from_sfnt_stream): Remove compiler
+	warnings.
+
+2008-10-04  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (ft_lookup_PS_in_sfnt): Replaced by...
+	(ft_lookup_PS_in_sfnt_stream): This.
+	(open_face_PS_from_sfnt_stream): New function.  It checks whether
+	the stream is sfnt-wrapped Type1 PS font or sfnt-wrapped CID-keyed
+	font, then try to open a face for given face_index.
+	(Mac_Read_sfnt_Resource): Replace the combination of
+	`ft_lookup_PS_in_sfnt' and `open_face_from_buffer' by
+	`open_face_PS_from_sfnt_stream'.
+	* src/base/ftmac.c (FT_New_Face_From_SFNT): Ditto.
+	* builds/mac/ftmac.c (FT_New_Face_From_SFNT): Ditto.
+	* src/base/ftbase.h: Remove `ft_lookup_PS_in_sfnt' and add
+	`open_face_PS_from_sfnt_stream'.
+
+2008-10-03  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (ft_lookup_PS_in_sfnt): Set *is_sfnt_cid to
+	FALSE if neither `CID ' nor `TYP1' is found in the sfnt container.
+
+2008-10-03  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* include/freetype/config/ftconfig.h: Define FT_MACINTOSH when SC or
+	MrC compiler of MPW is used.  These compilers do not define the
+	macro __APPLE__ by themselves.
+	* builds/unix/ftconfig.in: Ditto.
+	* builds/vms/ftconfig.h: Ditto.
+	* src/base/ftbase.c: Use FT_MACINTOSH instead of __APPLE__, to
+	include ftmac.c if FreeType 2 is built by MPW.
+	* src/base/ftobjs.c: Use FT_MACINTOSH instead of __APPLE__, to
+	enable shared functions for ftmac.c if FreeType 2 is built by MPW.
+
+	* builds/mac/ftmac.c: Include ftbase.h.
+	(memory_stream_close): Removed.
+	(new_memory_stream): Ditto.
+	(open_face_from_buffer): Removed.  Use the implementation in
+	ftobjs.c.
+	(ft_lookup_PS_in_sfnt): Ditto.
+
+	* builds/mac/FreeType.m68k_far.make.txt: Build ftmac.c as an
+	included part of ftbase.c, to share the functions in ftobjs.c.  The
+	rule compiling ftmac.c separately is removed and the rule copying
+	ftbase.c from src/base/ftbase.c to builds/mac/ftbase.c is added.
+	* builds/mac/FreeType.m68k_cfm.make.txt: Ditto.
+	* builds/mac/FreeType.ppc_classic.make.txt: Ditto.
+	* builds/mac/FreeType.ppc_carbon.make.txt: Ditto.
+
+2008-10-02  Bram Tassyns  <bramt at enfocus.be>
+
+	* src/cff/cffgload.c (cff_slot_load): Map CID 0 to GID 0.  This
+	fixes Savannah bug #24430.
+
+2008-10-02  Werner Lemberg  <wl at gnu.org>
+
+	* builds/freetype.mk (BASE_H): Rename to...
+	(INTERNAL_H): This.
+	(FREETYPE_H): Updated.
+	* src/base/rules.mk: (BASE_OBJ_S, OBJ_DIR/%.$O): Add BASE_H.
+	* src/bdf/rules.mk (BDF_DRV_H): Add bdferror.h.
+	* src/cache/rules.mk (CACHE_DRV_H): Add ftccache.h and ftcsbits.h.
+	* src/pcf/rules.mk (PCF_DRV_H): Add pcfread.h.
+	* src/raster/rules.mk (RASTER_DRV_H): Add ftmisc.h.
+	* src/type42/rules.mk (T42_DRV_H): Add t42types.h.
+
+2008-10-02  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftbase.h: New file to declare the private utility
+	functions shared by the sources of base modules.  Currently,
+	`ft_lookup_PS_in_sfnt' and `open_face_from_buffer' are declared to
+	share between ftobjs.c and ftmac.c.
+
+	* src/base/rule.mk: Add ftbase.h.
+
+	* src/base/ftobjs.c: Include ftbase.h.
+	(memory_stream_close): Build on any platform when old MacOS font
+	support is enabled.
+	(new_memory_stream): Ditto.
+	(open_face_from_buffer): Build on any platform when old MacOS font
+	support is enabled.  The counting of the face in a font file is
+	slightly different between Carbon-dependent parser and Carbon-free
+	parser.  They are merged with the platform-specific conditional.
+	(ft_lookup_PS_in_sfnt): Ditto.
+
+	* src/base/ftmac.c: Include ftbase.h.
+	(memory_stream_close): Removed.
+	(new_memory_stream): Ditto.
+	(open_face_from_buffer): Removed.  Use the implementation in
+	ftobjs.c.
+	(ft_lookup_PS_in_sfnt): Ditto.
+
+2008-10-02  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): `psnames_error' is only needed
+	if TT_CONFIG_OPTION_POSTSCRIPT_NAMES is defined.
+
+2008-10-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttobjs.c (tt_face_done), src/cff/cffobjs.c
+	(cff_face_done), src/pfr/pfrobjs.c (pfr_face_done),
+	src/pcf/pcfdrivr.c (PCF_Face_Done), src/cid/cidobjs.c
+	(cid_face_done), src/bdf/bdfdrivr. (BDF_Face_Done),
+	src/sfnt/sfobjs.c (sfnt_face_done): Protect against face == 0.
+	Reported by Graham Asher.
+
+2008-09-30  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/rules.mk: Add conditional source to BASE_SRC, for `make
+	multi' on Mac OS X.  If the macro $(ftmac_c) is defined,
+	$(BASE_DIR)/$(ftmac_c) is added to BASE_SRC.  In a normal build, the
+	lack of ftmac.c in BASE_SRC is not serious because ftbase.c includes
+	ftmac.c.
+	* builds/unix/unix-def.in: Add a macro definition of $(ftmac_c).
+	* builds/unix/configure.raw: Add procedure to set up appropriate
+	value of $(ftmac_c) with the consideration of the availability of
+	Carbon framework.
+
+2008-09-30  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/Jamfile: Add target for multi build by jam on Mac OS X.
+	* src/base/ftobjs.c (FT_New_Face): Fix the condition to include this
+	function for MPW building.  It is synchronized the condition to
+	include ftmac.c source into ftbase.c.
+
+2008-09-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (CFF_Operator, cff_argument_counts,
+	cff_decoder_parse_charstrings): Handle (invalid)
+	`callothersubr' and `pop' instructions.
+
+2008-09-22  John Tytgat  <John.Tytgat at esko.com>
+
+	Fix Savannah bug #24307.
+
+	* include/freetype/internal/t1types.h (CID_FaceRec),
+	src/type42/t42types.h (T42_FaceRec): Comment out `afm_data'.
+
+2008-09-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/smooth/ftgrays.c (gray_raster_render): Don't dereference
+	`target_map' if FT_RASTER_FLAG_DIRECT is set.  Problem reported by
+	Stephan T. Lavavej <stl at nuwen.net>.
+
+2008-09-21  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/otvalid/Jamfile: Add missing target `otvmath' for multi build
+	by jam.
+	* src/sfnt/Jamfile: Add missing target `ttmtx' for multi build by
+	jam.
+
+2008-09-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/smooth/ftgrays.c (gray_find_cell): Fix threshold.  The values
+	passed to this function are already `normalized'.  Problem reported
+	by Stephan T. Lavavej <stl at nuwen.net>.
+
+	* docs/CHANGES: Document it.
+
+2008-09-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftoutln.c: Include FT_INTERNAL_DEBUG_H.
+	(FT_Outline_Decompose): Decorate with tracing messages.
+
+	* src/smooth/ftgrays.c [DEBUG_GRAYS]: Replace with
+	FT_DEBUG_LEVEL_TRACE.
+	[_STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: Include stdio.h and
+	stdarg.h.
+
+	(FT_TRACE) [_STANDALONE_]: Remove.
+	(FT_Message) [_STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: New function.
+	(FT_TRACE5, FT_TRACE7) [_STANDALONE_]: New macros.
+	(FT_ERROR) [_STANDALONE_]: Updated.
+
+	(gray_hline) [FT_DEBUG_LEVEL_TRACE]: Fix condition.
+	Use FT_TRACE7.
+	(gray_dump_cells): Make it `static void'.
+	(gray_convert_glyph): Use FT_TRACE7.
+
+	(FT_Outline_Decompose) [_STANDALONE_]: Synchronize with version in
+	ftoutln.c.
+
+	* src/base/ftadvanc.c (FT_Get_Advance, FT_Get_Advances): Use
+	FT_ERROR_BASE.
+
+	* docs/formats.txt: Updated.
+
+2008-09-19  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c: Import sfnt-wrapped Type1 and sfnt-wrapped
+	CID-keyed font support.
+	* builds/mac/ftmac.c: Ditto.
+
+2008-09-19  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (Mac_Read_sfnt_Resource): Fix double free bug in
+	sfnt-wrapped Type1 and sfnt-wrapped CID-keyed font support code.
+	`open_face_from_buffer' frees the passed buffer if it cannot open a
+	face from the buffer, so the caller must not free it.
+
+2008-09-19  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (Mac_Read_sfnt_Resource): Add initial support
+	for sfnt-wrapped Type1 and sfnt-wrapped CID-keyed font.
+	(ft_lookup_PS_in_sfnt): New function to look up `TYP1' or `CID '
+	table in sfnt table directory.  It is used before loading TrueType
+	font driver.
+
+	* docs/CHANGES: Add note about the current status of sfnt-wrapped
+	Type1 and sfnt-wrapped CID-keyed font support.
+
+2008-09-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftsystem.c (FT_Done_Memory): Use ft_sfree directly for
+	orthogonality (ft_free and ft_sfree could belong to different memory
+	pools).  This fixes Savannah bug #24297.
+
+2008-09-18  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/cff/cffobjs.c (cff_face_init): Use TTAG_OTTO defined
+	in tttags.h instead of numerical value 0x4F54544FL.
+
+2008-09-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.h, src/cff/cffgload.c
+	(cff_decoder_set_width_only): Eliminate function call.
+
+2008-09-15  George Williams  <gww at silcom.com>
+
+	Fix Savannah bug #24179, reported by Bram Tassyns.
+
+	* src/type1/t1load.c (mm_axis_unmap, T1_Get_MM_Var): Fix computation
+	of default values.
+
+2008-09-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/glnames.py (main): Surround `ft_get_adobe_glyph_index'
+	and `ft_adobe_glyph_list' with FT_CONFIG_OPTION_ADOBE_GLYPH_LIST to
+	prevent unconditional definition.  This fixes Savannah bug #24241.
+
+	* src/psnames/pstables.h: Regenerated.
+
+2008-09-13  Werner Lemberg  <wl at gnu.org>
+
+	* autogen.sh, builds/unix/configure.raw,
+	include/freetype/config/ftconfig.h, builds/unix/ftconfig.in: Minor
+	beautifying.
+
+	* include/freetype/ftadvanc.h, include/freetype/ftgasp.h,
+	include/freetype/ftlcdfil.h: Protect against FreeType 1.
+	Some other minor fixes.
+
+	* devel/ftoption.h: Synchronize with
+	include/freetype/config/ftoption.h.
+
+2008-09-11  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftbase.c: Include ftadvanc.c.
+
+2008-09-11  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/ftconfig.in: Duplicate the cpp computation of
+	FT_SIZEOF_{INT|LONG} from include/freetype/config/ftconfig.h.
+	(FT_USE_AUTOCONF_SIZEOF_TYPES): New macro.  If defined, the cpp
+	computation is disabled and the statically configured sizes are
+	used.  This fixes Savannah bug #21250.
+
+	* builds/unix/configure.raw: Add the checks to compare the cpp
+	computation results of the bit length of int and long versus the
+	sizes detected by running `configure'.  If the results are
+	different, FT_USE_AUTOCONF_SIZEOF_TYPES is defined to prioritize the
+	results.
+	New option --{enable|disable}-biarch-config is added to define or
+	undefine FT_USE_AUTOCONF_SIZEOF_TYPES manually.
+
+2008-09-05  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: Clear FT2_EXTRA_LIBS when Carbon or
+	ApplicationServices framework is missing.  Although this value is not
+	used in building of FreeType2, it is written in `freetype2.pc' and
+	`freetype-config'.
+
+2008-09-01  David Turner  <david at freetype.org>
+
+	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Accept a negative cmap
+	index to mean `use default cached FT_Face's charmap'.  This fixes
+	Savannah bug #22625.
+	* include/freetype/ftcache.h: Document it.
+
+
+	Make FT_MulFix an inlined function.  This is done to speed up
+	FreeType a little (on x86 3% when loading+hinting, 10% when
+	rendering, ARM savings are more important though).  Disable this by
+	undefining FT_CONFIG_OPTION_INLINE_MULFIX.
+
+	Use of assembler code can now be controlled with
+	FT_CONFIG_OPTION_NO_ASSEMBLER.
+
+	* include/freetype/config/ftconfig.h, builds/unix/ftconfig.in
+	[!FT_CONFIG_OPTION_NO_ASSEMBLER] (FT_MulFix_arm): New assembler
+	implementation.
+	[!FT_CONFIG_OPTION_NO_ASSEMBLER] (FT_MulFix_i386): Assembler
+	implementation taken from `ftcalc.c'.
+	[!FT_CONFIG_OPTION_NO_ASSEMBLER] (FT_MULFIX_ASSEMBLER): New macro
+	which is defined to the platform-specific assembler implementation
+	of FT_MulFix.
+	[FT_CONFIG_OPTION_INLINE_MULFIX && FT_MULFIX_ASSEMBLER]
+	(FT_MULFIX_INLINED): New macro.
+
+	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_NO_ASSEMBLER,
+	FT_CONFIG_OPTION_INLINE_MULFIX): New macros.
+
+	* include/freetype/freetype.h: Updated to handle FT_MULFIX_INLINED.
+
+	* src/base/ftcalc.c: Updated to use FT_MULFIX_ASSEMBLER and
+	FT_MULFIX_INLINED.
+
+
+	Add a new header named FT_ADVANCES_H declaring some new APIs to
+	extract the advances of one or more glyphs without necessarily
+	loading their outlines.  Also provide `fast loaders' for the
+	TrueType, Type1, and CFF font drivers (more to come later).
+
+	* src/base/ftadvanc.c, include/freetype/ftadvanc.h: New files.
+
+	* include/freetype/config/ftheader.h (FT_ADVANCES_H): New macro.
+	* include/freetype/freetype.h (FT_LOAD_ADVANCE_ONLY): New macro.
+
+	* include/freetype/internal/ftdriver.h (FT_Face_GetAdvancesFunc):
+	`flags' and `advances' are now of type `FT_UInt' and `FT_Fixed',
+	respectively.
+
+	* src/base/Jamfile (_sources), src/base/rules.mk (BASE_SRC): Add
+	ftadvanc.c.
+
+	* src/cff/cffdrivr.c (cff_get_advances): New function.
+	(cff_driver_class): Register it.
+
+	* src/cff/cffgload.c (cff_decoder_set_width_only): New function.
+	(cff_decoder_parse_charstrings): Handle `width_only'.
+	(cff_slot_load): Handle FT_LOAD_ADVANCE_ONLY.
+
+	* src/cff/cffgload.h (cff_decoder): New element `width_only'.
+	(cff_decoder_set_width_only): New declaration.
+
+	* src/truetype/ttdriver.c (tt_get_advances): New function.
+	(tt_driver_class): Register it.
+
+	* src/truetype/ttgload.c (Get_HMetrics, Get_VMetrics): Renamed to...
+	(TT_Get_HMetrics, TT_Get_VMetrics): This.
+	Update callers.
+	* src/truetype/ttgload.h: Declare them.
+
+	* src/type1/t1gload.h, src/type1/t1gload.c (T1_Get_Advances): New
+	function.
+	* src/type1/t1driver.c (t1_driver_class): Register T1_Get_Advances.
+
+
+	Add checks for minimum version of the `autotools' stuff.
+
+	* autogen.sh: Implement it.
+	(get_major_version, get_minor_version, get_patch_version,
+	compare_to_minimum_version, check_tool_version): New auxiliary
+	functions.
+
+	* README.CVS: Document it.
+
+2008-08-29  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/sfnt/sfobjs.c (sfnt_open_font): Use TTAG_OTTO defined in
+	tttags.h instead of FT_MAKE_TAG( 'O', 'T', 'T', 'O' ).
+
+2008-08-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_encoding): Protect against infinite
+	loop.  This fixes Savannah bug #24150 (where a patch has been posted
+	too).
+
+2008-08-23  Werner Lemberg  <wl at gnu.org>
+
+	* src/type/t1afm.c (compare_kern_pairs), src/psaux/afmparse.c
+	(afm_compare_kern_pairs): Fix comparison.  This fixes Savannah bug
+	#24119.
+
+2008-08-19  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftobjs.c (FT_Stream_New): Initialize *astream always,
+	even if passed library or arguments are invalid.  This fixes a bug
+	that an uninitialized stream is freed when an invalid library handle
+	is passed.  Originally proposed by Mike Fabian, 2008/08/18 on
+	freetype-devel.
+	(FT_Open_Face): Ditto (stream).
+	(load_face_in_embedded_rfork): Ditto (stream2).
+
+2008-08-18  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c: Add a fallback to guess the availability of the
+	`ResourceIndex' type.  It is used when built without configure
+	(e.g., a build with Jam).
+	* builds/mac/ftmac.c: Ditto.
+	* builds/unix/configure.raw: Set HAVE_TYPE_RESOURCE_INDEX to 1 or 0
+	explicitly, even if `ResourceIndex' is unavailable.
+
+2008-08-18  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: In checking of Mac OS X features,
+	all-in-one header file `Carbon.h' is replaced by the minimum
+	header file `CoreServices.h', similar to current src/base/ftmac.c.
+
+2008-08-18  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/sfnt/ttcmap.c (tt_cmap2_validate): Skip the validation of
+	sub-header when its code_count is 0.  Many Japanese Dynalab fonts
+	include such an empty sub-header (code_count == 0, first_code == 0
+	delta == 0, but offset != 0) as the second sub-header in SJIS cmap.
+
+2008-08-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1tokens.h: Handle `ForceBold' keyword.  This fixes
+	Savannah bug #23995.
+
+	* src/cid/cidload.c (parse_expansion_factor): New callback function.
+	(cid_field_records): Use it for `ExpansionFactor'.
+	* src/cod/cidtoken.h: Handle `ForceBold' keyword.
+	Don't handle `ExpansionFactor'.
+
+2008-08-04  Bram Tassyns  <bramt at enfocus.be>
+
+	* src/cff/cffparse.c (cff_parse_fixed_scaled): Fix thinko which
+	resulted in incorrect scaling.  This fixes Savannah bug #23973.
+
+2008-08-04  Werner Lemberg  <wl at gnu.org>
+
+	Be more tolerant w.r.t. invalid entries in SFNT table directory.
+
+	* src/sfnt/ttload.c (check_table_dir): Ignore invalid entries and
+	adjust table count.
+	Add more trace messages.
+	(tt_face_load_font_dir): Updated.
+
+2008-07-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_decoder_parse_charstrings): No longer
+	assume that the first argument on the stack is the bottom-most
+	element.  Two reasons:
+
+	  o According to people from Adobe it is missing in the Type 2
+	    specification that pushing of additional, superfluous arguments
+	    on the stack is prohibited.
+
+	  o Acroread in general handles fonts differently, namely by popping
+	    the number of arguments needed for a particular operand (as a PS
+	    interpreter would do).  In case of buggy fonts this causes a
+	    different interpretation which of the elements on the stack are
+	    superfluous and which not.
+
+	Since there are CFF subfonts (embedded in PDFs) which rely on
+	Acroread's behaviour, FreeType now does the same.
+
+2008-07-27  Werner Lemberg  <wl at gnu.org>
+
+	Add extra mappings for `Tcommaaccent' and `tcommaaccent'.  This
+	fixes Savannah bug #23940.
+
+	* src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): Rename to...
+	(EXTRA_GLYPH_LIST_SIZE): This.
+	Increase by 2.
+	(ft_wgl_extra_unicodes): Rename to...
+	(ft_extra_glyph_unicodes): This.
+	Add two code values.
+	(ft_wgl_extra_glyph_names): Rename to...
+	(ft_extra_glyph_names): This.
+	Add two glyphs.
+	(ft_wgl_extra_glyph_name_offsets): Rename to...
+	(ft_extra_glyph_name_offsets): This.
+	Add two offsets.
+
+	(ps_check_wgl_name, ps_check_wgl_unicode): Rename to...
+	(ps_check_extra_glyph_name, ps_check_extra_glyph_unicode): This.
+	Updated.
+	(ps_unicodes_init): Updated.
+
+2008-07-26  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_decoder_prepare,
+	cff_decoder_parse_charstrings): Improve debug output.
+
+2008-07-22  Martin McBride  <mmcbride at emtex.com>
+
+	* src/sfnt/ttcmap.c (tt_cmap4_validate, tt_cmap4_char_map_linear,
+	tt_cmap4_char_map_binary): Handle fonts which treat the last segment
+	specially.  According to the specification, such fonts would be
+	invalid but acroread accepts them.
+
+2008-07-16  Jon Foster  <Jon.Foster at cabot.co.uk>
+
+	* src/pfr/pfrdrivr.c (pfr_get_advance): Fix off-by-one error.
+
+	* src/base/ftcalc.c (FT_MulFix): Fix portability issue.
+
+	* src/sfnt/ttpost.c (MAC_NAME) [!FT_CONFIG_OPTION_POSTSCRIPT_NAMES]:
+	Fix compiler warning.
+
+2008-07-16  Werner Lemberg  <wl at gnu.org>
+
+	Handle CID-keyed fonts wrapped in an SFNT (with cmaps) correctly.
+
+	* src/cff/cffload.c (cff_font_load): Pass `pure_cff'.
+	Invert sids table only if `pure_cff' is set.
+	* src/cff/cffload.h: Updated.
+
+	* src/cff/cffobjs.c (cff_face_init): Updated.
+	Set FT_FACE_FLAG_CID_KEYED only if pure_cff is set.
+
+	* docs/CHANGES: Updated.
+
+2008-07-09  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttpload.c (tt_face_load_loca): Handle buggy fonts
+	where num_locations < num_glyphs.  Problem reported by Ding Li.
+
+2008-07-05  Werner Lemberg  <wl at gnu.org>
+
+	Since FreeType uses `$(value ...)', we now need GNU make 3.80 or
+	newer.  This fixes Savannah bug #23648.
+
+	* configure: zsh doesn't like ${1+"$@"}.
+	Update needed GNU make version.
+	* builds/toplevel.mk: Check for `$(eval ...)'.
+	* docs/INSTALL.GNU, docs/INSTALL.CROSS, docs/INSTALL.UNIX: Document
+	it.
+
+2008-07-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c (Draw_Sweep): If span is smaller than one
+	pixel, only check for dropouts if neither start nor end point lies
+	on a pixel center.  This fixes Savannah bug #23762.
+
+2008-06-29  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.7 released.
+	=========================
+
+
+	Tag sources with `VER-2-3-7'.
+
+	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
+	version number to 2.3.7.
+
+	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj: s/2.3.6/2.3.7/, s/236/237/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 7.
+
+	* builds/unix/configure.raw (version_info): Set to 9:18:3.
+
+	* docs/release: Updated.
+
+2008-06-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/ftglyph.c (FT_Matrix_Multiply, FT_Matrix_Invert): Move to...
+	* src/ftcalc.c: Here.  This fixes Savannah bug #23729.
+
+2008-06-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
+	Horizontal_Gray_Sweep_Drop): Test for intersections which
+	degenerate to a single point can be ignored; this has been confirmed
+	by Greg Hitchcock from Microsoft.  (This was commented out code.)
+
+2008-06-26  Werner Lemberg  <wl at gnu.org>
+
+	Improve navigation in API reference.
+
+	* src/tools/docmaker/tohtml.py (html_header_3): Renamed to...
+	(html_header_6): This.
+	(html_header_3, html_header_3i, html_header_4, html_header_5,
+	html_header_5t): New strings.
+	(toc_footer_start, toc_footer_end): New strings.
+	(HtmlFormatter::html_header): Updated.
+	(HtmlFormatter::html_index_header, HtmlFormatter::html_toc_header):
+	New strings.
+	(HtmlFormatter::index_enter): Use `html_index_header'.
+	(HtmlFormatter::index_exit): Print `html_footer'.
+	(HtmlFormatter::toc_enter): Use `html_toc_header'.
+	(HtmlFormatter::toc_exit): Print proper footer.
+
+	Convert ~ to non-breakable space.
+
+	* src/tools/docmaker/tohtml.py (make_html_para): Implement it.
+	Update header files accordingly.
+
+2008-06-24  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: Check type `ResourceIndex' explicitly
+	and define HAVE_TYPE_RESOURCE_INDEX if it is defined.  Mac OS X 10.5
+	bundles 10.4u SDK with MAC_OS_X_VERSION_10_5 macro but without
+	ResourceIndex type definition.  The macro does not inform the type
+	availability.
+	* src/base/ftmac.c: More parentheses are inserted to clarify the
+	conditionals to disable legacy APIs in `10.5 and later' cases.  If
+	HAVE_TYPE_RESOURCE_INDEX is not defined, ResourceIndex is defined.
+
+2008-06-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttinterp.c (Ins_SCANTYPE): Don't check rendering
+	mode.
+
+	* src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph,
+	Draw_Sweep): No-dropout mode is value 2, not value 0.
+	(Draw_Sweep): Really skip dropout handling for no-dropout mode.
+
+2008-06-24  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psobjs.c (t1_builder_close_contour): Don't add contour
+	if it consists of one point only.  Based on a patch from Savannah
+	bug #23683 (from John Tytgat).
+
+2008-06-22  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (TT_Load_Glyph): Protect bytecode stuff
+	with IS_HINTED.
+
+	* docs/CHANGES: Updated.
+
+2008-06-22  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: If CFLAGS has `-isysroot XXX' option
+	but LDFLAGS does not, import it to LDFLAGS.  The option is used to
+	specify non-default SDK on Mac OS X (e.g., universal binary SDK for
+	Mac OS X 10.4 on PowerPC platform).  Although Apple TechNote 2137
+	recommends to add the option only to CFLAGS, LDFLAGS should include
+	it because libfreetype.la is built with -no-undefined.  This fixes a
+	bug reported by Ryan Schmidt in MacPorts,
+	https://trac.macports.org/ticket/15331.
+
+2008-06-21  Werner Lemberg  <wl at gnu.org>
+
+	Enable access to the various dropout rules of the B&W rasterizer.
+	Pass dropout rules from the TT bytecode interpreter to the
+	rasterizer.
+
+	* include/freetype/ftimage.h (FT_OUTLINE_SMART_DROPOUTS,
+	FT_OUTLINE_EXCLUDE_STUBS): New flags for FT_Outline.
+
+	* src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
+	Horizontal_Gray_Sweep_Drop): Use same mode numbers as given in the
+	OpenType specification.
+	Fix mode 4 computation.
+	(Render_Glyph, Render_Gray_Glyph): Handle new outline flags.
+
+	* src/truetype/ttgload.c (TT_Load_Glyph) Convert scan conversion
+	mode to FT_OUTLINE_XXX flags.
+
+	* src/truetype/ttinterp.c (Ins_SCANCTRL): Enable ppem check.
+
+2008-06-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffobjs.c (cff_face_init): Compute final
+	`dict->units_per_em' value before assigning it to
+	`cffface->units_per_EM'.  Otherwise, CFFs without subfonts are
+	scaled incorrectly if the font matrix is non-standard.  This fixes
+	Savannah bug #23630.
+
+	* docs/CHANGES: Updated.
+
+2008-06-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/type/t1objs.c (T1_Face_Init): Slightly improve algorithm fix
+	from 2008-06-19.
+
+2008-06-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/type/t1objs.c (T1_Face_Init): Fix change from 2008-03-21.
+	Reported by Peter Weilbacher <mozilla at weilbacher.org>.
+
+	* docs/CHANGES: Updated.
+
+2008-06-15  George Williams  <gww at silcom.com>
+
+	* src/otvalid/otvgpos.c (otv_MarkBasePos_validate): Set
+	`valid->extra2' to 1.  This is undocumented in the OpenType 1.5
+	specification.
+
+2008-06-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftcalc.c (FT_MulFix) <asm>: Protect registers correctly
+	from clobbering.  Patch from Savannah bug report #23556.
+
+	* docs/CHANGES: Document it.
+
+2008-06-10  Werner Lemberg  <wl at gnu.org>
+
+	* autogen.sh: Add option `--install' to libtoolize.
+
+2008-06-10  Werner Lemberg  <wl at gnu.org>
+
+	* Version 2.3.6 released.
+	=========================
+
+
+	Tag sources with `VER-2-3-6'.
+
+	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
+	version number to 2.3.6.
+
+	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj: s/2.3.5/2.3.6/, s/235/236/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.
+
+	* builds/unix/configure.raw (version_info): Set to 9:17:3.
+
+
+	* include/freetype/internal/psaux.h (T1_BuilderRec): Remove `scale_x'
+	and `scale_y'.
+	* src/cff/cffgload.h (CFF_Builder): Remove `scale_x' and `scale_y'.
+
+
+	* src/cff/cffparse.c: Include FT_INTERNAL_DEBUG_H.
+	* src/cff/cffobjs.h: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
+
+2008-06-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (open_face): Check `clazz->init_face' and
+	`clazz->done_face'.
+
+2008-06-09  VaDiM  <s_sliva at rambler.ru>
+
+	Support debugging on WinCE.  From Savannah patch #6536; this fixes
+	bug #23497.
+
+	* builds/win32/ftdebug.c (OutputDebugStringEx): New function/macro
+	as a replacement for OutputDebugStringA (which WinCE doesn't have).
+	Update all callers.
+	(ft_debug_init) [_WIN32_CE]: WinCE apparently doesn't have
+	environment variables.
+
+2008-06-09  Werner Lemberg  <wl at gnu.org>
+
+	* README.CVS: Updated.
+
+	* builds/unix/configure.raw, builds/unix/freetype-config.in: Updated
+	for newer versions of autoconf and friends.
+
+2008-06-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1parse.h (T1_ParserRec): Make `base_len' and
+	`private_len' unsigned.
+
+	* src/type1/t1parse.c (read_pfb_tag): Make `asize' unsigned and read
+	it as such.
+	(T1_New_Parser, T1_Get_Private_Dict): Make `size' unsigned.
+
+
+	* src/base/ftstream.c (FT_Stream_Skip): Reject negative values.
+
+
+	* src/type1/t1load.c (parse_blend_design_positions): Check `n_axis'
+	for sane value.
+	Fix typo.
+
+
+	* src/psaux/psobjs.c (ps_table_add): Check `idx' correctly.
+
+
+	* src/truetype/ttinterp (Ins_SHC): Use BOUNDS() to check
+	`last_point'.
+
+
+	* src/sfnt/ttload.c (tt_face_load_max_profile): Limit
+	`maxTwilightPoints'.
+
+2008-06-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttinterp.c (Ins_IP): Handle case `org_dist == 0'
+	correctly.  This fixes glyphs `t' and `h' of Arial Narrow at 12ppem.
+
+2008-06-03  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/ftcache.h (FTC_FaceID): Change type back to
+	FT_Pointer.  Reported by Ian Britten <britten at caris.com>.
+
+2008-06-02  Werner Lemberg  <wl at gnu.org>
+
+	Emit header info for defined FreeType objects in reference.
+
+	* src/tools/docmaker/content.py (re_header_macro): New regexp.
+	(ContentProcessor::__init__): Initialize new dictionary `headers'.
+	(DocBlock::__init__): Collect macro header definitions.
+
+	* src/tools/docmaker/tohtml.py (header_location_header,
+	header_location_footer): New strings.
+	(HtmlFormatter::__init__): Pass `headers' dictionary.
+	(HtmlFormatter::print_html_field): Don't emit paragraph tags.
+	(HtmlFormatter::print_html_field_list): Emit empty paragraph.
+	(HtmlFormatter::block_enter): Emit header info.
+
+2008-06-01  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/config/ftheader.h (FT_UNPATENTED_HINTING_H,
+	FT_INCREMENTAL_H): Added.
+
+2008-05-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/docmaker/sources.py (SourceBlock::__init__): While
+	looking for markup tags, return immediately as soon a single one is
+	found.
+
+2008-05-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttinterp.c (Ins_MD): The MD instruction also uses
+	original, unscaled input values.  Confirmed by Greg Hitchcock from
+	Microsoft.
+
+2008-05-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/docmaker/tohtml.py (block_footer_start,
+	block_footer_middle): Beautify output.
+
+2008-05-25  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c (fc_black_render): Return 0 when we are
+	trying to render into a zero-width/height bitmap, not an error code.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Move initialization
+	of the graphics state for subglyphs to...
+	(TT_Hint_Glyph): This function.
+	Hinting instructions for a composite glyph apparently refer to the
+	just hinted subglyphs, not the unhinted, unscaled outline.  This
+	seems to fix Savannah bugs #20973 and (at least partially) #23310.
+
+2008-05-20  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c (FT_New_Face_From_Suitcase): Check if valid
+	`aface' is returned by FT_New_Face_From_FOND().  The patch was
+	proposed by an anonymous reporter of Savannah bug #23204.
+
+2008-05-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/pshinter/pshalgo.c (ps_hints_apply): Reset scale values after
+	correction for pixel boundary.  Without this patch, the effect can
+	be cumulative under certain circumstances, making glyphs taller and
+	taller after each call.  This fixes Savannah bug #19976.
+
+2008-05-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftdebug.c (FT_Message, FT_Panic): Send output to stderr.
+	This fixes Savannah bug #23280.
+
+	* docs/CHANGES: Updated.
+
+2008-05-18  David Turner  <david at freetype.org>
+
+	* src/psnames/psmodule.c (ft_wgl_extra_unicodes,
+	ft_wgl_extra_glyph_names, ft_wgl_extra_glyph_name_offsets,
+	ps_check_wgl_name, ps_check_wgl_unicode): Use `static' to make
+	declarations non-global.
+
+	* src/type1/t1load.c: Add missing comment.
+
+2008-05-17  Sam Hocevar  <samh>
+
+	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle zero-contour
+	glyphs correctly.  Patch from Savannah bug #23277.
+
+2008-05-16  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2008-05-16  Sergey Tolstov  <stolstov at esri.com>
+
+	Improve support for WGL4 encoded fonts.
+
+	* src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): New macro.
+	(ft_wgl_extra_unicodes, ft_wgl_extra_glyph_names,
+	ft_wgl_extra_glyph_name_offsets): New arrays.
+	(ps_check_wgl_name, ps_check_wgl_unicode): New functions.
+	(ps_unicodes_init): Use them to add additional Unicode mappings.
+
+2008-05-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+	<op_closepath>: `closepath' without a path is a no-op, not an error
+	(cf. the PS reference manual).
+
+	Reported by Martin McBride.
+
+2008-05-15  Werner Lemberg  <wl at gnu.org>
+
+	* builds/toplevel.mk (CONFIG_GUESS, CONFIG_SUB): Updated.
+
+2008-05-15  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_subrs): Accept fonts with a subrs array
+	which contains a single but empty entry.  This is technically
+	invalid (since it must end with `return'), but...
+
+	Reported by Martin McBride.
+
+2008-05-14  Werner Lemberg  <wl at gnu.org>
+
+	Finish fix of scaling bug of CID-keyed CFF subfonts.
+
+	* include/freetype/internal/ftcalc.h, src/base/ftcalc.c
+	(FT_Matrix_Multiply_Scaled, FT_Vector_Transform_Scaled): New
+	functions.
+
+	* src/cff/cffobjs.h (CFF_Internal): New struct.  It is used to
+	provide global hinting data for both the top-font and all subfonts
+	(with proper scaling).
+
+	* src/cff/cffobjs.c (cff_make_private_dict): New function, using
+	code from `cff_size_init'.
+	(cff_size_init, cff_size_done, cff_size_select, cff_size_request):
+	Use CFF_Internal and handle subfonts.
+	(cff_face_init): Handle top-dict and subfont matrices correctly;
+	apply some heuristic in case of unlikely matrix concatenation
+	results.  This has been discussed with people from Adobe (thanks
+	goes mainly to David Lemon) who confirm that the CFF specs are fuzzy
+	and not correct.
+
+	* src/cff/cffgload.h (cff_decoder_prepare): Add `size' argument.
+
+	* src/cff/cffgload.c (cff_builder_init): Updated.
+	(cff_decoder_prepare): Handle hints globals for subfonts.
+	Update all callers.
+	(cff_slot_load): Handling scaling of subfonts properly.
+
+	* src/cff/cffparse.c (cff_parse_fixed_dynamic): New function.
+	(cff_parse_font_matrix): Use it.
+
+	* src/cff/cfftypes.h (CFF_FontDictRec): Make `units_per_em'
+	FT_ULong.
+
+	* docs/CHANGES: Document it.
+
+2008-05-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/winfonts/winfnt.c (fnt_face_get_dll_font, FNT_Face_Init):
+	Handle case `face_index < 0'.
+	* docs/CHANGES: Document it.
+
+2008-05-04  Werner Lemberg  <wl at gnu.org>
+
+	First steps to fix the scaling bug of CID-keyed CFF subfonts,
+	reported by Ding Li on 2008/03/28 on freetype-devel.
+
+	* src/base/cff/cffparse.c (power_tens): New array.
+	(cff_parse_real): Rewritten to introduce a fourth parameter which
+	returns the `scaling' of the real number so that we have no
+	precision loss.  This is not used yet.
+	Update all callers.
+	(cff_parse_fixed_thousand): Replace with...
+	(cff_parse_fixed_scaled): This function.  Update all callers.
+
+2008-05-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (FT_Load_Glyph): Call the auto-hinter without
+	transformation since it recursively calls FT_Load_Glyph.  This fixes
+	Savannah bug #23143.
+
+2008-04-26  Werner Lemberg  <wl at gnu.org>
+
+	* include/freetype/internal/psaux.h (T1_BuilderRec): Mark `scale_x'
+	and `scale_y' as obsolete since they aren't used.
+	* src/psaux/psobjs.c (t1_builder_init): Updated.
+
+	* src/cff/cffgload.h (CFF_Builder): Mark `scale_x' and `scale_y' as
+	obsolete since they aren't used.
+	* src/cff/cffgload.c (cff_builder_init): Updated.
+
+2008-04-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/pcf/pcfdrivr.c (PCF_Face_Init): Protect call to
+	`FT_Stream_OpenLZW' with `FT_CONFIG_OPTION_USE_LZW'.  From Savannah
+	bug #22909.
+
+2008-04-13  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psconv.c (PS_Conv_ToFixed): Increase precision if
+	integer part is zero.
+
+2008-04-01  Werner Lemberg  <wl at gnu.org>
+
+	Fix compilation with g++ 4.1 (with both `single' and `multi'
+	targets).
+
+	* src/base/ftobjs.c (FT_Open_Face): Don't define a variable in block
+	which is crossed by a `goto'.
+
+	* src/otvalid/otvalid.h (otv_MATH_validate): Add prototype.
+
+2008-03-31  Werner Lemberg  <wl at gnu.org>
+
+	Fix support for subsetted CID-keyed CFFs.
+
+	* include/freetype/freetype.h (FT_FACE_FLAG_CID_KEYED,
+	FT_IS_CID_KEYED): New macros.
+
+	* src/cff/cffobjs.c (cff_face_init): Set number of glyphs to the
+	maximum CID value in CID-keyed CFFs.
+	Handle FT_FACE_FLAG_CID_KEYED flag.
+
+	* docs/CHANGES: Document it.
+
+
+	Fix CFF font matrix calculation and improve precision.
+
+	* src/cff/cffparse.c (cff_parse_real): Increase precision if integer
+	part is zero.
+	(cff_parse_font_matrix): Simplify computation of `units_per_em';
+	this prevents overflow also.
+
+
+	Support FT_Get_CID_Registry_Ordering_Supplement for PS CID fonts.
+
+	* src/cid/cidriver.c: Include FT_SERVICE_CID_H.
+	(cid_get_ros): New function.
+	(cid_service_cid_info): New service structure.
+	(cid_services): Register it.
+
+2008-03-23  Werner Lemberg  <wl at gnu.org>
+
+	Adjustments for Visual C++ 8.0, as reported by Rainer Deyke.
+
+	* builds/compiler/visualc.mk (CFLAGS): Remove /W5.
+	(ANSIFLAGS): Add _CRT_SECURE_NO_DEPRECATE.
+
+2008-03-21  Laurence Darby  <ldarby>
+
+	* src/type1/t1objs.c (T1_Face_Init): Use `/Weight'.  Patch from
+	Savannah bug #22675.
+
+2008-03-13  Derek Clegg  <dclegg at apple.com>
+
+	* src/truetype/ttgxvar.c (TT_Get_MM_Var): Fix named style loop.
+	Patch from Savannah bug #22541.
+
+2008-03-03  Masatoshi Kimura  <VYV03354 at nifty.ne.jp>
+
+	* src/sfnt/ttcmap.c (tt_cmap14_char_map_nondef_binary,
+	tt_cmap14_find_variant): Return correct value.
+	(tt_cmap14_variant_chars): Fix check for `di'.
+
+2008-02-29  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2008-02-29  Wolf
+
+	Add build support for symbian platform.  From Savannah bug #22440.
+
+	* builds/symbian/*: New files.
+
+2008-02-21  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c (parse_fond): Fix a bug of PostScript font name
+	synthesis.  For any face of a specified FOND, always the name for
+	the first face was used.  Except of a FOND that refers multiple
+	Type1 font files, wrong synthesized font names are not used at all,
+	so this is an invisible bug.  A few limit checks are added too.
+
+	* builds/mac/ftmac.c: Ditto.
+
+2008-02-21  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: Split compiler option to link Carbon
+	frameworks to one option for CoreServices framework and another
+	option for ApplicationServices framework.  The split options can be
+	managed by GNU libtool to avoid unrequired duplication when FreeType
+	is linked with other applications.  Suggested by Daniel Macks,
+	Savannah bug #22366.
+
+2008-02-18  Victor Stinner  <victor.stinner at haypocalc.com>
+
+	* src/truetype/ttinterp.c (Ins_IUP): Check number of points.  Fix
+	from Savannah bug #22356.
+
+2008-02-17  Jonathan Blow  <jon at number-none.com>
+
+	* src/autofit/afloader.c (af_loader_load_g, af_loader_load_glyph):
+	Check for valid callback pointers.
+
+2008-02-15  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c (FT_New_Face_From_SFNT): Check the sfnt resource
+	handle by its value instead of ResError(), fix provided by Deron
+	Kazmaier.  According to the Resource Manager Reference,
+	GetResource(), Get1Resource(), GetNamedResource(),
+	Get1NamedResource() and RGetResource() set noErr but return NULL
+	handle when they can not find the requested resource.  These
+	functions never return undefined values, so it is sufficient to
+	check if the handle is not NULL.
+
+	* builds/mac/ftmac.c (FT_New_Face_From_SFNT): Ditto.
+
+2008-02-14  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftbase.c: <ftmac.c> is replaced by "ftmac.c" as other
+	inclusion styles.  Now it always includes src/base/ftmac.c;
+	builds/mac/ftmac.c is never included in any configuration.
+
+	* builds/unix/configure.raw: Print warning if configure is executed
+	with options to specify Carbon functionalities explicitly.
+
+	* docs/INSTALL.MAC: Note that legacy builds/mac/ftmac.c is not
+	included automatically and manual replacement is required.
+
+2008-02-11  Werner Lemberg  <wl at gnu.org>
+
+	* builds/modules.mk (CLOSE_MODULE, REMOVE_MODULE), builds/detect.mk
+	(dos_setup), builds/freetype.mk (clean_project_dos,
+	distclean_project_dos): Don't use \ but $(SEP).  Reported by Duncan
+	Murdoch.
+
+2008-01-18  Sylvain Pasche  <sylvain.pasche at gmail.com>
+
+	* src/base/ftlcdfil.c (_ft_lcd_filter_legacy): Updated comment to
+	mention intra-pixel algorithm.
+
+	* include/freetype/freetype.h (FT_Render_Mode): Mention that
+	FT_Library_SetLcdFilter can be used to reduce fringes.
+
+2008-01-16  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c (ft_black_render): Check `outline' before
+	using it.  Reported by Allan Yang.
+
+2008-01-12  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c (FT_CONFIG_OPTION_5_GRAY_LEVELS): Remove.
+
+2008-01-12  Allan Yang, Jian Hua - SH  <Allan.Yang at fmc.fujitsu.com>
+
+	* src/raster/ftraster.c (ft_black_init)
+	[FT_RASTER_OPTION_ANTI_ALIASING]: Fix compilation.
+
+2008-01-10  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Handle the case
+	where the number of contours in a simple glyph is zero (and which
+	does contain an entry in the `glyf' table).  This fixes Savannah bug
+	#21990.
+
+2008-01-04  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Formatting suggested by Sean McBride.
+
+	* builds/mac/ftmac.c: Formatting (tab expanded).
+	* src/autofit/afindic.c: Ditto.
+	* src/base/ftcid.c: Ditto.
+	* src/base/ftmac.c: Ditto.
+
+2007-12-30  Werner Lemberg  <wl at gnu.org>
+
+	* src/smooth/ftgrays.c (gray_raster_render): Check `outline'
+	correctly.
+
+2007-12-21  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Improvement of POSIX resource-fork accessor to load unsorted
+	references in a resource.  In HelveLTMM (resource-fork PostScript
+	Type1 font bundled with Mac OS X since 10.3.x), the appearance order
+	of PFB chunks is not sorted; sorting the chunks by reference IDs is
+	required.
+
+	* include/freetype/internal/ftrfork.h (FT_RFork_Ref): New structure
+	type to store a pair of reference ID and offset to the chunk.
+
+	* src/base/ftrfork.c (ft_raccess_sort_ref_by_id): New function to
+	sort FT_RFork_Ref by their reference IDs.
+
+	(FT_Raccess_Get_DataOffsets): Returns an array of offsets that is
+	sorted by reference ID.
+
+2007-12-14  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffparse.c (cff_parse_real): Don't apply `power_ten'
+	division too early; otherwise the most significant digit(s) of the
+	final result are lost as the value is truncated to an integer.  This
+	fixes Savannah bug #21794 (where the patch has been posted too).
+
+2007-12-06  Fix  <4d876b82 at gmail.com>
+
+	Pass options from one configure script to another as-is (not
+	expanded).  This is needed for options like
+	--includedir='${prefix}/include'.
+
+	* builds/unix/detect.mk, configure: Prevent argument expansion in
+	call to the (real) `configure' script.
+
+2007-12-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix compilation if
+	TT_USE_BYTECODE_INTERPRETER isn't defined.
+
+2007-12-06  Werner Lemberg  <wl at gnu.org>
+
+	There exist CFFs which contain opcodes for the Type 1 operators
+	`hsbw' and `closepath' which are both invalid in Type 2 charstrings.
+	However, it doesn't harm to support them.
+
+	* src/cff/cffgload.c (CFF_Operator): Add `cff_op_hsbw' and
+	`cff_op_closepath.'
+	(cff_argument_counts): Ditto.
+
+	(cff_decoder_parse_charstrings): Handle Type 1 opcodes 9 (closepath)
+	and 13 (hsbw) which are invalid in Type 2 charstrings.
+
+2007-12-06  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftrfork.c (raccess_guess_darwin_newvfs): New function to
+	support new pathname syntax `..namedfork/rsrc' to access a resource
+	fork on Mac OS X.  The legacy syntax `/rsrc' does not work on
+	case-sensitive HFS+.
+	(raccess_guess_darwin_hfsplus): Fix a bug in the calculation of
+	buffer size to store a pathname.
+	* include/freetype/internal/ftrfork.h: Increment the number of
+	resource fork guessing rule.
+
+2007-12-06  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: Improve the compile tests to search
+	Carbon functions.
+	* builds/mac/ftmac.c: Import fixes for Carbon incompatibilities
+	proposed by Sean McBride from src/base/ftmac.c (see 2007-11-16).
+
+2007-12-06  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	The documents and comments for Mac OS X are improved by Sean
+	McBride.
+
+	* src/base/ftmac.c: Fix a comment.
+	* include/freetype/ftmac.h: Ditto.
+	* docs/INSTALL.MAC: Improve English and add comment on lowest
+	system version specified by MACOSX_DEPLOYMENT_TARGET.
+
+2007-12-04  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffload.c (cff_subfont_load): Don't use logical OR to
+	concatenate error codes.
+	* src/sfnt/ttsbit.c (Load_SBit_Range): Ditto.
+
+2007-12-04  Graham Asher  <graham.asher at btinternet.com>
+
+	* src/truetype/ttobjs.c (tt_face_init): Don't use logical OR to
+	concatenate error codes.
+
+2007-12-04  Sean McBride  <sean at rogue-research.com>
+
+	* src/pfr/pfrgload.c (pfr_glyph_load_compound): Remove compiler
+	warning.
+
+2007-11-20  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Fix MacOS legacy font support by Masatake Yamato on Mac OS X.  It is
+	not working since 2.3.5.  In FT_Open_New(), if FT_New_Stream()
+	cannot mmap() the specified file and cannot seek to head of the
+	specified file, it returns NULL stream and FT_Open_New() returns the
+	error immediately.  On MacOS, most legacy MacOS fonts fall into such
+	a scenario because their data forks are zero-sized and cannot be
+	sought.  To proceed to guessing of resource fork fonts, the
+	functions for legacy MacOS font must properly handle the NULL stream
+	returned by FT_New_Stream().
+
+	* src/base/ftobjs.c (IsMacBinary): Return error
+	FT_Err_Invalid_Stream_Operation immediately when NULL stream is
+	passed.
+	(FT_Open_Face): Even when FT_New_Stream() returns an error, proceed
+	to fallback.  Originally, legacy MacOS font is tested in the cases
+	of FT_Err_Invalid_Stream_Operation (occurs when data fork is empty)
+	or FT_Err_Unknown_File_Format (occurs when AppleSingle header or
+	.dfont header is combined).  Now the case of
+	FT_Err_Cannot_Open_Stream is included.
+
+	* src/base/ftrfork.c (FT_Raccess_Guess): When passed stream is NULL,
+	skip FT_Stream_Seek(), which seeks to the head of stream, and
+	proceed to unit testing of raccess_guess_XXX().  FT_Stream_Seek()
+	for a NULL stream causes a Bus error on Mac OS X.
+	(raccess_guess_apple_double): Return FT_Err_Cannot_Open_Stream
+	immediately if passed stream is NULL.
+	(raccess_guess_apple_single): Ditto.
+
+2007-11-16  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	Fix for Carbon incompatibilities since Mac OS X 10.5,
+	proposed by Sean McBride.
+
+	* doc/INSTALL.MAC: Comment on MACOSX_DEPLOYMENT_TARGET.
+
+	* include/freetype/ftmac.h: Deprecate FT_New_Face_From_FOND and
+	FT_GetFilePath_From_Mac_ATS_Name.  Since Mac OS X 10.5, calling
+	Carbon functions from a forked process is classified as unsafe
+	by Apple.  All Carbon-dependent functions should be deprecated.
+
+	* src/base/ftmac.c: Use essential header files
+	<CoreServices/CoreServices.h> and
+	<ApplicationServices/ApplicationServices.h> instead of
+	all-in-one header file <Carbon/Carbon.h>.
+
+	Include <sys/syslimits.h> and replace HFS_MAXPATHLEN by Apple
+	genuine macro PATH_MAX.
+
+	Add fallback macro for kATSOptionFlagsUnRestrictedScope which
+	is not found in Mac OS X 10.0.
+
+	Multi-character constants ('POST', 'sfnt' etc) are replaced by
+	64bit constants calculated by FT_MAKE_TAG() macro.
+
+	For the index in the segment of resource fork, new portable
+	type ResourceIndex is introduced for better compatibility.
+	This type is since Mac OS X 10.5, so it is defined as short
+	when built on older platforms.
+
+	(FT_ATSFontGetFileReference): If build target is only the systems
+	10.5 and newer, it calls Apple genuine ATSFontGetFileReference().
+
+	(FT_GetFile_From_Mac_ATS_Name): Return an error if system is 10.5
+	and newer or 64bit platform, because legacy type FSSpec type is
+	removed completely.
+
+	(FT_New_Face_From_FSSpec): Ditto.
+
+2007-11-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_done_face): Check `sfnt' everywhere.  This
+	fixes Savannah bug #21485.
+
+2007-10-29  Daniel Svoboda  <dasvo at planeta@cz>
+
+	* src/winfonts/winfnt.c (FNT_Face_Init): Check first that the driver
+	can handle the font at all, then check `face_index'.  Otherwise, the
+	driver might return the wrong error code.  This fixes Savannah bug
+	#21468.
+
+2007-10-21  Werner Lemberg  <wl at gnu.org>
+
+	* src/sfnt/sfobjs.c (sfnt_load_face): Support bit 9 and prepare
+	support for bit 8 of the `fsSelection' field in the `OS/2' table.
+	MS is already using this; hopefully, this becomes part of OpenType
+	1.5.
+	Prepare also support for `name' IDs 21 (WWS_FAMILY) and 22
+	(WWS_SUBFAMILY).
+
+2007-10-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/docmaker/tohtml.py (html_header_2): Fix typo.
+	Add `td.left' element to CSS.
+	(toc_section_enter): Use it.
+
+2007-10-18  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h, src/base/ftobjs.c: Rename API
+	functions related to cmap type 14 support to the
+	`FT_Object_ActionName' scheme:
+
+	  FT_Get_Char_Variant_Index     -> FT_Face_GetCharVariantIndex
+	  FT_Get_Char_Variant_IsDefault -> FT_Face_GetCharVariantIsDefault
+	  FT_Get_Variant_Selectors      -> FT_Face_GetVariantSelectors
+	  FT_Get_Variants_Of_Char       -> FT_Face_GetVariantsOfChar
+	  FT_Get_Chars_Of_Variant       -> FT_Face_GetCharsOfVariant
+
+	Update documentation accordingly.
+
+	* src/sfnt/ttcmap.c: Stronger cmap 14 validation.
+	Make the code a little more consistent with FreeType coding
+	conventions and modify the cmap14 functions that returned a newly
+	allocated array to use a persistent vector from the TT_CMap14 object
+	instead.
+
+	(TT_CMap14Rec): Provide array and auxiliary data for result.
+	(tt_cmap14_done, tt_cmap14_ensure): New functions.
+
+	(tt_cmap14_init, tt_cmap14_validate, tt_cmap14_char_map_def_binary,
+	tt_cmap14_char_map_nondef_binary, tt_cmap14_find_variant,
+	tt_cmap14_char_var_index, tt_cmap14_variants,
+	tt_cmap14_char_variants, tt_cmap14_def_char_count,
+	tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
+	tt_cmap14_variant_chars, tt_cmap14_class_rec): Updated and improved.
+
+2007-10-15  George Williams  <gww at silcom.com>
+
+	Add support for cmap type 14.
+
+	* devel/ftoption.h, include/freetype/config/ftoption.h
+	(TT_CONFIG_CMAP_FORMAT_14): New macro.
+
+	* include/freetype/internal/ftobjs.h (FT_CMap_CharVarIndexFunc,
+	FT_CMap_CharVarIsDefaultFunc, FT_CMap_VariantListFunc,
+	FT_CMap_CharVariantListFunc, FT_CMap_VariantCharListFunc): New
+	support function prototypes.
+	(FT_CMap_ClassRec): Add them.
+	Update all users.
+
+	* include/freetype/ttnameid.h (TT_APPLE_ID_VARIANT_SELECTOR): New
+	macro.
+
+	* include/freetype/freetype.h (FT_Get_Char_Variant_Index,
+	FT_Get_Char_Variant_IsDefault, FT_Get_Variant_Selectors,
+	FT_Get_Variants_Of_Char, FT_Get_Chars_Of_Variant): New API
+	functions.
+
+	* src/base/ftobjs.c (find_variant_selector_charmap): New auxiliary
+	function.
+	(FT_Set_Charmap): Disallow cmaps of type 14.
+	(FT_Get_Char_Variant_Index, FT_Get_Char_Variant_IsDefault,
+	FT_Get_Variant_Selectors, FT_Get_Variants_Of_Char,
+	FT_Get_Chars_Of_Variant): New API functions.
+
+	* src/sfnt/ttcmap.c (TT_PEEK_UINT24, TT_NEXT_UINT24): New macros.
+
+	(TT_CMap14Rec, tt_cmap14_init, tt_cmap14_validate,
+	tt_cmap14_char_index, tt_cmap14_char_next, tt_cmap14_get_info,
+	tt_cmap14_char_map_def_binary, tt_cmap14_char_map_nondef_binary,
+	tt_cmap14_find_variant, tt_cmap14_char_var_index,
+	tt_cmap14_char_var_isdefault, tt_cmap14_variants,
+	tt_cmap14_char_variants, tt_cmap14_def_char_count,
+	tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
+	tt_cmap14_variant_chars, tt_cmap14_class_rec): New functions and
+	structures for cmap 14 support.
+	(tt_cmap_classes): Register tt_cmap14_class_rec.
+	(tt_face_build_cmaps): One more error message.
+
+	* docs/CHANGES: Mention cmap 14 support.
+
+2007-10-01  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftobjs.c (find_unicode_charmap): If search for a UCS-4
+	charmap fails, do the loop again while searching a UCS-2 charmap.
+	This favours MS charmaps over Apple ones.
+
+2007-08-29  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c: Introduction of abstract `short' data types,
+	ResFileRefNum and ResID.  These types were introduced for Copland,
+	then backported to MPW.  The variables exchanged with FileManager
+	QuickDraw frameworks are redefined by these data types.  Patch was
+	proposed by Sean McBride.
+	* builds/mac/ftmac.c: Ditto.
+
+2007-08-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/otvcommn.c (otv_x_y_ux_sy): Skip context glyphs.  Found
+	by Imran Yousaf.  Fixes Savannah bug #20773.
+
+	(otv_Lookup_validate): Correct handling of LookupType.  Found by
+	Imran Yousaf.  Fixes Savannah bug #20782.
+
+2007-08-17  George Williams  <gww at silcom.com>
+
+	* src/otvalid/otvgsub.c (otv_SingleSubst_validate): Fix handling of
+	SingleSubstFormat1.
+
+2007-08-11  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* builds/unix/configure.raw: Fix a bug which sets CC_BUILD by
+	${build-gcc} (unchecked) instead of by ${build}-gcc (checked).
+	Found by Ryan Hill.
+
+2007-08-11  George Williams  <gww at silcom.com>
+
+	* src/otvalid/otvcommn.c, src/otvalid/otvcommn.h
+	(otv_Coverage_validate): Add fourth argument to pass an expected
+	count value.  Update all users.
+	Check glyph IDs.
+	(otv_ClassDef_validate): Check `StartGlyph'.
+
+	* src/otvalid/otvgsub.c (otv_SingleSubst_validate): More glyph ID
+	checks.
+
+	* src/otvalid/otvmath.c (otv_MathConstants_validate): There are only
+	56 constants.
+	(otv_GlyphAssembly_validate, otv_MathGlyphConstruction_validate):
+	Check glyph IDs.
+
+2007-08-08  Werner Lemberg  <wl at gnu.org>
+
+	* src/otvalid/otvbase.c, src/otvalid/otvcommn.c,
+	src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, src/otvalid/otvgsub.c,
+	src/otvalid/otvjstf.c: s/FT_INVALID_DATA/FT_INVALID_FORMAT/ where
+	appropriate.  Reported by George.
+
+	* include/freetype/internal/fttrace.h: Define `trace_otvmath'.
+
+	* src/otvalid/rules.mk (OTV_DRV_SRC): Add otvmath.c.
+
+	* docs/CHANGES: Updated.
+
+2007-08-08  George Williams  <gww at silcom.com>
+
+	Add `MATH' validating support to otvalid module.
+
+	* include/freetype/tttags.h (TTAG_MATH): New macro.
+	* include/freetype/ftotval.h (FT_VALIDATE_MATH): New macro.
+	(FT_VALIDATE_OT): Updated.
+
+	* src/otvalid/otvmath.c: New file.
+
+	* src/otvalid/otvalid.c: Include otvmath.c.
+	* src/otvalid/otvmod.c (otv_validate): Handle `MATH' table.
+
+2007-08-04  Werner Lemberg  <wl at gnu.org>
+
+	* builds/unix/configure.raw: Add call to AC_LIBTOOL_WIN32_DLL.
+	Fixes Savannah bug #20686.
+
+2007-08-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/psnames/psmodule.c: Fix usage of
+	FT_CONFIG_OPTION_POSTSCRIPT_NAMES macro.  Reported by Graham Asher.
+
+2007-07-31  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c (open_face_from_buffer): The argument
+	`driver_name' is typed as `const char*' to match with the
+	callers in FT_New_Face_From_LWFN and FT_New_Face_From_SFNT.
+	This is same with open_face_from_buffer in src/base/ftobjs.c.
+	Found and fixed by Sean McBride.
+
+2007-07-28  Werner Lemberg  <wl at gnu.org>
+
+	* src/raster/ftraster.c (count_table): Make it conditional.
+	* src/base/ftobjs.c (FT_New_Library): Check FT_RENDER_POOL_SIZE with
+	a preprocessor statement.
+
+2007-07-27  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftoutln.c (FT_Outline_Translate): Check `outline' before
+	first usage.  From Savannah patch #6115.
+
+2007-07-16  Werner Lemberg  <wl at gnu.org>
+
+	* docs/CHANGES: Updated.
+
+2007-07-16  Derek Clegg  <dclegg at apple.com>
+
+	Add new service for getting the ROS from a CID font.
+
+	* include/freetype/config/ftheader.h (FT_CID_H): New macro.
+	* include/freetype/ftcid.h: New file.
+
+	* include/freetype/internal/ftserv.h (FT_SERVICE_CID_H): New macro.
+	* include/freetype/internal/services/svcid.h: New file.
+
+	* src/base/ftcid.c: New file.
+
+	* src/cff/cffdrivr.c: Include FT_SERVICE_CID_H.
+	(cff_get_ros): New function.
+	(cff_service_cid_info): New service structure.
+	(cff_services): Register it.
+
+	* src/cff/cffload.c (cff_font_done): Free registry and ordering.
+
+	* src/cff/cfftypes.h (CFF_FontRec): Add `registry' and `ordering'.
+
+	* modules.cfg (BASE_EXTENSIONS): Add ftcid.c.
+
+2007-07-11  Derek Clegg  <dclegg at apple.com>
+
+	Add support for postscript name service to CFF driver.
+
+	* src/cff/cffdrivr.c: Include FT_SERVICE_POSTSCRIPT_NAME_H.
+	(cff_get_ps_name): New function.
+	(cff_service_ps_name): New service structure.
+	(cff_services): Register it.
+
+2007-07-07  Werner Lemberg  <wl at gnu.org>
+
+	* src/base/ftglyph.c (FT_Glyph_Copy): Fix initialization of
+	`target'.  Reported by Sean McBride.
+
+2007-07-06  Werner Lemberg  <wl at gnu.org>
+
+	* src/pfr/pfrcmap.c: Include pfrerror.h.
+
+	* src/autofit/afindic.c: Add some external declarations to pacify
+	`make multi' compilation.
+
+	* src/cid/cidgload.c (cid_load_glyph): Pacify compiler.
+
+	* src/cff/cffdrivr.c (cff_ps_get_font_info), src/cff/cffobjs.c
+	(cff_strcpy), include/freetype/internal/ftmemory.h (FT_MEM_STRDUP),
+	src/autofit/aflatin.c (af_latin_hints_compute_edges),
+	src/autofit/afcjk.c (af_cjk_hints_compute_edges), src/sfnt/ttmtx.c
+	(tt_face_get_metrics), src/base/ftobjs.c (open_face)
+	[FT_CONFIG_OPTION_INCREMENTAL]: Fix compilation with C++ compiler.
+
+	* docs/release: Mention test compilation targets.
+
+2007-07-04  Werner Lemberg  <wl at gnu.org>
+
+	* docs/PROBLEMS: Mention that some PS based fonts can't be
+	handled correctly by FreeType.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Always allow a
+	recursion depth of 1.  This was the maximum value in TrueType 1.0,
+	and some older fonts don't set this field correctly.
+
+	* src/gxvalid/gxvmort1.c
+	(gxv_mort_subtable_type1_substTable_validate): Fix tracing message.
+
+2007-07-03  Werner Lemberg  <wl at gnu.org>
+
+	* src/autofit/aflatin.c (af_latin_metrics_init_blues): Initialize
+	`round' to pacify compiler.
+
+2007-07-02  Werner Lemberg  <wl at gnu.org>
+
+
+	* Version 2.3.5 released.
+	=========================
+
+
+	Tag sources with `VER-2-3-5'.
+
+	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
+	version number to 2.3.5.
+
+	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
+	builds/win32/visualc/freetype.dsp,
+	builds/win32/visualc/freetype.vcproj,
+	builds/win32/visualce/index.html,
+	builds/win32/visualce/freetype.dsp,
+	builds/win32/visualce/freetype.vcproj: s/2.3.4/2.3.5/, s/234/235/.
+
+	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
+
+	* builds/unix/configure.raw (version_info): Set to 9:16:3.
+
+2007-07-01  David Turner  <david at freetype.org>
+
+	* include/freetype/freetype.h, src/base/ftpatent.c
+	(FT_Face_SetUnpatentedHinting): New function to dynamically change
+	the setting after a face is created.
+
+	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Fix a small bug
+	that created distortions in the bytecode interpreter results.
+
+2007-06-30  David Turner  <david at freetype.org>
+
+	* src/truetype/ttinterp.c (Ins_IUP): Add missing variable
+	initialization.
+
+	* src/autofit/aflatin.c (af_latin_metrics_init_blues): Get rid of an
+	infinite loop in the case of degenerate fonts.
+
+2007-06-26  Rahul Bhalerao  <b.rahul.pm at gmail.com>
+
+	Add autofit module for Indic scripts.  This currently just reuses
+	the CJK-specific functions.
+
+	* include/freetype/config/ftoption.h (AF_CONFIG_OPTION_INDIC): New
+	macro.
+	* devel/ftoption.h: Synchronize with
+	include/freetype/config/ftoption.h.
+
+	* src/autofit/afindic.c, src/autofit/afindic.h: New files.
+
+	* src/autofit/afglobal.c, src/autofit/aftypes.h,
+	src/autofit/autofit.c: Updated.
+
+	* src/autofit/Jamfile (_sources), * src/autofit/rules.mk
+	(AUTOF_DRV_SRC): Updated.
+
+2007-06-23  David Turner  <david at freetype.org>
+
+	* src/truetype/ttgload.c (TT_Load_Simple): Fix change from
+	2007-06-16 that prevented the TrueType module from loading most
+	glyphs.
+
+2007-06-20  Werner Lemberg  <wl at gnu.org>
+
+	* src/cff/cffgload.c (cff_slot_load): Fix logic of 2007-05-28
+	change.
+
+2007-06-19  Werner Lemberg  <wl at gnu.org>
+
+	* src/type1/t1load.c (parse_encoding): Handle one more error.
+
+2007-06-19  Dmitry Timoshkov  <dmitry at codeweavers.com>
+
+	* src/winfonts/winfnt.c (fnt_face_get_dll_font): Return error
+	FNT_Err_Invalid_File_Format if file format was recognized but
+	the file doesn't contain any FNT(NE) or RT_FONT(PE) resources.
+	Add verbose debug logs to make it easier to debug failing load
+	attempts.
+	(FNT_Face_Init): A single FNT font can't contain more than 1 face,
+	so return an error if requested face index is > 0.
+	Do not do further attempt to load fonts if a previous attempt has
+	failed but returned error FNT_Err_Invalid_File_Format, i.e., the
+	file format has been recognized but no fonts found in the file.
+
+2007-07-19  suzuki toshiya  <mpsuzuki at hiroshima-u.ac.jp>
+
+	* src/base/ftmac.c: Apply patches proposed by Sean McBride.
+	(FT_GetFile_From_Mac_Name): Insert FT_UNUSED macros to fix
+	the compiler warnings against unused arguments.
+	(FT_ATSFontGetFileReference): Ditto.
+	(FT_GetFile_From_Mac_ATS_Name): Ditto.
+	(FT_New_Face_From_FSSpec): Ditto.
+	(lookup_lwfn_by_fond): Fix wrong comment.
+	Replace `const StringPtr' by more appropriate type
+	`ConstStr255Param'.
+	FSRefMakePathPath always returns UTF8 POSIX pathname in
+	Mach-O, thus HFS pathname support is dropped.
+	(count_faces): Remove HLock and HUnlock which is not
+	required on Mac OS X anymore.
+	(FT_New_Face_From_SFNT): Ditto.
+	(FT_New_Face_From_FOND): Ditto.
+	* builds/mac/ftmac.c: Synchronize to src/base/ftmac.c,
+	except of HFS pathname support and HLock/HUnlock.
+	They are required on classic CFM environment.
+
+2007-06-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psobjs.c (ps_parser_skip_PS_token): Remove incorrect
+	assertion.
+	(ps_parser_to_bytes): Fix error message.
+
+	* src/type42/t42objs.c (T42_Open_Face): Handle one more error.
+	* src/type42/t42parse.c (t42_parse_sfnts): s/alloc/allocated/.
+	Don't allow mixed binary and hex strings.
+	Handle string_size == 0 and string_buf == 0.
+	(t42_parse_encoding): Handle one more error.
+
+2007-06-18  Werner Lemberg  <wl at gnu.org>
+
+	* src/psaux/psobjs.c (ps_tofixedarray, ps_tocoordarray): Fix exit
+	logic.
+	(ps_parser_load_field) <T1_FIELD_TYPE_BBOX>: Skip delimiters
+	correctly.
+	(ps_parser_load_field_table): Use `fields->array_max' instead of
+	T1_MAX_TABLE_ELEMENTS to limit the number of arguments.
+
+	* src/cff/cffgload.c (cff_decoder_prepare): Fix change from
+	2007-06-06.
+
+2007-06-17  Werner Lemberg  <wl at gnu.org>
+
+	* src/tools/ftrandom.c (fon