Merge
authorunc0rr
Tue, 27 Aug 2013 17:22:07 +0400
changeset 9431 0f5961910e27
parent 9357 a501f5ec7b34 (current diff)
parent 9429 7a97a554ac80 (diff)
child 9433 f0a8ac191839
Merge
CMakeLists.txt
misc/libfreetype/Android.mk
misc/libfreetype/ChangeLog
misc/libfreetype/ChangeLog.20
misc/libfreetype/ChangeLog.21
misc/libfreetype/ChangeLog.22
misc/libfreetype/ChangeLog.23
misc/libfreetype/Jamfile
misc/libfreetype/Jamrules
misc/libfreetype/README
misc/libfreetype/README.git
misc/libfreetype/Xcode-iOS/Freetype.xcodeproj/default.mode1v3
misc/libfreetype/Xcode-iOS/Freetype.xcodeproj/default.pbxuser
misc/libfreetype/Xcode-iOS/Freetype.xcodeproj/project.pbxproj
misc/libfreetype/Xcode-iOS/Freetype_Prefix.pch
misc/libfreetype/Xcode/Freetype.xcodeproj/default.mode1v3
misc/libfreetype/Xcode/Freetype.xcodeproj/default.pbxuser
misc/libfreetype/Xcode/Freetype.xcodeproj/project.pbxproj
misc/libfreetype/Xcode/Freetype_Prefix.pch
misc/libfreetype/autogen.sh
misc/libfreetype/builds/amiga/include/freetype/config/ftconfig.h
misc/libfreetype/builds/amiga/include/freetype/config/ftmodule.h
misc/libfreetype/builds/amiga/makefile
misc/libfreetype/builds/amiga/makefile.os4
misc/libfreetype/builds/amiga/smakefile
misc/libfreetype/builds/amiga/src/base/ftdebug.c
misc/libfreetype/builds/amiga/src/base/ftsystem.c
misc/libfreetype/builds/atari/ATARI.H
misc/libfreetype/builds/atari/FNames.SIC
misc/libfreetype/builds/atari/FREETYPE.PRJ
misc/libfreetype/builds/atari/README.TXT
misc/libfreetype/builds/atari/deflinejoiner.awk
misc/libfreetype/builds/atari/gen-purec-patch.sh
misc/libfreetype/builds/mac/FreeType.m68k_cfm.make.txt
misc/libfreetype/builds/mac/FreeType.m68k_far.make.txt
misc/libfreetype/builds/mac/FreeType.ppc_carbon.make.txt
misc/libfreetype/builds/mac/FreeType.ppc_classic.make.txt
misc/libfreetype/builds/mac/ascii2mpw.py
misc/libfreetype/builds/mac/ftlib.prj.xml
misc/libfreetype/builds/mac/ftmac.c
misc/libfreetype/builds/newline
misc/libfreetype/builds/symbian/bld.inf
misc/libfreetype/builds/symbian/freetype.mmp
misc/libfreetype/builds/unix/configure.raw
misc/libfreetype/builds/unix/freetype-config.in
misc/libfreetype/builds/unix/freetype2.in
misc/libfreetype/builds/unix/freetype2.m4
misc/libfreetype/builds/unix/ft-munmap.m4
misc/libfreetype/builds/unix/ft2unix.h
misc/libfreetype/builds/unix/ftconfig.in
misc/libfreetype/builds/unix/ftsystem.c
misc/libfreetype/builds/unix/install-sh
misc/libfreetype/builds/unix/mkinstalldirs
misc/libfreetype/builds/unix/unix-cc.in
misc/libfreetype/builds/unix/unix-def.in
misc/libfreetype/builds/vms/ftconfig.h
misc/libfreetype/builds/vms/ftsystem.c
misc/libfreetype/builds/win32/ftdebug.c
misc/libfreetype/builds/win32/vc2005/freetype.sln
misc/libfreetype/builds/win32/vc2005/freetype.vcproj
misc/libfreetype/builds/win32/vc2005/index.html
misc/libfreetype/builds/win32/vc2008/freetype.sln
misc/libfreetype/builds/win32/vc2008/freetype.vcproj
misc/libfreetype/builds/win32/vc2008/index.html
misc/libfreetype/builds/win32/vc2010/freetype.sln
misc/libfreetype/builds/win32/vc2010/freetype.vcxproj
misc/libfreetype/builds/win32/vc2010/freetype.vcxproj.filters
misc/libfreetype/builds/win32/vc2010/index.html
misc/libfreetype/builds/win32/visualc/freetype.dsp
misc/libfreetype/builds/win32/visualc/freetype.dsw
misc/libfreetype/builds/win32/visualc/freetype.sln
misc/libfreetype/builds/win32/visualc/freetype.vcproj
misc/libfreetype/builds/win32/visualc/index.html
misc/libfreetype/builds/win32/visualce/freetype.dsp
misc/libfreetype/builds/win32/visualce/freetype.dsw
misc/libfreetype/builds/win32/visualce/freetype.vcproj
misc/libfreetype/builds/win32/visualce/index.html
misc/libfreetype/builds/wince/ftdebug.c
misc/libfreetype/builds/wince/vc2005-ce/freetype.sln
misc/libfreetype/builds/wince/vc2005-ce/freetype.vcproj
misc/libfreetype/builds/wince/vc2005-ce/index.html
misc/libfreetype/builds/wince/vc2008-ce/freetype.sln
misc/libfreetype/builds/wince/vc2008-ce/freetype.vcproj
misc/libfreetype/builds/wince/vc2008-ce/index.html
misc/libfreetype/configure
misc/libfreetype/devel/ft2build.h
misc/libfreetype/devel/ftoption.h
misc/libfreetype/docs/CHANGES
misc/libfreetype/docs/CUSTOMIZE
misc/libfreetype/docs/DEBUG
misc/libfreetype/docs/FTL.TXT
misc/libfreetype/docs/GPL.TXT
misc/libfreetype/docs/INSTALL
misc/libfreetype/docs/INSTALL.ANY
misc/libfreetype/docs/INSTALL.CROSS
misc/libfreetype/docs/INSTALL.GNU
misc/libfreetype/docs/INSTALL.MAC
misc/libfreetype/docs/INSTALL.UNIX
misc/libfreetype/docs/INSTALL.VMS
misc/libfreetype/docs/LICENSE.TXT
misc/libfreetype/docs/MAKEPP
misc/libfreetype/docs/PROBLEMS
misc/libfreetype/docs/TODO
misc/libfreetype/docs/UPGRADE.UNIX
misc/libfreetype/docs/VERSION.DLL
misc/libfreetype/docs/formats.txt
misc/libfreetype/docs/raster.txt
misc/libfreetype/docs/release
misc/libfreetype/include/freetype/config/ftconfig.h
misc/libfreetype/include/freetype/config/ftheader.h
misc/libfreetype/include/freetype/config/ftmodule.h
misc/libfreetype/include/freetype/config/ftoption.h
misc/libfreetype/include/freetype/config/ftstdlib.h
misc/libfreetype/include/freetype/freetype.h
misc/libfreetype/include/freetype/ftadvanc.h
misc/libfreetype/include/freetype/ftbbox.h
misc/libfreetype/include/freetype/ftbdf.h
misc/libfreetype/include/freetype/ftbitmap.h
misc/libfreetype/include/freetype/ftbzip2.h
misc/libfreetype/include/freetype/ftcache.h
misc/libfreetype/include/freetype/ftchapters.h
misc/libfreetype/include/freetype/ftcid.h
misc/libfreetype/include/freetype/fterrdef.h
misc/libfreetype/include/freetype/fterrors.h
misc/libfreetype/include/freetype/ftgasp.h
misc/libfreetype/include/freetype/ftglyph.h
misc/libfreetype/include/freetype/ftgxval.h
misc/libfreetype/include/freetype/ftgzip.h
misc/libfreetype/include/freetype/ftimage.h
misc/libfreetype/include/freetype/ftincrem.h
misc/libfreetype/include/freetype/ftlcdfil.h
misc/libfreetype/include/freetype/ftlist.h
misc/libfreetype/include/freetype/ftlzw.h
misc/libfreetype/include/freetype/ftmac.h
misc/libfreetype/include/freetype/ftmm.h
misc/libfreetype/include/freetype/ftmodapi.h
misc/libfreetype/include/freetype/ftmoderr.h
misc/libfreetype/include/freetype/ftotval.h
misc/libfreetype/include/freetype/ftoutln.h
misc/libfreetype/include/freetype/ftpfr.h
misc/libfreetype/include/freetype/ftrender.h
misc/libfreetype/include/freetype/ftsizes.h
misc/libfreetype/include/freetype/ftsnames.h
misc/libfreetype/include/freetype/ftstroke.h
misc/libfreetype/include/freetype/ftsynth.h
misc/libfreetype/include/freetype/ftsystem.h
misc/libfreetype/include/freetype/fttrigon.h
misc/libfreetype/include/freetype/fttypes.h
misc/libfreetype/include/freetype/ftwinfnt.h
misc/libfreetype/include/freetype/ftxf86.h
misc/libfreetype/include/freetype/internal/autohint.h
misc/libfreetype/include/freetype/internal/ftcalc.h
misc/libfreetype/include/freetype/internal/ftdebug.h
misc/libfreetype/include/freetype/internal/ftdriver.h
misc/libfreetype/include/freetype/internal/ftgloadr.h
misc/libfreetype/include/freetype/internal/ftmemory.h
misc/libfreetype/include/freetype/internal/ftobjs.h
misc/libfreetype/include/freetype/internal/ftpic.h
misc/libfreetype/include/freetype/internal/ftrfork.h
misc/libfreetype/include/freetype/internal/ftserv.h
misc/libfreetype/include/freetype/internal/ftstream.h
misc/libfreetype/include/freetype/internal/fttrace.h
misc/libfreetype/include/freetype/internal/ftvalid.h
misc/libfreetype/include/freetype/internal/internal.h
misc/libfreetype/include/freetype/internal/psaux.h
misc/libfreetype/include/freetype/internal/pshints.h
misc/libfreetype/include/freetype/internal/services/svbdf.h
misc/libfreetype/include/freetype/internal/services/svcid.h
misc/libfreetype/include/freetype/internal/services/svgldict.h
misc/libfreetype/include/freetype/internal/services/svgxval.h
misc/libfreetype/include/freetype/internal/services/svkern.h
misc/libfreetype/include/freetype/internal/services/svmm.h
misc/libfreetype/include/freetype/internal/services/svotval.h
misc/libfreetype/include/freetype/internal/services/svpfr.h
misc/libfreetype/include/freetype/internal/services/svpostnm.h
misc/libfreetype/include/freetype/internal/services/svpscmap.h
misc/libfreetype/include/freetype/internal/services/svpsinfo.h
misc/libfreetype/include/freetype/internal/services/svsfnt.h
misc/libfreetype/include/freetype/internal/services/svttcmap.h
misc/libfreetype/include/freetype/internal/services/svtteng.h
misc/libfreetype/include/freetype/internal/services/svttglyf.h
misc/libfreetype/include/freetype/internal/services/svwinfnt.h
misc/libfreetype/include/freetype/internal/services/svxf86nm.h
misc/libfreetype/include/freetype/internal/sfnt.h
misc/libfreetype/include/freetype/internal/t1types.h
misc/libfreetype/include/freetype/internal/tttypes.h
misc/libfreetype/include/freetype/t1tables.h
misc/libfreetype/include/freetype/ttnameid.h
misc/libfreetype/include/freetype/tttables.h
misc/libfreetype/include/freetype/tttags.h
misc/libfreetype/include/freetype/ttunpat.h
misc/libfreetype/include/ft2build.h
misc/libfreetype/modules.cfg
misc/libfreetype/src/autofit/afangles.c
misc/libfreetype/src/autofit/afangles.h
misc/libfreetype/src/autofit/afcjk.c
misc/libfreetype/src/autofit/afcjk.h
misc/libfreetype/src/autofit/afdummy.c
misc/libfreetype/src/autofit/afdummy.h
misc/libfreetype/src/autofit/aferrors.h
misc/libfreetype/src/autofit/afglobal.c
misc/libfreetype/src/autofit/afglobal.h
misc/libfreetype/src/autofit/afhints.c
misc/libfreetype/src/autofit/afhints.h
misc/libfreetype/src/autofit/afindic.c
misc/libfreetype/src/autofit/afindic.h
misc/libfreetype/src/autofit/aflatin.c
misc/libfreetype/src/autofit/aflatin.h
misc/libfreetype/src/autofit/aflatin2.c
misc/libfreetype/src/autofit/aflatin2.h
misc/libfreetype/src/autofit/afloader.c
misc/libfreetype/src/autofit/afloader.h
misc/libfreetype/src/autofit/afmodule.c
misc/libfreetype/src/autofit/afmodule.h
misc/libfreetype/src/autofit/afpic.c
misc/libfreetype/src/autofit/afpic.h
misc/libfreetype/src/autofit/aftypes.h
misc/libfreetype/src/autofit/afwarp.c
misc/libfreetype/src/autofit/afwarp.h
misc/libfreetype/src/autofit/autofit.c
misc/libfreetype/src/base/basepic.c
misc/libfreetype/src/base/basepic.h
misc/libfreetype/src/base/ftadvanc.c
misc/libfreetype/src/base/ftapi.c
misc/libfreetype/src/base/ftbase.c
misc/libfreetype/src/base/ftbase.h
misc/libfreetype/src/base/ftbbox.c
misc/libfreetype/src/base/ftbdf.c
misc/libfreetype/src/base/ftbitmap.c
misc/libfreetype/src/base/ftcalc.c
misc/libfreetype/src/base/ftcid.c
misc/libfreetype/src/base/ftdbgmem.c
misc/libfreetype/src/base/ftdebug.c
misc/libfreetype/src/base/ftfstype.c
misc/libfreetype/src/base/ftgasp.c
misc/libfreetype/src/base/ftgloadr.c
misc/libfreetype/src/base/ftglyph.c
misc/libfreetype/src/base/ftgxval.c
misc/libfreetype/src/base/ftinit.c
misc/libfreetype/src/base/ftlcdfil.c
misc/libfreetype/src/base/ftmac.c
misc/libfreetype/src/base/ftmm.c
misc/libfreetype/src/base/ftobjs.c
misc/libfreetype/src/base/ftotval.c
misc/libfreetype/src/base/ftoutln.c
misc/libfreetype/src/base/ftpatent.c
misc/libfreetype/src/base/ftpfr.c
misc/libfreetype/src/base/ftpic.c
misc/libfreetype/src/base/ftrfork.c
misc/libfreetype/src/base/ftsnames.c
misc/libfreetype/src/base/ftstream.c
misc/libfreetype/src/base/ftstroke.c
misc/libfreetype/src/base/ftsynth.c
misc/libfreetype/src/base/ftsystem.c
misc/libfreetype/src/base/fttrigon.c
misc/libfreetype/src/base/fttype1.c
misc/libfreetype/src/base/ftutil.c
misc/libfreetype/src/base/ftwinfnt.c
misc/libfreetype/src/base/ftxf86.c
misc/libfreetype/src/bdf/bdf.c
misc/libfreetype/src/bdf/bdf.h
misc/libfreetype/src/bdf/bdfdrivr.c
misc/libfreetype/src/bdf/bdfdrivr.h
misc/libfreetype/src/bdf/bdferror.h
misc/libfreetype/src/bdf/bdflib.c
misc/libfreetype/src/bzip2/Jamfile
misc/libfreetype/src/bzip2/ftbzip2.c
misc/libfreetype/src/cache/ftcache.c
misc/libfreetype/src/cache/ftcbasic.c
misc/libfreetype/src/cache/ftccache.c
misc/libfreetype/src/cache/ftccache.h
misc/libfreetype/src/cache/ftccback.h
misc/libfreetype/src/cache/ftccmap.c
misc/libfreetype/src/cache/ftcerror.h
misc/libfreetype/src/cache/ftcglyph.c
misc/libfreetype/src/cache/ftcglyph.h
misc/libfreetype/src/cache/ftcimage.c
misc/libfreetype/src/cache/ftcimage.h
misc/libfreetype/src/cache/ftcmanag.c
misc/libfreetype/src/cache/ftcmanag.h
misc/libfreetype/src/cache/ftcmru.c
misc/libfreetype/src/cache/ftcmru.h
misc/libfreetype/src/cache/ftcsbits.c
misc/libfreetype/src/cache/ftcsbits.h
misc/libfreetype/src/cff/cff.c
misc/libfreetype/src/cff/cffcmap.c
misc/libfreetype/src/cff/cffcmap.h
misc/libfreetype/src/cff/cffdrivr.c
misc/libfreetype/src/cff/cffdrivr.h
misc/libfreetype/src/cff/cfferrs.h
misc/libfreetype/src/cff/cffgload.c
misc/libfreetype/src/cff/cffgload.h
misc/libfreetype/src/cff/cffload.c
misc/libfreetype/src/cff/cffload.h
misc/libfreetype/src/cff/cffobjs.c
misc/libfreetype/src/cff/cffobjs.h
misc/libfreetype/src/cff/cffparse.c
misc/libfreetype/src/cff/cffparse.h
misc/libfreetype/src/cff/cffpic.c
misc/libfreetype/src/cff/cffpic.h
misc/libfreetype/src/cff/cfftoken.h
misc/libfreetype/src/cff/cfftypes.h
misc/libfreetype/src/cid/ciderrs.h
misc/libfreetype/src/cid/cidgload.c
misc/libfreetype/src/cid/cidgload.h
misc/libfreetype/src/cid/cidload.c
misc/libfreetype/src/cid/cidload.h
misc/libfreetype/src/cid/cidobjs.c
misc/libfreetype/src/cid/cidobjs.h
misc/libfreetype/src/cid/cidparse.c
misc/libfreetype/src/cid/cidparse.h
misc/libfreetype/src/cid/cidriver.c
misc/libfreetype/src/cid/cidriver.h
misc/libfreetype/src/cid/cidtoken.h
misc/libfreetype/src/cid/type1cid.c
misc/libfreetype/src/gxvalid/gxvalid.c
misc/libfreetype/src/gxvalid/gxvalid.h
misc/libfreetype/src/gxvalid/gxvbsln.c
misc/libfreetype/src/gxvalid/gxvcommn.c
misc/libfreetype/src/gxvalid/gxvcommn.h
misc/libfreetype/src/gxvalid/gxverror.h
misc/libfreetype/src/gxvalid/gxvfeat.c
misc/libfreetype/src/gxvalid/gxvfeat.h
misc/libfreetype/src/gxvalid/gxvfgen.c
misc/libfreetype/src/gxvalid/gxvjust.c
misc/libfreetype/src/gxvalid/gxvkern.c
misc/libfreetype/src/gxvalid/gxvlcar.c
misc/libfreetype/src/gxvalid/gxvmod.c
misc/libfreetype/src/gxvalid/gxvmod.h
misc/libfreetype/src/gxvalid/gxvmort.c
misc/libfreetype/src/gxvalid/gxvmort.h
misc/libfreetype/src/gxvalid/gxvmort0.c
misc/libfreetype/src/gxvalid/gxvmort1.c
misc/libfreetype/src/gxvalid/gxvmort2.c
misc/libfreetype/src/gxvalid/gxvmort4.c
misc/libfreetype/src/gxvalid/gxvmort5.c
misc/libfreetype/src/gxvalid/gxvmorx.c
misc/libfreetype/src/gxvalid/gxvmorx.h
misc/libfreetype/src/gxvalid/gxvmorx0.c
misc/libfreetype/src/gxvalid/gxvmorx1.c
misc/libfreetype/src/gxvalid/gxvmorx2.c
misc/libfreetype/src/gxvalid/gxvmorx4.c
misc/libfreetype/src/gxvalid/gxvmorx5.c
misc/libfreetype/src/gxvalid/gxvopbd.c
misc/libfreetype/src/gxvalid/gxvprop.c
misc/libfreetype/src/gxvalid/gxvtrak.c
misc/libfreetype/src/gzip/adler32.c
misc/libfreetype/src/gzip/ftgzip.c
misc/libfreetype/src/gzip/infblock.c
misc/libfreetype/src/gzip/infblock.h
misc/libfreetype/src/gzip/infcodes.c
misc/libfreetype/src/gzip/infcodes.h
misc/libfreetype/src/gzip/inffixed.h
misc/libfreetype/src/gzip/inflate.c
misc/libfreetype/src/gzip/inftrees.c
misc/libfreetype/src/gzip/inftrees.h
misc/libfreetype/src/gzip/infutil.c
misc/libfreetype/src/gzip/infutil.h
misc/libfreetype/src/gzip/zconf.h
misc/libfreetype/src/gzip/zlib.h
misc/libfreetype/src/gzip/zutil.c
misc/libfreetype/src/gzip/zutil.h
misc/libfreetype/src/lzw/ftlzw.c
misc/libfreetype/src/lzw/ftzopen.c
misc/libfreetype/src/lzw/ftzopen.h
misc/libfreetype/src/otvalid/otvalid.c
misc/libfreetype/src/otvalid/otvalid.h
misc/libfreetype/src/otvalid/otvbase.c
misc/libfreetype/src/otvalid/otvcommn.c
misc/libfreetype/src/otvalid/otvcommn.h
misc/libfreetype/src/otvalid/otverror.h
misc/libfreetype/src/otvalid/otvgdef.c
misc/libfreetype/src/otvalid/otvgpos.c
misc/libfreetype/src/otvalid/otvgpos.h
misc/libfreetype/src/otvalid/otvgsub.c
misc/libfreetype/src/otvalid/otvjstf.c
misc/libfreetype/src/otvalid/otvmath.c
misc/libfreetype/src/otvalid/otvmod.c
misc/libfreetype/src/otvalid/otvmod.h
misc/libfreetype/src/pcf/README
misc/libfreetype/src/pcf/pcf.c
misc/libfreetype/src/pcf/pcf.h
misc/libfreetype/src/pcf/pcfdrivr.c
misc/libfreetype/src/pcf/pcfdrivr.h
misc/libfreetype/src/pcf/pcferror.h
misc/libfreetype/src/pcf/pcfread.c
misc/libfreetype/src/pcf/pcfread.h
misc/libfreetype/src/pcf/pcfutil.c
misc/libfreetype/src/pcf/pcfutil.h
misc/libfreetype/src/pfr/pfr.c
misc/libfreetype/src/pfr/pfrcmap.c
misc/libfreetype/src/pfr/pfrcmap.h
misc/libfreetype/src/pfr/pfrdrivr.c
misc/libfreetype/src/pfr/pfrdrivr.h
misc/libfreetype/src/pfr/pfrerror.h
misc/libfreetype/src/pfr/pfrgload.c
misc/libfreetype/src/pfr/pfrgload.h
misc/libfreetype/src/pfr/pfrload.c
misc/libfreetype/src/pfr/pfrload.h
misc/libfreetype/src/pfr/pfrobjs.c
misc/libfreetype/src/pfr/pfrobjs.h
misc/libfreetype/src/pfr/pfrsbit.c
misc/libfreetype/src/pfr/pfrsbit.h
misc/libfreetype/src/pfr/pfrtypes.h
misc/libfreetype/src/psaux/afmparse.c
misc/libfreetype/src/psaux/afmparse.h
misc/libfreetype/src/psaux/psaux.c
misc/libfreetype/src/psaux/psauxerr.h
misc/libfreetype/src/psaux/psauxmod.c
misc/libfreetype/src/psaux/psauxmod.h
misc/libfreetype/src/psaux/psconv.c
misc/libfreetype/src/psaux/psconv.h
misc/libfreetype/src/psaux/psobjs.c
misc/libfreetype/src/psaux/psobjs.h
misc/libfreetype/src/psaux/t1cmap.c
misc/libfreetype/src/psaux/t1cmap.h
misc/libfreetype/src/psaux/t1decode.c
misc/libfreetype/src/psaux/t1decode.h
misc/libfreetype/src/pshinter/pshalgo.c
misc/libfreetype/src/pshinter/pshalgo.h
misc/libfreetype/src/pshinter/pshglob.c
misc/libfreetype/src/pshinter/pshglob.h
misc/libfreetype/src/pshinter/pshinter.c
misc/libfreetype/src/pshinter/pshmod.c
misc/libfreetype/src/pshinter/pshmod.h
misc/libfreetype/src/pshinter/pshnterr.h
misc/libfreetype/src/pshinter/pshpic.c
misc/libfreetype/src/pshinter/pshpic.h
misc/libfreetype/src/pshinter/pshrec.c
misc/libfreetype/src/pshinter/pshrec.h
misc/libfreetype/src/psnames/psmodule.c
misc/libfreetype/src/psnames/psmodule.h
misc/libfreetype/src/psnames/psnamerr.h
misc/libfreetype/src/psnames/psnames.c
misc/libfreetype/src/psnames/pspic.c
misc/libfreetype/src/psnames/pspic.h
misc/libfreetype/src/psnames/pstables.h
misc/libfreetype/src/raster/ftmisc.h
misc/libfreetype/src/raster/ftraster.c
misc/libfreetype/src/raster/ftraster.h
misc/libfreetype/src/raster/ftrend1.c
misc/libfreetype/src/raster/ftrend1.h
misc/libfreetype/src/raster/raster.c
misc/libfreetype/src/raster/rasterrs.h
misc/libfreetype/src/raster/rastpic.c
misc/libfreetype/src/raster/rastpic.h
misc/libfreetype/src/sfnt/sfdriver.c
misc/libfreetype/src/sfnt/sfdriver.h
misc/libfreetype/src/sfnt/sferrors.h
misc/libfreetype/src/sfnt/sfnt.c
misc/libfreetype/src/sfnt/sfntpic.c
misc/libfreetype/src/sfnt/sfntpic.h
misc/libfreetype/src/sfnt/sfobjs.c
misc/libfreetype/src/sfnt/sfobjs.h
misc/libfreetype/src/sfnt/ttbdf.c
misc/libfreetype/src/sfnt/ttbdf.h
misc/libfreetype/src/sfnt/ttcmap.c
misc/libfreetype/src/sfnt/ttcmap.h
misc/libfreetype/src/sfnt/ttcmapc.h
misc/libfreetype/src/sfnt/ttkern.c
misc/libfreetype/src/sfnt/ttkern.h
misc/libfreetype/src/sfnt/ttload.c
misc/libfreetype/src/sfnt/ttload.h
misc/libfreetype/src/sfnt/ttmtx.c
misc/libfreetype/src/sfnt/ttmtx.h
misc/libfreetype/src/sfnt/ttpost.c
misc/libfreetype/src/sfnt/ttpost.h
misc/libfreetype/src/sfnt/ttsbit.c
misc/libfreetype/src/sfnt/ttsbit.h
misc/libfreetype/src/sfnt/ttsbit0.c
misc/libfreetype/src/smooth/ftgrays.c
misc/libfreetype/src/smooth/ftgrays.h
misc/libfreetype/src/smooth/ftsmerrs.h
misc/libfreetype/src/smooth/ftsmooth.c
misc/libfreetype/src/smooth/ftsmooth.h
misc/libfreetype/src/smooth/ftspic.c
misc/libfreetype/src/smooth/ftspic.h
misc/libfreetype/src/smooth/smooth.c
misc/libfreetype/src/tools/apinames.c
misc/libfreetype/src/tools/chktrcmp.py
misc/libfreetype/src/tools/cordic.py
misc/libfreetype/src/tools/docmaker/content.py
misc/libfreetype/src/tools/docmaker/docbeauty.py
misc/libfreetype/src/tools/docmaker/docmaker.py
misc/libfreetype/src/tools/docmaker/formatter.py
misc/libfreetype/src/tools/docmaker/sources.py
misc/libfreetype/src/tools/docmaker/tohtml.py
misc/libfreetype/src/tools/docmaker/utils.py
misc/libfreetype/src/tools/ftrandom/ftrandom.c
misc/libfreetype/src/tools/glnames.py
misc/libfreetype/src/tools/test_afm.c
misc/libfreetype/src/tools/test_bbox.c
misc/libfreetype/src/tools/test_trig.c
misc/libfreetype/src/truetype/truetype.c
misc/libfreetype/src/truetype/ttdriver.c
misc/libfreetype/src/truetype/ttdriver.h
misc/libfreetype/src/truetype/tterrors.h
misc/libfreetype/src/truetype/ttgload.c
misc/libfreetype/src/truetype/ttgload.h
misc/libfreetype/src/truetype/ttgxvar.c
misc/libfreetype/src/truetype/ttgxvar.h
misc/libfreetype/src/truetype/ttinterp.c
misc/libfreetype/src/truetype/ttinterp.h
misc/libfreetype/src/truetype/ttobjs.c
misc/libfreetype/src/truetype/ttobjs.h
misc/libfreetype/src/truetype/ttpic.c
misc/libfreetype/src/truetype/ttpic.h
misc/libfreetype/src/truetype/ttpload.c
misc/libfreetype/src/truetype/ttpload.h
misc/libfreetype/src/type1/t1afm.c
misc/libfreetype/src/type1/t1afm.h
misc/libfreetype/src/type1/t1driver.c
misc/libfreetype/src/type1/t1driver.h
misc/libfreetype/src/type1/t1errors.h
misc/libfreetype/src/type1/t1gload.c
misc/libfreetype/src/type1/t1gload.h
misc/libfreetype/src/type1/t1load.c
misc/libfreetype/src/type1/t1load.h
misc/libfreetype/src/type1/t1objs.c
misc/libfreetype/src/type1/t1objs.h
misc/libfreetype/src/type1/t1parse.c
misc/libfreetype/src/type1/t1parse.h
misc/libfreetype/src/type1/t1tokens.h
misc/libfreetype/src/type1/type1.c
misc/libfreetype/src/type42/t42drivr.c
misc/libfreetype/src/type42/t42drivr.h
misc/libfreetype/src/type42/t42error.h
misc/libfreetype/src/type42/t42objs.c
misc/libfreetype/src/type42/t42objs.h
misc/libfreetype/src/type42/t42parse.c
misc/libfreetype/src/type42/t42parse.h
misc/libfreetype/src/type42/t42types.h
misc/libfreetype/src/type42/type42.c
misc/libfreetype/src/winfonts/fnterrs.h
misc/libfreetype/src/winfonts/winfnt.c
misc/libfreetype/src/winfonts/winfnt.h
misc/libfreetype/version.sed
misc/libfreetype/vms_make.com
misc/libopenalbridge/CMakeLists.txt
misc/libopenalbridge/commands.c
misc/libopenalbridge/commands.h
misc/libopenalbridge/globals.h
misc/libopenalbridge/loaders.c
misc/libopenalbridge/loaders.h
misc/libopenalbridge/openalbridge.c
misc/libopenalbridge/openalbridge.def
misc/libopenalbridge/openalbridge.h
misc/libopenalbridge/openalbridge_t.h
misc/libopenalbridge/tester.c
misc/libopenalbridge/wrappers.c
misc/libopenalbridge/wrappers.h
misc/libtremor/Android.mk
misc/libtremor/Xcode/Tremor.xcodeproj/default.mode1v3
misc/libtremor/Xcode/Tremor.xcodeproj/default.pbxuser
misc/libtremor/Xcode/Tremor.xcodeproj/project.pbxproj
misc/libtremor/Xcode/Tremor_Prefix.pch
misc/libtremor/tremor/CHANGELOG
misc/libtremor/tremor/COPYING
misc/libtremor/tremor/Makefile.am
misc/libtremor/tremor/README
misc/libtremor/tremor/Version_script.in
misc/libtremor/tremor/asm_arm.h
misc/libtremor/tremor/autogen.sh
misc/libtremor/tremor/backends.h
misc/libtremor/tremor/bitwise.c
misc/libtremor/tremor/block.c
misc/libtremor/tremor/block.h
misc/libtremor/tremor/codebook.c
misc/libtremor/tremor/codebook.h
misc/libtremor/tremor/codec_internal.h
misc/libtremor/tremor/config_types.h
misc/libtremor/tremor/configure.in
misc/libtremor/tremor/floor0.c
misc/libtremor/tremor/floor1.c
misc/libtremor/tremor/framing.c
misc/libtremor/tremor/info.c
misc/libtremor/tremor/ivorbiscodec.h
misc/libtremor/tremor/ivorbisfile.h
misc/libtremor/tremor/ivorbisfile_example.c
misc/libtremor/tremor/lsp_lookup.h
misc/libtremor/tremor/mapping0.c
misc/libtremor/tremor/mdct.c
misc/libtremor/tremor/mdct.h
misc/libtremor/tremor/mdct_lookup.h
misc/libtremor/tremor/misc.h
misc/libtremor/tremor/ogg.h
misc/libtremor/tremor/os.h
misc/libtremor/tremor/os_types.h
misc/libtremor/tremor/registry.c
misc/libtremor/tremor/registry.h
misc/libtremor/tremor/res012.c
misc/libtremor/tremor/sharedbook.c
misc/libtremor/tremor/synthesis.c
misc/libtremor/tremor/vorbisfile.c
misc/libtremor/tremor/window.c
misc/libtremor/tremor/window.h
misc/libtremor/tremor/window_lookup.h
project_files/Android-build/SDL-android-project/assets/Data/Locale/hedgewars_en.qm
--- a/.hgignore	Tue Jul 16 11:14:27 2013 +0200
+++ b/.hgignore	Tue Aug 27 17:22:07 2013 +0400
@@ -28,10 +28,7 @@
 glob:project_files/HedgewarsMobile/Data/
 glob:project_files/HedgewarsMobile/build/
 glob:gameServer/dist/
-glob:misc/libtremor/Xcode/build/
 glob:misc/liblua/Xcode/build/
-glob:misc/libfreetype/Xcode/build/
-glob:misc/libfreetype/Xcode-iOS/build/
 glob:misc/libphysfs/Xcode/build/
 glob:misc/libphyslayer/Xcode/build/
 glob:moc_*.cxx_parameters
@@ -65,4 +62,4 @@
 glob:version_info.txt
 glob:*.tar.*
 glob:*.or
-glob:*.res
\ No newline at end of file
+glob:*.res
--- a/QTfrontend/HWApplication.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/HWApplication.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -38,6 +38,8 @@
 HWApplication::HWApplication(int &argc, char **argv) :
     QApplication(argc, argv)
 {
+    form = 0;
+
 #if !defined(Q_OS_WIN)
     signal(SIGINT, &terminateFrontend);
 #endif
--- a/QTfrontend/hwform.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/hwform.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -165,14 +165,13 @@
 #endif
 
 #ifdef __APPLE__
-    AutoUpdater* updater = NULL;
     if (config->isAutoUpdateEnabled())
     {
-#ifdef __APPLE__
+        AutoUpdater* updater = NULL;
+
 #ifdef SPARKLE_ENABLED
         updater = new SparkleAutoUpdater();
 #endif
-#endif
         if (updater)
         {
             updater->checkForUpdates();
@@ -658,7 +657,7 @@
         }
 
         QList<HWTeam> teamsList;
-        for (QStringList::iterator it = tmNames.begin(); it != tmNames.end(); it++)
+        for (QStringList::iterator it = tmNames.begin(); it != tmNames.end(); ++it)
         {
             HWTeam team(*it);
             team.loadFromFile();
@@ -704,7 +703,7 @@
 
 void HWForm::GoToPage(int id)
 {
-    bool stopAnim = false;
+    //bool stopAnim = false;
 
     int lastid = ui.Pages->currentIndex();
     PagesStack.push(ui.Pages->currentIndex());
@@ -721,7 +720,7 @@
 
 
 #if (QT_VERSION >= 0x040600)
-    if (!stopAnim)
+    //if (!stopAnim)
     {
         /**Start animation :**/
         int coeff = 1;
@@ -817,7 +816,7 @@
         stopAnim = true; */
 
     if ((!hwnet) || (!hwnet->isInRoom()))
-        if (id == ID_PAGE_NETGAME || id == ID_PAGE_NETGAME)
+        if (id == ID_PAGE_NETGAME)
         {
             stopAnim = true;
             GoBack();
--- a/QTfrontend/res/html/about.html	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/res/html/about.html	Tue Aug 27 17:22:07 2013 +0400
@@ -77,12 +77,12 @@
             German: Peter Hüwe &lt;<a href="mailto:PeterHuewe@gmx.de">PeterHuewe@gmx.de</a>&gt;, Mario Liebisch &lt;<a href="mailto:mario.liebisch@gmail.com">mario.liebisch@gmail.com</a>&gt;, Richard Karolyi &lt;<a href="mailto:sheepluva@ercatec.net">sheepluva@ercatec.net</a>&gt;<br>
             Greek: &lt;<a href="mailto:talos_kriti@yahoo.gr">talos_kriti@yahoo.gr</a>&gt;<br>
             Italian: Luca Bonora &lt;<a href="mailto:bonora.luca@gmail.com">bonora.luca@gmail.com</a>&gt;, Marco Bresciani &lt;<a href="mailto:m.bresciani@email.it">m.bresciani@email.it</a>&gt;<br>
-            Japanese: ADAM Etienne &lt;<a href="mailto:etienne.adam@gmail.com">etienne.adam@gmail.com</a>&gt;, Marco Bresciani &lt;<a href="mailto:m.bresciani@email.it">m.bresciani@email.it</a>&gt;, 梅津洋恵<br>
+            Japanese: ADAM Etienne &lt;<a href="mailto:etienne.adam@gmail.com">etienne.adam@gmail.com</a>&gt;, Marco Bresciani &lt;<a href="mailto:m.bresciani@email.it">m.bresciani@email.it</a>&gt;<br>
             Korean: Anthony Bellew &lt;<a href="mailto:anthonyreflected@gmail.com">anthonyreflected@gmail.com</a>&gt;<br>
             Lithuanian: Lukas Urbonas &lt;<a href="mailto:lukasu08@gmail.com">lukasu08@gmail.com</a>&gt;<br>
             Polish: Maciej Mroziński &lt;<a href="mailto:mynick2@o2.pl">mynick2@o2.pl</a>&gt;, Wojciech Latkowski &lt;<a href="mailto:magik17l@gmail.com">magik17l@gmail.com</a>&gt;, Piotr Mitana, Maciej Górny<br>
             Portuguese: Fábio Canário &lt;<a href="mailto:inufabie@gmail.com">inufabie@gmail.com</a>&gt;<br>
-            Russian: Andrey Korotaev &lt;<a href="mailto:unC0Rr@gmail.com">unC0Rr@gmail.com</a>&gt;<br>
+            Russian: Andrey Korotaev &lt;<a href="mailto:unC0Rr@gmail.com">unC0Rr@gmail.com</a>&gt;, Vitaly Novichkov &lt;<a href="mailto:admin@wohlnet.ru">admin@wohlnet.ru</a>&gt;<br>
             Slovak: Jose Riha<br>
             Spanish: Carlos Vives &lt;<a href="mailto:mail@carlosvives.es">mail@carlosvives.es</a>&gt;<br>
             Swedish: Niklas Grahn &lt;<a href="mailto:raewolusjoon@yaoo.com">raewolusjoon@yaoo.com</a>&gt;, Henrik Rostedt &lt;<a href="mailto:henrik.rostedt@gmail.com">henrik.rostedt@gmail.com</a>&gt;<br>
--- a/QTfrontend/team.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/team.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -171,7 +171,7 @@
 
 bool HWTeam::loadFromFile()
 {
-    QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(m_name), QSettings::IniFormat, 0);
+    QSettings teamfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)), QSettings::IniFormat, 0);
     teamfile.setIniCodec("UTF-8");
     m_name = teamfile.value("Team/Name", m_name).toString();
     m_grave = teamfile.value("Team/Grave", "Statue").toString();
@@ -204,7 +204,7 @@
 
 bool HWTeam::fileExists()
 {
-    QFile f(QString("physfs://Teams/%1.hwt").arg(m_name));
+    QFile f(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
     return f.exists();
 }
 
@@ -212,7 +212,7 @@
 {
     if(m_isNetTeam)
         return false;
-    QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(m_name));
+    QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name)));
     cfgfile.remove();
     return true;
 }
@@ -221,12 +221,12 @@
 {
     if (OldTeamName != m_name)
     {
-        QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(OldTeamName));
+        QFile cfgfile(QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(OldTeamName)));
         cfgfile.remove();
         OldTeamName = m_name;
     }
 
-    QString fileName = QString("physfs://Teams/%1.hwt").arg(m_name);
+    QString fileName = QString("physfs://Teams/%1.hwt").arg(DataManager::safeFileName(m_name));
     DataManager::ensureFileExists(fileName);
     QSettings teamfile(fileName, QSettings::IniFormat, 0);
     teamfile.setIniCodec("UTF-8");
@@ -276,17 +276,6 @@
     sl.push_back(QString("evoicepack " + m_voicepack));
     sl.push_back(QString("eflag " + m_flag));
 
-    if (!m_isNetTeam)
-    {
-        for(int i = 0; i < BINDS_NUMBER; i++)
-        {
-            if(m_binds[i].strbind.isEmpty() || m_binds[i].strbind == "default")
-                sl.push_back(QString("ebind " + config->bind(i) + " " + m_binds[i].action));
-            else
-                sl.push_back(QString("ebind " + m_binds[i].strbind + " " + m_binds[i].action));
-        }
-    }
-
     for (int t = 0; t < m_numHedgehogs; t++)
     {
         sl.push_back(QString("eaddhh %1 %2 %3")
--- a/QTfrontend/ui/page/pagenetserver.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/ui/page/pagenetserver.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -76,7 +76,7 @@
 
     BtnShare = new QPushButton(gb);
     BtnShare->setText(QPushButton::tr("Invite your friends to your server in just 1 click!"));
-    BtnShare->setWhatsThis(QPushButton::tr("Click to copy your unique server URL in your clipboard. Send this link to your friends ands and they will be able to join you."));
+    BtnShare->setWhatsThis(QPushButton::tr("Click to copy your unique server URL to your clipboard. Send this link to your friends and they will be able to join you."));
     gbLayout->addWidget(BtnShare, 2, 1);
 
     labelURL = new QLabel(gb);
--- a/QTfrontend/ui/widget/feedbackdialog.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/ui/widget/feedbackdialog.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -429,7 +429,7 @@
 
 void FeedbackDialog::finishedSlot(QNetworkReply* reply)
 {
-    if (reply && reply->error() == QNetworkReply::NoError)
+    if (reply->error() == QNetworkReply::NoError)
     {
             QMessageBox infoMsg(this);
             infoMsg.setIcon(QMessageBox::Information);
--- a/QTfrontend/util/DataManager.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/util/DataManager.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -199,6 +199,15 @@
     return m_settingsFileName;
 }
 
+QString DataManager::safeFileName(QString fileName)
+{
+    fileName.replace('\\', '_');
+    fileName.replace('/', '_');
+    fileName.replace(':', '_');
+
+    return fileName;
+}
+
 void DataManager::reload()
 {
     // removed for now (also code was a bit unclean, could lead to segfault if
--- a/QTfrontend/util/DataManager.h	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/util/DataManager.h	Tue Aug 27 17:22:07 2013 +0400
@@ -119,6 +119,8 @@
 
         QString settingsFileName();
 
+        static QString safeFileName(QString fileName);
+
         static bool ensureFileExists(const QString & fileName);
 
     public slots:
--- a/QTfrontend/util/LibavInteraction.cpp	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/util/LibavInteraction.cpp	Tue Aug 27 17:22:07 2013 +0400
@@ -30,6 +30,10 @@
 
 #include "HWApplication.h"
 
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54, 25, 0)
+#define CodecID AVCodecID
+#endif
+
 struct Codec
 {
     CodecID id;
--- a/QTfrontend/util/LibavInteraction.h	Tue Jul 16 11:14:27 2013 +0200
+++ b/QTfrontend/util/LibavInteraction.h	Tue Aug 27 17:22:07 2013 +0400
@@ -16,8 +16,8 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
  */
 
-#ifndef LIBAV_ITERACTION
-#define LIBAV_ITERACTION
+#ifndef LIBAV_INTERACTION
+#define LIBAV_INTERACTION
 
 #include <QComboBox>
 
@@ -48,4 +48,4 @@
     QString getFileInfo(const QString & filepath);
 };
 
-#endif // LIBAV_ITERACTION
+#endif // LIBAV_INTERACTION
--- a/cmake_modules/CMakeDeterminePascalCompiler.cmake	Tue Jul 16 11:14:27 2013 +0200
+++ b/cmake_modules/CMakeDeterminePascalCompiler.cmake	Tue Aug 27 17:22:07 2013 +0400
@@ -45,6 +45,7 @@
                     OUTPUT_VARIABLE CMAKE_Pascal_COMPILER_VERSION
                     OUTPUT_STRIP_TRAILING_WHITESPACE
                     ) # we assume no error for something so simple
+    set(CMAKE_Pascal_COMPILER_ARG1 "-l- -v0ewn")
 endif(NOT CMAKE_Pascal_COMPILER_VERSION)
 mark_as_advanced(CMAKE_Pascal_COMPILER_VERSION)
 
--- a/cmake_modules/CMakePascalInformation.cmake	Tue Jul 16 11:14:27 2013 +0200
+++ b/cmake_modules/CMakePascalInformation.cmake	Tue Aug 27 17:22:07 2013 +0400
@@ -8,7 +8,6 @@
 include(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME} OPTIONAL)
 
 # This section should actually be in Platform/${CMAKE_SYSTME_NAME}-fpc.cmake
-set(CMAKE_Pascal_FLAGS_INIT "-l- -v0ewn")
 set(CMAKE_Pascal_FLAGS_DEBUG_INIT "-g -gl -gp -gh")
 set(CMAKE_Pascal_FLAGS_MINSIZEREL_INIT "-Os -dNDEBUG")
 set(CMAKE_Pascal_FLAGS_RELEASE_INIT "-O3 -dNDEBUG")
@@ -59,7 +58,7 @@
 
 if(NOT CMAKE_SHARED_LIBRARY_RPATH_LINK_Pascal_FLAG)
 #-Wl,-rpath-link,
-    set(CMAKE_SHARED_LIBRARY_RUNTIME_Pascal_FLAG "-k-rpath-link")
+    set(CMAKE_SHARED_LIBRARY_RPATH_LINK_Pascal_FLAG "-k-rpath-link")
 endif(NOT CMAKE_SHARED_LIBRARY_RPATH_LINK_Pascal_FLAG)
 
 # for most systems a module is the same as a shared library
@@ -103,7 +102,7 @@
 
 set(CMAKE_VERBOSE_MAKEFILE FALSE CACHE BOOL "If this value is on, makefiles will be generated without the .SILENT directive, and all commands will be echoed to the console during the make.  This is useful for debugging only. With Visual Studio IDE projects all commands are done without /nologo.")
 
-set(CMAKE_Pascal_FLAGS "$ENV{FPFLAGS} ${CMAKE_Pascal_FLAGS_INIT} ${CMAKE_Pascal_FLAGS}" CACHE STRING "Flags for Pascal compiler." FORCE)
+#set(CMAKE_Pascal_FLAGS "$ENV{FPFLAGS} ${CMAKE_Pascal_FLAGS_INIT} ${CMAKE_Pascal_FLAGS}" CACHE STRING "Flags for Pascal compiler." FORCE)
 
 include(CMakeCommonLanguageInclude)
 
@@ -183,7 +182,7 @@
 
     #-Cn is mandatory as it's what creates the ppas.* script
     set(CMAKE_Pascal_COMPILE_OBJECT
-        "<CMAKE_Pascal_COMPILER> -Cn -FE${EXECUTABLE_OUTPUT_PATH} -FU${CMAKE_CURRENT_BINARY_DIR}/<OBJECT_DIR> ${CMAKE_Pascal_UNIX_FLAGS} <FLAGS> <SOURCE>")
+        "<CMAKE_Pascal_COMPILER> -Cn -FE${EXECUTABLE_OUTPUT_PATH} -FU${CMAKE_CURRENT_BINARY_DIR}/<OBJECT_DIR> ${CMAKE_Pascal_UNIX_FLAGS} <FLAGS> <CMAKE_Pascal_LINK_FLAGS> <SOURCE>")
 endif(NOT CMAKE_Pascal_COMPILE_OBJECT)
 
 # link Pascal objects in a single executable
--- a/cmake_modules/FindFFMPEG.cmake	Tue Jul 16 11:14:27 2013 +0200
+++ b/cmake_modules/FindFFMPEG.cmake	Tue Aug 27 17:22:07 2013 +0400
@@ -25,18 +25,23 @@
 # use pkg-config to get the directories and then use these values
 # in the FIND_PATH() and FIND_LIBRARY() calls
 find_package(PkgConfig)
-if (PKG_CONFIG_FOUND)
-    pkg_check_modules(_FFMPEG_AVCODEC libavcodec ${VERBOSITY})
-    pkg_check_modules(_FFMPEG_AVFORMAT libavformat ${VERBOSITY})
-    pkg_check_modules(_FFMPEG_AVUTIL libavutil ${VERBOSITY})
-endif (PKG_CONFIG_FOUND)
+if(PKG_CONFIG_FOUND)
+    if(NOT LIBAVCODEC_INCLUDE_DIR OR NOT LIBAVCODEC_LIBRARY)
+        pkg_check_modules(_FFMPEG_AVCODEC libavcodec)
+    endif()
+    if(NOT LIBAVFORMAT_LIBRARY)
+        pkg_check_modules(_FFMPEG_AVFORMAT libavformat)
+    endif()
+    if(NOT LIBAVUTIL_LIBRARY)
+        pkg_check_modules(_FFMPEG_AVUTIL libavutil)
+    endif()
+endif(PKG_CONFIG_FOUND)
 
 find_path(LIBAVCODEC_INCLUDE_DIR
     NAMES libavcodec/avcodec.h
-    PATHS ${_AVCODEC_INCLUDE_DIRS}
-        /usr/include /usr/local/include #system level
-        /opt/local/include #macports
-        /sw/include #fink
+    PATHS ${_FFMPEG_AVCODEC_INCLUDE_DIRS}    #pkg-config
+          /usr/include /usr/local/include    #system level
+          /opt/local/include /sw/include     #macports & fink
     PATH_SUFFIXES libav ffmpeg
 )
 
@@ -44,26 +49,23 @@
 
 find_library(LIBAVCODEC_LIBRARY
     NAMES avcodec
-    PATHS ${_AVCODEC_LIBRARY_DIRS}
-        /usr/lib /usr/local/lib #system level
-        /opt/local/lib #macports
-        /sw/lib #fink
+    PATHS ${_FFMPEG_AVCODEC_LIBRARY_DIRS}   #pkg-config
+          /usr/lib /usr/local/lib           #system level
+          /opt/local/lib /sw/lib            #macports & fink
 )
 
 find_library(LIBAVFORMAT_LIBRARY
     NAMES avformat
-    PATHS ${_AVFORMAT_LIBRARY_DIRS}
-        /usr/lib /usr/local/lib #system level
-        /opt/local/lib #macports
-        /sw/lib #fink
+    PATHS ${_FFMPEG_AVFORMAT_LIBRARY_DIRS}  #pkg-config
+          /usr/lib /usr/local/lib           #system level
+          /opt/local/lib /sw/lib            #macports & fink
 )
 
 find_library(LIBAVUTIL_LIBRARY
     NAMES avutil
-    PATHS ${_AVUTIL_LIBRARY_DIRS}
-        /usr/lib /usr/local/lib #system level
-        /opt/local/lib #macports
-        /sw/lib #fink
+    PATHS ${_FFMPEG_AVUTIL_LIBRARY_DIRS}    #pkg-config
+          /usr/lib /usr/local/lib           #system level
+          /opt/local/lib /sw/lib            #macports & fink
 )
 
 find_package_handle_standard_args(FFMPEG DEFAULT_MSG LIBAVCODEC_LIBRARY LIBAVCODEC_INCLUDE_DIR
--- a/cmake_modules/cpackvars.cmake	Tue Jul 16 11:14:27 2013 +0200
+++ b/cmake_modules/cpackvars.cmake	Tue Aug 27 17:22:07 2013 +0400
@@ -84,12 +84,9 @@
     "cmake_uninstall\\\\.cmake$"
     "CMakeCache\\\\.txt$"
     "build_windows_.*\\\\.bat$"
-#    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libtremor"
-#    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libfreetype"
-#    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/liblua"
+    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/liblua"
 #    "^${CMAKE_CURRENT_SOURCE_DIR}/project_files/frontlib"
 #    "^${CMAKE_CURRENT_SOURCE_DIR}/project_files/cmdlineClient"
-    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libopenalbridge"
     "^${CMAKE_CURRENT_SOURCE_DIR}/misc/winutils/bin"
     "^${CMAKE_CURRENT_SOURCE_DIR}/project_files/promotional_art"
     "^${CMAKE_CURRENT_SOURCE_DIR}/tools/templates"
--- a/gameServer/Actions.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/Actions.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -346,7 +346,8 @@
         ModifyRoom (\r -> r{
                 gameInfo = liftM (\g -> g{
                     teamsInGameNumber = teamsInGameNumber g - 1
-                    , roundMsgs = rmTeamMsg : roundMsgs g
+                    , roundMsgs = (if isJust $ lastFilteredTimedMsg g then (:) (fromJust $ lastFilteredTimedMsg g) else id) 
+                      $ rmTeamMsg : roundMsgs g
                 }) $ gameInfo r
             })
         ]
@@ -670,8 +671,12 @@
     io $ moveFailedRecord fileName
 
 processAction (CheckSuccess info) = do
-    Just (CheckInfo fileName _) <- client's checkInfo
+    Just (CheckInfo fileName teams) <- client's checkInfo
+    si <- gets serverInfo
+    io $ writeChan (dbQueries si) $ StoreAchievements (B.pack fileName) (map toPair teams) info
     io $ moveCheckedRecord fileName
+    where
+        toPair t = (teamname t, teamowner t)
 
 #else
 processAction SaveReplay = return ()
--- a/gameServer/CoreTypes.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/CoreTypes.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -263,6 +263,7 @@
     CheckAccount ClientIndex Int B.ByteString B.ByteString
     | ClearCache
     | SendStats Int Int
+    | StoreAchievements B.ByteString [(B.ByteString, B.ByteString)] [B.ByteString]
     deriving (Show, Read)
 
 data CoreMessage =
--- a/gameServer/EngineInteraction.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/EngineInteraction.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -43,7 +43,7 @@
         lft = foldr l Nothing
         l m n = let m' = B.head $ B.tail m; tst = flip Set.member in 
                       if not $ tst timedMessages m' then n
-                        else if '+' /= m' then Just Nothing else Just $ Just m
+                        else if '+' /= m' then Just Nothing else Just . Just . B.pack . Base64.encode . BW.unpack $ m
         isNonEmpty = (/=) '+' . B.head . B.tail
         legalMessages = Set.fromList $ "M#+LlRrUuDdZzAaSjJ,sNpPwtghbc12345" ++ slotMessages
         slotMessages = "\128\129\130\131\132\133\134\135\136\137\138"
--- a/gameServer/HWProtoLobbyState.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/HWProtoLobbyState.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -118,10 +118,7 @@
                     AnswerClients [sendChan cl]  ["RUN_GAME"]
                     : AnswerClients chans ["CLIENT_FLAGS", "+g", nick cl]
                     : ModifyClient (\c -> c{isInGame = True})
-                    : (AnswerClients [sendChan cl] $ "EM" : toEngineMsg "e$spectate 1" : (reverse . roundMsgs . fromJust . gameInfo $ jRoom))
-                    : [AnswerClients [sendChan cl] $ "EM" : [fromJust msg] | isJust msg]
-            where
-            msg = lastFilteredTimedMsg . fromJust . gameInfo $ jRoom
+                    : [AnswerClients [sendChan cl] $ "EM" : toEngineMsg "e$spectate 1" : (reverse . roundMsgs . fromJust . gameInfo $ jRoom)]
 
 
 handleCmd_lobby ["JOIN_ROOM", roomName] =
--- a/gameServer/OfficialServer/DBInteraction.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/OfficialServer/DBInteraction.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -78,6 +78,12 @@
                     return (accountsCache, req)
 
         ClearCache -> return (Map.empty, req)
+        StoreAchievements {} -> (
+                (SIO.hPutStrLn hIn $ show q) >>
+                hFlush hIn >>
+                return (accountsCache, req))
+                `Exception.onException`
+                (unGetChan queries q)
         SendStats {} -> (
                 (SIO.hPutStrLn hIn $ show q) >>
                 hFlush hIn >>
--- a/gameServer/OfficialServer/checker.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/OfficialServer/checker.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -24,19 +24,25 @@
 import System.Posix
 #endif
 
+readInt_ :: (Num a) => B.ByteString -> a
+readInt_ str =
+  case B.readInt str of
+       Just (i, t) | B.null t -> fromIntegral i
+       _                      -> 0 
+
 data Message = Packet [B.ByteString]
              | CheckFailed B.ByteString
              | CheckSuccess [B.ByteString]
     deriving Show
 
 serverAddress = "netserver.hedgewars.org"
-protocolNumber = "43"
+protocolNumber = "45"
 
-getLines :: Handle -> IO [String]
+getLines :: Handle -> IO [B.ByteString]
 getLines h = g
     where
         g = do
-            l <- liftM Just (hGetLine h) `Exception.catch` (\(_ :: Exception.IOException) -> return Nothing)
+            l <- liftM Just (B.hGetLine h) `Exception.catch` (\(_ :: Exception.IOException) -> return Nothing)
             if isNothing l then
                 return []
                 else
@@ -45,38 +51,43 @@
                 return $ fromJust l : lst
 
 
-engineListener :: Chan Message -> Handle -> IO ()
-engineListener coreChan h = do
-    output <- getLines h
-    debugM "Engine" $ show output
-    if isNothing $ L.find start output then
+engineListener :: Chan Message -> Handle -> String -> IO ()
+engineListener coreChan h fileName = do
+    stats <- liftM (ps . L.dropWhile (not . start)) $ getLines h
+    debugM "Engine" $ show stats
+    if null stats then
         writeChan coreChan $ CheckFailed "No stats msg"
         else
-        writeChan coreChan $ CheckSuccess []
+        writeChan coreChan $ CheckSuccess stats
+
+    removeFile fileName
     where
         start = flip L.elem ["WINNERS", "DRAW"]
-
+        ps ("DRAW" : bs) = "DRAW" : ps bs
+        ps ("WINNERS" : n : bs) = let c = readInt_ n in "WINNERS" : n : take c bs ++ (ps $ drop c bs)
+        ps ("ACHIEVEMENT" : typ : teamname : location : value : bs) =
+            "ACHIEVEMENT" : typ : teamname : location : value : ps bs
+        ps _ = []
 
 checkReplay :: Chan Message -> [B.ByteString] -> IO ()
 checkReplay coreChan msgs = do
     tempDir <- getTemporaryDirectory
     (fileName, h) <- openBinaryTempFile tempDir "checker-demo"
-    B.hPut h . BW.pack . concat . map (fromJust . Base64.decode . B.unpack) $ msgs
+    B.hPut h . BW.pack . concat . map (fromMaybe [] . Base64.decode . B.unpack) $ msgs
     hFlush h
     hClose h
 
-    (_, Just hOut, _, _) <- createProcess (proc "/usr/home/unC0Rr/Sources/Hedgewars/Releases/0.9.18/bin/hwengine"
-                ["/usr/home/unC0Rr/.hedgewars"
-                , "/usr/home/unC0Rr/Sources/Hedgewars/Releases/0.9.18/share/hedgewars/Data"
-                , fileName
-                , "--set-audio"
-                , "0"
-                , "0"
-                , "0"
+    (_, _, Just hOut, _) <- createProcess (proc "/usr/home/unC0Rr/Sources/Hedgewars/Releases/0.9.19/bin/hwengine"
+                [fileName
+                , "--user-prefix", "/usr/home/unC0Rr/.hedgewars"
+                , "--prefix", "/usr/home/unC0Rr/Sources/Hedgewars/Releases/0.9.19/share/hedgewars/Data"
+                , "--nomusic"
+                , "--nosound"
+                , "--stats-only"
                 ])
-            {std_out = CreatePipe}
+            {std_err = CreatePipe}
     hSetBuffering hOut LineBuffering
-    void $ forkIO $ engineListener coreChan hOut
+    void $ forkIO $ engineListener coreChan hOut fileName
 
 
 takePacks :: State B.ByteString [[B.ByteString]]
@@ -154,7 +165,7 @@
 #endif
 
     updateGlobalLogger "Core" (setLevel DEBUG)
-    updateGlobalLogger "Network" (setLevel DEBUG)
+    updateGlobalLogger "Network" (setLevel WARNING)
     updateGlobalLogger "Check" (setLevel DEBUG)
     updateGlobalLogger "Engine" (setLevel DEBUG)
 
--- a/gameServer/OfficialServer/extdbinterface.hs	Tue Jul 16 11:14:27 2013 +0200
+++ b/gameServer/OfficialServer/extdbinterface.hs	Tue Aug 27 17:22:07 2013 +0400
@@ -9,8 +9,11 @@
 import Data.Maybe
 import Database.HDBC
 import Database.HDBC.MySQL
+import Data.List (lookup)
+import qualified Data.ByteString.Char8 as B
 --------------------------
 import CoreTypes
+import Utils
 
 
 dbQueryAccount =
@@ -19,6 +22,11 @@
 dbQueryStats =
     "INSERT INTO gameserver_stats (players, rooms, last_update) VALUES (?, ?, UNIX_TIMESTAMP())"
 
+dbQueryAchievement =
+    "INSERT INTO achievements (time, typeid, userid, value, filename, location) \
+    \ VALUES (?, (SELECT id FROM achievement_types WHERE name = ?), (SELECT uid FROM users WHERE name = ?), \
+    \ ?, ?, ?)"
+
 dbInteractionLoop dbConn = forever $ do
     q <- liftM read getLine
     hPutStrLn stderr $ show q
@@ -45,6 +53,28 @@
 
         SendStats clients rooms ->
                 run dbConn dbQueryStats [SqlInt32 $ fromIntegral clients, SqlInt32 $ fromIntegral rooms] >> return ()
+--StoreAchievements (B.pack fileName) (map toPair teams) info
+        StoreAchievements fileName teams info -> 
+            mapM_ (run dbConn dbQueryAchievement) $ (parseStats fileName teams) info
+
+readTime = read . B.unpack . B.take 19 . B.drop 8
+
+parseStats :: B.ByteString -> [(B.ByteString, B.ByteString)] -> [B.ByteString] -> [[SqlValue]]
+parseStats fileName teams = ps
+    where
+    time = readTime fileName
+    ps [] = []
+    ps ("DRAW" : bs) = ps bs
+    ps ("WINNERS" : n : bs) = ps $ drop (readInt_ n) bs
+    ps ("ACHIEVEMENT" : typ : teamname : location : value : bs) =
+        [ SqlUTCTime time
+        , SqlByteString typ
+        , SqlByteString $ fromMaybe "" (lookup teamname teams)
+        , SqlInt32 (readInt_ value)
+        , SqlByteString fileName
+        , SqlByteString location
+        ] : ps bs
+    ps (b:bs) = ps bs
 
 
 dbConnectionLoop mySQLConnectionInfo =
--- a/hedgewars/SDLh.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/SDLh.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -428,7 +428,12 @@
 
     (* SDL_RWops and friends *)
     PSDL_RWops = ^TSDL_RWops;
+{$IFDEF SDL2}
+    TSize  = function( context: PSDL_RWops): Int64; cdecl;
+    TSeek  = function( context: PSDL_RWops; offset: Int64; whence: LongInt ): Int64; cdecl;
+{$ELSE}
     TSeek  = function( context: PSDL_RWops; offset: LongInt; whence: LongInt ): LongInt; cdecl;
+{$ENDIF}
     TRead  = function( context: PSDL_RWops; Ptr: Pointer; size: LongInt; maxnum : LongInt ): LongInt;  cdecl;
     TWrite = function( context: PSDL_RWops; Ptr: Pointer; size: LongInt; num: LongInt ): LongInt; cdecl;
     TClose = function( context: PSDL_RWops ): LongInt; cdecl;
@@ -473,6 +478,9 @@
 {$ENDIF}
 
     TSDL_RWops = record
+{$IFDEF SDL2}
+        size: TSize;
+{$ENDIF}
         seek: TSeek;
         read: TRead;
         write: TWrite;
--- a/hedgewars/hwengine.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/hwengine.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -189,17 +189,15 @@
                         cNewScreenHeight:= max(2 * (event.window.data2 div 2), cMinScreenHeight);
                         cScreenResizeDelay:= RealTicks + 500{$IFDEF IPHONEOS}div 2{$ENDIF};
                     end;
-{$IF 0}
-                //TODO: touch has become relative to the window size and has different parameters
+
                 SDL_FINGERMOTION:
-                    onTouchMotion(event.tfinger.x, event.tfinger.y,event.tfinger.dx, event.tfinger.dy, event.tfinger.fingerId);
+                    onTouchMotion(event.tfinger.x, event.tfinger.y, event.tfinger.dx, event.tfinger.dy, event.tfinger.fingerId);
 
                 SDL_FINGERDOWN:
                     onTouchDown(event.tfinger.x, event.tfinger.y, event.tfinger.fingerId);
 
                 SDL_FINGERUP:
                     onTouchUp(event.tfinger.x, event.tfinger.y, event.tfinger.fingerId);
-{$ENDIF}
 {$ELSE}
                 SDL_KEYDOWN:
                     if GameState = gsChat then
--- a/hedgewars/uAmmos.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uAmmos.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -53,11 +53,12 @@
 uses uLocale, uVariables, uCommands, uUtils, uCaptions, uDebug;
 
 type TAmmoCounts = array[TAmmoType] of Longword;
+     TAmmoArray = array[TAmmoType] of TAmmo;
 var StoresList: array[0..Pred(cMaxHHs)] of PHHAmmo;
     ammoLoadout, ammoProbability, ammoDelay, ammoReinforcement: shortstring;
     InitialCounts: array[0..Pred(cMaxHHs)] of TAmmoCounts;
 
-procedure FillAmmoStore(Ammo: PHHAmmo; var cnts: TAmmoCounts);
+procedure FillAmmoStore(Ammo: PHHAmmo; var newAmmo: TAmmoArray);
 var mi: array[0..cMaxSlotIndex] of byte;
     a: TAmmoType;
 begin
@@ -67,12 +68,10 @@
 FillChar(Ammo^, sizeof(Ammo^), 0);
 for a:= Low(TAmmoType) to High(TAmmoType) do
     begin
-    if cnts[a] > 0 then
+    if newAmmo[a].Count > 0 then
         begin
         TryDo(mi[Ammoz[a].Slot] <= cMaxSlotAmmoIndex, 'Ammo slot overflow', true);
-        Ammo^[Ammoz[a].Slot, mi[Ammoz[a].Slot]]:= Ammoz[a].Ammo;
-        with Ammo^[Ammoz[a].Slot, mi[Ammoz[a].Slot]] do
-            Count:= cnts[a];
+        Ammo^[Ammoz[a].Slot, mi[Ammoz[a].Slot]]:= newAmmo[a];
         inc(mi[Ammoz[a].Slot])
         end
     end;
@@ -84,6 +83,7 @@
 var cnt: Longword;
     a: TAmmoType;
     ammos: TAmmoCounts;
+    newAmmos: TAmmoArray;
 begin
 TryDo((byte(ammoLoadout[0]) = byte(ord(High(TAmmoType)))) and (byte(ammoProbability[0]) = byte(ord(High(TAmmoType)))) and (byte(ammoDelay[0]) = byte(ord(High(TAmmoType)))) and (byte(ammoReinforcement[0]) = byte(ord(High(TAmmoType)))), 'Incomplete or missing ammo scheme set (incompatible frontend or demo/save?)', true);
 
@@ -141,7 +141,14 @@
     else
         InitialCounts[Pred(StoreCnt)][a]:= ammos[a];
     end;
-FillAmmoStore(StoresList[Pred(StoreCnt)], ammos)
+    
+    for a:= Low(TAmmoType) to High(TAmmoType) do
+        begin
+        newAmmos[a]:= Ammoz[a].Ammo;
+        newAmmos[a].Count:= ammos[a]
+        end;
+        
+FillAmmoStore(StoresList[Pred(StoreCnt)], newAmmos)
 end;
 
 function GetAmmoByNum(num: Longword): PHHAmmo;
@@ -211,23 +218,30 @@
 end;
 
 procedure SetAmmo(var Hedgehog: THedgehog; ammo: TAmmoType; cnt: LongWord);
-var ammos: TAmmoCounts;
+var ammos: TAmmoArray;
     slot, ami: LongInt;
     hhammo: PHHAmmo;
     CurWeapon: PAmmo;
+    a: TAmmoType;
 begin
 {$HINTS OFF}
 FillChar(ammos, sizeof(ammos), 0);
 {$HINTS ON}
 hhammo:= Hedgehog.Ammo;
 
+for a:= Low(TAmmoType) to High(TAmmoType) do
+    begin
+    ammos[a]:= Ammoz[a].Ammo;
+    ammos[a].Count:= 0
+    end;
+
 for slot:= 0 to cMaxSlotIndex do
     for ami:= 0 to cMaxSlotAmmoIndex do
         if hhammo^[slot, ami].Count > 0 then
-            ammos[hhammo^[slot, ami].AmmoType]:= hhammo^[slot, ami].Count;
+            ammos[hhammo^[slot, ami].AmmoType]:= hhammo^[slot, ami];
 
-ammos[ammo]:= cnt;
-if ammos[ammo] > AMMO_INFINITE then ammos[ammo]:= AMMO_INFINITE;
+ammos[ammo].Count:= cnt;
+if ammos[ammo].Count > AMMO_INFINITE then ammos[ammo].Count:= AMMO_INFINITE;
 
 FillAmmoStore(hhammo, ammos);
 CurWeapon:= GetCurAmmoEntry(Hedgehog);
@@ -455,14 +469,22 @@
 procedure ResetWeapons;
 var i, t: Longword;
     a: TAmmoType;
+    newAmmos: TAmmoArray;
 begin
 for t:= 0 to Pred(TeamsCount) do
     with TeamsArray[t]^ do
         for i:= 0 to cMaxHHIndex do
             Hedgehogs[i].CurAmmoType:= amNothing;
 
+for a:= Low(TAmmoType) to High(TAmmoType) do
+    newAmmos[a]:= Ammoz[a].Ammo;
+    
 for i:= 0 to Pred(StoreCnt) do
-    FillAmmoStore(StoresList[i], InitialCounts[i]);
+    begin
+    for a:= Low(TAmmoType) to High(TAmmoType) do
+        newAmmos[a].Count:= InitialCounts[i][a];
+    FillAmmoStore(StoresList[i], newAmmos);
+    end;
 
 for a:= Low(TAmmoType) to High(TAmmoType) do
     if Ammoz[a].SkipTurns >= 10000 then
--- a/hedgewars/uConsts.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uConsts.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -187,6 +187,7 @@
     gfMoreWind           = $01000000;
     gfTagTeam            = $02000000;
     gfBottomBorder       = $04000000;
+    gfShoppaBorder       = $08000000;
     // NOTE: When adding new game flags, ask yourself
     // if a "game start notice" would be useful. If so,
     // add one in uWorld.pas - look for "AddGoal".
--- a/hedgewars/uGearsHandlersMess.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uGearsHandlersMess.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -1432,6 +1432,13 @@
     if ((GameFlags and gfInfAttack) <> 0) and (TurnTimeLeft > 0) then
         dec(TurnTimeLeft);
 
+    if Gear^.Hedgehog^.Gear = nil then
+        begin
+        DeleteGear(Gear);
+        AfterAttack;
+        exit
+        end;
+
     HHGear := Gear^.Hedgehog^.Gear;
 
     HedgehogChAngle(HHGear);
@@ -1493,13 +1500,13 @@
         end;
 
     if b then
-    begin
+        begin
         DrawTunnel(HHGear^.X + Gear^.dX * cHHRadius,
         HHGear^.Y + Gear^.dY * cHHRadius - _1 -
         ((hwAbs(Gear^.dX) / (hwAbs(Gear^.dX) + hwAbs(Gear^.dY))) * _0_5 * 7),
         Gear^.dX, Gear^.dY,
         cHHStepTicks, cHHRadius * 2 + 7);
-    end;
+        end;
 
     if (TurnTimeLeft = 0) or (Gear^.Timer = 0)
     or ((HHGear^.Message and gmAttack) <> 0) then
@@ -2004,11 +2011,13 @@
     sticky: Boolean;
     vgt: PVisualGear;
     tdX,tdY: HWFloat;
+    landPixel: Word;
 begin
     sticky:= (Gear^.State and gsttmpFlag) <> 0;
     if not sticky then AllInactive := false;
 
-    if TestCollisionYwithGear(Gear, 1) = 0 then
+    landPixel:= TestCollisionYwithGear(Gear, 1);
+    if landPixel = 0 then
         begin
         AllInactive := false;
 
@@ -2047,8 +2056,23 @@
             exit
             end
         end
-    else
-        begin
+    else 
+        begin
+        if (Gear^.Timer = 1) and (GameTicks and $3 = 0) then
+            begin
+            Gear^.Y:= Gear^.Y+_6;
+            if (landPixel and lfIce <> 0) or (TestCollisionYwithGear(Gear, 1) and lfIce <> 0) then
+                begin
+                gX := hwRound(Gear^.X);
+                gY := hwRound(Gear^.Y)-6;
+                DrawExplosion(gX, gY, 4);
+                PlaySound(sndVaporize);
+                AddVisualGear(gX - 3 + Random(6), gY - 2, vgtSteam);
+                DeleteGear(Gear);
+                exit
+                end;
+            Gear^.Y:= Gear^.Y-_6
+            end;
         if sticky and (GameTicks and $F = 0) then
             begin
             Gear^.Radius := 7;
@@ -2099,7 +2123,7 @@
 
                 if Gear^.Health > 0 then
                     dec(Gear^.Health);
-                Gear^.Timer := 450 - Gear^.Tag * 8
+                Gear^.Timer := 450 - Gear^.Tag * 8 + GetRandom(2)
                 end
             else
                 begin
@@ -2113,7 +2137,7 @@
                     end;
 
 // This one is interesting.  I think I understand the purpose, but I wonder if a bit more fuzzy of kicking could be done with getrandom.
-                Gear^.Timer := 100 - Gear^.Tag * 3;
+                Gear^.Timer := 100 - Gear^.Tag * 3 + GetRandom(2);
                 if (Gear^.Damage > 3000+Gear^.Tag*1500) then
                     Gear^.Health := 0
                 end
@@ -5249,7 +5273,7 @@
     vg: PVisualGear;
 begin
     HHGear := Gear^.Hedgehog^.Gear;
-    if (Gear^.Message and gmAttack <> 0) or (HHGear = nil) or ((HHGear^.State and gstHHDriven) = 0) or (HHGear^.dX.QWordValue > 4294967)  then
+    if (Gear^.Message and gmAttack <> 0) or (Gear^.Health = 0) or (HHGear = nil) or ((HHGear^.State and gstHHDriven) = 0) or (HHGear^.dX.QWordValue > 4294967)  then
         begin
         StopSoundChan(Gear^.SoundChannel);
         DeleteGear(Gear);
--- a/hedgewars/uLand.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uLand.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -60,29 +60,12 @@
     end;
 end;
 
-procedure ColorizeLand(Surface: PSDL_Surface);
+
+procedure DrawBorderFromImage(Surface: PSDL_Surface);
 var tmpsurf: PSDL_Surface;
     r, rr: TSDL_Rect;
     x, yd, yu: LongInt;
 begin
-    tmpsurf:= LoadDataImage(ptCurrTheme, 'LandTex', ifCritical or ifIgnoreCaps);
-    r.y:= 0;
-    while r.y < LAND_HEIGHT do
-    begin
-        r.x:= 0;
-        while r.x < LAND_WIDTH do
-        begin
-            SDL_UpperBlit(tmpsurf, nil, Surface, @r);
-            inc(r.x, tmpsurf^.w)
-        end;
-        inc(r.y, tmpsurf^.h)
-    end;
-    SDL_FreeSurface(tmpsurf);
-
-    // freed in freeModule() below
-    LandBackSurface:= LoadDataImage(ptCurrTheme, 'LandBackTex', ifIgnoreCaps or ifTransparent);
-    if (LandBackSurface <> nil) and GrayScale then Surface2GrayScale(LandBackSurface);
-
     tmpsurf:= LoadDataImage(ptCurrTheme, 'Border', ifCritical or ifIgnoreCaps or ifTransparent);
     for x:= 0 to LAND_WIDTH - 1 do
     begin
@@ -127,6 +110,106 @@
     SDL_FreeSurface(tmpsurf);
 end;
 
+
+procedure DrawShoppaBorder;
+var x, y, s, i: Longword;
+    c1, c2, c: Longword;
+begin
+    c1:= AMask;
+    c2:= AMask or RMask or GMask;
+
+    // vertical
+    s:= LAND_HEIGHT;
+    
+    for x:= 0 to LAND_WIDTH - 1 do
+        for y:= 0 to LAND_HEIGHT - 1 do
+            if LandPixels[y, x] = 0 then
+                if s < y then
+                    begin
+                    for i:= max(s, y - 8) to y - 1 do
+                        begin
+                        if ((x + i) and 16) = 0 then c:= c1 else c:= c2;
+                        
+                        if (cReducedQuality and rqBlurryLand) = 0 then
+                            LandPixels[i, x]:= c
+                        else
+                            LandPixels[i div 2, x div 2]:= c
+                        end;
+                    s:= LAND_HEIGHT
+                    end
+                else
+            else
+                begin
+                if s > y then s:= y;
+                if s + 8 > y then
+                    begin
+                    if ((x + y) and 16) = 0 then c:= c1 else c:= c2;
+                    
+                    if (cReducedQuality and rqBlurryLand) = 0 then
+                        LandPixels[y, x]:= c
+                    else
+                        LandPixels[y div 2, x div 2]:= c
+                    end;            
+                end;
+                
+    // horizontal
+    s:= LAND_WIDTH;
+    
+    for y:= 0 to LAND_HEIGHT - 1 do
+        for x:= 0 to LAND_WIDTH - 1 do
+            if LandPixels[y, x] = 0 then
+                if s < x then
+                    begin
+                    for i:= max(s, x - 8) to x - 1 do
+                        begin
+                        if ((y + i) and 16) = 0 then c:= c1 else c:= c2;
+                        
+                        if (cReducedQuality and rqBlurryLand) = 0 then
+                            LandPixels[y, i]:= c
+                        else
+                            LandPixels[y div 2, i div 2]:= c
+                        end;
+                    s:= LAND_WIDTH
+                    end
+                else
+            else
+                begin
+                if s > x then s:= x;
+                if s + 8 > x then
+                    begin
+                    if ((x + y) and 16) = 0 then c:= c1 else c:= c2;
+                    
+                    if (cReducedQuality and rqBlurryLand) = 0 then
+                        LandPixels[y, x]:= c
+                    else
+                        LandPixels[y div 2, x div 2]:= c
+                    end;            
+                end
+end;
+
+procedure ColorizeLand(Surface: PSDL_Surface);
+var tmpsurf: PSDL_Surface;
+    r: TSDL_Rect;
+begin
+    tmpsurf:= LoadDataImage(ptCurrTheme, 'LandTex', ifCritical or ifIgnoreCaps);
+    r.y:= 0;
+    while r.y < LAND_HEIGHT do
+    begin
+        r.x:= 0;
+        while r.x < LAND_WIDTH do
+        begin
+            SDL_UpperBlit(tmpsurf, nil, Surface, @r);
+            inc(r.x, tmpsurf^.w)
+        end;
+        inc(r.y, tmpsurf^.h)
+    end;
+    SDL_FreeSurface(tmpsurf);
+
+    // freed in freeModule() below
+    LandBackSurface:= LoadDataImage(ptCurrTheme, 'LandBackTex', ifIgnoreCaps or ifTransparent);
+    if (LandBackSurface <> nil) and GrayScale then Surface2GrayScale(LandBackSurface);
+end;
+
 procedure SetPoints(var Template: TEdgeTemplate; var pa: TPixAr; fps: PPointArray);
 var i: LongInt;
 begin
@@ -345,10 +428,14 @@
 
     TryDo(tmpsurf <> nil, 'Error creating pre-land surface', true);
     ColorizeLand(tmpsurf);
+    if gameFlags and gfShoppaBorder = 0 then DrawBorderFromImage(tmpsurf);
     AddOnLandObjects(tmpsurf);
 
     LandSurface2LandPixels(tmpsurf);
     SDL_FreeSurface(tmpsurf);
+    
+    if gameFlags and gfShoppaBorder <> 0 then DrawShoppaBorder;
+    
     for x:= leftX+2 to rightX-2 do
         for y:= topY+2 to LAND_HEIGHT-3 do
             if (Land[y, x] = 0) and 
--- a/hedgewars/uPhysFSLayer.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uPhysFSLayer.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -133,7 +133,7 @@
 begin
 {$IFDEF HWLIBRARY}
     //TODO: http://icculus.org/pipermail/physfs/2011-August/001006.html
-    cPhysfsId:= GetCurrentDir() + {$IFDEF DARWIN}'/Hedgewars.app/Contents/MacOS/' + {$ENDIF} ' hedgewars';
+    cPhysfsId:= GetCurrentDir() + {$IFDEF DARWIN}{$IFNDEF IPHONEOS}'/Hedgewars.app/Contents/MacOS/' + {$ENDIF}{$ENDIF} ' hedgewars';
 {$ELSE}
     cPhysfsId:= ParamStr(0);
 {$ENDIF}
@@ -145,6 +145,8 @@
     AddFileLog('[PhysFS] mount ' + PathPrefix + ': ' + inttostr(i));
     i:= PHYSFS_mount(Str2PChar(UserPathPrefix + '/Data'), nil, false);
     AddFileLog('[PhysFS] mount ' + UserPathPrefix + '/Data: ' + inttostr(i));
+    i:= PHYSFS_mount(Str2PChar(UserPathPrefix + '/Teams'), '/Teams', false);
+    AddFileLog('[PhysFS] mount ' + UserPathPrefix + '/Teams: ' + inttostr(i));
 
     hedgewarsMountPackages;
 end;
--- a/hedgewars/uScript.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uScript.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -1894,6 +1894,17 @@
         ScriptLoad(lua_tostring(L, 1));
     lc_hedgewarsscriptload:= 0;
 end;
+
+
+function lc_declareachievement(L : Plua_State) : LongInt; Cdecl;
+var gear: PGear;
+begin
+    if lua_gettop(L) <> 4 then
+        LuaError('Lua: Wrong number of parameters passed to DeclareAchievement!')
+    else
+        declareAchievement(lua_tostring(L, 1), lua_tostring(L, 2), lua_tostring(L, 3), lua_tointeger(L, 4));
+    lc_declareachievement:= 0
+end;
 ///////////////////
 
 procedure ScriptPrintStack;
@@ -2343,6 +2354,7 @@
 ScriptSetInteger('gfDisableWind', gfDisableWind);
 ScriptSetInteger('gfMoreWind', gfMoreWind);
 ScriptSetInteger('gfTagTeam', gfTagTeam);
+ScriptSetInteger('gfShoppaBorder', gfShoppaBorder);
 
 ScriptSetInteger('gmLeft', gmLeft);
 ScriptSetInteger('gmRight', gmRight);
@@ -2512,6 +2524,7 @@
 
 lua_register(luaState, _P'SetGearAIHints', @lc_setaihintsongear);
 lua_register(luaState, _P'HedgewarsScriptLoad', @lc_hedgewarsscriptload);
+lua_register(luaState, _P'DeclareAchievement', @lc_declareachievement);
 
 
 ScriptClearStack; // just to be sure stack is empty
--- a/hedgewars/uStats.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uStats.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -35,9 +35,10 @@
 procedure TurnReaction;
 procedure SendStats;
 procedure hedgehogFlight(Gear: PGear; time: Longword);
+procedure declareAchievement(id, teamname, location: shortstring; value: LongInt);
 
 implementation
-uses uSound, uLocale, uVariables, uUtils, uIO, uCaptions, uDebug, uMisc, uConsole;
+uses uSound, uLocale, uVariables, uUtils, uIO, uCaptions, uDebug, uMisc, uConsole, uScript;
 
 var DamageClan  : Longword = 0;
     DamageTotal : Longword = 0;
@@ -165,11 +166,11 @@
                 end;
                 
 if SendHealthStatsOn then
-	for t:= 0 to Pred(ClansCount) do
-		with ClansArray[t]^ do
-			begin
-			SendStat(siClanHealth, IntToStr(Color) + ' ' + IntToStr(ClanHealth));
-			end;
+    for t:= 0 to Pred(ClansCount) do
+        with ClansArray[t]^ do
+            begin
+            SendStat(siClanHealth, IntToStr(Color) + ' ' + IntToStr(ClanHealth));
+            end;
 
 Kills:= 0;
 KillsClan:= 0;
@@ -210,103 +211,114 @@
     winnersClan : PClan;
 begin
 if SendHealthStatsOn then
-	msd:= 0; msdhh:= nil;
-	msk:= 0; mskhh:= nil;
-	mskcnt:= 0;
-	maxTeamKills := 0;
-	maxTurnSkips := 0;
-	maxTeamDamage := 0;
-	winnersClan:= nil;
+    msd:= 0; msdhh:= nil;
+    msk:= 0; mskhh:= nil;
+    mskcnt:= 0;
+    maxTeamKills := 0;
+    maxTurnSkips := 0;
+    maxTeamDamage := 0;
+    winnersClan:= nil;
 
-	for t:= 0 to Pred(TeamsCount) do
-		with TeamsArray[t]^ do
-		begin
-			if not ExtDriven then
-				SendStat(siTeamStats, GetTeamStatString(TeamsArray[t]));
-			for i:= 0 to cMaxHHIndex do
-				begin
-				if Hedgehogs[i].stats.MaxStepDamageGiven > msd then
-					begin
-					msdhh:= @Hedgehogs[i];
-					msd:= Hedgehogs[i].stats.MaxStepDamageGiven
-					end;
-				if Hedgehogs[i].stats.MaxStepKills >= msk then
-					if Hedgehogs[i].stats.MaxStepKills = msk then
-						inc(mskcnt)
-					else
-						begin
-						mskcnt:= 1;
-						mskhh:= @Hedgehogs[i];
-						msk:= Hedgehogs[i].stats.MaxStepKills
-						end;
-			end;
+    for t:= 0 to Pred(TeamsCount) do
+        with TeamsArray[t]^ do
+        begin
+            if not ExtDriven then
+                SendStat(siTeamStats, GetTeamStatString(TeamsArray[t]));
+            for i:= 0 to cMaxHHIndex do
+                begin
+                if Hedgehogs[i].stats.MaxStepDamageGiven > msd then
+                    begin
+                    msdhh:= @Hedgehogs[i];
+                    msd:= Hedgehogs[i].stats.MaxStepDamageGiven
+                    end;
+                if Hedgehogs[i].stats.MaxStepKills >= msk then
+                    if Hedgehogs[i].stats.MaxStepKills = msk then
+                        inc(mskcnt)
+                    else
+                        begin
+                        mskcnt:= 1;
+                        mskhh:= @Hedgehogs[i];
+                        msk:= Hedgehogs[i].stats.MaxStepKills
+                        end;
+            end;
 
-			{ send player stats for winner teams }
-			if Clan^.ClanHealth > 0 then
-				begin
-				winnersClan:= Clan;
-				SendStat(siPlayerKills, IntToStr(Clan^.Color) + ' ' +
-					IntToStr(stats.Kills) + ' ' + TeamName);
-			end;
+            { send player stats for winner teams }
+            if Clan^.ClanHealth > 0 then
+                begin
+                winnersClan:= Clan;
+                SendStat(siPlayerKills, IntToStr(Clan^.Color) + ' ' +
+                    IntToStr(stats.Kills) + ' ' + TeamName);
+            end;
 
-			{ determine maximum values of TeamKills, TurnSkips, TeamDamage }
-			if stats.TeamKills > maxTeamKills then
-				begin
-				maxTeamKills := stats.TeamKills;
-				maxTeamKillsName := TeamName;
-			end;
-			if stats.TurnSkips > maxTurnSkips then
-				begin
-				maxTurnSkips := stats.TurnSkips;
-				maxTurnSkipsName := TeamName;
-			end;
-			if stats.TeamDamage > maxTeamDamage then
-				begin
-				maxTeamDamage := stats.TeamDamage;
-				maxTeamDamageName := TeamName;
-			end;
+            { determine maximum values of TeamKills, TurnSkips, TeamDamage }
+            if stats.TeamKills > maxTeamKills then
+                begin
+                maxTeamKills := stats.TeamKills;
+                maxTeamKillsName := TeamName;
+            end;
+            if stats.TurnSkips > maxTurnSkips then
+                begin
+                maxTurnSkips := stats.TurnSkips;
+                maxTurnSkipsName := TeamName;
+            end;
+            if stats.TeamDamage > maxTeamDamage then
+                begin
+                maxTeamDamage := stats.TeamDamage;
+                maxTeamDamageName := TeamName;
+            end;
 
-		end;
+        end;
+
+    { now send player stats for loser teams }
+    for t:= 0 to Pred(TeamsCount) do
+        begin
+        with TeamsArray[t]^ do
+            begin
+            if Clan^.ClanHealth = 0 then
+                begin
+                SendStat(siPlayerKills, IntToStr(Clan^.Color) + ' ' +
+                    IntToStr(stats.Kills) + ' ' + TeamName);
+            end;
+        end;
+    end;
 
-	{ now send player stats for loser teams }
-	for t:= 0 to Pred(TeamsCount) do
-		begin
-		with TeamsArray[t]^ do
-			begin
-			if Clan^.ClanHealth = 0 then
-				begin
-				SendStat(siPlayerKills, IntToStr(Clan^.Color) + ' ' +
-					IntToStr(stats.Kills) + ' ' + TeamName);
-			end;
-		end;
-	end;
+    if msdhh <> nil then
+        SendStat(siMaxStepDamage, IntToStr(msd) + ' ' + msdhh^.Name + ' (' + msdhh^.Team^.TeamName + ')');
+    if mskcnt = 1 then
+        SendStat(siMaxStepKills, IntToStr(msk) + ' ' + mskhh^.Name + ' (' + mskhh^.Team^.TeamName + ')');
 
-	if msdhh <> nil then
-		SendStat(siMaxStepDamage, IntToStr(msd) + ' ' + msdhh^.Name + ' (' + msdhh^.Team^.TeamName + ')');
-	if mskcnt = 1 then
-		SendStat(siMaxStepKills, IntToStr(msk) + ' ' + mskhh^.Name + ' (' + mskhh^.Team^.TeamName + ')');
+    if maxTeamKills > 1 then
+        SendStat(siMaxTeamKills, IntToStr(maxTeamKills) + ' ' + maxTeamKillsName);
+    if maxTurnSkips > 2 then
+        SendStat(siMaxTurnSkips, IntToStr(maxTurnSkips) + ' ' + maxTurnSkipsName);
+    if maxTeamDamage > 30 then
+        SendStat(siMaxTeamDamage, IntToStr(maxTeamDamage) + ' ' + maxTeamDamageName);
+
+    if KilledHHs > 0 then
+        SendStat(siKilledHHs, IntToStr(KilledHHs));
 
-	if maxTeamKills > 1 then
-		SendStat(siMaxTeamKills, IntToStr(maxTeamKills) + ' ' + maxTeamKillsName);
-	if maxTurnSkips > 2 then
-		SendStat(siMaxTurnSkips, IntToStr(maxTurnSkips) + ' ' + maxTurnSkipsName);
-	if maxTeamDamage > 30 then
-		SendStat(siMaxTeamDamage, IntToStr(maxTeamDamage) + ' ' + maxTeamDamageName);
-
-	if KilledHHs > 0 then
-		SendStat(siKilledHHs, IntToStr(KilledHHs));
+    // now to console
+    if winnersClan <> nil then 
+        begin
+        WriteLnToConsole('WINNERS');
+        WriteLnToConsole(inttostr(winnersClan^.TeamsNumber));
+        for t:= 0 to winnersClan^.TeamsNumber - 1 do
+            WriteLnToConsole(winnersClan^.Teams[t]^.TeamName);
+        end
+    else
+        WriteLnToConsole('DRAW');
+        
+    ScriptCall('onAchievementsDeclaration');
+end;
 
-	// now to console
-	if winnersClan <> nil then 
-		begin
-		WriteLnToConsole('WINNERS');
-		for t:= 0 to winnersClan^.TeamsNumber - 1 do
-			WriteLnToConsole(winnersClan^.Teams[t]^.TeamName);
-		end
-	else
-		WriteLnToConsole('DRAW');
-
-	WriteLnToConsole('');
+procedure declareAchievement(id, teamname, location: shortstring; value: LongInt);
+begin 
+if (length(id) = 0) or (length(teamname) = 0) or (length(location) = 0) then exit;
+    WriteLnToConsole('ACHIEVEMENT');
+    WriteLnToConsole(id);
+    WriteLnToConsole(teamname);
+    WriteLnToConsole(location);
+    WriteLnToConsole(inttostr(value));
 end;
 
 procedure initModule;
--- a/hedgewars/uTeams.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uTeams.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -43,7 +43,7 @@
 
 implementation
 uses uLocale, uAmmos, uChat, uVariables, uUtils, uIO, uCaptions, uCommands, uDebug,
-    uGearsUtils, uGearsList, uVisualGearsList
+    uGearsUtils, uGearsList, uVisualGearsList, uPhysFSLayer
     {$IFDEF USE_TOUCH_INTERFACE}, uTouch{$ENDIF};
 
 var MaxTeamHealth: LongInt;
@@ -568,6 +568,61 @@
     end
 end;
 
+procedure loadTeamBinds(s: shortstring);
+var i: LongInt;
+    f: PFSFile;
+    p, l: shortstring;
+    b: byte;
+begin
+    l:= '';
+    
+    for i:= 1 to length(s) do
+        if s[i] in ['\', '/', ':'] then s[i]:= '_';
+        
+    s:= cPathz[ptTeams] + '/' + s + '.hwt';
+    if pfsExists(s) then
+        begin
+        AddFileLog('Loading binds from: ' + s);
+        f:= pfsOpenRead(s);
+        while (not pfsEOF(f)) and (l <> '[Binds]') do
+            pfsReadLn(f, l);
+
+        while (not pfsEOF(f)) and (l <> '') do
+            begin
+            pfsReadLn(f, l);
+
+            p:= '';
+            i:= 1;
+            while (i <= length(l)) and (l[i] <> '=') do
+                begin
+                if l[i] <> '%' then
+                    begin
+                    p:= p + l[i];
+                    inc(i)
+                    end else
+                    begin
+                    l[i]:= '$';
+                    val(copy(l, i, 3), b);
+                    p:= p + char(b);
+                    inc(i, 3)
+                    end;
+                end;
+            
+            if i < length(l) then
+                begin
+                l:= copy(l, i + 1, length(l) - i);
+                if l <> 'default' then
+                    begin
+                    p:= 'bind ' + l + ' ' + p;
+                    ParseCommand(p, true)
+                    end
+                end
+            end;
+            
+        pfsClose(f)
+        end
+end;
+
 procedure chAddTeam(var s: shortstring);
 var Color: Longword;
     ts, cs: shortstring;
@@ -586,6 +641,8 @@
     AddTeam(Color);
     CurrentTeam^.TeamName:= ts;
     CurrentTeam^.PlayerHash:= s;
+    loadTeamBinds(ts);
+    
     if GameType in [gmtDemo, gmtSave, gmtRecord] then
         CurrentTeam^.ExtDriven:= true;
 
--- a/hedgewars/uTouch.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uTouch.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -31,16 +31,17 @@
 procedure ProcessTouch;
 procedure NewTurnBeginning;
 
-procedure onTouchDown(x,y: Longword; pointerId: TSDL_FingerId);
-procedure onTouchMotion(x,y: Longword; dx,dy: LongInt; pointerId: TSDL_FingerId);
-procedure onTouchUp(x,y: Longword; pointerId: TSDL_FingerId);
+procedure onTouchDown(x, y: Single; pointerId: TSDL_FingerId);
+procedure onTouchMotion(x, y, dx, dy: Single; pointerId: TSDL_FingerId);
+procedure onTouchUp(x, y: Single; pointerId: TSDL_FingerId);
+
 function convertToCursorX(x: LongInt): LongInt;
 function convertToCursorY(y: LongInt): LongInt;
-function convertToCursorDeltaX(x: LongInt): LongInt;
-function convertToCursorDeltaY(y: LongInt): LongInt;
+
 function addFinger(x,y: Longword; id: TSDL_FingerId): PTouch_Data;
 function updateFinger(x,y,dx,dy: Longword; id: TSDL_FingerId): PTouch_Data;
 procedure deleteFinger(id: TSDL_FingerId);
+
 procedure onTouchClick(finger: TTouch_Data);
 procedure onTouchDoubleClick(finger: TTouch_Data);
 procedure onTouchLongClick(finger: TTouch_Data);
@@ -62,7 +63,6 @@
 
 const
     clickTime = 200;
-    nilFingerId = High(TSDL_FingerId);
     baseRectSize = 96;
 
 var
@@ -76,24 +76,27 @@
     xTouchClick,yTouchClick : LongInt;
     timeSinceClick : Longword;
 
-    //Pinch to zoom 
+    //Pinch to zoom
     pinchSize : LongInt;
     baseZoomValue: GLFloat;
 
     //aiming
     aimingCrosshair: boolean;
-    aimingUp, aimingDown: boolean; 
+    aimingUp, aimingDown: boolean;
     targetAngle: LongInt;
 
     buttonsDown: Longword;
     targetting, targetted: boolean; //true when targetting an airstrike or the like
 
-procedure onTouchDown(x,y: Longword; pointerId: TSDL_FingerId);
-var 
+procedure onTouchDown(x, y: Single; pointerId: TSDL_FingerId);
+var
     finger: PTouch_Data;
+    xr, yr: LongWord;
 begin
-{$IFDEF USE_TOUCH_INTERFACE}
-finger := addFinger(x,y,pointerId);
+xr:= round(x * cScreenWidth);
+yr:= round(y * cScreenHeight);
+
+finger:= addFinger(xr, yr, pointerId);
 
 inc(buttonsDown);//inc buttonsDown, if we don't see a button down we'll dec it
 
@@ -161,7 +164,7 @@
             ParseTeamCommand('/timer ' + inttostr((GetCurAmmoEntry(CurrentHedgeHog^)^.Timer div 1000) mod 5 + 1));
         end;
     exit;
-    end; 
+    end;
 dec(buttonsDown);//no buttonsDown, undo the inc() above
 if buttonsDown = 0 then
     begin
@@ -177,15 +180,22 @@
             end;
         end;
     end;
-{$ENDIF}
 end;
 
-procedure onTouchMotion(x,y: Longword;dx,dy: LongInt; pointerId: TSDL_FingerId);
+procedure onTouchMotion(x, y, dx, dy: Single; pointerId: TSDL_FingerId);
 var
     finger, secondFinger: PTouch_Data;
-    currentPinchDelta, zoom : single;
+    currentPinchDelta, zoom : Single;
+    xr, yr, dxr, dyr: LongWord;
 begin
-finger:= updateFinger(x,y,dx,dy,pointerId);
+xr:= round(x * cScreenWidth);
+yr:= round(y * cScreenHeight);
+dxr:= round(dx * cScreenWidth);
+dyr:= round(dy * cScreenHeight);
+
+finger:= updateFinger(xr, yr, dxr, dyr, pointerId);
+if finger = nil then
+    exit;
 
 if moveCursor then
     begin
@@ -201,8 +211,8 @@
         end;
         exit //todo change into switch rather than ugly ifs
     end;
-    
-if aimingCrosshair then 
+
+if aimingCrosshair then
     begin
         aim(finger^);
         exit
@@ -222,22 +232,26 @@
 
 end;
 
-procedure onTouchUp(x,y: Longword; pointerId: TSDL_FingerId);
+procedure onTouchUp(x,y: Single; pointerId: TSDL_FingerId);
 var
     finger: PTouch_Data;
     widget: POnScreenWidget;
+    xr, yr: LongWord;
 begin
-{$IFDEF USE_TOUCH_INTERFACE}
-x := x;
-y := y;
-finger:= updateFinger(x,y,0,0,pointerId);
+xr:= round(x * cScreenWidth);
+yr:= round(y * cScreenHeight);
+
+finger:= updateFinger(xr, yr, 0, 0, pointerId);
+if finger = nil then
+    exit;
+
 //Check for onTouchClick event
 if not(fingerHasMoved(finger^)) then
     begin
     if (RealTicks - finger^.timeSinceDown) < clickTime then
         onTouchClick(finger^)
     else
-            onTouchLongClick(finger^);
+        onTouchLongClick(finger^);
     end;
 
 if aimingCrosshair then
@@ -252,10 +266,10 @@
 if (buttonsDown > 0) and (widget <> nil) then
     begin
     dec(buttonsDown);
-    
+
     if widget = @arrowLeft then
         ParseTeamCommand('-left');
-    
+
     if widget = @arrowRight then
         ParseTeamCommand('-right');
 
@@ -267,7 +281,7 @@
 
     if widget = @fireButton then
         ParseTeamCommand('-attack');
-    
+
     if widget = @utilityWidget then
         if (CurrentHedgehog <> nil)then
             if(Ammoz[CurrentHedgehog^.CurAmmoType].Ammo.Propz and ammoprop_NeedTarget <> 0)then
@@ -279,12 +293,11 @@
                 ParseTeamCommand('switch')
             else WriteLnToConsole(inttostr(ord(Ammoz[CurrentHedgehog^.CurAmmoType].NameId)) + ' ' + inttostr(ord(sidSwitch)));
     end;
-        
+
 if targetting then
     AddCaption('Press the target button to mark the target', cWhiteColor, capgrpAmmoInfo);
- 
+
 deleteFinger(pointerId);
-{$ENDIF}
 end;
 
 procedure onTouchDoubleClick(finger: TTouch_Data);
@@ -294,14 +307,11 @@
 
 procedure onTouchLongClick(finger: TTouch_Data);
 begin
-{$IFDEF USE_TOUCH_INTERFACE}
 if isOnWidget(jumpWidget, finger) then
     begin
     ParseTeamCommand('ljump');
     exit;
     end;
-
-{$ENDIF}
 end;
 
 procedure onTouchClick(finger: TTouch_Data);
@@ -309,8 +319,8 @@
 //if (RealTicks - timeSinceClick < 300) and (sqrt(sqr(finger.X-xTouchClick) + sqr(finger.Y-yTouchClick)) < 30) then
 //    begin
 //    onTouchDoubleClick(finger);
-//    timeSinceClick:= 0;//we make an assumption there won't be an 'click' in the first 300 ticks(milliseconds) 
-//    exit; 
+//    timeSinceClick:= 0;//we make an assumption there won't be an 'click' in the first 300 ticks(milliseconds)
+//    exit;
 //    end;
 
 xTouchClick:= finger.x;
@@ -318,19 +328,18 @@
 timeSinceClick:= RealTicks;
 
 if bShowAmmoMenu then
-    begin 
+    begin
     if isOnRect(AmmoRect, finger) then
         begin
         CursorPoint.X:= finger.x;
         CursorPoint.Y:= finger.y;
-        ParseTeamCommand('put'); 
+        ParseTeamCommand('put');
         end
     else
         bShowAmmoMenu:= false;
     exit;
     end;
 
-{$IFDEF USE_TOUCH_INTERFACE}
 if isOnCurrentHog(finger) or isOnWidget(AMWidget, finger) then
     begin
     bShowAmmoMenu := true;
@@ -339,28 +348,25 @@
 
 if isOnWidget(jumpWidget, finger) then
     begin
-    ParseTeamCommand('hjump');    
+    ParseTeamCommand('hjump');
     exit;
     end;
-{$ENDIF}
 end;
 
 function addFinger(x,y: Longword; id: TSDL_FingerId): PTouch_Data;
-var 
+var
     xCursor, yCursor, index : LongInt;
 begin
     //Check array sizes
-    if length(fingers) < Integer(pointerCount) then 
+    if length(fingers) < pointerCount then
     begin
-        setLength(fingers, length(fingers)*2);
-        for index := length(fingers) div 2 to length(fingers) do
-            fingers[index].id := nilFingerId;
+        setLength(fingers, pointerCount * 2);
+        WriteLnToConsole('allocated ' + inttostr(length(fingers)) + ' finger elements');
     end;
-    
-    
+
     xCursor := convertToCursorX(x);
     yCursor := convertToCursorY(y);
-    
+
     //on removing fingers, all fingers are moved to the left
     //with dynamic arrays being zero based, the new position of the finger is the old pointerCount
     fingers[pointerCount].id := id;
@@ -372,46 +378,53 @@
     fingers[pointerCount].dy := 0;
     fingers[pointerCount].timeSinceDown:= RealTicks;
     fingers[pointerCount].pressedWidget:= nil;
- 
+
     addFinger:= @fingers[pointerCount];
     inc(pointerCount);
 end;
 
-function updateFinger(x,y,dx,dy: Longword; id: TSDL_FingerId): PTouch_Data;
+function updateFinger(x, y, dx, dy: Longword; id: TSDL_FingerId): PTouch_Data;
+var finger : PTouch_Data;
 begin
-   updateFinger:= findFinger(id);
+    finger:= findFinger(id);
 
-   updateFinger^.x:= convertToCursorX(x);
-   updateFinger^.y:= convertToCursorY(y);
-   updateFinger^.dx:= convertToCursorDeltaX(dx);
-   updateFinger^.dy:= convertToCursorDeltaY(dy);
+    if finger <> nil then
+        begin
+        finger^.x:= convertToCursorX(x);
+        finger^.y:= convertToCursorY(y);
+        finger^.dx:= dx;
+        finger^.dy:= dy;
+        end
+    else
+        WriteLnToConsole('finger ' + inttostr(id) + ' not found');
+    updateFinger:= finger
 end;
 
 procedure deleteFinger(id: TSDL_FingerId);
 var
     index : Longword;
 begin
-    
+
     dec(pointerCount);
     for index := 0 to pointerCount do
     begin
         if fingers[index].id = id then
         begin
- 
-            //put the last finger into the spot of the finger to be removed, 
+
+            //put the last finger into the spot of the finger to be removed,
             //so that all fingers are packed to the far left
             if  pointerCount <> index then
                 begin
-                fingers[index].id := fingers[pointerCount].id;    
-                fingers[index].x := fingers[pointerCount].x;    
-                fingers[index].y := fingers[pointerCount].y;    
-                fingers[index].historicalX := fingers[pointerCount].historicalX;    
-                fingers[index].historicalY := fingers[pointerCount].historicalY;    
+                fingers[index].id := fingers[pointerCount].id;
+                fingers[index].x := fingers[pointerCount].x;
+                fingers[index].y := fingers[pointerCount].y;
+                fingers[index].historicalX := fingers[pointerCount].historicalX;
+                fingers[index].historicalY := fingers[pointerCount].historicalY;
                 fingers[index].timeSinceDown := fingers[pointerCount].timeSinceDown;
 
-                fingers[pointerCount].id := nilFingerId;
+                fingers[pointerCount].id := 0;
             end
-        else fingers[index].id := nilFingerId;
+        else fingers[index].id := 0;
             break;
         end;
     end;
@@ -430,12 +443,12 @@
 var
     deltaAngle: LongInt;
 begin
-invertCursor := not(bShowAmmoMenu or targetting); 
+invertCursor := not(bShowAmmoMenu or targetting);
 if aimingCrosshair then
     if CurrentHedgehog^.Gear <> nil then
         begin
         deltaAngle:= CurrentHedgehog^.Gear^.Angle - targetAngle;
-        if (deltaAngle > -5) and (deltaAngle < 5) then 
+        if (deltaAngle > -5) and (deltaAngle < 5) then
             begin
                 if(aimingUp)then
                     begin
@@ -475,10 +488,10 @@
                     aimingUp:= true;
                     ParseTeamCommand('+up');
                     end;
-                end; 
+                end;
             end;
         end
-    else  
+    else
         begin
         if aimingUp then
             begin
@@ -497,16 +510,17 @@
 var
     index: LongWord;
 begin
-    for index := 0 to High(fingers) do
-        if fingers[index].id = id then 
+    for index:= 0 to length(fingers) do
+        if fingers[index].id = id then
             begin
-            findFinger := @fingers[index];
-            break;
+            findFinger:= @fingers[index];
+            exit;
             end;
+    findFinger:= nil;
 end;
 
 procedure aim(finger: TTouch_Data);
-var 
+var
     hogX, hogY, touchX, touchY, deltaX, deltaY: LongInt;
 begin
     if CurrentHedgehog^.Gear <> nil then
@@ -519,70 +533,55 @@
         convertToWorldCoord(touchX, touchY, finger);
         deltaX := abs(TouchX-HogX);
         deltaY := TouchY-HogY;
-        
+
         targetAngle:= (Round(DeltaY / sqrt(sqr(deltaX) + sqr(deltaY)) * 2048) + 2048) div 2;
         end; //if CurrentHedgehog^.Gear <> nil
 end;
 
 // These 4 convertToCursor functions convert xy coords from the SDL coordinate system to our CursorPoint coor system:
-// - the SDL coordinate system goes from 0 to 32768 on the x axis and 0 to 32768 on the y axis, (0,0) being top left;
+// - the SDL coordinate system is proportional to the screen and values are normalized in the onTouch* functions
 // - the CursorPoint coordinate system goes from -cScreenWidth/2 to cScreenWidth/2 on the x axis
 //   and 0 to cScreenHeight on the x axis, (-cScreenWidth, cScreenHeight) being top left.
 function convertToCursorX(x: LongInt): LongInt;
 begin
-    convertToCursorX := round((x/32768)*cScreenWidth) - (cScreenWidth shr 1);
+    convertToCursorX:= x - cScreenWidth shr 1;
 end;
 
 function convertToCursorY(y: LongInt): LongInt;
 begin
-    convertToCursorY := cScreenHeight - round((y/32768)*cScreenHeight)
-end;
-
-function convertToCursorDeltaX(x: LongInt): LongInt;
-begin
-    convertToCursorDeltaX := round(x/32768*cScreenWidth)
-end;
-
-function convertToCursorDeltaY(y: LongInt): LongInt;
-begin
-    convertToCursorDeltaY := round(y/32768*cScreenHeight)
+    convertToCursorY:= cScreenHeight - y;
 end;
 
 function isOnCrosshair(finger: TTouch_Data): boolean;
 var
-    x,y : LongInt;
+    x, y: LongInt;
 begin
-    x := 0;//avoid compiler hint
-    y := 0;
+    x:= 0;
+    y:= 0;
     convertToFingerCoord(x, y, CrosshairX, CrosshairY);
-    isOnCrosshair:= isOnRect((x-HalfRectSize), (y-HalfRectSize), RectSize, RectSize, finger);
-    printFinger(finger);
-    WriteLnToConsole(inttostr(finger.x) + '   ' + inttostr(x));
-    WriteLnToConsole(inttostr(x) + '  ' + inttostr(y) + '   ' + inttostr(round(mobileRecord.getScreenDPI() * 10)));
+    isOnCrosshair:= isOnRect(x - HalfRectSize, y - HalfRectSize, RectSize, RectSize, finger);
 end;
 
 function isOnCurrentHog(finger: TTouch_Data): boolean;
 var
-    x,y : LongInt;
+    x, y: LongInt;
 begin
-    x := 0;
-    y := 0;
-    convertToFingerCoord(x,y, hwRound(CurrentHedgehog^.Gear^.X), hwRound(CurrentHedgehog^.Gear^.Y));
-    isOnCurrentHog:= isOnRect((x-HalfRectSize), (y-HalfRectSize), RectSize, RectSize, finger);
+    x:= 0;
+    y:= 0;
+    convertToFingerCoord(x, y, hwRound(CurrentHedgehog^.Gear^.X), hwRound(CurrentHedgehog^.Gear^.Y));
+    isOnCurrentHog:= isOnRect(x - HalfRectSize, y - HalfRectSize, RectSize, RectSize, finger);
 end;
 
-procedure convertToFingerCoord(var x,y : LongInt; oldX, oldY: LongInt);
+procedure convertToFingerCoord(var x, y : LongInt; oldX, oldY: LongInt);
 begin
     x := oldX + WorldDx;
-    y := cScreenHeight - (oldY + WorldDy);
+    y := cScreenHeight - oldY - WorldDy;
 end;
 
 procedure convertToWorldCoord(var x,y: LongInt; finger: TTouch_Data);
 begin
-//if x <> nil then 
-    x := finger.x-WorldDx;
-//if y <> nil then 
-    y := (cScreenHeight - finger.y)-WorldDy;
+    x := finger.x - WorldDx;
+    y := cScreenHeight - finger.y - WorldDy;
 end;
 
 //Method to calculate the distance this finger has moved since the downEvent
@@ -626,7 +625,8 @@
 
 procedure printFinger(finger: TTouch_Data);
 begin
-    WriteToConsole(Format('id:%d, (%d,%d), (%d,%d), time: %d', [finger.id, finger.x, finger.y, finger.historicalX, finger.historicalY, finger.timeSinceDown]));
+    WriteLnToConsole(Format('id: %d, x: %d y: %d (rel x: %d rel y: %d), time: %d',
+                            [finger.id, finger.x, finger.y, finger.historicalX, finger.historicalY, finger.timeSinceDown]));
 end;
 
 procedure initModule;
@@ -635,13 +635,14 @@
     //uRenderCoordScaleX, uRenderCoordScaleY: Longword;
 begin
     buttonsDown:= 0;
+    pointerCount:= 0;
 
     setLength(fingers, 4);
-    for index := 0 to High(fingers) do 
-        fingers[index].id := nilFingerId;
+    for index := 0 to length(fingers) do
+        fingers[index].id := 0;
 
-    rectSize:= round(baseRectSize * mobileRecord.getScreenDPI());
-    halfRectSize:= rectSize shl 1;
+    rectSize:= baseRectSize;
+    halfRectSize:= baseRectSize shr 1;
 end;
 
 procedure freeModule;
--- a/hedgewars/uTypes.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uTypes.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -413,10 +413,8 @@
 
      cdeclPtr = procedure; cdecl;
      cdeclIntPtr = procedure(num: LongInt); cdecl;
-     functionDoublePtr = function: Double;
 
      TMobileRecord = record
-                     getScreenDPI: functionDoublePtr;
                      PerformRumble: cdeclIntPtr;
                      GameLoading: cdeclPtr;
                      GameLoaded: cdeclPtr;
--- a/hedgewars/uUtils.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uUtils.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -70,7 +70,6 @@
 procedure WriteLn(var f: textfile; s: shortstring);
 
 function  isPhone: Boolean; inline;
-function  getScreenDPI: Double; inline; //cdecl; external;
 
 {$IFDEF IPHONEOS}
 procedure startLoadingIndicator; cdecl; external;
@@ -428,16 +427,6 @@
 {$ENDIF}
 end;
 
-//This dummy function should be reimplemented (externally).
-function getScreenDPI: Double; inline;
-begin
-{$IFDEF ANDROID}
-//    getScreenDPI:= Android_JNI_getDensity();
-    getScreenDPI:= 1;
-{$ELSE}
-    getScreenDPI:= 1;
-{$ENDIF}
-end;
 
 function  sanitizeForLog(s: shortstring): shortstring;
 var i: byte;
@@ -506,7 +495,6 @@
 {$ENDIF}
 
     //mobile stuff
-    mobileRecord.getScreenDPI:= @getScreenDPI; //TODO: define external function.
 {$IFDEF IPHONEOS}
     mobileRecord.PerformRumble:= @AudioServicesPlaySystemSound;
     mobileRecord.GameLoading:= @startLoadingIndicator;
--- a/hedgewars/uVariables.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uVariables.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -2368,7 +2368,7 @@
 procedure initModule;
 begin
     // TODO: we could just have one cLocale variables and drop strutils
-    cLocale:= ExtractDelimited(0, cLocaleFName, StdWordDelims);
+    cLocale:= ExtractDelimited(1, cLocaleFName, StdWordDelims);
 
     cFlattenFlakes      := false;
     cFlattenClouds      := false;
--- a/hedgewars/uWorld.pas	Tue Jul 16 11:14:27 2013 +0200
+++ b/hedgewars/uWorld.pas	Tue Aug 27 17:22:07 2013 +0400
@@ -244,7 +244,7 @@
 {$IFDEF USE_TOUCH_INTERFACE}
 
 //positioning of the buttons
-buttonScale:= mobileRecord.getScreenDPI()/cDefaultZoomLevel;
+buttonScale:= 1 / cDefaultZoomLevel;
 
 
 with JumpWidget do
--- a/misc/Android.mk	Tue Jul 16 11:14:27 2013 +0200
+++ b/misc/Android.mk	Tue Aug 27 17:22:07 2013 +0400
@@ -1,9 +1,7 @@
 MISC_DIR   := $(call my-dir)
 LOCAL_PATH := MISC_DIR
 
-include $(MISC_DIR)/libfreetype/Android.mk
 include $(MISC_DIR)/liblua/Android.mk
-include $(MISC_DIR)/libtremor/Android.mk
 include $(MISC_DIR)/libphysfs/Android.mk
 include $(MISC_DIR)/libphyslayer/Android.mk
 
--- a/misc/libfreetype/Android.mk	Tue Jul 16 11:14:27 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-# compile in ARM mode, since the glyph loader/renderer is a hotspot
-# when loading complex pages in the browser
-#
-LOCAL_ARM_MODE := arm
-
-LOCAL_SRC_FILES:= \
-	src/base/ftbbox.c \
-	src/base/ftbitmap.c \
-	src/base/ftglyph.c \
-	src/base/ftstroke.c \
-	src/base/ftxf86.c \
-	src/base/ftbase.c \
-	src/base/ftsystem.c \
-	src/base/ftinit.c \
-	src/base/ftgasp.c \
-	src/raster/raster.c \
-	src/sfnt/sfnt.c \
-	src/smooth/smooth.c \
-	src/autofit/autofit.c \
-	src/truetype/truetype.c \
-	src/cff/cff.c \
-	src/psnames/psnames.c \
-	src/pshinter/pshinter.c
-
-LOCAL_C_INCLUDES += \
-	$(LOCAL_PATH)/builds \
-	$(LOCAL_PATH)/include
-
-LOCAL_CFLAGS += -W -Wall
-LOCAL_CFLAGS += -fPIC -DPIC
-LOCAL_CFLAGS += "-DDARWIN_NO_CARBON"
-LOCAL_CFLAGS += "-DFT2_BUILD_LIBRARY"
-
-# the following is for testing only, and should not be used in final builds
-# of the product
-#LOCAL_CFLAGS += "-DTT_CONFIG_OPTION_BYTECODE_INTERPRETER"
-
-LOCAL_CFLAGS += -O2
-
-LOCAL_MODULE:= freetype
-
-include $(BUILD_STATIC_LIBRARY)
--- a/misc/libfreetype/ChangeLog	Tue Jul 16 11:14:27 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2243 +0,0 @@
-2011-04-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[autofit] Add more Indic scripts with hanging baseline.
-
-	* src/autofit/afindic.c (af_indic_uniranges): Tibetan, Limbu,
-	Sundanese, Meetei Mayak, Syloti Nagri and Sharada scripts are
-	added.
-
-2011-04-21  Behdad Esfahbod  <behdad@behdad.org>
-
-	Always ignore global advance.
-
-	This makes FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH redundant,
-	deprecated, and ignored.  The new behavior is what every major user
-	of FreeType has been requesting.  Global advance is broken in many
-	CJK fonts.  Just ignoring it by default makes most sense.
-
-	* src/truetype/ttdriver.c (tt_get_advances),
-	src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics,
-	tt_get_metrics, compute_glyph_metrics, TT_Load_Glyph),
-	src/truetype/ttgload.h: Implement it.
-
-	* docs/CHANGES: Updated.
-
-2011-04-21  rainy6144  <rainy6144@gmail.com>
-
-	[autofit] Blur CJK stems if too many to preserve their gaps.
-
-	When there are too many stems to preserve their gaps in the
-	rasterization of CJK Ideographs at a low resolution, blur the
-	stems instead of showing clumped stems.  See
-	http://lists.gnu.org/archive/html/freetype-devel/2011-02/msg00011.html
-	http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00046.html
-	for details.
-
-	* src/autofit/afcjk.c (af_cjk_hint_edges): Store the position of
-	the previous stem by `has_last_stem' and `last_stem_pos', and skip
-	a stem if the current and previous stem are too near to preserve
-	the gap.
-
-2011-04-18  Werner Lemberg  <wl@gnu.org>
-
-	Integrate autofitter debugging stuff.
-
-	* devel/ftoption.h, include/freetype/config/ftoption.h
-	(FT_DEBUG_AUTOFIT): New macro.
-
-	* include/freetype/internal/fttrace.h: Add trace components for
-	autofitter.
-
-	* src/autofit/aftypes.h (AF_LOG): Removed.
-	(_af_debug): Removed.
-
-	* src/autofit/*: s/AF_DEBUG/FT_DEBUG_AUTOFIT/.
-	s/AF_LOG/FT_TRACE5/.
-	Define FT_COMPONENT where necessary.
-
-2011-04-18  Werner Lemberg  <wl@gnu.org>
-
-	Synchronize config files.
-
-	* builds/unix/ftconfig.in: Copy missing assembler routines from
-	include/freetype/config/ftconfig.h.
-
-2011-04-13  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #33047.
-
-	Patch submitted by anonymous reporter.
-
-	* src/psaux/psobjs.c (ps_table_add): Use FT_PtrDist for pointer
-	difference.
-
-2011-04-11  Kan-Ru Chen  <kanru@kanru.info>
-
-	Fix reading of signed integers from files on 64bit platforms.
-
-	Previously, signed integers were converted to unsigned integers, but
-	this can fail because of sign extension.  For example, 0xa344a1eb
-	becomes 0xffffffffa344a1eb.
-
-	We now do the reverse which is always correct because the integer
-	size is the same during the cast from unsigned to signed.
-
-	* include/freetype/internal/ftstream.h, src/base/ftstream.c
-	(FT_Stream_Get*): Replace with...
-	(FT_Stream_GetU*): Functions which read unsigned integers.
-	Update all macros accordingly.
-
-	* src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Updated.
-
-2011-04-07  Werner Lemberg  <wl@gnu.org>
-
-	Update Unicode ranges for CJK autofitter; in particular, add Hangul.
-
-	* src/autofit/afcjk.c (af_cjk_uniranges): Update to Unicode 6.0.
-
-2011-04-04  Werner Lemberg  <wl@gnu.org>
-
-	Fix formatting of autofit debug dumps.
-
-	* src/autofit/afhints.c (af_glyph_hints_dump_points,
-	af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Adjust
-	column widths.
-
-2011-03-30  Werner Lemberg  <wl@gnu.org>
-
-	* src/autofit/aftypes.h (AF_OutlineRec): Removed, unused.
-
-2011-03-24  Werner Lemberg  <wl@gnu.org>
-
-	* src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 256.
-	This limit is given on p. 37 of Adobe Technical Note #5014.
-
-2011-03-23  Werner Lemberg  <wl@gnu.org>
-
-	* src/truetype/ttpload.c (tt_face_load_loca): Fix mismatch warning.
-
-2011-03-20  Werner Lemberg  <wl@gnu.org>
-
-	* src/sfnt/sfobjs.c (sfnt_open_font): Check number of TTC subfonts.
-
-2011-03-19  Werner Lemberg  <wl@gnu.org>
-
-	More C++ compilation fixes.
-
-	* src/autofit/afhints.c (af_glyph_hints_dump_points,
-	af_glyph_hints_dump_segments, af_glyph_hints_dump_edges)
-	[__cplusplus]: Protect with `extern "C"'.
-
-2011-03-18  Werner Lemberg  <wl@gnu.org>
-
-	C++ compilation fixes.
-
-	* src/autofit/aflatin.c (af_latin_hints_apply), src/autofit/afcjk.c
-	(af_cjk_hints_apply): Use cast for `dim'.
-
-2011-03-17  Alexei Podtelezhnikov  <apodtele@gmail.com>
-
-	A better fix for Savannah bug #32671.
-
-	* src/smooth/ftgrays.c (gray_render_conic): Clean up code and
-	replace WHILE loop with a more natural DO-WHILE construct.
-
-2011-03-16  Werner Lemberg  <wl@gnu.org>.
-
-	* src/base/ftstroke.c (FT_StrokerRec): Remove unused `valid' field.
-	Suggested by Graham Asher.
-
-2011-03-09  Werner Lemberg  <wl@gnu.org>
-
-	Make FT_Sfnt_Table_Info return the number of SFNT tables.
-
-	* src/sfnt/sfdriver.c (sfnt_table_info): Implement it.
-	* include/freetype/tttables.h: Update documentation.
-	* docs/CHANGES: Updated.
-
-2011-03-07  Bram Tassyns  <bramt@enfocus.be>
-
-	Fix Savannah bug #27988.
-
-	* src/cff/cffobjs.c (remove_style): New function.
-	(cff_face_init): Use it to strip off the style part of the family
-	name.
-
-2011-03-07  Werner Lemberg  <wl@gnu.org>
-
-	* docs/CHANGES: Updated.
-
-2011-03-07  Alexei Podtelezhnikov  <apodtele@gmail.com>
-
-	Quick fix for Savannah bug #32671.
-
-	This isn't the optimal solution yet, but it restores the previous
-	rendering quality (more or less).
-
-	* src/smooth/ftgrays.c (gray_render_conic): Do more splitting.
-
-2011-03-06  Werner Lemberg  <wl@gnu.org>
-
-	Fix autohinting fallback.
-
-	* src/base/ftobjs.c (FT_Load_Glyph): Assure that we only check TTFs,
-	ignoring CFF-based OTFs.
-
-2011-02-27  Werner Lemberg  <wl@gnu.org>
-
-	Add AF_CONFIG_OPTION_USE_WARPER to control the autofit warper.
-
-	* devel/ftoption.h, include/freetype/config/ftoption.h
-	(AF_CONFIG_OPTION_USE_WARPER): New macro.
-	* src/autofit/aftypes.h (AF_USE_WARPER): Remove.
-
-	* src/autofit/*: s/AF_USE_WARPER/AF_CONFIG_OPTION_USE_WARPER/.
-
-	* src/autofit/afwarp.c [!AF_CONFIG_OPTION_USE_WARPER]: Replace dummy
-	variable assignment with a typedef.
-
-2011-02-26  Werner Lemberg  <wl@gnu.org>
-
-	[autofit] Slight simplifications.
-
-	* src/autofit/aflatin.c (af_latin_hints_link_segments): Remove
-	test which always returns false.
-	(af_latin_hints_compute_blue_edges): Remove redundant assignment.
-
-2011-02-24  Werner Lemberg  <wl@gnu.org>
-
-	* docs/PROBLEMS: Mention rendering differences on different
-	platforms.
-	Suggested and worded by Jason Owen <jason.a.owen@gmail.com>.
-
-2011-02-24  Werner Lemberg  <wl@gnu.org>
-
-	[autofit] Comment out unused code.
-
-	* src/autofit/aflatin.c, src/autofit/aflatin2.c
-	(af_latin_hints_compute_edges): Do it.
-
-2011-02-24  Werner Lemberg  <wl@gnu.org>
-
-	* src/autofit/afhints.h (AF_GlyphHints): Remove unused field.
-
-2011-02-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Fix an off-by-one bug in `FTC_Manager_RemoveFaceID'.
-	Found by <ychen1392001@yahoo.com.cn>, see detail in
-
-	  http://lists.gnu.org/archive/html/freetype/2011-01/msg00023.html
-
-	* src/cache/ftccache.c (FTC_Cache_RemoveFaceID): Check the node
-	buckets[cache->p + cache->mask] too.
-
-2011-02-19  Kevin Kofler  <kevin.kofler@chello.at>
-
-	Fall back to autohinting if a TTF/OTF doesn't contain any bytecode.
-	This is Savannah patch #7471.
-
-	* src/base/ftobjs.c (FT_Load_Glyph): Implement it.
-
-2011-02-19  John Tytgat  <John.Tytgat@esko.com>
-
-	[cff] Fix subset prefix removal.
-	This is Savannah patch #7465.
-
-	* src/cff/cffobjs.c (remove_subset_prefix): Update length after
-	subset prefix removal.
-
-2011-02-13  Bradley Grainger  <bgrainger@logos.com>
-
-	Add inline assembly version of FT_MulFix for MSVC.
-
-	* include/freetype/config/ftconfig.h: Ported the FT_MulFix_i386
-	function from GNU inline assembly syntax (see #ifdef __GNUC__ block
-	above) to MASM syntax for Microsoft Visual C++.
-
-2011-02-13  Bradley Grainger  <bgrainger@logos.com>
-
-	Add project and solution files in Visual Studio 2010 format.
-
-	* builds/win32/.gitignore: Ignore user-specific cache files.
-	* builds/win32/vc2010/: Add VS2010 project & solution files, created
-	by upgrading builds/win32/vc2008/freetype.vcproj.
-	* objs/.gitignore: Ignore Visual Studio output files.
-
-2011-02-01  Werner Lemberg  <wl@gnu.org>
-
-	* src/autofit/afdummy.c: Include `aferrors.h'.
-	Problem reported by Chris Liddel <chris.liddell@artifex.com>.
-
-2011-02-01  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Ignore unknown operators in charstrings.
-	Patch suggested by Miles.Lau <sunliang_liu@foxitsoftware.com>.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Emit tracing
-	message for unknown operators and continue instead of exiting with a
-	syntax error.
-
-2011-02-01  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] FT_LOAD_PEDANTIC now affects `prep' and `fpgm' also.
-
-	* src/truetype/ttgload.c (tt_loader_init): Handle
-	`FT_LOAD_PEDANTIC'.
-	* src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep,
-	tt_size_init_bytecode, tt_size_ready_bytecode): New argument to
-	handle pedantic mode.
-	* src/truetype/ttobjs.h: Updated.
-
-2011-01-31  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Protect jump instructions against endless loops.
-
-	* src/truetype/interp.c (DO_JROT, DO_JMPR, DO_JROF): Exit with error
-	if offset is zero.
-
-2011-01-31  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Improve handling of invalid references.
-
-	* src/truetype/interp.c: Set even more TT_Err_Invalid_Reference
-	error codes only if pedantic hinting is active.  At the same time,
-	try to provide sane values which hopefully allow useful
-	continuation.  Exception to this is CALL and LOOPCALL – due to
-	possible stack corruption it is necessary to bail out.
-
-2011-01-31  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Improve handling of stack underflow.
-
-	* src/truetype/ttinterp.c (TT_RunIns, Ins_FLIPPT, Ins_DELTAP,
-	Ins_DELTAC): Exit with error only if `pedantic_hinting' is set.
-	Otherwise, try to do something sane.
-
-2011-01-30  Werner Lemberg  <wl@gnu.org>
-
-	* src/sfnt/ttmtx.c (tt_face_load_hmtx): Fix tracing message.
-
-2011-01-30  LIU Sun-Liang  <sunliang_liu@foxitsoftware.com>
-
-	[truetype]: Fix behaviour of MIAP for invalid arguments.
-
-	* src/truetype/ttinterp.c (Ins_MIAP): Set reference points even in
-	case of error.
-
-2011-01-18  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Fix handling of MIRP instruction.
-
-	Thanks to Greg Hitchcock who explained the issue.
-
-	* src/truetype/ttinterp.c (Ins_MIRP): Replace a `>=' operator with
-	`>' since the description in the specification is incorrect.
-	This fixes, for example, glyph `two' in font `Helvetica Neue LT Com
-	65 medium' at 15ppem.
-
-2011-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix ARM assembly code in include/freetype/config/ftconfig.h.
-
-	* include/freetype/config/ftconfig.h (FT_MulFix_arm):
-	Copy the maintained code from builds/unix/ftconfig.in.
-	Old GNU binutils could not accept the reduced syntax
-	`orr %0, %2, lsl #16'.  Un-omitted syntax like RVCT,
-	`orr %0, %0, %2, lsl #16' is better.  Reported by
-	Johnson Y. Yan.  The bug report by Qt developers is
-	considered too.
-
-	http://bugreports.qt.nokia.com/browse/QTBUG-6521
-
-2011-01-15  Werner Lemberg  <wl@gnu.org>
-
-	[raster] Make bbox handling the same as with Microsoft's rasterizer.
-
-	Right before B/W rasterizing, the bbox gets simply rounded to
-	integers.  This fixes, for example, glyph `three' in font `Helvetica
-	Neue LT Com 65 Medium' at 11ppem.
-
-	Thanks to Greg Hitchcock who explained this behaviour.
-
-	* src/raster/ftrend1.c (ft_raster1_render): Implement it.
-
-2011-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Copy -mcpu=* & -march=* options from CFLAGS to LDFLAGS.
-
-	* builds/unix/configure.raw: Consider recent gcc-standard
-	flags to specify architecture in CFLAGS & LDFLAGS
-	harmonization.  Requested by Savannah bug #32114, to
-	support multilib feature of BuildRoot SDK correctly.
-
-2011-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix off-by-one bug in CFLAGS & LDFLAGS harmonizer.
-
-	* builds/unix/configure.raw: Some important options that
-	included in CFLAGS but not in LDFLAGS are copied to
-	LDFLAGS, but the last option in CFLAGS was not checked.
-
-2011-01-13  Werner Lemberg  <wl@gnu.org>
-
-	[raster] Add undocumented drop-out rule to the other bbox side also.
-
-	* src/raster/ftraster.c (Vertical_Sweep_Drop,
-	Horizontal_Sweep_Drop): Implement it.
-
-2011-01-13  Werner Lemberg  <wl@gnu.org>
-
-	[raster] Reduce jitter value.
-
-	This catches a rendering problem with glyph `x' from Tahoma at
-	10ppem.  It seems that the increase of the precision in the change
-	from 2009-06-11 makes a larger jitter value unnecessary.
-
-	* src/raster/ftraster.c (Set_High_Precision): Implement it.
-
-2011-01-13  Werner Lemberg  <wl@gnu.org>
-
-	[raster] Handle drop-outs at glyph borders according to Microsoft.
-
-	If a drop-out rule would switch on a pixel outside of the glyph's
-	bounding box, use the right (or top) pixel instead.  This is an
-	undocumented feature, but some fonts like `Helvetica Neue LT Com 65
-	Medium' heavily rely on it.
-
-	Thanks to Greg Hitchcock who explained this behaviour.
-
-	* src/raster/ftraster.c (Vertical_Sweep_Drop,
-	Horizontal_Sweep_Drop): Implement it.
-
-2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Fix Savannah bug #31923, patch drafted by Harsha.
-
-	When a node comparator changes the cached nodes during the
-	search of a node matching with queried properties, the
-	pointers obtained before the function should be updated to
-	prevent the dereference to freed or reallocated nodes.
-	To minimize the rescan of the linked list, the update is
-	executed when the comparator notifies the change of cached
-	nodes. This change depends previous change:
-	38b272ffbbdaae276d636aec4ef84af407d16181
-
-	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): Rescan the
-	top node if the cached nodes are changed.
-	* src/cache/ftccache.c (FTC_Cache_Lookup): Ditto.
-
-2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Notice if a cache query induced the node list change.
-
-	Some node comparators (comparing the cache node contents and the
-	properties specified by the query) can flush the cache node to
-	prevent the cache inflation.  The change may invalidate the pointers
-	to the node obtained before the node comparison, so it should be
-	noticed to the caller.  The problem caused by the cache node
-	changing is reported by Harsha, see Savannah bug #31923.
-
-	* src/cache/ftccache.h (FTC_Node_CompareFunc): Add new argument
-	`FT_Bool* list_changed' to indicate the change of the cached nodes
-	to the caller.
-	(FTC_CACHE_LOOKUP_CMP): Watch the change of the cached nodes by
-	`_list_changed'.
-	(FTC_CACHE_TRYLOOP_END): Take new macro argument `_list_changed'
-	and update it when `FTC_Manager_FlushN' flushes any nodes.
-
-	* src/cache/ftccback.h (ftc_snode_compare): Updated to fit with new
-	FTC_Node_CompareFunc type.
-	(ftc_gnode_compare): Ditto.
-
-	* src/cache/ftcbasic.c: Include FT_INTERNAL_OBJECTS_H to use
-	TRUE/FALSE macros.
-	(ftc_basic_gnode_compare_faceid): New argument `FT_Bool*
-	list_changed' to indicate the change of the cache nodes (anyway, it
-	is always FALSE).
-
-	* src/cache/ftccmap.c: Include FT_INTERNAL_OBJECTS_H to use
-	TRUE/FALSE macros.
-	(ftc_cmap_node_compare): New argument `FT_Bool* list_changed' to
-	indicate the change of the cache nodes (anyway, it is always FALSE).
-	(ftc_cmap_node_remove_faceid): Ditto.
-
-	* src/cache/ftccache.c (FTC_Cache_NewNode): Pass a NULL pointer to
-	`FTC_CACHE_TRYLOOP_END', because the result is not needed.
-	(FTC_Cache_Lookup): Watch the change of the cache nodes by
-	`list_changed'.
-	(FTC_Cache_RemoveFaceID): Ditto.
-
-	* src/cache/ftcglyph.c: Include FT_INTERNAL_OBJECTS_H to use
-	TRUE/FALSE macros.
-	(ftc_gnode_compare): New argument `FT_Bool* list_changed' to
-	indicate the change of the cache nodes (anyway, it is always FALSE).
-	(FTC_GNode_Compare): New argument `FT_Bool* list_changed' to be
-	passed to `ftc_gnode_compare'.
-	* src/cache/ftcglyph.h (FTC_GNode_Compare): Ditto.
-
-	* src/cache/ftcsbits.c (ftc_snode_compare): New argument `FT_Bool*
-	list_changed' to indicate the change of the cache nodes, anyway.  It
-	is updated by `FTC_CACHE_TRYLOOP'.
-	(FTC_SNode_Compare): New argument `FT_Bool* list_changed' to be
-	passed to `ftc_snode_compare'.
-	* src/cache/ftcsbits.h (FTC_SNode_Compare): Ditto.
-
-2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Fit `FTC_GNode_Compare' to `FTC_Node_CompareFunc'.
-
-	* src/cache/ftcglyph.h (FTC_GNode_Compare): Add the 3rd
-	argument `FTC_Cache  cache' to fit FTC_Node_CompareFunc
-	prototype.
-	* src/cache/ftcglyph.c (FTC_GNode_Compare): Ditto. Anyway,
-	`cache' is not used by its child `ftc_gnode_compare'.
-
-2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Deduplicate the code to get the top node by a hash.
-
-	There are several duplicated code fragments getting the top node
-	from a cache by a given hash, like:
-
-	    idx = hash & cache->mask;
-	    if ( idx < cache->p )
-	      idx = hash & ( cache->mask * 2 + 1 );
-	    pnode = cache->buckets + idx;
-
-	To remove duplication, a cpp-macro to do same work
-	`FTC_NODE__TOP_FOR_HASH' is introduced.  For non-inlined
-	configuration, non-`ftc_get_top_node_for_hash' is also introduced.
-
-	* src/cache/ftccache.h (FTC_NODE__TOP_FOR_HASH): Declare
-	and implement inlined version.
-	(FTC_CACHE_LOOKUP_CMP): Use `FTC_NODE__TOP_FOR_HASH'.
-	* src/cache/ftccache.c (ftc_get_top_node_for_hash): Non-inlined
-	version.
-	(ftc_node_hash_unlink): Use `FTC_NODE__TOP_FOR_HASH'.
-	(ftc_node_hash_link): Ditto.
-	(FTC_Cache_Lookup): Ditto.
-
-2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] inline-specific functions are conditionalized.
-
-	* src/cache/ftcglyph.c (FTC_GNode_Compare): Conditionalized for
-	inlined configuration.  This function is a thin wrapper of
-	`ftc_gnode_compare' for inlined `FTC_CACHE_LOOKUP_CMP' (see
-	`nodecmp' argument).  Under non-inlined configuration,
-	`ftc_gnode_compare' is invoked by `FTC_Cache_Lookup', via
-	`FTC_Cache->clazz.node_compare'.
-
-	* src/cache/ftcglyph.h (FTC_GNode_Compare): Ditto.
-	* src/cache/ftcsbits.c (FTC_SNode_Compare): Ditto, for
-	`ftc_snode_compare'.
-	* src/cache/ftcsbits.h (FTC_SNode_Compare): Ditto.
-
-2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Correct a type mismatch under non-inlined config.
-
-	* src/cache/ftcglyph.h (FTC_GCACHE_LOOKUP_CMP): `FTC_GCache_Lookup'
-	takes the node via a pointer `FTC_Node*', differently from cpp-macro
-	`FTC_CACHE_LOOKUP_CMP'.
-
-2011-01-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Update Jamfile to include Bzip2 support.
-
-	* Jamfile: Include src/bzip2 to project.
-	Comments for lzw, gzip, bzip2 are changed to clarify that
-	they are for compressed PCF fonts, not others.
-	(e.g. compressed BDF fonts are not supported yet)
-
-2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Update Symbian project files to include Bzip2 support.
-
-	Currently, it provides `FT_Stream_OpenBzip2' that returns
-	unimplemented error always, to prevent unresolved symbol
-	error for the applications designed for Unix systems.
-
-	* builds/symbian/bld.inf: Include ftbzip2.h.
-	* builds/symbian/freetype.mmp: Include ftbzip2.c.
-
-2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Update classic MacOS makefiles to include Bzip2 support.
-
-	Currently, it provides `FT_Stream_OpenBzip2' that returns
-	unimplemented error always, to prevent unresolved symbol
-	error for the applications designed for Unix systems.
-
-	* builds/mac/FreeType.m68k_cfm.make.txt: Include ftbzip2.c.o.
-	* builds/mac/FreeType.m68k_far.make.txt: Ditto.
-	* builds/mac/FreeType.ppc_carbon.make.txt: Include ftbzip2.c.x.
-	* builds/mac/FreeType.ppc_classic.make.txt: Ditto.
-
-2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Update Amiga makefiles to include Bzip2 support.
-
-	Currently, it provides `FT_Stream_OpenBzip2' that returns
-	unimplemented error always, to prevent unresolved symbol
-	error for the applications designed for Unix systems.
-
-	* builds/amiga/makefile: Include bzip2.ppc.o built from ftbzip2.c.
-	* builds/amiga/makefile.os4: Include bzip2.o built from ftbzip2.c.
-	* builds/amiga/smakefile: Ditto.
-
-2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Update pkg-config tools to reflect Bzip2 support.
-
-	* builds/unix/freetype-config.in: Include `-lbz2' to
-	--libs output, if built with Bzip2 support.
-	* builds/unix/freetype2.in: Ditto.
-
-2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	* builds/unix/configure.raw: Remove `SYSTEM_BZ2LIB' macro.
-
-	SYSTEM_ZLIB is used to switch the builtin zlib source
-	or system zlib source out of FreeType2.  But ftbzip2
-	module has no builtin bzip2 library and always requires
-	system bzip2 library.  Thus SYSTEM_BZ2LIB is always yes,
-	it is not used.
-
-2011-01-03  Werner Lemberg  <wl@gnu.org>
-
-	*/rules.mk: Handle `*pic.c' files.
-
-2010-12-31  Werner Lemberg  <wl@gnu.org>
-
-	* src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 64.
-	Problem reported by Tom Bishop <wenlin@wenlin.com>.
-
-2010-12-31  Werner Lemberg  <wl@gnu.org>
-
-	Improve bzip2 support.
-
-	* include/freetype/ftmoderr.h: Add bzip2.
-
-	* docs/INSTALL.ANY, docs/CHANGES: Updated.
-
-	* src/pcf/README: Updated.
-	* include/freetype/internal/pcftypes.h: Obsolete, removed.
-
-2010-12-31  Joel Klinghed  <the_jk@yahoo.com>
-
-	Add bzip2 compression support to handle *.pcf.bz2 files.
-
-	* builds/unix/configure.raw: Test for libbz2 library.
-
-	* devel/ftoption.h, include/freetype/config/ftoption.h
-	(FT_CONFIG_OPTION_USE_BZIP2): Define.
-	* include/freetype/config/ftheader.h (FT_BZIP2_H): Define.
-
-	* include/freetype/ftbzip2.h: New file.
-
-	* src/bzip2/*: New files.
-
-	* src/pcf/pcf.h: s/gzip_/comp_/.
-	* src/pcf/pcfdrvr.c: Include FT_BZIP2_H.
-	s/gzip_/comp_/.
-	(PCF_Face_Init): Handle bzip2 compressed files.
-
-	* docs/formats.txt, modules.cfg: Updated.
-
-2010-12-25  Harsha  <mm.harsha@gmail.com>
-
-	Apply Savannah patch #7422.
-
-	If we encounter a space in a string then the sbit buffer is NULL,
-	height and width are 0s.  So the check in ftc_snode_compare will
-	always pass for spaces (comparision with 255).  Here the comments
-	above the condition are proper but the implementation is not.  When
-	we create an snode I think it is the proper way to initialize the
-	width to 255 and then put a check for being equal to 255 in snode
-	compare function.
-
-	* src/cache/ftcsbits.c (FTC_SNode_New): Initialize sbit widths with
-	value 255.
-	(ftc_snode_compare): Fix condition.
-
-2010-12-13  Werner Lemberg  <wl@gnu.org>
-
-	Fix parameter handling of `FT_Set_Renderer'.
-	Reported by Kirill Tishin <siege@bk.ru>.
-
-	* src/base/ftobjs.c (FT_Set_Renderer): Increment `parameters'.
-
-2010-12-09  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Allow `hlineto' and `vlineto' without arguments.
-
-	We simply ignore such instructions.  This is invalid, but it doesn't
-	harm; and indeed, there exist such subsetted fonts in PDFs.
-
-	Reported by Albert Astals Cid <aacid@kde.org>.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	[cff_op_hlineto]: Ignore instruction if there aren't any arguments
-	on the stack.
-
-2010-11-28  Werner Lemberg  <wl@gnu.org>
-
-	* Version 2.4.4 released.
-	=========================
-
-
-	Tag sources with `VER-2-4-4'.
-
-	* docs/CHANGES: Updated.
-
-	* docs/VERSION.DLL: Update documentation and bump version number to
-	2.4.4
-
-	* 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.4.3/2.4.4/, s/243/244/.
-
-	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.
-
-	* builds/unix/configure.raw (version_info): Set to 12:2:6.
-
-2010-11-28  Alexei Podtelezhnikov  <apodtele@gmail.com>
-
-	[ftsmooth]: Minor code simplification.
-
-	* src/smooth/ftgrays (gray_render_cubic): Do only one comparison
-	instead of two.
-
-2010-11-26  Johnson Y. Yan  <yinsen_yan@foxitsoftware.com>
-
-	[truetype] Better multi-threading support.
-
-	* src/truetype/ttinterp.c (TT_Load_Context): Reset glyph zone
-	references.
-
-2010-11-23  John Tytgat  <John.Tytgat@esko.com>
-
-	* src/psaux/t1decode.c (t1_decoder_parse_charstring): Expand
-	start_point, check_points, add_point, add_point1, close_contour
-	macros.
-	Remove add_contour macro.
-	Return error code from t1_builder_start_point and
-	t1_builder_check_points when there was one (instead of returning 0).
-
-2010-11-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[truetype] Identify the tricky fonts by cvt/fpgm/prep checksums.
-	Some Latin TrueType fonts are still expected to be unhinted.
-	Fix Savannah bug #31645.
-
-	* src/truetype/ttobjs.c (tt_check_trickyness): Divided to...
-	(tt_check_trickyness_family): this checking family name, and
-	(tt_check_trickyness_sfnt_ids): this checking cvt/fpgm/prep.
-	(tt_get_sfnt_checksum): Function to retrieve the sfnt checksum
-	for specified subtable even if cleared by lazy PDF generators.
-	(tt_synth_sfnt_checksum): Function to calculate the checksum.
-
-2010-11-18  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Fix `loca' handling for inconsistent number of glyphs.
-	Reported by Johnson Y. Yan <yinsen_yan@foxitsoftware.com>.
-
-	* src/truetype/ttpload.c (tt_face_load_loca): While sanitizing,
-	handle case where `loca' is the last table in the font.
-
-2010-11-18  Werner Lemberg  <wl@gnu.org>
-
-	[sfnt] Ignore all errors while loading `OS/2' table.
-	Suggested by Johnson Y. Yan <yinsen_yan@foxitsoftware.com>.
-
-	* src/sfnt/sfobjs.c (sfnt_load_face): Do it.
-
-2010-11-18  Johnson Y. Yan  <yinsen_yan@foxitsoftware.com>
-
-	[type1] Fix matrix normalization.
-
-	* src/type1/t1load.c (parse_font_matrix): Handle sign of scaling
-	factor.
-
-2010-11-18  Werner Lemberg  <wl@gnu.org>
-
-	[type1] Improve guard against malformed data.
-	Based on a patch submitted by Johnson Y. Yan
-	<yinsen_yan@foxitsoftware.com>
-
-	* src/type1/t1load.c (read_binary_data): Check `size'.
-
-2010-11-17  Werner Lemberg  <wl@gnu.org>
-
-	[sfnt] While tracing, output table checksums also.
-
-	* src/sfnt/ttload.c (tt_face_load_font_dir): Do it.
-
-2010-11-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[UVS] Fix `find_variant_selector_charmap', Savannah bug #31545.
-
-	Since 2010-07-04, `find_variant_selector_charmap' returns
-	the first cmap subtable always under rogue-compatible
-	configuration, it causes NULL pointer dereference and
-	make UVS-related functions crashed.
-
-	* src/base/ftobjs.c (Fix find_variant_selector_charmap):
-	Returns UVS cmap correctly.
-
-2010-11-01  Alexei Podtelezhnikov  <apodtele@gmail.com>
-
-	[ftsmooth] Improve rendering.
-
-	* src/smooth/ftsmooth.c (gray_render_conic): Since version 2.4.3,
-	cubic deviations have been estimated _after_ UPSCALE, whereas
-	conic ones have been evaluated _before_ UPSCALE, which produces
-	inferior rendering results.  Fix this.
-	Partially undo change from 2010-10-15 by using ONE_PIXEL/4; this has
-	been tested with demo images sent to the mailing list.  See
-
-	  http://lists.gnu.org/archive/html/freetype-devel/2010-10/msg00055.html
-
-	and later mails in this thread.
-
-2010-10-28  Werner Lemberg  <wl@gnu.org>
-
-	[ftraster] Minor fixes.
-
-	Reported by Tom Bishop <wenlin@wenlin.com>.
-
-	* src/raster/ftraster.c (ULong): Remove unused typedef.
-	(TWorker): Remove unused variable `precision_mask'.
-
-2010-10-28  Werner Lemberg  <wl@gnu.org>
-
-	[ftraster] Fix rendering.
-
-	Problem reported by Tom Bishop <wenlin@wenlin.com>; see
-	thread starting with
-
-	  http://lists.gnu.org/archive/html/freetype/2010-10/msg00049.html
-
-	* src/raster/ftraster.c (Line_Up): Replace FMulDiv with SMulDiv
-	since the involved multiplication exceeds 32 bits.
-
-2010-10-25  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Revert a change of `_idx' type in `FTC_CACHE_LOOKUP_CMP'.
-
-	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): Revert
-	the type of `_idx' from FT_PtrDist (by previous change)
-	to original FT_UFast, to match with FT_CacheRec.
-
-2010-10-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Change the hash types to FT_PtrDist.
-
-	On LLP64 platforms (e.g. Win64), FT_ULong (32-bit)
-	variables are inappropriate to calculate hash values
-	from the memory address (64-bit).  The hash variables
-	are extended from FT_ULong to FT_PtrDist and new
-	hashing macro functions are introduced.  The hash
-	values on 16-bit memory platforms are changed, but
-	ILP32 and LP64 are not changed.  The hash value in
-	the cache subsystem is not reverted to the memory
-	address, so using signed type FT_PtrDist is safe.
-
-	* src/cache/ftccache.h (_FTC_FACE_ID_HASH): New hash
-	function to replace `FTC_FACE_ID_HASH' for portability.
-	* src/cache/ftcmanag.h (FTC_SCALER_HASH): Replace
-	`FTC_FACE_ID_HASH' by `_FTC_FACE_ID_HASH'.
-	* src/cache/ftccmap.c (FTC_CMAP_HASH): Ditto.
-
-	* src/cache/ftccache.h (FTC_NodeRec): The type of the
-	member `hash' is changed from FT_UInt32 to FT_PtrDist.
-
-	* src/cache/ftccache.h (FTC_Cache_Lookup): The type of the
-	argument `hash' is changed from FT_UInt32 to FT_PtrDist.
-	(FTC_Cache_NewNode): Ditto.
-	* src/cache/ftccache.c (ftc_cache_add): Ditto.
-	(FTC_Cache_Lookup): Ditto.  (FTC_Cache_NewNode): Ditto.
-	* src/cache/ftcglyph.h (FTC_GCache_Lookup): Ditto.
-	* src/cache/ftcglyph.c (FTC_GCache_Lookup): Ditto.
-
-	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup): The type
-	of the internal variable `hash' is changed to FT_PtrDist
-	from FT_UInt32.  (FTC_ImageCache_LookupScaler): Ditto.
-	(FTC_SBitCache_Lookup): Ditto.
-	(FTC_SBitCache_LookupScaler): Ditto.
-	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Ditto.
-	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): Ditto.
-	Also the type of the internal variable `_idx' is changed to
-	FT_PtrDist from FT_UFast for better pointer calculation.
-
-2010-10-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cache] Hide internal macros incompatible with LLP64.
-
-	`FT_POINTER_TO_ULONG', `FTC_FACE_ID_HASH', and
-	`FTC_IMAGE_TYPE_HASH' are enclosed by
-	FT_CONFIG_OPTION_OLD_INTERNALS and hidden from
-	normal clients.
-
-	For the history of these macros, see the investigation:
-	http://lists.gnu.org/archive/html/freetype/2010-10/msg00022.html
-
-2010-10-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Change the type of `FT_MEM_VAL' from FT_ULong to FT_PtrDist.
-
-	On LLP64 platforms (e.g. Win64), unsigned long (32-bit)
-	cannot cover the memory address (64-bit).  `FT_MEM_VAL' is
-	used for hashing only and not dereferred, so using signed
-	type FT_PtrDist is safe.
-
-	* src/base/ftdbgmem.c (FT_MEM_VAL): Change the type of the
-	return value from FT_ULong to FT_PtrDist.
-	(ft_mem_table_resize): The type of hash is changed to
-	FT_PtrDist.  (ft_mem_table_get_nodep): Ditto.
-
-2010-10-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Replace "%lx" for memory address by "%p", LLP64 platforms.
-
-	On LLP64 platforms (e.g. Win64), long (32-bit) cannot cover
-	the memory address (64-bit).  Also the casts from the pointer
-	type to long int should be removed to preserve the address
-	correctly.
-
-	* src/raster/ftraster.c (New_Profile): Replace "%lx" by "%p".
-	(End_Profile) Ditto.
-	* src/truetype/ttinterp.c (Init_Context): Ditto.
-
-2010-10-15  Alexei Podtelezhnikov  <apodtele@gmail.com>
-
-	Fix thinko in spline flattening.
-
-	FT_MAX_CURVE_DEVIATION is dependent on the value of ONE_PIXEL.
-
-	* src/smooth/ftgrays.c (FT_MAX_CURVE_DEVIATION): Remove it and
-	replace it everywhere with ONE_PIXEL/8.
-
-2010-10-13  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[raccess] Skip unrequired resource access rules by Darwin VFS.
-
-	When a resource fork access rule by Darwin VFS could open the
-	resource fork but no font is found in it, the rest of rules
-	by Darwin VFS are skipped.  It reduces the warnings of the
-	deprecated resource fork access method by recent Darwin kernel.
-	Fix MacPorts ticket #18859:
-		http://trac.macports.org/ticket/18859
-
-	* src/base/ftobjs.c (load_face_in_embedded_rfork):
-	When `FT_Stream_New' returns FT_Err_Cannot_Open_Stream, it
-	means that the file is possible to be `fopen'-ed but zero-sized.
-	Also there is a case that the resource fork is not zero-sized,
-	but no supported font exists in it.  If a rule by Darwin VFS
-	falls into such cases, there is no need to try other Darwin VFS
-	rules anymore.  Such cases are marked by vfs_rfork_has_no_font.
-	If it is TRUE, the Darwin VFS rules are skipped.
-
-2010-10-13  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[raccess] Grouping resource access rules based on Darwin VFS.
-
-	MacOS X/Darwin kernel supports a few tricky methods to access
-	a resource fork via ANSI C or POSIX interface.  Current resource
-	fork accessor tries all possible methods to support all kernels.
-	But if a method could open a resource fork but no font is found,
-	there is no need to try other methods older than tested method.
-	To determine whether the rule index is for Darwin VFS, a local
-	function `ftrfork.c::raccess_rule_by_darwin_vfs' is introduced.
-	To use this function in ftobjs.c etc but it should be inlined,
-	it is exposed by ftbase.h.
-
-	* src/base/ftrfork.c (FT_RFork_Rule): New enum type to identify
-	the rules to access the resource fork.
-	(raccess_guess_rec): New structure to bind the rule function and
-	rule enum type.
-	(FT_Raccess_Guess): The list of the rule functions is replaced by
-	(raccess_guess_table): This.  This is exposed to be used by other
-	intra module functions.
-	(raccess_rule_by_darwin_vfs): A function to return a boolean
-	if the rule specified by the rule index is based on Darwin VFS.
-
-2010-10-13  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Prevent to open a FT_Stream for zero-sized file on non-Unix.
-
-	builds/unix/ftsystem.c prevents to open an useless stream from
-	zero-sized file and returns FT_Err_Cannot_Open_Stream, but the
-	stream drivers for ANSI C, Amiga and VMS return useless streams.
-	For cross-platform consistency, all stream drivers should act
-	same.
-
-	* src/base/ftsystem.c (FT_Stream_Open): If the size of the opened
-	file is zero, FT_Err_Cannot_Open_Stream is returned.
-	* builds/amiga/src/base/ftsystem.c (FT_Stream_Open): Ditto.
-	* src/vms/ftsystem.c (FT_Stream_Open): Ditto.
-
-2010-10-12  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #31310.
-
-	* src/truetype/ttgxvar.c (ft_var_readpackedpoints): Protect against
-	invalid `runcnt' values.
-
-2010-10-08  Chris Liddell  <chris.liddell@artifex.com>
-
-	Fix Savannah bug #31275.
-
-	* src/sfnt/ttpost.c: Include FT_INTERNAL_DEBUG_H.
-
-2010-10-06  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Improve error handling of `SHZ' bytecode instruction.
-	Problem reported by Chris Evans <scarybeasts@gmail.com>.
-
-	* src/truetype/ttinterp.c (Ins_SHZ): Check `last_point'.
-
-2010-10-05  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #31253.
-	Patch submitted by an anonymous reporter.
-
-	* configure: Use `awk' instead of `sed' to manipulate output of `ls
-	-id'.
-
-2010-10-03  Werner Lemberg  <wl@gnu.org>
-
-	* Version 2.4.3 released.
-	=========================
-
-
-	Tag sources with `VER-2-4-3'.
-
-	* docs/CHANGES: Updated.
-
-	* docs/VERSION.DLL: Update documentation and bump version number to
-	2.4.3
-
-	* 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.4.2/2.4.3/, s/242/243/.
-
-	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 3.
-
-	* builds/unix/configure.raw (version_info): Set to 12:1:6.
-
-2010-10-03  Werner Lemberg  <wl@gnu.org>
-
-	Avoid `configure' issues with symbolic links.
-	Based on a patch from Alexander Stohr <Alexander.Stohr@gmx.de>.
-
-	* configure: Compare directories using `ls -id'.
-	Check existence of `reference' subdirectory before creating it.
-
-2010-10-02  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #31088 (sort of).
-
-	* src/sfnt/ttload.c (tt_face_load_maxp): Always allocate at least 64
-	function entries.
-
-2010-10-02  Werner Lemberg  <wl@gnu.org>
-
-	[smooth] Fix splitting of cubics for negative values.
-
-	Reported by Róbert Márki <gsmiko@gmail.com>; see
-	http://lists.gnu.org/archive/html/freetype/2010-09/msg00019.html.
-
-	* src/smooth/ftgrays.c (gray_render_cubic): Fix thinko.
-
-2010-10-01  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix Savannah bug #31040.
-
-	* src/truetype/ttinterp.c (free_buffer_in_size): Remove.
-	(TT_RunIns): Updated.
-
-2010-09-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[sfnt] Make error message filling NULL names less verbose.
-
-	* src/sfnt/ttpost.c (load_format_20): Showing 1 summary message
-	when we fill `post' names by NULL, instead of per-entry message.
-
-2010-09-20  Graham Asher  <graham.asher@btinternet.com>
-	    David Bevan  <david.bevan@pb.com>
-
-	[smooth] Fix and improve spline flattening.
-
-	This fixes the flattening of cubic, S-shaped curves and speeds up
-	the handling of both the conic and cubic arcs.
-
-	See the discussions on the freetype-devel mailing list in late
-	August and September 2010 for details.
-
-	* src/smooth/ftgrays.c (FT_MAX_CURVE_DEVIATION): New macro.
-	(TWorker): Remove `conic_level' and `cubic_level' elements.
-	(gray_render_conic): Simplify algorithm.
-	(gray_render_cubic): New algorithm; details are given in the code
-	comments.
-	(gray_convert_glyph): Remove heuristics.
-
-2010-09-19  Werner Lemberg  <wl@gnu.org>
-
-	Minor fixes.
-
-	* src/cff/cffload.c (cff_charset_compute_cids): `charset->sids[i]'
-	is `FT_UShort'.
-	(cff_index_access_element): Don't use additions in comparison.
-	* src/sfnt/ttpost.c (load_format_20): Make `post_limit' of type
-	`FT_Long'.
-	Don't use additions in comparison.
-	Improve tracing messages.
-	(load_format_25, load_post_names): Make `post_limit' of type
-	`FT_Long'.
-
-2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cff] Truncate the element length at the end of the stream.
-	See Savannah bug #30975.
-
-	* src/cff/cffload.c (cff_index_access_element): `off2', the offset
-	to the next element is truncated at the end of the stream to prevent
-	invalid I/O.  As `off1', the offset to the requested element has
-	been checked by `FT_STREAM_SEEK', `off2' should be checked
-	similarly.
-
-2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cff] Ignore CID > 0xFFFFU.
-	See Savannah bug #30975.
-
-	* src/cff/cffload.c (cff_charset_compute_cids): Ignore CID if
-	greater than 0xFFFFU.  CFF font spec does not mention maximum CID in
-	the font, but PostScript and PDF spec define that maximum CID is
-	0xFFFFU.
-
-2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cff] Make trace message in` cff_charset_load' verbose.
-	See Savannah bug #30975.
-
-	* src/cff/cffload.c (cff_charset_load): Report the original `nleft'
-	and truncated `nleft'.
-
-2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cff] Correct `max_cid' from CID array length to max CID.
-	See Savannah bug #30975.
-
-	* src/cff/cffload.c (cff_charset_compute_cids): Don't increment
-	max_cid after detecting max CID.  The array CFF_Charset->cids is
-	allocated by max_cid + 1.
-	(cff_charset_cid_to_gindex): Permit CID is less than or equal to
-	CFF_Charset->max_cid.
-	* src/cff/cffobjs.c (cff_face_init): FT_Face->num_glyphs is
-	calculated as CFF_Charset->max_cid + 1.
-
-2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[truetype] Sanitize the broken offsets in `loca'.
-	See Savannah bug #31040.
-
-	* src/truetype/ttpload.c (tt_face_get_location): If `pos1', the
-	offset to the requested entry in `glyf' exceeds the end of the
-	table, return offset=0, length=0.  If `pos2', the offset to the next
-	entry in `glyf' exceeds the end of the table, truncate the entry
-	length at the end of `glyf' table.
-
-2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[sfnt] Prevent overrunning in `post' table parser.
-	See Savannah bug #31040.
-
-	* src/sfnt/ttpost.c (load_post_names): Get the length of `post'
-	table and pass the limit of `post' table to `load_format_20' and
-	`load_format_25'.
-	(load_format_20): Stop the parsing when we reached at the limit of
-	`post' table.  If more glyph names are required, they are filled by
-	NULL names.
-
-2010-09-17  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[truetype] Don't duplicate size->twilight structure to be freed.
-	See Savannah bug #31040 for detail.
-
-	* src/truetype/ttinterp.c (free_buffer_in_size): Don't duplicate
-	FT_GlyphZoneRec size->twilight to be freed.  If duplicated,
-	`FT_FREE' erases the duplicated pointers only and leave original
-	pointers.  They can cause the double-free crash when the burst
-	errors occur in TrueType interpreter and `free_buffer_in_size' is
-	invoked repeatedly.
-
-2010-09-15  Werner Lemberg  <wl@gnu.org>
-
-	Make bytecode debugging with FontForge work again.
-
-	* src/truetype/ttinterp.c (TT_RunIns): Don't call
-	`free_buffer_in_size' in case of error if a debugger is active.
-
-2010-09-14  Werner Lemberg  <wl@gnu.org>
-
-	Improve tracing messages.
-
-	* src/truetype/ttinterp.c (TT_RunIns): Improve wording of tracing
-	message.
-	* src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): Add
-	tracing message.
-	* src/truetype/ttgload.c (tt_loader_init): Add tracing message.
-	* src/cache/ftcsbits.c (ftc_snode_load): Emit tracing message if
-	glyph doesn't fit into a small bitmap container.
-
-2010-09-13  Werner Lemberg  <wl@gnu.org>
-
-	Fix minor issues reported by <muktha.narayan@wipro.com>.
-
-	* src/autofit/aflatin.c (af_latin_compute_stem_width): Remove
-	redundant conditional check.
-	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Ditto.
-	* src/cff/cffload.c (cff_encoding_load): Remove conditional check
-	which always evaluates to `true'.
-	* src/pshinter/pshalgo.c (ps_glyph_interpolate_strong_points):
-	Ditto.
-	* src/truetype/ttinterp.c (Ins_IUP): Ditto.
-	* src/cid/cidgload.c (cid_slot_load_glyph): Don't check for NULL if
-	value is already dereferenced.
-	* src/winfonts/winfnt.c (FNT_Load_Glyph): Fix check of `face'.
-
-2010-08-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Ignore the environmental setting of LIBTOOL.
-	Patch is suggested by Adrian Bunk, to prevent unexpected
-	reflection of environmental LIBTOOL.  See:
-	http://savannah.nongnu.org/patch/?7290
-
-	* builds/unix/unix-cc.in: LIBTOOL is unconditionally set to
-	$(FT_LIBTOOL_DIR)/libtool.  FT_LIBTOOL_DIR is set to $(BUILD_DIR)
-	by default.
-	* configure: When configured for the building out of source tee,
-	FT_LIBTOOL_DIR is set to $(OBJ_DIR).
-
-2010-08-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[truetype] Decrease the trace level catching the interpreter error.
-
-	* src/truetype/ttinterp.c (TT_RunIns): Decrease the trace level
-	showing the error when the interpreter returns with an error,
-	from` FT_TRACE7' to `FT_TRACE1'.
-
-2010-08-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[truetype] Prevent bytecode reuse after the interpretation error.
-
-	* src/truetype/ttinterp.c (free_buffer_in_size): New function to
-	free the buffer allocated during the interpretation of this glyph.
-	(TT_RunIns): Unset FT_Face->size->{cvt_ready,bytecode_ready} if
-	an error occurs in the bytecode interpretation.  The interpretation
-	of invalid bytecode may break the function definitions and referring
-	them in later interpretation is danger.  By unsetting these flags,
-	`fpgm' and `prep' tables are executed again in next interpretation.
-
-	This fixes Savannah bug #30798, reported by Robert Święcki.
-
-2010-08-29  Werner Lemberg  <wl@gnu.org>
-
-	[ftraster] Pacify compiler.
-
-	* src/raster/ftraster.c (ft_black_new) [_STANDALONE_]: `memory' is
-	not used.
-
-2010-08-29  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Allow SIDs >= 65000.
-
-	* src/cff/cffload.c (cff_charset_load): Fix change from 2009-03-20:
-	The threshold for SIDs is not applicable here.  I misinterpreted the
-	`SID values 65000 and above are available for implementation use'
-	sentence in the CFF specification.
-
-	Problem reported by Ivan Ninčić <inincic@pdftron.com>.
-
-2010-08-28  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Force hinting when the font lacks its familyname.
-
-	In Type42 or Type11 font embedded in PostScript & PDF, TrueType sfnt
-	stream may lack `name' table because they are not required.  Hinting
-	for nameless fonts is safer for PDFs including embedded Chinese
-	fonts.  Written by David Bevan, see:
-
-	http://lists.gnu.org/archive/html/freetype-devel/2010-08/msg00021.html
-	http://lists.freedesktop.org/archives/poppler/2010-August/006310.html
-
-	* src/truetype/ttobjs.c (tt_check_trickyness): If a NULL pointer by
-	nameless font is given, TRUE is returned to enable hinting.
-
-2010-08-28  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Register yet another tricky TrueType font.
-
-	* src/truetype/ttobjs.c (tt_check_trickyness): Add `HuaTianKaiTi?',
-	a Kaishu typeface paired with `HuaTianSongTi?' by Huatian
-	Information Industry.
-
-2010-08-17  Teijo Kinnunen <Teijo.Kinnunen@nuance.com>
-
-	Fix Savannah bug #30788.
-
-	* src/cache/ftccache.c (FTC_Cache_Clear): Check `cache->buckets' for
-	NULL too.
-
-2010-08-10  Werner Lemberg  <wl@gnu.org>
-
-	Try to fix Savannah bug #30717 (and probably #30719 too).
-
-	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Add another
-	overflow test for `width' and `height'.
-
-2010-08-06  Werner Lemberg  <wl@gnu.org>
-
-	* Version 2.4.2 released.
-	=========================
-
-
-	Tag sources with `VER-2-4-2'.
-
-	* docs/CHANGES: Updated.
-
-	* docs/VERSION.DLL: Update documentation and bump version number to
-	2.4.2
-
-	* 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.4.1/2.4.2/, s/241/242/.
-
-	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 2.
-
-	* builds/unix/configure.raw (version_info): Set to 12:0:6.
-
-2010-08-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix Savannah bug #30648.
-
-	* src/base/ftobjs.c (FT_Done_Library): Specify the order of font
-	drivers during the face closing process.  Type42 faces should be
-	closed before TrueType faces, because a Type42 face refers to
-	another internal TrueType face which is created from sfnt[] array on
-	the memory.
-
-2010-08-06  Yuriy Kaminskiy  <yumkam@mail.ru>
-
-	[raster] Fix valgrind warning.
-
-	* src/raster/ftraster.c (Decompose_Curve) <default>: Access point[0]
-	only if we don't hit `limit'.
-
-2010-08-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix Savannah bug #30658.
-
-	* src/base/ftobjs.c (Mac_Read_POST_Resource): Check that the total
-	length of collected POST segments does not overrun the allocated
-	buffer.
-
-2010-08-06  Yuriy Kaminskiy  <yumkam@mail.ru>
-
-	Fix conditional usage of FT_MulFix_i386.
-	With -ansi flag, gcc does not define `i386', only `__i386__'.
-
-	* include/freetype/config/ftconfig.h, builds/unix/ftconfig.in:
-	s/i386/__i386__/.
-
-2010-08-05  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30657.
-
-	* src/truetype/ttinterp.c (BOUNDSL): New macro.
-	Change `BOUNDS' to `BOUNDSL' where appropriate.
-
-	* src/truetype/ttinterp.h (TT_ExecContextRec): Fix type of
-	`cvtSize'.
-
-2010-08-05  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30656.
-
-	* src/type42/t42parse.c (t42_parse_sfnts): Protect against negative
-	string_size.
-	Fix comparison.
-
-2010-08-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cff] Don't use any values in decoder after parsing error.
-
-	* src/cff/cffgload.c (cff_slot_load): Skip the evaluations
-	of the values in decoder, if `cff_decoder_parse_charstrings'
-	returns any error.
-
-2010-08-04  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30644.
-
-	* src/base/ftstream.c (FT_Stream_EnterFrame): Fix comparison.
-
-2010-08-04  Werner Lemberg  <wl@gnu.org>
-
-	`make devel' fails if FT_CONFIG_OPTION_OLD_INTERNALS is set.
-
-	* devel/ftoption.h: Synchronize with
-	include/freetype/config/ftoption.h.
-
-2010-08-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	[cff] Improve stack overflow test.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Check stack
-	after execution of operations too.
-
-2010-07-18  Werner Lemberg  <wl@gnu.org>
-
-	Add reference counters and to FT_Library and FT_Face objects.
-
-	* include/freetype/freetype.h (FT_Reference_Face): New function.
-	* include/freetype/ftmodapi.h (FT_Rererence_Library): New function.
-
-	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec,
-	FT_LibraryRec): New field `refcount'.
-
-	* src/base/ftobjs.c (FT_Open_Face, FT_New_Library): Handle
-	`refcount'.
-	(FT_Reference_Face, FT_Reference_Library): Implement new functions.
-	(FT_Done_Face, FT_Done_Library): Handle `refcount'.
-
-	* docs/CHANGES: Updated.
-
-2010-07-18  Werner Lemberg  <wl@gnu.org>
-
-	* Version 2.4.1 released.
-	=========================
-
-
-	Tag sources with `VER-2-4-1'.
-
-	* docs/CHANGES: Updated.
-
-	* docs/VERSION.DLL: Update documentation and bump version number to
-	2.4.1.
-
-	* 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.4.0/2.4.1/, s/240/241/.
-
-	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.
-
-	* builds/unix/configure.raw (version_info): Set to 11:1:5.
-
-2010-07-17  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Final try to fix `hintmask' and `cntrmask' limit check.
-
-	Problem reported by Tobias Wolf <towolf@gmail.com>.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	<cff_op_hintmask>: Sigh.  I'm apparently too silly to fix this
-	correctly in less than three tries.
-
-2010-07-12  Werner Lemberg  <wl@gnu.org>
-
-	* Version 2.4.0 released.
-	=========================
-
-
-	Tag sources with `VER-2-4-0'.
-
-	* docs/CHANGES: Updated.
-
-	* docs/VERSION.DLL: Update documentation and bump version number to
-	2.4.0.
-
-	* 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.12/2.4.0/, s/2312/240/.
-
-	* include/freetype/freetype.h (FREETYPE_MINOR): Set to 4.
-	(FREETYPE_PATCH): Set to 0.
-
-	* builds/unix/configure.raw (version_info): Set to 11:0:5.
-
-2010-07-12  Werner Lemberg  <wl@gnu.org>
-
-	Remove C++ warnings.
-
-	*/*: Initialize pointers where necessary to make g++ happy.
-
-2010-07-12  malc  <av1474@comtv.ru>
-	    Richard Henderson  <rth@redhat.com>
-
-	Fix type-punning issues with C++.
-
-	* include/freetype/internal/ftmemory.h (FT_ASSIGNP) [__cplusplus]:
-	Emulate a `typeof' operator with an inline template which uses
-	`static_cast'.
-
-2010-07-11  Werner Lemberg  <wl@gnu.org>
-
-	Fix C++ compilation issue.
-
-	* src/tools/apinames.c (names_dump) <OUTPUT_WATCOM_LBC>: Fix
-	type of `dot' variable.
-
-2010-07-10  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix another case reported in Savannah bug #30373.
-	Permit a face for Type1, Type42 and CFF without charmap,
-	patch by Tor Andersson.
-
-	* src/type1/t1objs.c (T1_Face_Init): Reset the error if it
-	is FT_Err_No_Unicode_Glyph_Name.
-	* src/type42/t42objs.c (T42_Face_Init): Ditto.
-	* src/cff/cffobjs.c (cff_face_init): Ditto.
-
-2010-07-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Use defined macros to set {platform,encoding}_id.
-
-	* src/bdf/bdfdrivr.c: Include ttnameid.h and use macros to
-	set charmap.{platfom,encoding}_id.
-	* src/pcf/pcfdrivr.c: Ditto.
-	* src/winfonts/winfnt.c: Ditto.
-	* src/type1/t1objs.c: Ditto.
-	* src/type42/t42objs.c: Ditto.
-	* src/cff/cffobjs.c: Ditto.
-	* src/pfr/pfrobjs.c: Ditto.
-
-2010-07-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix Savannah bug #30373.
-	Too serious check of errors by `FT_CMap_New' since 2010-07-04
-	is fixed. Reported by Tor Andersson.
-
-	* include/freetype/fterrdef.h
-	(PSnames_Err_No_Unicode_Glyph_Name): New error code to
-	indicate the Unicode charmap synthesis failed because
-	no Unicode glyph name is found.
-
-	* src/psnames/psmodule.c (ps_unicodes_init): Return
-	PSnames_Err_No_Unicode_Glyph_Name when no Unicode glyph name
-	is found in the font.
-	* src/cff/cffcmap.c (cff_cmap_unicode_init): Return
-	CFF_Err_No_Unicode_Glyph_Name when no SID is available.
-
-	* src/type1/t1objs.c (T1_Face_Init): Proceed if `FT_CMap_New'
-	is failed by the lack of Unicode glyph name.
-	* src/type42/t42objs.c (T42_Face_Init): Ditto.
-	* src/cff/cffobjs.c (cff_face_init): Ditto.
-
-2010-07-09  Ken Sharp  <ken.sharp@artifex.com>
-
-	Make ftraster.c compile in stand-alone mode with MSVC compiler.
-
-	* src/raster/ftmisc.h (FT_Int64) [_WIN32, _WIN64]: Fix typedef
-	since there is no `inttypes.h' for MSVC.
-
-2010-07-08  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30361.
-
-	* src/truetype/ttinterp.c (Ins_IUP): Fix bounds check.
-
-2010-07-06  Werner Lemberg  <wl@gnu.org>
-
-	Pacify compiler.
-
-	* src/cff/cffload.c (cff_index_get_pointers): Initialize
-	`new_bytes'.
-
-2010-07-05  Eugene A. Shatokhin  <spectre@ispras.ru>
-
-	Fix Savannah bug #27648.
-
-	* src/base/ftobjs.c (ft_remove_renderer, FT_Add_Module): Call
-	`raster_done' only if we have an outline glyph format.
-
-2010-07-05  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30030.
-
-	* builds/win32/*/freetype.vcproj: Add ftxf86.c.
-
-2010-07-05  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Next try to fix `hintmask' and `cntrmask' limit check.
-
-	Problem reported by malc <av1474@comtv.ru>.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	<cff_op_hintmask>: It is possible that there is just a single byte
-	after the `hintmask' or `cntrmask', e.g., a `return' instruction.
-
-2010-07-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Restrict the number of the charmaps in a rogue-compatible mode.
-	Fix for Savannah bug #30059.
-
-	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Replace `16' the
-	minimum character code passed by a legacy rogue client by...
-	* include/freetype/config/ftoption.h (FT_MAX_CHARMAP_CACHEABLE):
-	This.  It is undefined when FT_CONFIG_OPTION_OLD_INTERNALS is
-	undefined (thus the rogue client compatibility is not required).
-
-	* src/cff/cffobjs.c (cff_face_init): Abort the automatic
-	selection or synthesis of Unicode cmap subtable when the charmap
-	index exceeds FT_MAX_CHARMAP_CACHEABLE.
-	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Issue error message
-	when the charmap index exceeds FT_MAX_CHARMAP_CACHEABLE.
-
-	* src/base/ftobjs.c (find_unicode_charmap): When Unicode charmap
-	is found after FT_MAX_CHARMAP_CACHEABLE, ignore it and search
-	earlier one.
-	(find_variant_selector_charmap): When UVS charmap is found after
-	FT_MAX_CHARMAP_CACHEABLE, ignore it and search earlier one.
-	(FT_Select_Charmap): When a charmap matching with requested
-	encoding but after FT_MAX_CHARMAP_CACHEABLE, ignore and search
-	earlier one.
-	(FT_Set_Charmap): When a charmap matching with requested
-	charmap but after FT_MAX_CHARMAP_CACHEABLE, ignore and search
-	earlier one.
-	(FT_Get_Charmap_Index): When a requested charmap is found
-	after FT_MAX_CHARMAP_CACHEABLE, return the inverted charmap
-	index.
-
-2010-07-04  Werner Lemberg  <wl@gnu.org>
-
-	TrueType hinting is no longer patented.
-
-	* include/freetype/config/ftoption.h, devel/ftoption.h
-	(TT_CONFIG_OPTION_BYTECODE_INTERPRETER): Define.
-	(TT_CONFIG_OPTION_UNPATENTED_HINTING): Undefine.
-
-	* docs/CHANGES, docs/INSTALL, include/freetype/freetype.h: Updated.
-	* docs/TRUETYPE, docs/PATENTS: Removed.
-
-2010-07-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Check error value by `FT_CMap_New'.
-
-	* src/cff/cffobjs.c (cff_face_init): Check error value by
-	`FT_CMap_New'.
-	* src/pfr/pfrobjs.c (pfr_face_init): Ditto.
-	* src/type1/t1jobjs.c (T1_Face_Init): Ditto.
-	* src/type42/t42jobjs.c (T42_Face_Init): Ditto.
-
-2010-07-03  Werner Lemberg  <wl@gnu.org>
-
-	Make ftgrays.c compile stand-alone again.
-
-	* src/smooth/ftgrays.c [_STANDALONE_]: Include `stddef.h'.
-	(FT_INT_MAX, FT_PtrDist)[_STANDALONE_]: Define.
-
-2010-07-02  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Additional fix for Savannah bug #30306.
-
-	* src/base/ftobjs.c (Mac_Read_POST_Resource): If the type of the
-	POST fragment is 0, the segment is completely ignored.  The declared
-	length of the segment is not cared at all.  According to Adobe
-	Technical Note 5040, type 0 segment is a comment only and should not
-	be loaded for the interpreter.  Reported by Robert Święcki.
-
-2010-07-01  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Protect against code range underflow.
-
-	* src/truetype/ttinterp.c (DO_JROT, DO_JMPR, DO_JROF): Don't allow
-	negative IP values.
-
-2010-07-01  Werner Lemberg  <wl@gnu.org>
-
-	[truetype] Add rudimentary tracing for bytecode instructions.
-
-	* src/truetype/ttinterp.c (opcode_name) [FT_DEBUG_LEVEL_TRACE]: New
-	array.
-	(TT_RunIns): Trace opcodes.
-
-2010-06-30  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30263.
-
-	* src/smooth/ftgrays.c (gray_render_span): Use cast to `unsigned
-	int' to avoid integer overflow.
-
-	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Use smaller
-	threshold values for `width' and `height'.  This is not directly
-	related to the bug fix but makes sense anyway.
-
-2010-07-01  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Initial fix for Savannah bug #30306.
-
-	* src/base/ftobjs.c (Mac_Read_POST_Resource): Check `rlen', the
-	length of fragment declared in the POST fragment header, and prevent
-	an underflow in length calculation.  Some fonts set the length to
-	zero in spite of the existence of a following 16bit `type'.
-	Reported by Robert Święcki.
-
-2010-07-01  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Additional fix for Savannah bug #30248 and #30249.
-
-	* src/base/ftobjs.c (Mac_Read_POST_Resource): Check the buffer size
-	during gathering PFB fragments embedded in LaserWriter PS font for
-	Macintosh.  Reported by Robert Święcki.
-
-2010-06-30  Alexei Podtelezhnikov  <apodtele@gmail.com>
-
-	Minor optimizations by avoiding divisions.
-
-	* src/sfnt/ttkern.c (tt_face_load_kern, tt_face_get_kerning):
-	Replace divisions with multiplication in comparisons.
-
-2010-06-29  Werner Lemberg  <wl@gnu.org>
-
-	Fix minor tracing issues.
-
-	* src/cff/cffgload.c, src/truetype/ttgload.c: Adjust tracing levels.
-
-2010-06-27  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Really fix `hintmask' and `cntrmask' limit check.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	<cff_op_hintmask>: Fix thinko and handle tracing also.
-
-2010-06-27  Werner Lemberg  <wl@gnu.org>
-
-	Fix valgrind warning.
-
-	* src/base/ftoutln.c (FT_Outline_Get_Orientation): Initialize
-	`result' array.
-
-2010-06-27  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Fix memory leak.
-
-	* src/cff/cffgload.c (cff_operator_seac): Free charstrings even in
-	case of errors.
-
-2010-06-27  Werner Lemberg  <wl@gnu.org>
-
-	[cff] Protect against invalid `hintmask' and `cntrmask' operators.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	<cff_op_hintmask>: Ensure that we don't exceed `limit' while parsing
-	the bit masks of the `hintmask' and `cntrmask' operators.
-
-2010-06-26  Werner Lemberg  <wl@gnu.org>
-
-	Fix PFR change 2010-06-24.
-
-	* src/pfr/pfrgload.c (pfr_glyph_load_simple): Really protect against
-	invalid indices.
-
-2010-06-26  Werner Lemberg  <wl@gnu.org>
-
-	Improve PFR tracing messages.
-
-	* src/pfr/pfrgload.c (pfr_glyph_load_rec): Emit tracing messages for
-	simple and compound glyph offsets.
-
-2010-06-26  Werner Lemberg  <wl@gnu.org>
-
-	Fix last PFR change.
-
-	* src/pfr/pfrobjs.c (pfr_face_init): Fix rejection logic.
-
-2010-06-26  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30262.
-
-	* src/sfnt/ttload.c (tt_face_load_maxp): Limit `maxComponentDepth'
-	arbitrarily to 100 to avoid stack exhaustion.
-
-2010-06-26  Werner Lemberg  <wl@gnu.org>
-
-	Add some memory checks (mainly for debugging).
-
-	* src/base/ftstream.c (FT_Stream_EnterFrame): Exit with error
-	if the frame size is larger than the stream size.
-
-	* src/base/ftsystem.c (ft_ansi_stream_io): Exit with error if
-	seeking a position larger than the stream size.
-
-2010-06-25  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30261.
-
-	* src/pfr/pfrobjs.c (pfr_face_init): Reject fonts which contain
-	neither outline nor bitmap glyphs.
-
-2010-06-25  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30254.
-
-	* src/cff/cffload.c (cff_index_get_pointers): Do sanity check for
-	first offset also.
-
-2010-06-25  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Initial fix for Savannah bug #30248 and #30249.
-
-	* src/base/ftobjs.c (Mac_Read_POST_Resource): Check the error during
-	reading a PFB fragment embedded in LaserWriter PS font for Macintosh.
-	Reported by Robert Święcki.
-
-2010-06-24  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30247.
-
-	* src/pcf/pcfread.c (pcf_get_metrics): Disallow (invalid) fonts with
-	zero metrics.
-
-2010-06-24  Graham Asher  <graham.asher@btinternet.com>
-
-	* src/smooth/ftgrays.c (gray_render_cubic): Fix algorithm.
-	The previous version was too aggressive, as demonstrated in
-	http://lists.gnu.org/archive/html/freetype-devel/2010-06/msg00020.html.
-
-2010-06-24  Werner Lemberg  <wl@gnu.org>
-
-	*/*: Use module specific error names where appropriate.
-
-2010-06-24  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30236.
-
-	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Improve check for pointer
-	to `cmap_table'.
-
-2010-06-24  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30235.
-
-	* src/pfr/pfrgload.c (pfr_glyph_load_simple): Protect against
-	invalid indices if there aren't any coordinates for indexing.
-
-2010-06-24  Werner Lemberg  <wl@gnu.org>
-
-	[bdf]: Font properties are optional.
-
-	* src/bdf/bdflib.c (_bdf_readstream): Use special error code to
-	indicate a redo operation.
-	(_bdf_parse_start): Handle `CHARS' keyword here too and pass current
-	input line to `_bdf_parse_glyph'.
-
-2010-06-23  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30220.
-
-	* include/freetype/fterrdef.h
-	(BDF_Err_Missing_Fontboundingbox_Field): New error code.
-
-	* src/bdf/bdflib.c (_bdf_parse_start): Check for missing
-	`FONTBOUNDINGBOX' field.
-	Avoid memory leak if there are multiple `FONT' lines (which is
-	invalid but doesn't hurt).
-
-2010-06-21  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30168.
-
-	* src/pfr/pfrgload.c (pfr_glyph_load_compound): Limit the number of
-	subglyphs to avoid endless recursion.
-
-2010-06-20  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30145.
-
-	* src/psaux/psobjs.c (t1_builder_add_contour): Protect against
-	`outline == NULL' which might happen in invalid fonts.
-
-2010-06-19  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30135.
-
-	* src/bdf/bdflib.c (_bdf_list_join): Don't modify value in static
-	string `empty'.
-	(_bdf_parse_glyph): Avoid memory leak in case of error.
-
-2010-06-15  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30108.
-
-	* src/autofit/afglobal.c (af_face_globals_compute_script_coverage):
-	Properly mask AF_DIGIT bit in comparison.
-
-2010-06-11  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30106.
-
-	Point numbers for FreeType's implementation of hinting masks are
-	collected before the final number of points of a glyph has been
-	determined; in particular, the code for handling the `endchar'
-	opcode can reduce the number of points.
-
-	* src/pshinter/pshalgo.c (psh_glyph_find_strong_points): Assure that
-	`end_point' is not larger than `glyph->num_points'.
-
-2010-06-11  Werner Lemberg  <wl@gnu.org>
-
-	[cff]: Improve debugging output.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	<cff_op_hintmask>: Implement it.
-
-2010-06-10  Graham Asher  <graham.asher@btinternet.com>
-
-	ftgrays: Speed up rendering of small cubic splines.
-
-	* src/smooth/ftgrays.c (gray_render_cubic): Implement new,
-	simplified algorithm to find out whether the spline can be replaced
-	with two straight lines.  See this thread for more:
-
-	  http://lists.gnu.org/archive/html/freetype-devel/2010-06/msg00000.html
-
-2010-06-09  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30082.
-
-	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
-	<cff_op_callothersubr>: Protect against stack underflow.
-
-2010-06-08  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30053.
-
-	* src/cff/cffparse.c (cff_parse_real): Handle border case where
-	`fraction_length' has value 10.
-
-2010-06-07  Werner Lemberg  <wl@gnu.org>
-
-	Fix Savannah bug #30052.
-	This bug has been introduced with commit 2415cbf3.
-
-	* src/base/ftobjs.c (FT_Get_First_Char, FT_Get_Next_Char): Protect
-	against endless loop in case of corrupted font header data.
-
-2010-05-26  Werner Lemberg  <wl@gnu.org>
-
-	Remove unused variable.
-	Found by Graham.
-
-	* src/autofit/afhints.c (af_glyph_hints_reload): Remove unused
-	variable `first' in first block.
-
-2010-05-22  Werner Lemberg  <wl@gnu.org>
-
-	Fix various memory problems found by linuxtesting.org.
-
-	* src/base/ftgxval.c (FT_TrueTypeGX_Free, FT_ClassicKern_Free),
-	src/base/ftotval.c (FT_OpenType_Free), src/base/ftpfr.c
-	(ft_pfr_check): Check `face'.
-
-	* src/base/ftobjs.c (FT_Get_Charmap_Index): Check `charmap' and
-	`charmap->face'.
-	(FT_Render_Glyph): Check `slot->face'.
-	(FT_Get_SubGlyph_Info): Check `glyph->subglyphs'.
-
-2010-05-22  Werner Lemberg  <wl@gnu.org>
-
-	autofit: Remove dead code.
-	Suggested by Graham.
-
-	* src/autofit/afhints.c (af_glyph_hints_compute_inflections):
-	Removed.
-	(af_glyph_hints_reload): Remove third argument.
-	Update all callers.
-
-2010-05-21  Bram Tassyns  <bramt@enfocus.be>
-
-	Fix Savannah bug #27987.
-
-	* src/cff/cffobjs.c (remove_subset_prefix): New function.
-	(cff_face_init): Use it to adjust `cffface->family_name'.
-
-2010-05-20  Werner Lemberg  <wl@gnu.org>
-
-	TrueType: Make FreeType ignore maxSizeOfInstructions in `maxp'.
-
-	Acroread does the same.
-
-	* src/truetype/ttgload.c (TT_Process_Composite_Glyph): Call
-	`Update_Max' to adjust size of instructions array if necessary and
-	add a rough safety check.
-
-	(load_truetype_glyph): Save `loader->byte_len' before recursive
-	call.
-
-	* src/truetype/ttinterp.h, src/truetype/ttinterp.c (Update_Max):
-	Declare it as FT_LOCAL.
-
-2010-05-18  Hongbo Ni  <hongbo@njstar.com>
-
-	Apply Savannah patch #7196.
-
-	* src/cff/cffgload.c (cff_slot_load): Prevent crash if CFF subfont
-	index is out of range.
-
-2010-05-11  Werner Lemberg  <wl@gnu.org>
-
-	* docs/formats.txt: Give pointer to PCF documentation.
-	Information provided by Alan Coopersmith
-	<alan.coopersmith@oracle.com>.
-
-2010-05-10  Ken Sharp  <ken.sharp@artifex.com>
-
-	Fix Savannah bug #29846.
-
-	Previously we discovered fonts which used `setcurrentpoint' to set
-	the initial point of a contour to 0,0.  This caused FreeType to
-	raise an error, because the `setcurrentpoint' operator is only
-	supposed to be used with the results from an OtherSubr subroutine.
-
-	This was fixed by simply ignoring the error and carrying on.
-
-	Now we have found a font which uses setcurrentpoint to actually
-	establish a non-zero point for a contour during the course of a
-	glyph program.  FWIW, these files may be produced by an application
-	called `Intaglio' on the Mac, when converting TrueType fonts to
-	Type 1.
-
-	The fix allows the new invalid behaviour, the old invalid behaviour
-	and real proper usage of the operator to work the same way as Adobe
-	interpreters apparently do.
-
-	(t1_decoder_parse_charstrings): Make `setcurrentpoint' use the top
-	two elements of the stack to establish unconditionally the current x
-	and y coordinates.
-
-	Make the `flex' subroutine handling (OtherSubr 0) put the current
-	x,y coordinates onto the stack, instead of two dummy uninitialised
-	values.
-
-2010-04-14  Ken Sharp  <ken.sharp@artifex.com>
-
-	Fix Savannah bug #29444.
-
-	* src/psaux/psobjs.c (t1_builder_start_point): Accept (invalid)
-	`lineto' immediately after `hsbw', in accordance with Acrobat, GS,
-	and others.
-
-2010-04-14  Michał Cichoń  <thedmd@artifexmundi.com>
-
-	Fix Savannah bug #27999.
-
-	* src/cache/ftcmanag.c (FTC_Manager_RemoveFaceID): Only remove
-	selected entry, not all.
-
-2010-04-06  Jonathan Kew  <jfkthame@gmail.com>
-
-	Add overflow check to `fvar' table.
-
-	* src/truetype/ttgxvar.c (TT_Get_MM_Var): Check axis and instance
-	count.
-
-2010-04-05  Ken Sharp  <ken.sharp@artifex.com>
-
-	Fix Savannah bug #29335.
-
-	* src/raster/ftraster.c (Line_Up): Use slow multiplication to
-	prevent overflow.  This shouldn't have any serious impact on speed,
-	however.
-
-2010-04-05  Werner Lemberg  <wl@gnu.org>
-
-	Add new function `FT_Library_SetLcdFilterWeights'.
-
-	This is based on code written by Lifter
-	<http://unixforum.org/index.php?showuser=11691>.  It fixes
-	FreeDesktop bug #27386.
-
-	* src/base/ftlcdfil.c (FT_Library_SetLcdFilterWeights): New
-	function.
-
-	* include/freetype/ftlcdfil.h: Updated.
-
-	* docs/CHANGES: Updated.
-
-2010-04-01  John Tytgat  <John.Tytgat@esko.com>
-
-	Fix Savannah bug #29404.
-
-	* src/truetype/ttgload.c: Revert change 2752bd1a (check on bit 1
-	of `head' table of TrueType fonts).
-
-2010-03-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Fix `multi build' for Tytgat's CFF driver improvement.
-
-	* src/base/cffload.h (cff_index_get_name): Added.
-
-2010-03-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
-
-	Remove duplicated inclusion of `FT_OUTLINE_H' in ftobjs.c.
-
-	* src/base/ftobjs.c: Remove 2nd inclusion of `FT_OUTLINE_H'.
-
-2010-03-11  Chris Liddell  <chris.liddell@artifex.com>
-
-	Fix Savannah bug #27442.
-
-	* src/raster/ftraster.c (ft_black_reset): Fix `buffer_size'.
-
-2010-03-09  Werner Lemberg  <wl@gnu.org>
-
-	Remove unused variable.
-	Reported by Graham.
-
-	* src/cff/cffparse.c (cff_parse_real): Remove `rest'.
-
-2010-03-02  John Tytgat  <John.Tytgat@esko.com>
-
-	Improve CFF string (especially glyphname) lookup performance.
-
-	We do this by avoiding memory allocation and file I/O.  This is
-	Savannah patch #7104.
-
-	* src/cff/cfftypes.h: Include PS cmaps service and
-	FT_INTERNAL_POSTSCRIPT_HINTS_H.
-	(CFF_SubFontRec): Remove `num_local_subrs'.
-	(CFF_FontRec): Add `num_strings', `strings', and `string_pool'
-	fields.
-	Remove `string_index' and `num_global_subrs' fields.
-	Use real types instead of `void' for `pshinter' and `psnames' fields.
-
-	* src/cff/cffload.c: Don't include PS cmaps service.
-	(cff_index_get_pointers): Add `pool' parameter which allows to
-	insert an extra NUL character for each String INDEX entry.
-	(cff_index_get_name): Make it a local function.
-	(cff_index_get_string): New function.
-	(cff_subfont_load): Updated.
-	(cff_font_load): Initialize `num_strings', `strings', and
-	`string_pool' fields in the `CFF_FontRec' structure.
-	(cff_index_get_sid_string): Use `cff_index_get_string' instead of
-	`cff_index_get_name'.
-	(cff_font_done): Updated.
-
-	* src/cff/cffload.h: Don't include PS cmaps service.
-	(cff_index_get_string): Added.
-	(cff_index_get_sid_string): Updated.
-
-	* src/cff/cffobjs.c: Don't include PS cmaps service and
-	FT_INTERNAL_POSTSCRIPT_HINTS_H.
-	(cff_size_get_globals_funcs, cff_slot_init): Updated.
-	(cff_face_init): Follow `cff_index_get_name',
-	`cff_index_get_string', and `cff_index_get_sid_string' changes.
-
-	* src/cff/cffcmap.c (cff_sid_free_glyph_name): Removed.
-	(cff_sid_to_glyph_name): Use `cff_index_get_cid_string'.
-	(cff_cmap_unicode_init): Updated.
-
-	* src/cff/cffdrivr.c: Don't include PS cmap service.
-	(cff_get_glyph_name): Avoid unnecessary lookup for POSTSCRIPT_CMAPS
-	service.
-	(cff_get_glyph_name, cff_ps_get_font_info, cff_get_ros): Follow API
-	`cff_index_get_sid_string' change.
-	(cff_get_name_index): Use `cff_index_get_string' instead of
-	`cff_index_get_name'.
-
-	* src/cff/cffgload.c: Don't include FT_INTERNAL_POSTSCRIPT_HINTS_H.
-	(cff_decoder_init, cff_decoder_prepare): Updated.
-
-2010-02-27  Werner Lemberg  <wl@gnu.org>
-
-	Simplify code.
-	Suggested by Behdad.
-
-	* src/base/ftobjs.c (FT_Get_First_Char): Don't use a loop since we
-	call FT_Get_Next_Char anyway if necessary.
-
-2010-02-26  Behdad Esfahbod  <behdad@behdad.org>
-
-	Improve handling of invalid glyph indices in char->index functions.
-
-	* src/base/ftobjs.c (FT_Get_First_Char, FT_Get_Next_Char): Use a
-	loop.
-
-2010-02-18  Chris Liddell  <chris.liddell@artifex.com>
-
-	Fix Savannah bug #28905.
-
-	Initialize phantom points before calling the incremental interface
-	to update glyph metrics.
-
-	* src/truetype/ttgload.c (tt_get_metrics_incr_overrides)
-	[FT_CONFIG_OPTION_INCREMENTAL]: New function, split off from...
-	(tt_get_metrics): This.
-	Updated.
-	(load_truetype_glyph): Use tt_get_metrics_incr_overrides.
-
-----------------------------------------------------------------------------
-
-Copyright 2010-2011 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:
--- a/misc/libfreetype/ChangeLog.20	Tue Jul 16 11:14:27 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2613 +0,0 @@
-2002-02-09  Werner Lemberg  <wl@gnu.org>
-
-	* README: Fix typo.
-	* docs/CHANGES: Minor fixes.
-
-
-	* Version 2.0.8 released.
-	=========================
-
-
-2002-02-08  David Turner  <david@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@freetype.org>
-
-	* src/pcf/pcfread.c (pcf_load_font): Removed immature support of
-	the AVERAGE_WIDTH property.
-
-2002-02-06  David Turner  <david@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@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@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@keithp.com>
-
-	* builds/unix/freetype-config.in: Add missing `fi'.
-
-
-	* Version 2.0.7 released.
-	=========================
-
-
-2002-02-01  David Turner  <david@freetype.org>
-
-	* include/freetype/freetype.h: Increasing FREETYPE_PATCH to 7
-	for the new release.
-
-2002-01-31  David Turner  <david@freetype.org>
-
-	* README, README.UNX, docs/CHANGES: Updating documentation for the
-	2.0.7 release.
-
-2002-01-30  David Turner  <david@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@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@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@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@geekmail.de>
-
-	* src/type1/t1load.c (parse_encoding): Set `loader->num_chars'.
-
-2002-01-28  Werner Lemberg  <wl@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@pld.org.pl>.
-
-2002-01-27  Giuliano Pochini  <pochini@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@gnu.org>
-
-	* src/cff/cffdrivr.c (cff_get_name_index): Make last patch work
-	actually.
-
-2002-01-25  Martin Zinser  <zinser@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@founder.com.cn>
-
-	* src/cff/cffdrivr.c (cff_get_name_index): Fix deallocation bug.
-
-2002-01-21  Antoine Leca  <Antoine-Freetype@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@printsoft.de>
-
-	* builds/win32/ftdebug.c: New file.
-	* builds/win32/visualc/freetype.dsp: Updated.
-
-2002-01-18  Detlef Würkner  <TetiSoft@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@printsoft.de>
-
-	* builds/win32/visualc/freetype.dsp: Updated.
-
-2002-01-13  Werner Lemberg  <wl@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@gnu.org>
-
-	* builds/unix/freetype2.a4: Fix some serious bugs.
-
-2002-01-09  David Turner  <david@freetype.org>
-
-	* builds/unix/configure.ac: Build top-level Jamfile.
-
-2002-01-09  Maxim Shemanarev  <mcseemagg@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@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@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@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@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@gnu.org>
-
-	* src/type1/t1objs.c (T1_Face_Init): Add cast to avoid compiler
-	warning.
-
-2002-01-03  Keith Packard  <keithp@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@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@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@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@ens.fr>
-
-	* src/pfc/pcfread.c (pcf_load_font): Handle property `POINT_SIZE'
-	and fix incorrect computation of `available_sizes'.
-
-2001-12-22  David Turner  <david@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@apg.lahn.de>
-
-	* builds/amiga/*: Adaptations to latest changes.
-	Support added for MorphOS.
-
-2001-12-22  Werner Lemberg  <wl@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@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@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@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@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@gnu.org>
-
-	* src/truetype/ttgload.c (load_truetype_glyph): Fix test for invalid
-	glyph header.
-
-2001-12-15  Werner Lemberg  <wl@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@gnu.org>
-
-	* builds/mac/README: Updated.
-
-2001-12-14  Scott Long  <scott@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@devolution.com>
-
-	* builds/mac/freetype.make: A new Makefile to build with MPW on
-	MacOS classic.
-
-2001-12-14  David Turner  <david@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@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@gnu.org>
-
-	* builds/unix/freetype2.m4: Some portability fixes.
-
-2001-12-11  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
-
-	* src/base/descrip.mms (OBJS): Add ftdebug.obj.
-
-2001-12-11  Werner Lemberg  <wl@gnu.org>
-
-	* src/sfnt/ttload.c (TT_Load_Generic_Header): Typos.
-
-2001-12-11  David Turner  <david@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@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@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@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@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@freetype.org>
-
-	* src/cache/Jamfile, src/cache/rules.mk: Updated.
-
-2001-12-06  Werner Lemberg  <wl@gnu.org>
-
-	* INSTALL: Small update.
-
-2001-12-05  David Turner  <david@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@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@davidkrause.com>
-
-	* docs/license.txt: s/X Windows/X Window System/.
-
-2001-12-04  Werner Lemberg  <wl@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@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@apg.lahn.de> for noticing this.
-
-2001-11-20  David Turner  <david@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@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@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@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@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@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@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@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@freetype.org>
-
-	* builds/unix/ftsystem.c (FT_New_Memory): Added a missing `{'.
-
-2001-10-23  David Turner  <david@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@freetype.org>
-
-	* src/raster/ftraster.c (Update): Removed to be inlined in ...
-	(Sort): Updated.
-
-2001-10-22  David Turner  <david@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@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@freetype.org>
-
-	* src/cff/cffload.c (CFF_Done_Font): Free the subfonts array to
-	avoid a memory leak.
-
-2001-10-21  David Turner  <david@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@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@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@hrem.stm.tudelft.nl>
-
-	* descrip.mms, src/pshinter/descrip.mms: Updates to the VMS build
-	files.
-
-2001-10-18  David Turner  <david@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@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@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@solutionuk.com>
-
-	* src/cache/ftlru.c (FT_Lru_Lookup_Node): Fixed a bug that prevented
-	correct LRU behaviour.
-
-2001-10-07  David Turner  <david@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@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@apg.lahn.de>
-
-	* builds/amiga/*: Added port to Amiga with the SAS/C compiler.
-
-2001-09-15  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-	* src/type1/t1afm.c (T1_Done_AFM): Free `afm'.
-
-2001-09-10  Yao Zhang  <yzhang@sharemedia.com>
-
-	* src/sfnt/ttcmap.c (code_to_index2): Handle code values with
-	hi-byte == 0 correctly.
-
-2001-09-10  Werner Lemberg  <wl@gnu.org>
-
-	* builds/link-std.mk ($(PROJECT_LIBRARY)): Fix typo.
-
-2001-08-30  Martin Muskens  <mmuskens@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@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@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@gnu.org>
-
-	* src/truetype/ttinterp.h: Fix prototype of TT_Move_Func.
-
-2001-08-21  Werner Lemberg  <wl@gnu.org>
-
-	* builds/dos/dos-def.mk (NO_OUTPUT): Don't use `&>' but `>'.
-
-2001-08-21  David Turner  <david@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@aurelon.com>
-
-	* src/base/ftcalc.c (FT_MulDiv): Fixed serious typo.
-
-2001-08-12  Werner Lemberg  <wl@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@gnu.org>
-
-	* src/type1/t1driver.c (t1_get_name_index): Fix compiler warning.
-
-2001-08-09  Tom Kacvinsky  <tkacvins@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@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@gnu.org>
-
-	* builds/cygwin/*: Removed.  Use the unix stuff instead.
-
-2001-07-26  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
-
-	* builds/vms/ftconfig.h (FT_CALLBACK_DEF): Updated to change dated
-	2001-06-27.
-
-2001-07-17  Werner Lemberg  <wl@gnu.org>
-
-	* include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for
-	`cursor' and `capacity'.
-	* src/psaux/psobjc.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@gnu.org>
-
-	* src/base/ftsynth.c: Include ftcalc.h unconditionally.
-
-2001-07-07  David Turner  <david@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@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@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@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@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@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@harz.de>
-
-	* include/freetype/internal/ftstream.h (FT_GET_OFF3_LE): Fix typo.
-
-2001-06-24  David Turner  <david@freetype.org>
-
-	* src/base/ftcalc.c (ft_div64by32): Fixed the source to work
-	correctly on 16-bit systems.
-
-2001-06-23  Anthony Fok  <fok@debian.org>
-
-	* debian/*: Added Debian package build directory for 2.0.4.
-
-2001-06-22  David Turner  <david@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@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@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@gnu.org>
-
-	* include/freetype/fttypes.h (FT_ERROR_MODULE): New macro.
-
-2001-06-19  David Turner  <david@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@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@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@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@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@amtdatasouth.com>
-
-	* src/base/ftcalc.c (FT_MulDiv, FT_DivFix, FT_Sqrt64): Remove
-	compiler warnings.
-
-2001-06-08  Werner Lemberg  <wl@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@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@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@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@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@gnu.org>
-
-	* INSTALL: Minor fixes.
-
-
-	* Version 2.0.3 released.
-	=========================
-
-
-2001-05-29  David Turner  <david@freetype.org>
-
-	* INSTALL, docs/CHANGES: Updated.
-
-2001-05-25  David Turner  <david@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@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@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_Round_Fix, FT_CeilFix, FT_FloorFix): Minor improvements.
-
-2001-05-12  Werner Lemberg  <wl@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@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@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@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@ens.fr>
-
-	* src/pcfdriver.c (PCF_Load_Glyph): Fixed incorrect bitmap width
-	computation.
-
-2001-05-08  David Turner  <david@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@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@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@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@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@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@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@ens.fr>
-
-	* src/pcf/pcfdriver.c (PCF_Get_Char_Index): Fix return value.
-
-2001-04-09  Laurence Withers  <lwithers@lwithers.demon.co.uk>
-
-	* builds/dos/detect.mk: Add support for bash.
-
-2001-04-05  Werner Lemberg  <wl@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@gnu.org>
-
-	* src/*/Jamfile: Slight changes	to make files more cryptic.
-
-2001-04-03  Werner Lemberg  <wl@gnu.org>
-
-	* Jamfile, src/Jamfile, src/*/Jamfile: Formatted.  Slight changes
-	to give files identical structure.
-
-2001-04-02  Werner Lemberg  <wl@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/sfobcs.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/trutype/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@freetype.org>
-
-	* src/sfnt/ttload.c (TT_Load_Metrics): Fix an improper pointer
-	dereference.  Submitted by Herbert Duerr <duerr@sun.com>.
-
-2001-03-26  Tom Kacvinsky  <tkacvins@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@sonalysts.com>.
-
-2001-03-24  David Turner  <david.turner@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@gnu.org>
-
-	* builds/win32/detekt.mk: Fix .PHONY target for Intel compiler.
-
-2001-03-20  David Turner  <david.turner@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@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@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@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@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@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@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@xs4all.nl>.
-
-	* src/cff/cffgload.c (CFF_Parse_CharStrings): Added support for
-	deprecated operator `dotsection'.
-	Submitted by Sander van der Wal <svdwal@xs4all.nl>.
-
-2001-03-12  Werner Lemberg  <wl@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@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@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@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@roxen.com>
-
-	* src/*/*.c: Added many casts to make code more 64bit-safe.
-
-2001-03-07  Werner Lemberg  <wl@gnu.org>
-
-	* INSTALL, docs/BUILD: We need GNU make 3.78 or newer.
-
-2001-03-07  Tom Kacvinsky  <tkacvins@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@xs4all.nl>.
-
-2001-03-05  Tom Kacvinsky  <tkacvins@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@chinese.com>.
-
-2001-03-04  Antoine Leca  <Antoine.Leca@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@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@xs4all.nl>
-
-	* src/psnames/pstables.h: Add more `const'.
-	* src/pcf/pcfutil.c: Ditto.
-
-2001-03-04  Werner Lemberg  <wl@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@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@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@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@chinese.com>.
-
-2001-02-22  David Turner  <david.turner@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@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@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@freetype.org>
-
-	* src/cff/cffparse.c (cff_parse_font_matrix): Removed an
-	unnecessary fprintf( stderr, ... ).
-
-2001-02-07  Tom Kacvinsky  <tkacvins@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@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@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@renault.fr>
-
-	* include/freetype/ttnameid.h: Latest updates to Microsoft language
-	ID codes.
-
-2001-01-24  Tom Kacvinsky  <tkacvins@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@ens.fr>
-
-	* src/pcfread.c (pcf_get_properties, pcf_get_metrics,
-	pcf_get_bitmaps): Fix compiler errors.
-
-2001-01-11  David Turner  <david.turner@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@marthon.org>
-
-	* builds/unix/freetype-config.in: Fix problems with separate
-	--prefix and --exec-prefix.
-
-2001-01-11  David Turner  <david.turner@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@gnu.org>
-
-	* docs/docmaker.py: Minor improvements to reduce unwanted spaces
-	and empty lines in output.
-
-2001-01-09  David Turner  <david.turner@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@gnu.org>
-
-	* include/freetype/ttnameid.h: Updated Unicode code range comments.
-
-2001-01-03  Tom Kacvinsky  <tkacvins@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@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@gnu.org>
-
-	* LICENSE.TXT: Added info about PCF driver license.
-
-2001-01-01  Francesco Zappa Nardelli  <francesco.zappa.nardelli@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@gnu.org>
-
-	* src/winfonts/winfnt.c (FNT_Get_Char_Index): Fix parameter type.
-
-2000-12-31  Werner Lemberg  <wl@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@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@freetype.org>
-
-	* include/freetype/internal/t2types.h,
-	include/freetype/internal/cfftypes.h: Changed the structures for
-	CFF_Encoding 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@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@freetype.org>
-
-	* src/autohint/ahhint.c (ah_hinter_load_glyph):
-	Removed unnecessary comments and commented-out code.
-
-2000-12-21  David Turner  <david.turner@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@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@gnu.org>
-
-	* *.mk: Added lots of `.PHONY' targets.
-
-2000-12-17  Karsten Fleischer  <kfleisc1@ford.com>
-
-	* *.mk: Implemented `platform' target to disable auto-detection.
-
-2000-12-14  Werner Lemberg  <wl@gnu.org>
-
-	* docs/design/modules.html: Removed.  Covered by design-*.html.
-
-	* INSTALL: Added info about makepp.
-
-2000-12-14  David Turner  <david.turner@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@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@gnu.org>
-
-	* builds/unix/ftsystem.c: Fixed typos.  Fixed inclusion of wrong
-	ftconfig.h file.
-
-2000-12-12  Werner Lemberg  <wl@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@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@gnu.org>
-
-	* builds/unix/detect.mk: Remove unused USE_CFLAGS variable.
-
-2000-12-08  Werner Lemberg  <wl@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@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@freetype.org>
-
-	* src/cache/ftlru.c (FT_Lru_Done): Fixed memory leak.
-
-2000-12-06  Werner Lemberg  <wl@gnu.org>
-
-	* builds/module.mk: Replaced `xxx #' with `xxx$(space).
-	* builds/os2/detekt.mk, builds/win32/detekt.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@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@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@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@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@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@freetype.ogr>
-
-	* 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@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@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@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@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@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@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@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@gnu.org>
-
-	* builds/ansi/ansi.mk: Fix inclusion order of files.
-
-2000-11-26  Keith Packard  <keithp@keithp.com>
-
-	* src/type1/t1objs.c (T1_Init_Face): Compute style flags.
-
-2000-11-26  Werner Lemberg  <wl@gnu.org>
-
-	* builds/compiler/ansi-cc.mk (CLEAN_LIBRARY): Fix rule and
-	conditional.
-
-2000-11-23  Werner Lemberg  <wl@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@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@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@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@gnu.org>
-
-	* builds/win32/visualc/freetype.dsp: Fix raster1->raster and
-	type1z->type1.
-
-2000-11-11  Tom Kacvinsky  <tkacvins@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@gnu.org>
-
-	* builds/cygwin/cygwin-def.in: Same fix as previous.
-
-2000-11-10  Tom Kacvinsky  <tkacvins@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@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@freetype.org>
-
-
-	* Version 2.0 released.
-	=======================
-
-----------------------------------------------------------------------------
-
-Copyright 2000, 2001, 2002, 2007 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:
--- a/misc/libfreetype/ChangeLog.21	Tue Jul 16 11:14:27 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9439 +0,0 @@
-2005-06-08  Werner Lemberg  <wl@gnu.org>
-
-
-	* Version 2.1.10 released.
-	==========================
-
-
-	* src/pcf/readme: Renamed to...
-	* src/pcf/README: This.
-
-2005-06-07  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-	* builds/amiga/*: Added copyright notes, reworked some comments.
-
-2005-06-05  Werner Lemberg  <wl@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@gnu.org>.
-
-2005-06-04  Werner Lemberg  <wl@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@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@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@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@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@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@gnu.org>
-
-	* docs/GPL.txt: Update postal address of FSF.
-
-2005-05-26  Chia I Wu  <b90201047@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@gnu.org>
-
-	* docs/CHANGES: Updated.
-
-2005-05-24  Chia I Wu  <b90201047@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@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@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@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@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_CACE_TRYLOOP_END.
-
-2005-05-23  Werner Lemberg  <wl@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@gnu.org>
-
-	* src/base/ftrfork.c (raccess_guess_apple_generic): Mark
-	`version_number' and `entry_length' as unused.