From 0e02b3a68ca334f45e5b3b813b1b91ed0cd8b55c Mon Sep 17 00:00:00 2001 From: Vivien Nicolas Date: Tue, 4 Feb 2014 00:20:00 +0100 Subject: [PATCH 01/49] Bug 967094 - Expose some prefs related to tiling. r=kats --- b2g/chrome/content/settings.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/b2g/chrome/content/settings.js b/b2g/chrome/content/settings.js index fcf65ec5613f..23400f4be20a 100644 --- a/b2g/chrome/content/settings.js +++ b/b2g/chrome/content/settings.js @@ -676,3 +676,15 @@ SettingsListener.observe('apz.force-enable', false, function(value) { Services.prefs.setBoolPref('dom.browser_frames.useAsyncPanZoom', value); }); +SettingsListener.observe('layers.enable-tiles', false, function(value) { + Services.prefs.setBoolPref('layers.enable-tiles', value); +}); + +SettingsListener.observe('layers.progressive-paint', false, function(value) { + Services.prefs.setBoolPref('layers.progressive-paint', value); +}); + +SettingsListener.observe('layers.draw-tile-borders', false, function(value) { + Services.prefs.setBoolPref('layers.draw-tile-borders', value); +}); + From 11ba63a48b6b34dce7f6cc9b58e07ccfce552a8a Mon Sep 17 00:00:00 2001 From: Michael Wu Date: Mon, 3 Feb 2014 18:43:19 -0500 Subject: [PATCH 02/49] Bug 966795 - Update to freetype 2.5.2, r=jfkthame --HG-- rename : modules/freetype2/builds/amiga/include/freetype/config/ftconfig.h => modules/freetype2/builds/amiga/include/config/ftconfig.h rename : modules/freetype2/builds/amiga/include/freetype/config/ftmodule.h => modules/freetype2/builds/amiga/include/config/ftmodule.h rename : modules/freetype2/builds/win32/detect.mk => modules/freetype2/builds/windows/detect.mk rename : modules/freetype2/builds/win32/ftdebug.c => modules/freetype2/builds/windows/ftdebug.c rename : modules/freetype2/builds/win32/vc2005/freetype.sln => modules/freetype2/builds/windows/vc2005/freetype.sln rename : modules/freetype2/builds/win32/vc2005/freetype.vcproj => modules/freetype2/builds/windows/vc2005/freetype.vcproj rename : modules/freetype2/builds/win32/vc2008/freetype.sln => modules/freetype2/builds/windows/vc2008/freetype.sln rename : modules/freetype2/builds/win32/vc2008/freetype.vcproj => modules/freetype2/builds/windows/vc2008/freetype.vcproj rename : modules/freetype2/builds/win32/vc2010/freetype.vcxproj.filters => modules/freetype2/builds/windows/vc2010/freetype.vcxproj.filters rename : modules/freetype2/builds/win32/visualce/freetype.dsp => modules/freetype2/builds/windows/visualc/freetype.dsp rename : modules/freetype2/builds/win32/visualce/freetype.dsw => modules/freetype2/builds/windows/visualc/freetype.dsw rename : modules/freetype2/builds/win32/visualc/freetype.sln => modules/freetype2/builds/windows/visualc/freetype.sln rename : modules/freetype2/builds/win32/visualc/freetype.vcproj => modules/freetype2/builds/windows/visualc/freetype.vcproj rename : modules/freetype2/builds/win32/visualce/freetype.dsp => modules/freetype2/builds/windows/visualce/freetype.dsp rename : modules/freetype2/builds/win32/visualce/freetype.dsw => modules/freetype2/builds/windows/visualce/freetype.dsw rename : modules/freetype2/builds/win32/visualce/freetype.vcproj => modules/freetype2/builds/windows/visualce/freetype.vcproj rename : modules/freetype2/builds/win32/w32-bcc.mk => modules/freetype2/builds/windows/w32-bcc.mk rename : modules/freetype2/builds/win32/w32-bccd.mk => modules/freetype2/builds/windows/w32-bccd.mk rename : modules/freetype2/builds/win32/w32-dev.mk => modules/freetype2/builds/windows/w32-dev.mk rename : modules/freetype2/builds/win32/w32-gcc.mk => modules/freetype2/builds/windows/w32-gcc.mk rename : modules/freetype2/builds/win32/w32-icc.mk => modules/freetype2/builds/windows/w32-icc.mk rename : modules/freetype2/builds/win32/w32-intl.mk => modules/freetype2/builds/windows/w32-intl.mk rename : modules/freetype2/builds/win32/w32-lcc.mk => modules/freetype2/builds/windows/w32-lcc.mk rename : modules/freetype2/builds/win32/w32-mingw32.mk => modules/freetype2/builds/windows/w32-mingw32.mk rename : modules/freetype2/builds/win32/w32-vcc.mk => modules/freetype2/builds/windows/w32-vcc.mk rename : modules/freetype2/builds/win32/w32-wat.mk => modules/freetype2/builds/windows/w32-wat.mk rename : modules/freetype2/builds/win32/win32-def.mk => modules/freetype2/builds/windows/win32-def.mk rename : modules/freetype2/include/freetype/config/ftconfig.h => modules/freetype2/include/config/ftconfig.h rename : modules/freetype2/include/freetype/config/ftheader.h => modules/freetype2/include/config/ftheader.h rename : modules/freetype2/include/freetype/config/ftmodule.h => modules/freetype2/include/config/ftmodule.h rename : modules/freetype2/include/freetype/config/ftoption.h => modules/freetype2/include/config/ftoption.h rename : modules/freetype2/include/freetype/config/ftstdlib.h => modules/freetype2/include/config/ftstdlib.h rename : modules/freetype2/include/freetype/freetype.h => modules/freetype2/include/freetype.h rename : modules/freetype2/include/freetype/ftadvanc.h => modules/freetype2/include/ftadvanc.h rename : modules/freetype2/include/freetype/ftautoh.h => modules/freetype2/include/ftautoh.h rename : modules/freetype2/include/freetype/ftbbox.h => modules/freetype2/include/ftbbox.h rename : modules/freetype2/include/freetype/ftbdf.h => modules/freetype2/include/ftbdf.h rename : modules/freetype2/include/freetype/ftbitmap.h => modules/freetype2/include/ftbitmap.h rename : modules/freetype2/include/freetype/ftbzip2.h => modules/freetype2/include/ftbzip2.h rename : modules/freetype2/include/freetype/ftcache.h => modules/freetype2/include/ftcache.h rename : modules/freetype2/include/freetype/ftchapters.h => modules/freetype2/include/ftchapters.h rename : modules/freetype2/include/freetype/ftcid.h => modules/freetype2/include/ftcid.h rename : modules/freetype2/include/freetype/fterrdef.h => modules/freetype2/include/fterrdef.h rename : modules/freetype2/include/freetype/fterrors.h => modules/freetype2/include/fterrors.h rename : modules/freetype2/include/freetype/ftgasp.h => modules/freetype2/include/ftgasp.h rename : modules/freetype2/include/freetype/ftglyph.h => modules/freetype2/include/ftglyph.h rename : modules/freetype2/include/freetype/ftgxval.h => modules/freetype2/include/ftgxval.h rename : modules/freetype2/include/freetype/ftgzip.h => modules/freetype2/include/ftgzip.h rename : modules/freetype2/include/freetype/ftimage.h => modules/freetype2/include/ftimage.h rename : modules/freetype2/include/freetype/ftincrem.h => modules/freetype2/include/ftincrem.h rename : modules/freetype2/include/freetype/ftlcdfil.h => modules/freetype2/include/ftlcdfil.h rename : modules/freetype2/include/freetype/ftlist.h => modules/freetype2/include/ftlist.h rename : modules/freetype2/include/freetype/ftlzw.h => modules/freetype2/include/ftlzw.h rename : modules/freetype2/include/freetype/ftmac.h => modules/freetype2/include/ftmac.h rename : modules/freetype2/include/freetype/ftmm.h => modules/freetype2/include/ftmm.h rename : modules/freetype2/include/freetype/ftmodapi.h => modules/freetype2/include/ftmodapi.h rename : modules/freetype2/include/freetype/ftmoderr.h => modules/freetype2/include/ftmoderr.h rename : modules/freetype2/include/freetype/ftotval.h => modules/freetype2/include/ftotval.h rename : modules/freetype2/include/freetype/ftoutln.h => modules/freetype2/include/ftoutln.h rename : modules/freetype2/include/freetype/ftpfr.h => modules/freetype2/include/ftpfr.h rename : modules/freetype2/include/freetype/ftrender.h => modules/freetype2/include/ftrender.h rename : modules/freetype2/include/freetype/ftsizes.h => modules/freetype2/include/ftsizes.h rename : modules/freetype2/include/freetype/ftsnames.h => modules/freetype2/include/ftsnames.h rename : modules/freetype2/include/freetype/ftstroke.h => modules/freetype2/include/ftstroke.h rename : modules/freetype2/include/freetype/ftsynth.h => modules/freetype2/include/ftsynth.h rename : modules/freetype2/include/freetype/ftsystem.h => modules/freetype2/include/ftsystem.h rename : modules/freetype2/include/freetype/fttrigon.h => modules/freetype2/include/fttrigon.h rename : modules/freetype2/include/freetype/ftttdrv.h => modules/freetype2/include/ftttdrv.h rename : modules/freetype2/include/freetype/fttypes.h => modules/freetype2/include/fttypes.h rename : modules/freetype2/include/freetype/ftwinfnt.h => modules/freetype2/include/ftwinfnt.h rename : modules/freetype2/include/freetype/ftxf86.h => modules/freetype2/include/ftxf86.h rename : modules/freetype2/include/freetype/internal/autohint.h => modules/freetype2/include/internal/autohint.h rename : modules/freetype2/include/freetype/internal/ftcalc.h => modules/freetype2/include/internal/ftcalc.h rename : modules/freetype2/include/freetype/internal/ftdebug.h => modules/freetype2/include/internal/ftdebug.h rename : modules/freetype2/include/freetype/internal/ftdriver.h => modules/freetype2/include/internal/ftdriver.h rename : modules/freetype2/include/freetype/internal/ftgloadr.h => modules/freetype2/include/internal/ftgloadr.h rename : modules/freetype2/include/freetype/internal/ftmemory.h => modules/freetype2/include/internal/ftmemory.h rename : modules/freetype2/include/freetype/internal/ftobjs.h => modules/freetype2/include/internal/ftobjs.h rename : modules/freetype2/include/freetype/internal/ftpic.h => modules/freetype2/include/internal/ftpic.h rename : modules/freetype2/include/freetype/internal/ftrfork.h => modules/freetype2/include/internal/ftrfork.h rename : modules/freetype2/include/freetype/internal/ftserv.h => modules/freetype2/include/internal/ftserv.h rename : modules/freetype2/include/freetype/internal/ftstream.h => modules/freetype2/include/internal/ftstream.h rename : modules/freetype2/include/freetype/internal/fttrace.h => modules/freetype2/include/internal/fttrace.h rename : modules/freetype2/include/freetype/internal/ftvalid.h => modules/freetype2/include/internal/ftvalid.h rename : modules/freetype2/include/freetype/internal/psaux.h => modules/freetype2/include/internal/psaux.h rename : modules/freetype2/include/freetype/internal/pshints.h => modules/freetype2/include/internal/pshints.h rename : modules/freetype2/include/freetype/internal/services/svbdf.h => modules/freetype2/include/internal/services/svbdf.h rename : modules/freetype2/include/freetype/internal/services/svcid.h => modules/freetype2/include/internal/services/svcid.h rename : modules/freetype2/include/freetype/internal/services/svgldict.h => modules/freetype2/include/internal/services/svgldict.h rename : modules/freetype2/include/freetype/internal/services/svgxval.h => modules/freetype2/include/internal/services/svgxval.h rename : modules/freetype2/include/freetype/internal/services/svkern.h => modules/freetype2/include/internal/services/svkern.h rename : modules/freetype2/include/freetype/internal/services/svmm.h => modules/freetype2/include/internal/services/svmm.h rename : modules/freetype2/include/freetype/internal/services/svotval.h => modules/freetype2/include/internal/services/svotval.h rename : modules/freetype2/include/freetype/internal/services/svpfr.h => modules/freetype2/include/internal/services/svpfr.h rename : modules/freetype2/include/freetype/internal/services/svpostnm.h => modules/freetype2/include/internal/services/svpostnm.h rename : modules/freetype2/include/freetype/internal/services/svprop.h => modules/freetype2/include/internal/services/svprop.h rename : modules/freetype2/include/freetype/internal/services/svpscmap.h => modules/freetype2/include/internal/services/svpscmap.h rename : modules/freetype2/include/freetype/internal/services/svpsinfo.h => modules/freetype2/include/internal/services/svpsinfo.h rename : modules/freetype2/include/freetype/internal/services/svsfnt.h => modules/freetype2/include/internal/services/svsfnt.h rename : modules/freetype2/include/freetype/internal/services/svttcmap.h => modules/freetype2/include/internal/services/svttcmap.h rename : modules/freetype2/include/freetype/internal/services/svtteng.h => modules/freetype2/include/internal/services/svtteng.h rename : modules/freetype2/include/freetype/internal/services/svttglyf.h => modules/freetype2/include/internal/services/svttglyf.h rename : modules/freetype2/include/freetype/internal/services/svwinfnt.h => modules/freetype2/include/internal/services/svwinfnt.h rename : modules/freetype2/include/freetype/internal/services/svxf86nm.h => modules/freetype2/include/internal/services/svxf86nm.h rename : modules/freetype2/include/freetype/internal/sfnt.h => modules/freetype2/include/internal/sfnt.h rename : modules/freetype2/include/freetype/internal/t1types.h => modules/freetype2/include/internal/t1types.h rename : modules/freetype2/include/freetype/internal/tttypes.h => modules/freetype2/include/internal/tttypes.h rename : modules/freetype2/include/freetype/t1tables.h => modules/freetype2/include/t1tables.h rename : modules/freetype2/include/freetype/ttnameid.h => modules/freetype2/include/ttnameid.h rename : modules/freetype2/include/freetype/tttables.h => modules/freetype2/include/tttables.h rename : modules/freetype2/include/freetype/tttags.h => modules/freetype2/include/tttags.h rename : modules/freetype2/include/freetype/ttunpat.h => modules/freetype2/include/ttunpat.h --- modules/freetype2/CMakeLists.txt | 165 ++ modules/freetype2/ChangeLog | 1560 ++++++++++++++++- modules/freetype2/Jamfile | 12 +- modules/freetype2/README | 8 +- modules/freetype2/README.git | 6 +- modules/freetype2/README.moz-patches | 2 +- modules/freetype2/autogen.sh | 4 +- modules/freetype2/builds/amiga/README | 13 +- .../include/{freetype => }/config/ftconfig.h | 8 +- .../include/{freetype => }/config/ftmodule.h | 0 modules/freetype2/builds/amiga/makefile | 4 +- modules/freetype2/builds/amiga/makefile.os4 | 4 +- modules/freetype2/builds/amiga/smakefile | 4 +- .../freetype2/builds/amiga/src/base/ftdebug.c | 4 +- modules/freetype2/builds/detect.mk | 6 +- modules/freetype2/builds/freetype.mk | 15 +- modules/freetype2/builds/mac/README | 20 +- modules/freetype2/builds/mac/ftmac.c | 1 - modules/freetype2/builds/symbian/bld.inf | 92 +- modules/freetype2/builds/toplevel.mk | 4 +- modules/freetype2/builds/unix/aclocal.m4 | 4 +- modules/freetype2/builds/unix/config.sub | 17 +- modules/freetype2/builds/unix/configure | 27 +- modules/freetype2/builds/unix/configure.ac | 10 +- modules/freetype2/builds/unix/configure.raw | 8 +- .../freetype2/builds/unix/freetype-config.in | 14 +- modules/freetype2/builds/unix/freetype2.in | 6 +- modules/freetype2/builds/unix/ft2unix.h | 61 - modules/freetype2/builds/unix/ftconfig.in | 103 +- modules/freetype2/builds/unix/ftsystem.c | 9 +- modules/freetype2/builds/unix/install.mk | 51 +- modules/freetype2/builds/unix/unix-def.in | 4 +- modules/freetype2/builds/vms/ftconfig.h | 361 +++- modules/freetype2/builds/wince/ftdebug.c | 6 +- .../builds/wince/vc2005-ce/freetype.vcproj | 86 +- .../builds/wince/vc2005-ce/index.html | 10 +- .../builds/wince/vc2008-ce/freetype.vcproj | 86 +- .../builds/wince/vc2008-ce/index.html | 10 +- .../builds/{win32 => windows}/detect.mk | 0 .../builds/{win32 => windows}/ftdebug.c | 6 +- .../{win32 => windows}/vc2005/freetype.sln | 0 .../{win32 => windows}/vc2005/freetype.vcproj | 22 +- .../{win32 => windows}/vc2005/index.html | 10 +- .../{win32 => windows}/vc2008/freetype.sln | 0 .../{win32 => windows}/vc2008/freetype.vcproj | 22 +- .../{win32 => windows}/vc2008/index.html | 10 +- .../{win32 => windows}/vc2010/freetype.sln | 20 +- .../vc2010/freetype.vcxproj | 767 +++++++- .../vc2010/freetype.vcxproj.filters | 10 +- .../{win32 => windows}/vc2010/index.html | 22 +- .../{win32 => windows}/visualc/freetype.dsp | 34 +- .../{win32 => windows}/visualc/freetype.dsw | 0 .../{win32 => windows}/visualc/freetype.sln | 0 .../visualc/freetype.vcproj | 22 +- .../{win32 => windows}/visualc/index.html | 10 +- .../{win32 => windows}/visualce/freetype.dsp | 34 +- .../{win32 => windows}/visualce/freetype.dsw | 0 .../visualce/freetype.vcproj | 94 +- .../{win32 => windows}/visualce/index.html | 10 +- .../builds/{win32 => windows}/w32-bcc.mk | 4 +- .../builds/{win32 => windows}/w32-bccd.mk | 4 +- .../builds/{win32 => windows}/w32-dev.mk | 4 +- .../builds/{win32 => windows}/w32-gcc.mk | 4 +- .../builds/{win32 => windows}/w32-icc.mk | 4 +- .../builds/{win32 => windows}/w32-intl.mk | 4 +- .../builds/{win32 => windows}/w32-lcc.mk | 4 +- .../builds/{win32 => windows}/w32-mingw32.mk | 4 +- .../builds/{win32 => windows}/w32-vcc.mk | 4 +- .../builds/{win32 => windows}/w32-wat.mk | 4 +- .../builds/{win32 => windows}/win32-def.mk | 4 +- modules/freetype2/devel/ft2build.h | 29 +- modules/freetype2/devel/ftoption.h | 12 +- modules/freetype2/docs/CHANGES | 128 ++ modules/freetype2/docs/CMAKE | 2 + modules/freetype2/docs/CUSTOMIZE | 32 +- modules/freetype2/docs/DEBUG | 182 +- modules/freetype2/docs/INSTALL | 9 +- modules/freetype2/docs/INSTALL.ANY | 34 +- modules/freetype2/docs/INSTALL.GNU | 24 +- modules/freetype2/docs/VERSION.DLL | 2 + .../docs/reference/ft2-auto_hinter.html | 14 +- .../docs/reference/ft2-base_interface.html | 306 ++-- .../docs/reference/ft2-basic_types.html | 94 +- .../docs/reference/ft2-bdf_fonts.html | 14 +- .../docs/reference/ft2-bitmap_handling.html | 16 +- .../freetype2/docs/reference/ft2-bzip2.html | 6 +- .../docs/reference/ft2-cache_subsystem.html | 62 +- .../docs/reference/ft2-cff_driver.html | 58 +- .../docs/reference/ft2-cid_fonts.html | 10 +- .../docs/reference/ft2-computations.html | 52 +- .../docs/reference/ft2-font_formats.html | 8 +- .../docs/reference/ft2-gasp_table.html | 8 +- .../docs/reference/ft2-glyph_management.html | 40 +- .../docs/reference/ft2-glyph_stroker.html | 48 +- .../docs/reference/ft2-glyph_variants.html | 20 +- .../docs/reference/ft2-gx_validation.html | 26 +- .../freetype2/docs/reference/ft2-gzip.html | 68 +- .../reference/ft2-header_file_macros.html | 98 +- .../docs/reference/ft2-incremental.html | 24 +- .../freetype2/docs/reference/ft2-index.html | 522 +++--- .../docs/reference/ft2-lcd_filtering.html | 12 +- .../docs/reference/ft2-list_processing.html | 40 +- modules/freetype2/docs/reference/ft2-lzw.html | 6 +- .../docs/reference/ft2-mac_specific.html | 18 +- .../docs/reference/ft2-module_management.html | 44 +- .../docs/reference/ft2-multiple_masters.html | 30 +- .../docs/reference/ft2-ot_validation.html | 14 +- .../reference/ft2-outline_processing.html | 75 +- .../docs/reference/ft2-pfr_fonts.html | 10 +- .../docs/reference/ft2-quick_advance.html | 14 +- .../freetype2/docs/reference/ft2-raster.html | 34 +- .../docs/reference/ft2-sfnt_names.html | 18 +- .../docs/reference/ft2-sizes_management.html | 12 +- .../docs/reference/ft2-system_interface.html | 24 +- modules/freetype2/docs/reference/ft2-toc.html | 6 +- .../docs/reference/ft2-truetype_engine.html | 10 +- .../docs/reference/ft2-truetype_tables.html | 66 +- .../docs/reference/ft2-tt_driver.html | 23 +- .../docs/reference/ft2-type1_tables.html | 40 +- .../docs/reference/ft2-user_allocation.html | 4 +- .../freetype2/docs/reference/ft2-version.html | 14 +- .../docs/reference/ft2-winfnt_fonts.html | 16 +- modules/freetype2/docs/release | 39 +- .../include/{freetype => }/config/ftconfig.h | 88 +- .../include/{freetype => }/config/ftheader.h | 118 +- .../include/{freetype => }/config/ftmodule.h | 0 .../include/{freetype => }/config/ftoption.h | 12 +- .../include/{freetype => }/config/ftstdlib.h | 0 .../include/{freetype => }/freetype.h | 96 +- modules/freetype2/include/freetype/ftcffdrv.h | 151 -- modules/freetype2/include/ft2build.h | 23 +- .../include/{freetype => }/ftadvanc.h | 4 +- .../include/{freetype => }/ftautoh.h | 4 +- .../freetype2/include/{freetype => }/ftbbox.h | 6 +- .../freetype2/include/{freetype => }/ftbdf.h | 0 .../include/{freetype => }/ftbitmap.h | 0 .../include/{freetype => }/ftbzip2.h | 0 .../include/{freetype => }/ftcache.h | 2 +- modules/freetype2/include/ftcffdrv.h | 254 +++ .../include/{freetype => }/ftchapters.h | 2 +- .../freetype2/include/{freetype => }/ftcid.h | 0 .../include/{freetype => }/fterrdef.h | 0 .../include/{freetype => }/fterrors.h | 0 .../freetype2/include/{freetype => }/ftgasp.h | 0 .../include/{freetype => }/ftglyph.h | 10 +- .../include/{freetype => }/ftgxval.h | 10 +- .../freetype2/include/{freetype => }/ftgzip.h | 49 +- .../include/{freetype => }/ftimage.h | 18 +- .../include/{freetype => }/ftincrem.h | 0 .../include/{freetype => }/ftlcdfil.h | 6 +- .../freetype2/include/{freetype => }/ftlist.h | 12 +- .../freetype2/include/{freetype => }/ftlzw.h | 0 .../freetype2/include/{freetype => }/ftmac.h | 6 +- .../freetype2/include/{freetype => }/ftmm.h | 7 +- .../include/{freetype => }/ftmodapi.h | 8 +- .../include/{freetype => }/ftmoderr.h | 0 .../include/{freetype => }/ftotval.h | 6 +- .../include/{freetype => }/ftoutln.h | 23 +- .../freetype2/include/{freetype => }/ftpfr.h | 0 .../include/{freetype => }/ftrender.h | 0 .../include/{freetype => }/ftsizes.h | 4 +- .../include/{freetype => }/ftsnames.h | 6 +- .../include/{freetype => }/ftstroke.h | 0 .../include/{freetype => }/ftsynth.h | 4 +- .../include/{freetype => }/ftsystem.h | 0 .../include/{freetype => }/fttrigon.h | 0 .../include/{freetype => }/ftttdrv.h | 22 +- .../include/{freetype => }/fttypes.h | 6 +- .../include/{freetype => }/ftwinfnt.h | 7 +- .../freetype2/include/{freetype => }/ftxf86.h | 4 +- .../{freetype => }/internal/autohint.h | 0 .../include/{freetype => }/internal/ftcalc.h | 6 +- .../include/{freetype => }/internal/ftdebug.h | 0 .../{freetype => }/internal/ftdriver.h | 0 .../{freetype => }/internal/ftgloadr.h | 0 .../{freetype => }/internal/ftmemory.h | 0 .../include/{freetype => }/internal/ftobjs.h | 0 .../include/{freetype => }/internal/ftpic.h | 0 .../include/{freetype => }/internal/ftrfork.h | 0 .../include/{freetype => }/internal/ftserv.h | 36 +- .../{freetype => }/internal/ftstream.h | 0 .../include/{freetype => }/internal/fttrace.h | 0 .../include/{freetype => }/internal/ftvalid.h | 0 .../{freetype => }/internal/internal.h | 38 +- .../include/{freetype => }/internal/psaux.h | 0 .../include/{freetype => }/internal/pshints.h | 0 .../{freetype => }/internal/services/svbdf.h | 0 .../{freetype => }/internal/services/svcid.h | 0 .../internal/services/svgldict.h | 0 .../internal/services/svgxval.h | 0 .../{freetype => }/internal/services/svkern.h | 0 .../{freetype => }/internal/services/svmm.h | 0 .../internal/services/svotval.h | 0 .../{freetype => }/internal/services/svpfr.h | 0 .../internal/services/svpostnm.h | 0 .../{freetype => }/internal/services/svprop.h | 0 .../internal/services/svpscmap.h | 0 .../internal/services/svpsinfo.h | 0 .../{freetype => }/internal/services/svsfnt.h | 0 .../internal/services/svttcmap.h | 4 +- .../internal/services/svtteng.h | 0 .../internal/services/svttglyf.h | 0 .../internal/services/svwinfnt.h | 0 .../internal/services/svxf86nm.h | 0 .../include/{freetype => }/internal/sfnt.h | 0 .../include/{freetype => }/internal/t1types.h | 0 .../include/{freetype => }/internal/tttypes.h | 108 +- .../include/{freetype => }/t1tables.h | 0 .../include/{freetype => }/ttnameid.h | 4 +- .../include/{freetype => }/tttables.h | 38 +- .../freetype2/include/{freetype => }/tttags.h | 2 + .../include/{freetype => }/ttunpat.h | 0 modules/freetype2/modules.cfg | 50 +- modules/freetype2/src/Jamfile | 4 +- modules/freetype2/src/autofit/afblue.c | 166 ++ modules/freetype2/src/autofit/afblue.cin | 39 + modules/freetype2/src/autofit/afblue.dat | 218 +++ modules/freetype2/src/autofit/afblue.h | 199 +++ modules/freetype2/src/autofit/afblue.hin | 142 ++ modules/freetype2/src/autofit/afcjk.c | 650 +++---- modules/freetype2/src/autofit/afcjk.h | 59 +- modules/freetype2/src/autofit/afdummy.c | 39 +- modules/freetype2/src/autofit/afdummy.h | 10 +- modules/freetype2/src/autofit/afglobal.c | 126 +- modules/freetype2/src/autofit/afglobal.h | 23 +- modules/freetype2/src/autofit/afhints.c | 283 +-- modules/freetype2/src/autofit/afhints.h | 45 +- modules/freetype2/src/autofit/afindic.c | 64 +- modules/freetype2/src/autofit/afindic.h | 11 +- modules/freetype2/src/autofit/aflatin.c | 532 ++++-- modules/freetype2/src/autofit/aflatin.h | 43 +- modules/freetype2/src/autofit/aflatin2.c | 72 +- modules/freetype2/src/autofit/aflatin2.h | 18 +- modules/freetype2/src/autofit/afloader.c | 43 +- modules/freetype2/src/autofit/afpic.c | 49 +- modules/freetype2/src/autofit/afpic.h | 35 +- modules/freetype2/src/autofit/afscript.h | 37 + modules/freetype2/src/autofit/aftypes.h | 287 ++- modules/freetype2/src/autofit/afwrtsys.h | 51 + modules/freetype2/src/autofit/autofit.c | 3 +- modules/freetype2/src/autofit/rules.mk | 7 +- modules/freetype2/src/base/ftbbox.c | 332 +--- modules/freetype2/src/base/ftbitmap.c | 4 + modules/freetype2/src/base/ftcalc.c | 30 +- modules/freetype2/src/base/ftdebug.c | 2 +- modules/freetype2/src/base/ftglyph.c | 62 +- modules/freetype2/src/base/ftinit.c | 4 +- modules/freetype2/src/base/ftmac.c | 1 - modules/freetype2/src/base/ftobjs.c | 40 +- modules/freetype2/src/base/ftoutln.c | 7 +- modules/freetype2/src/base/ftpic.c | 4 +- modules/freetype2/src/base/ftsynth.c | 11 +- modules/freetype2/src/base/md5.c | 51 +- modules/freetype2/src/base/md5.h | 2 +- modules/freetype2/src/base/rules.mk | 4 +- modules/freetype2/src/bdf/bdfdrivr.c | 16 +- modules/freetype2/src/cache/Jamfile | 4 +- modules/freetype2/src/cff/cf2blues.c | 2 + modules/freetype2/src/cff/cf2font.c | 161 +- modules/freetype2/src/cff/cf2font.h | 2 + modules/freetype2/src/cff/cf2ft.c | 9 + modules/freetype2/src/cff/cf2hints.c | 196 ++- modules/freetype2/src/cff/cf2hints.h | 4 +- modules/freetype2/src/cff/cffdrivr.c | 63 +- modules/freetype2/src/cff/cffgload.c | 6 +- modules/freetype2/src/cff/cffload.c | 10 +- modules/freetype2/src/cff/cffobjs.c | 11 +- modules/freetype2/src/cff/cffobjs.h | 2 + modules/freetype2/src/cid/cidgload.c | 2 +- modules/freetype2/src/cid/cidload.c | 6 +- modules/freetype2/src/gxvalid/gxvcommn.c | 8 + modules/freetype2/src/gxvalid/gxvcommn.h | 2 +- modules/freetype2/src/gxvalid/gxvmort.c | 2 + modules/freetype2/src/gxvalid/gxvmorx2.c | 4 +- modules/freetype2/src/gzip/ftgzip.c | 78 +- modules/freetype2/src/gzip/rules.mk | 59 +- modules/freetype2/src/pcf/pcfdrivr.c | 42 +- modules/freetype2/src/pcf/pcfread.c | 2 +- modules/freetype2/src/pcf/pcfutil.c | 12 +- modules/freetype2/src/pfr/pfrcmap.c | 10 +- modules/freetype2/src/pfr/pfrgload.c | 2 +- modules/freetype2/src/pfr/pfrobjs.c | 2 + modules/freetype2/src/pshinter/pshglob.c | 4 +- modules/freetype2/src/raster/ftraster.c | 4 +- modules/freetype2/src/sfnt/pngshim.c | 57 +- modules/freetype2/src/sfnt/pngshim.h | 5 +- modules/freetype2/src/sfnt/sfdriver.c | 4 +- modules/freetype2/src/sfnt/sfobjs.c | 421 ++++- modules/freetype2/src/sfnt/ttcmap.c | 11 +- modules/freetype2/src/sfnt/ttkern.c | 6 +- modules/freetype2/src/sfnt/ttload.c | 52 +- modules/freetype2/src/sfnt/ttmtx.c | 19 +- modules/freetype2/src/sfnt/ttsbit.c | 612 +++++-- modules/freetype2/src/sfnt/ttsbit.h | 4 +- modules/freetype2/src/smooth/ftgrays.c | 87 +- modules/freetype2/src/tools/afblue.pl | 542 ++++++ modules/freetype2/src/tools/chktrcmp.py | 4 +- .../freetype2/src/tools/docmaker/content.py | 19 +- .../freetype2/src/tools/docmaker/docmaker.py | 4 +- .../freetype2/src/tools/docmaker/sources.py | 40 +- .../freetype2/src/tools/docmaker/tohtml.py | 33 +- modules/freetype2/src/truetype/ttdriver.c | 3 +- modules/freetype2/src/truetype/ttgload.c | 238 ++- modules/freetype2/src/truetype/ttgload.h | 1 + modules/freetype2/src/truetype/ttinterp.c | 253 ++- modules/freetype2/src/truetype/ttinterp.h | 4 +- modules/freetype2/src/truetype/ttobjs.c | 23 +- modules/freetype2/src/type1/t1gload.c | 2 + modules/freetype2/src/type1/t1load.c | 4 +- modules/freetype2/src/type42/t42objs.c | 5 +- modules/freetype2/src/winfonts/winfnt.c | 4 +- modules/freetype2/vms_make.com | 4 +- 312 files changed, 10745 insertions(+), 3963 deletions(-) create mode 100644 modules/freetype2/CMakeLists.txt rename modules/freetype2/builds/amiga/include/{freetype => }/config/ftconfig.h (90%) rename modules/freetype2/builds/amiga/include/{freetype => }/config/ftmodule.h (100%) delete mode 100644 modules/freetype2/builds/unix/ft2unix.h rename modules/freetype2/builds/{win32 => windows}/detect.mk (100%) rename modules/freetype2/builds/{win32 => windows}/ftdebug.c (97%) rename modules/freetype2/builds/{win32 => windows}/vc2005/freetype.sln (100%) rename modules/freetype2/builds/{win32 => windows}/vc2005/freetype.vcproj (97%) rename modules/freetype2/builds/{win32 => windows}/vc2005/index.html (76%) rename modules/freetype2/builds/{win32 => windows}/vc2008/freetype.sln (100%) rename modules/freetype2/builds/{win32 => windows}/vc2008/freetype.vcproj (94%) rename modules/freetype2/builds/{win32 => windows}/vc2008/index.html (76%) rename modules/freetype2/builds/{win32 => windows}/vc2010/freetype.sln (56%) rename modules/freetype2/builds/{win32 => windows}/vc2010/freetype.vcxproj (50%) rename modules/freetype2/builds/{win32 => windows}/vc2010/freetype.vcxproj.filters (91%) rename modules/freetype2/builds/{win32 => windows}/vc2010/index.html (56%) rename modules/freetype2/builds/{win32 => windows}/visualc/freetype.dsp (87%) rename modules/freetype2/builds/{win32 => windows}/visualc/freetype.dsw (100%) rename modules/freetype2/builds/{win32 => windows}/visualc/freetype.sln (100%) rename modules/freetype2/builds/{win32 => windows}/visualc/freetype.vcproj (94%) rename modules/freetype2/builds/{win32 => windows}/visualc/index.html (77%) rename modules/freetype2/builds/{win32 => windows}/visualce/freetype.dsp (87%) rename modules/freetype2/builds/{win32 => windows}/visualce/freetype.dsw (100%) rename modules/freetype2/builds/{win32 => windows}/visualce/freetype.vcproj (95%) rename modules/freetype2/builds/{win32 => windows}/visualce/index.html (80%) rename modules/freetype2/builds/{win32 => windows}/w32-bcc.mk (88%) rename modules/freetype2/builds/{win32 => windows}/w32-bccd.mk (86%) rename modules/freetype2/builds/{win32 => windows}/w32-dev.mk (88%) rename modules/freetype2/builds/{win32 => windows}/w32-gcc.mk (89%) rename modules/freetype2/builds/{win32 => windows}/w32-icc.mk (89%) rename modules/freetype2/builds/{win32 => windows}/w32-intl.mk (88%) rename modules/freetype2/builds/{win32 => windows}/w32-lcc.mk (87%) rename modules/freetype2/builds/{win32 => windows}/w32-mingw32.mk (89%) rename modules/freetype2/builds/{win32 => windows}/w32-vcc.mk (88%) rename modules/freetype2/builds/{win32 => windows}/w32-wat.mk (88%) rename modules/freetype2/builds/{win32 => windows}/win32-def.mk (91%) create mode 100644 modules/freetype2/docs/CMAKE rename modules/freetype2/include/{freetype => }/config/ftconfig.h (89%) rename modules/freetype2/include/{freetype => }/config/ftheader.h (89%) rename modules/freetype2/include/{freetype => }/config/ftmodule.h (100%) rename modules/freetype2/include/{freetype => }/config/ftoption.h (99%) rename modules/freetype2/include/{freetype => }/config/ftstdlib.h (100%) rename modules/freetype2/include/{freetype => }/freetype.h (98%) delete mode 100644 modules/freetype2/include/freetype/ftcffdrv.h rename modules/freetype2/include/{freetype => }/ftadvanc.h (98%) rename modules/freetype2/include/{freetype => }/ftautoh.h (98%) rename modules/freetype2/include/{freetype => }/ftbbox.h (97%) rename modules/freetype2/include/{freetype => }/ftbdf.h (100%) rename modules/freetype2/include/{freetype => }/ftbitmap.h (100%) rename modules/freetype2/include/{freetype => }/ftbzip2.h (100%) rename modules/freetype2/include/{freetype => }/ftcache.h (99%) create mode 100644 modules/freetype2/include/ftcffdrv.h rename modules/freetype2/include/{freetype => }/ftchapters.h (99%) rename modules/freetype2/include/{freetype => }/ftcid.h (100%) rename modules/freetype2/include/{freetype => }/fterrdef.h (100%) rename modules/freetype2/include/{freetype => }/fterrors.h (100%) rename modules/freetype2/include/{freetype => }/ftgasp.h (100%) rename modules/freetype2/include/{freetype => }/ftglyph.h (99%) rename modules/freetype2/include/{freetype => }/ftgxval.h (98%) rename modules/freetype2/include/{freetype => }/ftgzip.h (74%) rename modules/freetype2/include/{freetype => }/ftimage.h (99%) rename modules/freetype2/include/{freetype => }/ftincrem.h (100%) rename modules/freetype2/include/{freetype => }/ftlcdfil.h (97%) rename modules/freetype2/include/{freetype => }/ftlist.h (97%) rename modules/freetype2/include/{freetype => }/ftlzw.h (100%) rename modules/freetype2/include/{freetype => }/ftmac.h (98%) rename modules/freetype2/include/{freetype => }/ftmm.h (98%) rename modules/freetype2/include/{freetype => }/ftmodapi.h (99%) rename modules/freetype2/include/{freetype => }/ftmoderr.h (100%) rename modules/freetype2/include/{freetype => }/ftotval.h (97%) rename modules/freetype2/include/{freetype => }/ftoutln.h (96%) rename modules/freetype2/include/{freetype => }/ftpfr.h (100%) rename modules/freetype2/include/{freetype => }/ftrender.h (100%) rename modules/freetype2/include/{freetype => }/ftsizes.h (98%) rename modules/freetype2/include/{freetype => }/ftsnames.h (98%) rename modules/freetype2/include/{freetype => }/ftstroke.h (100%) rename modules/freetype2/include/{freetype => }/ftsynth.h (96%) rename modules/freetype2/include/{freetype => }/ftsystem.h (100%) rename modules/freetype2/include/{freetype => }/fttrigon.h (100%) rename modules/freetype2/include/{freetype => }/ftttdrv.h (85%) rename modules/freetype2/include/{freetype => }/fttypes.h (99%) rename modules/freetype2/include/{freetype => }/ftwinfnt.h (97%) rename modules/freetype2/include/{freetype => }/ftxf86.h (96%) rename modules/freetype2/include/{freetype => }/internal/autohint.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftcalc.h (98%) rename modules/freetype2/include/{freetype => }/internal/ftdebug.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftdriver.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftgloadr.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftmemory.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftobjs.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftpic.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftrfork.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftserv.h (96%) rename modules/freetype2/include/{freetype => }/internal/ftstream.h (100%) rename modules/freetype2/include/{freetype => }/internal/fttrace.h (100%) rename modules/freetype2/include/{freetype => }/internal/ftvalid.h (100%) rename modules/freetype2/include/{freetype => }/internal/internal.h (61%) rename modules/freetype2/include/{freetype => }/internal/psaux.h (100%) rename modules/freetype2/include/{freetype => }/internal/pshints.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svbdf.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svcid.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svgldict.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svgxval.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svkern.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svmm.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svotval.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svpfr.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svpostnm.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svprop.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svpscmap.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svpsinfo.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svsfnt.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svttcmap.h (97%) rename modules/freetype2/include/{freetype => }/internal/services/svtteng.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svttglyf.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svwinfnt.h (100%) rename modules/freetype2/include/{freetype => }/internal/services/svxf86nm.h (100%) rename modules/freetype2/include/{freetype => }/internal/sfnt.h (100%) rename modules/freetype2/include/{freetype => }/internal/t1types.h (100%) rename modules/freetype2/include/{freetype => }/internal/tttypes.h (94%) rename modules/freetype2/include/{freetype => }/t1tables.h (100%) rename modules/freetype2/include/{freetype => }/ttnameid.h (99%) rename modules/freetype2/include/{freetype => }/tttables.h (97%) rename modules/freetype2/include/{freetype => }/tttags.h (97%) rename modules/freetype2/include/{freetype => }/ttunpat.h (100%) create mode 100644 modules/freetype2/src/autofit/afblue.c create mode 100644 modules/freetype2/src/autofit/afblue.cin create mode 100644 modules/freetype2/src/autofit/afblue.dat create mode 100644 modules/freetype2/src/autofit/afblue.h create mode 100644 modules/freetype2/src/autofit/afblue.hin create mode 100644 modules/freetype2/src/autofit/afscript.h create mode 100644 modules/freetype2/src/autofit/afwrtsys.h create mode 100644 modules/freetype2/src/tools/afblue.pl diff --git a/modules/freetype2/CMakeLists.txt b/modules/freetype2/CMakeLists.txt new file mode 100644 index 000000000000..c782fb7735c2 --- /dev/null +++ b/modules/freetype2/CMakeLists.txt @@ -0,0 +1,165 @@ +# CMakeLists.txt +# +# Copyright 2013 by +# David Turner, Robert Wilhelm, and Werner Lemberg. +# +# Written by John Cary +# +# 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. +# +# +# Say +# +# cmake CMakeLists.txt +# +# to create a Makefile that builds a static version of the library. For a +# dynamic library, use +# +# cmake CMakeLists.txt -DBUILD_SHARED_LIBS:BOOL=true +# +# instead. Please refer to the cmake manual for further options, in +# particular, how to modify compilation and linking parameters. +# +# Some notes. +# +# . `cmake' will overwrite FreeType's original (top-level) `Makefile' file. +# +# . You can use `cmake' directly on a freshly cloned FreeType git +# repository. +# +# . `CMakeLists.txt' is provided as-is since it is not used by the +# developer team. + + +cmake_minimum_required(VERSION 2.6) + +project(freetype) + +set(VERSION_MAJOR "2") +set(VERSION_MINOR "5") +set(VERSION_PATCH "2") +set(PROJECT_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) + +# Compiler definitions for building the library +add_definitions(-DFT2_BUILD_LIBRARY) + +# Specify library include directories +include_directories("${PROJECT_SOURCE_DIR}/include") + +# Create the configuration file +message(STATUS "Creating directory, ${PROJECT_BINARY_DIR}/include.") +file(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/include) + +# For the auto-generated ftconfig.h file +include_directories("${PROJECT_BINARY_DIR}/include") +message(STATUS "Creating ${PROJECT_BINARY_DIR}/include/ftconfig.h.") +execute_process( + COMMAND sed -e "s/FT_CONFIG_OPTIONS_H//" -e "s/FT_CONFIG_STANDARD_LIBRARY_H//" -e "s?/undef ?#undef ?" + INPUT_FILE ${PROJECT_SOURCE_DIR}/builds/unix/ftconfig.in + OUTPUT_FILE ${PROJECT_BINARY_DIR}/include/ftconfig.h +) + +set(BASE_SRCS + src/autofit/autofit.c + src/base/ftadvanc.c + src/base/ftbbox.c + src/base/ftbitmap.c + src/base/ftcalc.c + src/base/ftcid.c + src/base/ftdbgmem.c + src/base/ftdebug.c + src/base/ftfstype.c + src/base/ftgasp.c + src/base/ftgloadr.c + src/base/ftglyph.c + src/base/ftgxval.c + src/base/ftinit.c + src/base/ftlcdfil.c + src/base/ftmm.c + src/base/ftobjs.c + src/base/ftotval.c + src/base/ftoutln.c + src/base/ftpatent.c + src/base/ftpfr.c + src/base/ftrfork.c + src/base/ftsnames.c + src/base/ftstream.c + src/base/ftstroke.c + src/base/ftsynth.c + src/base/ftsystem.c + src/base/fttrigon.c + src/base/fttype1.c + src/base/ftutil.c + src/base/ftwinfnt.c + src/base/ftxf86.c + src/bdf/bdf.c + src/bzip2/ftbzip2.c + src/cache/ftcache.c + src/cff/cff.c + src/cid/type1cid.c + src/gzip/ftgzip.c + src/lzw/ftlzw.c + src/pcf/pcf.c + src/pfr/pfr.c + src/psaux/psaux.c + src/pshinter/pshinter.c + src/psnames/psmodule.c + src/raster/raster.c + src/sfnt/sfnt.c + src/smooth/smooth.c + src/truetype/truetype.c + src/type1/type1.c + src/type42/type42.c + src/winfonts/winfnt.c +) + +include_directories("src/truetype") +include_directories("src/sfnt") +include_directories("src/autofit") +include_directories("src/smooth") +include_directories("src/raster") +include_directories("src/psaux") +include_directories("src/psnames") + +add_library(freetype ${BASE_SRCS}) + +# Installations +# Note the trailing slash in the argument to the `DIRECTORY' directive +install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/ + DESTINATION include/freetype2 + PATTERN "internal" EXCLUDE +) +install(TARGETS freetype + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) + +# Packaging +# CPack version numbers for release tarball name. +set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR}) +set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR}) +set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH}}) +if (NOT DEFINED CPACK_PACKAGE_DESCRIPTION_SUMMARY) + set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${CMAKE_PROJECT_NAME}") +endif () +if (NOT DEFINED CPACK_SOURCE_PACKAGE_FILE_NAME) + set(CPACK_SOURCE_PACKAGE_FILE_NAME + "${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}-r${PROJECT_REV}" + CACHE INTERNAL "tarball basename" + ) +endif () +set(CPACK_SOURCE_GENERATOR TGZ) +set(CPACK_SOURCE_IGNORE_FILES + "/CVS/;/.svn/;.swp$;.#;/#;/build/;/serial/;/ser/;/parallel/;/par/;~;/preconfig.out;/autom4te.cache/;/.config") +set(CPACK_GENERATOR TGZ) +include(CPack) + +# add make dist target +add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source) + +# eof diff --git a/modules/freetype2/ChangeLog b/modules/freetype2/ChangeLog index 5cda57a46ec0..b67e4362a386 100644 --- a/modules/freetype2/ChangeLog +++ b/modules/freetype2/ChangeLog @@ -1,3 +1,1559 @@ +2013-12-08 Werner Lemberg + + * Version 2.5.2 released. + ========================= + + + Tag sources with `VER-2-5-2'. + + * docs/VERSION.DLL: Update documentation and bump version number to + 2.5.2. + + * README, Jamfile (RefDoc), builds/windows/vc2005/freetype.vcproj, + builds/windows/vc2005/index.html, + builds/windows/vc2008/freetype.vcproj, + builds/windows/vc2008/index.html, + builds/windows/vc2010/freetype.vcxproj, + builds/windows/vc2010/index.html, + builds/windows/visualc/freetype.dsp, + builds/windows/visualc/freetype.vcproj, + builds/windows/visualc/index.html, + builds/windows/visualce/freetype.dsp, + builds/windows/visualce/freetype.vcproj, + builds/windows/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.5.1/2.5.2/, s/251/252/. + + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 1. + + * builds/unix/configure.raw (version_info): Set to 17:1:11. + * docs/CHANGES: Updated. + +2013-12-07 Werner Lemberg + + [truetype] Next round in phantom point handling. + + Greg Hitchcock provided very interesting insights into the + complicated history of the horizontal positions of the TSB and BSB + phantom points. + + * src/truetype/ttgload.c (TT_LOADER_SET_PP) + [TT_CONFIG_OPTION_SUBPIXEL_HINTING]: Use `subpixel_hinting' and + `grayscale_hinting' flags as conditionals for the x position of TSB + and BSB. + +2013-12-05 Werner Lemberg + + * builds/freetype.mk (FT_CC): Removed. Unused. + +2013-12-04 Werner Lemberg + + [sfnt] Fix handling of embedded bitmap strikes. + + This corrects the commit from 2013-11-21. Problem reported by + Andrey Panov . + + * src/sfnt/ttsbit.c (tt_sbit_decoder_load_bitmap): Fix logic to + detect excessive bytes for bit-aligned bitmaps. + +2013-12-03 Werner Lemberg + + [truetype] Remove dead code. + + Reported by Nigel Tao . + + * include/internal/tttypes.h (TT_LoaderRec): Remove unused + `preserve_pps' field. + * src/truetype/ttgload.c (TT_Hint_Glyph): Updated. + +2013-12-03 Werner Lemberg + + [truetype] Fix phantom point handling. + + This is a further improvement to the changes from 2013-11-06. + + * src/truetype/ttgload.c (TT_Hint_Glyph): Horizontal phantom points + are rounded horizontally, vertical ones are rounded vertically. + (TT_LOADER_SET_PP): The horizontal position of vertical phantom + points in pre-ClearType mode is zero, as shown in the OpenType + specification. + +2013-12-02 Werner Lemberg + + [truetype] Fix change from 2013-11-20. + + Problem reported by Akira Kakuto . + + * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Protect call to + `Update_Max' with both a TT_USE_BYTECODE_INTERPRETER guard and a + `IS_HINTED' clause. + Also remove redundant check using `maxSizeOfInstructions' – in + simple glyphs, the bytecode data comes before the outline data, and + a validity test for this is already present. + +2013-11-27 Werner Lemberg + + [autofit] Fix use of dumping functions in `ftgrid' demo program. + + * src/autofit/afhints.c (AF_DUMP) [FT_DEBUG_AUTOFIT]: New macro. + (af_glyph_hints_dump_points, af_glyph_hints_dump_segments, + af_glyph_hints_dump_edges) [FT_DEBUG_AUTOFIT]: Add parameter to + handle output to stdout. + Use AF_DUMP. + (af_glyph_hints_dump_points, af_glyph_hints_dump_segments, + af_glyph_hints_dump_edges) [!FT_DEBUG_AUTOFIT]: Removed. + +2013-11-25 Werner Lemberg + + * Version 2.5.1 released. + ========================= + + + Tag sources with `VER-2-5-1'. + + * docs/VERSION.DLL: Update documentation and bump version number to + 2.5.1. + + * README, Jamfile (RefDoc), builds/windows/vc2005/freetype.vcproj, + builds/windows/vc2005/index.html, + builds/windows/vc2008/freetype.vcproj, + builds/windows/vc2008/index.html, + builds/windows/vc2010/freetype.vcxproj, + builds/windows/vc2010/index.html, + builds/windows/visualc/freetype.dsp, + builds/windows/visualc/freetype.vcproj, + builds/windows/visualc/index.html, + builds/windows/visualce/freetype.dsp, + builds/windows/visualce/freetype.vcproj, + builds/windows/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.5.0/2.5.1/, s/250/251/. + + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 1. + + * builds/unix/configure.raw (version_info): Set to 17:0:11. + * CMakeLists.txt (VERSION_PATCH): Set to 2. + * docs/CHANGES, docs/release: Updated. + +2013-11-23 Werner Lemberg + + [truetype]: Add tricky font names `hkscsiic.ttf' and `iicore.ttf'. + + * src/truetype/ttobjs.c (TRICK_NAMES_MAX_CHARACTERS, + TRICK_NAMES_COUNT): Updated. + (trick_names): Add family name for the two fonts. + +2013-11-23 Werner Lemberg + + * src/sfnt/ttsbit.c (tt_sbit_decoder_load_bitmap): Typo. + +2013-11-21 Werner Lemberg + + [sfnt] Typo. + + Problem reported by Hin-Tak Leung . + + * src/sfnt/sfobjs.c (sfnt_load_face): Return correct `bsize->width' + value if the font lacks an `OS/2' table. + +2013-11-21 Werner Lemberg + + [sfnt] Improve handling of buggy embedded bitmap strikes. + + We are now able to successfully load `AppleMyoungJo.ttf'. + Problem reported by Hin-Tak Leung . + + * src/sfnt/ttsbit.c (tt_sbit_decoder_load_bitmap): Don't trust glyph + format. + +2013-11-20 Werner Lemberg + + [truetype] Don't trust `maxp's `maxSizeOfInstructions'. + + Problem reported by Hin-Tak Leung ; see + + http://lists.nongnu.org/archive/html/freetype-devel/2013-08/msg00005.html + + for details. + + * src/base/ftobjs.c (FT_Load_Glyph): Check size of `fpgm' and `prep' + tables also for setting `autohint'. + + * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Use code from + `TT_Process_Composite_Glyph' for handling unreliable values of + `maxSizeOfInstructions'. + +2013-11-16 Werner Lemberg + + [sfnt] Fix `OS/2' table version 5 support. + + We now follow the `official' announcement from Microsoft (on the + OpenType mailing list, which unfortunately hasn't a public archive). + + * include/freetype/tttables.h (TT_OS2): + s/usLowerPointSize/usLowerOpticalPointSize/, + s/usUpperPointSize/usUpperOpticalPointSize/. + + * src/sfnt/ttload.c (tt_face_load_os2): Update, and set correct + default values. + +2013-11-13 Werner Lemberg + + * builds/unix/ft2unix.h: Remove. No longer necessary. + + * builds/unix/install.mk (install): Updated. + +2013-11-13 Werner Lemberg + + Simplify header file hierarchy. + + This large patch changes the header file directory layout from + `include/freetype/...' to `include/...', effectively removing one + level. Since the file `ft2build.h' is also located in `include' + (and it stays there even after installation), all FreeType header + files are now in a single directory. + + Applications that use (a) `freetype-config' or FreeType's + `pkg-config' file to get the include directory for the compiler, and + (b) the documented way for header inclusion like + + #include + #include FT_FREETYPE_H + ... + + don't need any change to the source code. + + * include/freetype/*: Move up to... + * include/*: ... this directory. + + * builds/amiga/include/freetype/*: Move up to... + * builds/amiga/include/*: ... this directory. + + */*: Essentially do `s@/freetype/@/@' where appropriate. + + * CMakeList.txt: Simplify. + * builds/unix/freetype-config.in, builds/unix/freetype2.in: For + `--cflags', return a single directory. + * builds/unix/install.mk (install): No longer try to remove `cache' + and `internal' subdirectories; instead, remove the `freetype' + subdirectory. + +2013-11-12 Werner Lemberg + + [truetype] Fix last `truetype' commit. + + * src/truetype/ttgload.c (tt_get_metrics): Preserve stream position. + Return error value. + (load_truetype_glyph): Updated. + +2013-11-10 Werner Lemberg + + * docs/CMAKE: New dummy file. + +2013-11-08 Dave Arnold + + [cff] Fix for hints that touch. + + * src/cff/cf2hints.c (cf2_hintmap_insertHint): Fix condition for + finding index value of insertion point. + +2013-11-06 Werner Lemberg + + [truetype] Fix handling of phantom points in composite glyphs. + Problem reported by Nigel Tao . + + This is a follow-up commit to the previous one. + + * src/truetype/ttgload.c (load_truetype_glyph): Call + `tt_get_metrics' after loading the glyph header. + +2013-11-06 Werner Lemberg + + [truetype] Improve emulation of vertical metrics. + + This commit also improves the start values of vertical phantom + points. Kudos to Greg Hitchcock for help. + + * src/truetype/ttgload.c (TT_Get_VMetrics): Add parameter to pass + `yMax' value. Replace code with fixed Microsoft definition. + (tt_get_metrics): Updated. + (TT_LOADER_SET_PP): Add explanation how to initialize phantom + points, taken from both the OpenType specification and private + communication with Greg (which will eventually be added to the + standard). + Fix horizontal position of `pp3' and `pp4'. + + * src/truetype/ttgload.h: Updated. + + * src/truetype/ttdriver.c (tt_get_advances): Updated. + + * docs/CHANGES: Updated. + +2013-11-05 Werner Lemberg + + * builds/windows/vc2010/freetype.vcxproj: s/v110/v100/. + PlatformToolSet version 110 is for VC2012. + + Problem reported (with solution) by Dave Arnold . + +2013-11-05 Werner Lemberg + + [truetype] Correctly reset point tags for glyph components. + Problem reported by Nigel Tao . + + * src/truetype/ttgload.c (TT_Process_Composite_Glyph): Fix loop. + +2013-11-02 Werner Lemberg + + [truetype] Fix GETINFO opcode handling of subpixel hinting bits. + + * src/truetype/ttinterp.c (Ins_GETINFO): Don't request bit 6 set to + get info on subpixel hinting. + + * docs/CHANGES: Updated. + +2013-11-02 Werner Lemberg + + Fix Savannah bug #40451. + + Simply apply the patch from the bug report. + + * builds/unix/ftconfig.in, builds/vms/ftconfig.h, + include/freetype/config/ftconfig.h: The used #pragma directives only + work with gcc versions 4.6 and higher. + +2013-11-01 Werner Lemberg + + * docs/CHANGES: Updated. + +2013-11-01 Werner Lemberg + + [truetype] Minor code refactoring. + + Two benefits: The allocated FDEF (and IDEF) array gets slightly + smaller, and the `ttdebug' demo program has access to function + numbers without additional costs. + + Fortunately, no changes to FontForge are necessary – this is the + only external TrueType debugger I know of, but others may exist and + should check the code accordingly. + + * src/truetype/ttinterp.h (TT_CallRec): Replace `Cur_Restart' and + `Cur_End' with a pointer to the corresponding `TT_DefRecord' + structure. + + * src/truetype/ttinterp.c (DO_JROT, DO_JMPR, DO_JROF, Ins_ENDF, + Ins_CALL, Ins_LOOPCALL, Ins_UNKNOWN, TT_RunIns ): + Updated. + +2013-10-27 Werner Lemberg + + [sfnt] Implement support for `OS/2' table version 5. + + See + + http://typedrawers.com/discussion/470/new-microsoft-size-specific-design-selection-mechanism + + for the announcement. + + * include/freetype/tttables.h (TT_OS2): Add fields + `usLowerPointSize' and `usUpperPointSize'. Since FreeType returns + this structure only as a pointer through `FT_Get_Sfnt_Table', there + shouldn't be any ABI problems. + + * src/sfnt/ttload.c (tt_face_load_os2): Implement it. + + * docs/CHANGES: Updated. + +2013-10-24 Werner Lemberg + + * README.git, docs/CHANGES, docs/INSTALL: Updated. + +2013-10-24 John Cary + + Provide cmake support. + + * CMakeLists.txt: New file. + +2013-10-23 Kenneth Miller + Werner Lemberg + + Provide support for x64 builds in Visual C++ project files. + + * src/builds/win32: Renamed to... + * src/builds/windows: This. + + * src/builds/windows/vc2010/*: Updated to handle x64 target. + + * src/builds/windows/*.mk, docs/INSTALL.GNU: s/win32/windows/ where + appropriate. + +2013-10-22 Werner Lemberg + + * src/base/md5.c, src/base/md5.h: Updated to recent version. + + * src/base/ftobjs.c: Updated; `md5.c' no longer uses `free'. + + The canonical URL to get updates for this file is + + http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/popa3d/popa3d/md5/ + + as the author told me in private communication. + +2013-10-19 Werner Lemberg + + [autofit] s/SMALL_TOP/X_HEIGHT/. + + * src/autofit/afblue.dat: Updated. + + * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. + + * src/autofit/aflatin.c, src/autofit/aflatin.h, + src/autofit/atlatin2.c: Updated. + +2013-10-19 Werner Lemberg + + * src/autofit/afblue.dat: s/MINOR/DESCENDER/. + + * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. + +2013-10-16 Werner Lemberg + + [autofit] Add description strings to script entries. + + Currently, this is unused. + + * src/autofit/afscript.h: Do it. + * src/autofit/afglobal.c, src/autofit/afpic.c, + src/autofit/aftypes.h: Updated. + +2013-10-16 Werner Lemberg + + [autofit] Improve tracing message for extra light flag. + + * src/autofit/aflatin.c (af_latin_metrics_scale_dim): Do it. + +2013-10-15 Chongyu Zhu + + [arm] Fix thumb2 inline assembly under LLVM. + + When using `ADD' with an immediate operand, the instruction is + actually `ADD Rd, Rn, #', that is, the maximum of the + immediate operand cannot exceed 4095. It will fail to compile with + LLVM. + + However, in GCC, due to some legacy compatibility considerations, + `ADD.W' will be automatically emitted when the immediate operand is + larger than 4095. + + * builds/unix/ftconfig.in, include/freetype/config/ftconfig.h + (FT_MulFix_arm) [__GNUC__]: Support clang compiler. + + * src/truetype/ttinterp.c (TT_MulFix14_arm) [__GNUC__]: Ditto. + +2013-10-12 Werner Lemberg + + [autofit] Improve tracing of `latin' hinter. + + * src/autofit/aflatin.c (af_latin_metrics_init_blues): Report blue + zone types. + (af_latin_metrics_scale_dim): Report scaling changes due to x height + alignment. + Report scaled stroke width and blue zone values. + +2013-10-03 Dave Arnold + + * src/cff/cf2font.c (cf2_computeDarkening): Avoid division by zero. + + Note that the old code avoided using a region of the piecewise + linear function where the slope was zero. The recovery was to use a + different section of the function, which produced a different, + incorrect amount of darkening. + +2013-10-02 Darrell Bellert + + * src/sfnt/ttload.c (tt_face_load_pclt): Fix `pclt_fields'. + +2013-10-02 Dave Arnold + + * src/cff/cf2font.c (cf2_computeDarkening): Initialize darkenAmount. + + This line was lost in commit 89ca1fd6 (from 2013-06-25). The effect + is to use a previous darkening amount when producing an unhinted, + unscaled outline. This can cause autohint samples in ftgrid and + ftview to be based on darkened CFF outlines instead of unhinted, + undarkened ones. + +2013-09-29 Dave Arnold + + Fix Savannah bug #39295. + + The bug was caused by switching to the initial hintmap (the one in + effect when `moveto' executes) just before drawing the final element + in the charstring. This ensured that the path was closed (in both + Character Space and Device Space). But if the final element was a + curve and if the final hintmap was different enough from the initial + one, then the curve was visibly distorted. + + The first part of the fix is to draw the final curve using the final + hintmap as specified by the charstring. This corrects the + distortion but does not ensure closing in Device Space. It may + require the rasterizer to automatically generate an extra closing + line. Depending on the hintmap differences, this line could be from + zero to a couple pixels in length. + + The second part of the fix covers the case where the charstring + subpath is closed with an explicit line. We now modify that line's + end point to avoid the distortion. + + Some glyphs in the bug report font (TexGyreHeros-Regular) that show + the change are: + + 25ppem S (98) + 24ppem eight (52) + 25.5ppem p (85) + + Curves at the *end* of a subpath are no longer distorted. However, + some of these glyphs have bad hint substitutions in the middle of a + subpath, and these are not affected. + + The patch has been tested with a set of 106 fonts that shipped with + Adobe Creative Suite 4, together with 756 Open Source CFF fonts from + Google Fonts. There are 1.5 million glyphs, of which some 20k are + changed with the fix. A sampling of a few hundred of these changes + have been examined more closely, and the changes look good (or at + least acceptable). + + * src/cff/cf2hints.h (CF2_GlyphPathRec): New element `pathIsClosing' + to indicate that we synthesize a closepath line. + + * src/cff/cf2hints.c (cf2_glyphpath_init): Updated. + (cf2_glyphpath_pushPrevElem): If closing, use first hint map (for + `lineto' operator) and adjust hint zone. + For synthesized closing lines, use end point in first hint zone. + (cf2_glyphpath_lineTo): Take care of synthesized closing lines. In + particular, shift the detection of zero-length lines from character + space to device space. + (cf2_glyphpath_closeOpenPath): Remove assertion. + Updated. + +2013-09-25 Werner Lemberg + + * src/autofit/aflatin.c (af_{grek,cyrl}_uniranges): Fix arrays. + +2013-09-25 suzuki toshiya + + [bdf, pcf] Refuse non-zero face_index. + + Suggested by Akira Tagoh, see + + http://lists.gnu.org/archive/html/freetype/2013-09/msg00030.html + + * src/bdf/bdfdrivr.c (BDF_Face_Init): Return `Invalid_Argument' + error if the font could be opened but non-zero `face_index' is + given. + * src/pcf/pcfdrivr.c (PCF_Face_Init): Ditto. + + * src/type42/t42objs.c (T42_Face_Init): Remove unrequired FT_UNUSED + macro for `face_index' because it is validated later. + +2013-09-23 Werner Lemberg + + Fix Savannah bug #40090. + + * src/autofit/afcjk.c (af_cjk_metrics_scale): Revert commit + 306f8c5d (from 2013-08-25) affecting this function. + +2013-09-22 Werner Lemberg + + [autofit] Disunify Cyrillic and Greek handling from Latin. + + * src/autofit/afscript.h: Add Cyrillic and Greek. + + * src/autofit/afblue.dat (AF_BLUE_STRINGSET_GREK, + AF_BLUE_STRINGSET_CYRL): Add blue zones for Greek and Cyrillic. + (AF_BLUE_STRINGSET_LATN): Fix typo. + * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. + + * src/autofit/aflatin.c (af_grek_uniranges, af_cyrl_uniranges): New + arrays. + (af_grek_script_class, af_cyrl_script_class): New scripts. + * src/autofit/aflatin.h: Updated. + +2013-09-20 Werner Lemberg + + * docs/CHANGES: Updated. + +2013-09-20 Behdad Esfahbod + + Fix vertical size of emboldened glyphs. + + Cf. https://bugzilla.gnome.org/show_bug.cgi?id=686709 + + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Adjust `horiBearingY' + also. + +2013-09-11 Alexei Podtelezhnikov + + * include/freetype/ftoutln.h: Correct FT_Outline_Get_Orientation + algorithm description. + +2013-09-11 Werner Lemberg + + [autofit] Improve Hebrew rendering. + + This change introduces a new blue zone property + `AF_BLUE_PROPERTY_LATIN_LONG' to make the auto-hinter ignore short + top segments. + + * src/autofit/afblue.dat: Fix Hebrew blue strings. + Use AF_BLUE_PROPERTY_LATIN_LONG for AF_BLUE_STRING_HEBREW_TOP. + + * src/autofit/afblue.hin (AF_BLUE_PROPERTY_LATIN_LONG): New macro. + + * src/autofit/afblue.c, src/autofit/afblue.h: Updated. + + * src/autofit/aflatin.c (af_latin_metrics_init_blues): Handle + `AF_LATIN_IS_LONG_BLUE'. + + * src/autofit/aflatin.h (AF_LATIN_IS_LONG_BLUE): New macro. + +2013-08-28 Behdad Esfahbod + + [sfnt] Fix frame access while reading WOFF table directory. + + * src/sfnt/sfobjs.c (woff_open_font): Using single memory frame + while reading the directory entries for the whole loop. + +2013-08-29 Werner Lemberg + Behdad Esfahbod + + Implement support for WOFF containers. + + We simply synthesize a SFNT from the WOFF, create a memory stream + for the new data, and load the SFNT as usual. + + Does NOT add any API to access WOFF metadata or private blocks. + + * include/freetype/internal/tttypes.h (WOFF_HeaderRec, + WOFF_TableRec): New structures. + + * include/freetype/tttags.h (TTAG_wOFF): New macro. + + * src/base/ftobjs.c (FT_Open_Face): Set `stream' after calling + `open_face'. + + * src/sfnt/sfobjs.c [FT_CONFIG_OPTION_SYSTEM_ZLIB]: Include + `FT_GZIP_H'. + (WRITE_BYTE, WRITE_USHORT, WRITE_ULONG): New temporary macros for + writing to a stream. + (sfnt_stream_close, compare_offsets, woff_open_font): New functions. + (sfnt_open_font): Handle `TTAG_wOFF'. + (sfnt_init_face): Set `stream' after calling `sfnt_open_font'. + + * src/truetype/ttobjs.c (tt_face_init): Set `stream' after calling + `sfnt->init_face'. + + * src/base/ftobjs.c (open_face): Use a pointer to FT_Stream as an + argument so that a changed stream survives. + Update callers. + +2013-08-28 Werner Lemberg + + [gzip] New function `FT_Gzip_Uncompress'. + + This is modeled after zlib's `uncompress' function. We need this + for WOFF support. + + * include/freetype/ftgzip.h, src/gzip/ftgzip.c (FT_Gzip_Uncompress): + New function. + + * src/gzip/rules.mk: Rewrite to better reflect dependencies. + +2013-08-28 Werner Lemberg + + [autofit] Fix `make multi' compilation. + + * src/autofit/afblue.cin, src/autofit/afblue.c: Don't include + `afblue.h' but `aftypes.h'. + * src/autofit/afcjk.c: Don't include `aftypes.h' but `afglobal.h'. + +2013-08-28 Werner Lemberg + + [autofit] Fix C++ compilation. + + * src/autofit/afglobal.c (af_face_globals_get_metrics), + src/autofit/afdummy.c (af_dflt_script_class), src/autofit/afindic.c + (af_deva_script_class): Use proper casts. + +2013-08-27 Behdad Esfahbod + + * src/sfnt/ttload.c (tt_face_load_font_dir): Fix sign typos. + +2013-08-27 Behdad Esfahbod + + FT_Open_Face: Improve external stream handling. + + If the font's `clazz->init_face' function wants to swap to new + stream, handling of whether original stream was external could + result to either memory leak or double free. Mark externality into + face flags before calling `init_face' such that the clazz can handle + external streams properly. + + * src/base/ftobjs.c (FT_Open_Face): Move code to set + FT_FACE_FLAG_EXTERNAL_STREAM to... + (open_face): This function. + +2013-08-27 Werner Lemberg + + Remove `FT_SqrtFixed' function. + + It's no longer used. + + * include/freetype/internal/ftcalc.h, src/base/ftcalc.c: Do it. + +2013-08-27 Werner Lemberg + + [autofit] While tracing, report script names instead of ID values. + + * src/autofit/afglobal.c (af_script_names) [FT_DEBUG_LEVEL_TRACE]: + New array. + * src/autofit/afglobal.h: Updated. + + * src/autofit/afcjk.c (af_cjk_metrics_init_widths, + af_cjk_hint_edges): Use `af_script_names'. + * src/autofit/aflatin.c (af_latin_metrics_init_widths, + af_latin_hint_edges): Ditto. + +2013-08-26 Werner Lemberg + + [autofit] Report used script while hinting a glyph. + + * src/autofit/afcjk.c (af_cjk_hint_edges), src/autofit/aflatin.c + (af_latin_hint_edges): Implement it. + +2013-08-26 Werner Lemberg + + [autofit] Add support for Hebrew script. + + * src/autofit/afblue.dat: Add blue strings for Hebrew. + * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. + + * src/autofit/aflatin.c (af_hebr_uniranges): New array. + (af_hebr_script_class): New script. + * src/autofit/aflatin.h, src/autofit/afscript.h: Updated. + +2013-08-26 Werner Lemberg + + [autofit] Improve tracing messages. + + * src/autofit/afcjk.c (af_cjk_metrics_init_widths): Mention script + ID in tracing message. + (af_cjk_metrics_init_blues): Initialize `axis' outside of the inner + loop. + Improve tracing messages. + (af_cjk_hint_edges) [FT_DEBUG_LEVEL_TRACE]: New variable + `num_actions' to count hinting actions. + Improve tracing messages. + + * src/autofit/aflatin.c (af_latin_metrics_init_widths): Mention + script ID in tracing message. + (af_latin_metrics_init_blues, af_latin_hint_edges): Improve tracing + messages. + +2013-08-26 Werner Lemberg + + Better tracing of loaded glyphs. + + Previously, the loading of a glyph was traced at level 4, if at all. + With this change, all font loading routines emit a tracing message + at level 1, making it easier to select tracing output (for example + using F2_DEBUG="any:1 afhints:7 aflatin:7"). + + * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Add tracing message. + * src/cff/cffdrivr.c (cff_glyph_load): Ditto. + * src/cff/cffgload.c (cff_decoder_prepare): Improve tracing + messages. + * src/cid/cidgload.c (cid_load_glyph): Use level 1 for tracing + message. + * src/pcf/pcfdrivr.c (PCF_Glyph_Load): Ditto. + * src/pfr/pfrobjs.c (pfr_slot_load): Add tracing message. + * src/truetype/ttgload.c (TT_Load_Glyph): Ditto. + * src/type1/t1gload.c (T1_Load_Glyph): Ditto. + * src/type42/t42objs.c (T42_GlyphSlot_Load): Ditto. + * src/winfonts/winfnt.c (FNT_Load_Glyph): Ditto. + +2013-08-26 Werner Lemberg + + [autofit] Fix script selection. + + * src/autofit/afglobal.c (af_face_globals_get_metrics): Use + `AF_SCRIPT_DFLT', not value 0. + Simplify code. + + * src/autofit/afscript.h: Sort by script name. + +2013-08-26 Werner Lemberg + + [autofit] Make `dummy' hinter work as expected. + + * src/autofit/afdummy.c (af_dummy_hints_init): Properly set scaling + information. + (af_dummy_hints_apply): Scale the glyphs. + +2013-08-25 Werner Lemberg + + [autofit] Make `cjk' module use blue stringsets. + + * src/autofit/afcjk.c (AF_CJK_MAX_TEST_CHARACTERS): Removed. + (af_cjk_hani_blue_chars): Removed. + (AF_CJK_BLUE_TYPE_*): Removed. + (af_cjk_metrics_init_blues): Replace AF_CJK_MAX_TEST_CHARACTERS with + AF_BLUE_STRING_MAX_LEN. + Change loops to use offsets (in file `afblue.h') into the new arrays + `af_blue_stringsets' and `af_blue_strings' (in file `afblue.c'). + Instead of three dimensions (as used in the old blue string array) + we now use properties to do the same, saving one loop nesting level. + + * src/autofit/afcjk.h: Remove old enumeration values superseded by + the new data in `afblue.h'. + (AF_CJK_IS_TOP_BLUE, AF_CJK_IS_HORIZ_BLUE, AF_CJK_IS_FILLED_BLUE, + AF_CJK_IS_RIGHT_BLUE): New macros, to be used in + `af_cjk_metrics_init_blues'. + (AF_CJK_BLUE_IS_RIGHT): Remove this now redundant enum value. + (AF_CJK_BLUE_IS_TOP): Renamed to... + (AF_CJK_BLUE_TOP): This. + (AF_CJK_MAX_BLUES): Remove. + (AF_CJKAxisRec): Updated. + +2013-08-25 Werner Lemberg + + [autofit] Typo. + + * src/autofit/afblue.hin, src/autofit/afblue.c (GET_UTF8_CHAR): Use + cast. + +2013-08-25 Werner Lemberg + + [autofit] Synchronize `cjk' with `latin' module (and vice versa). + + * src/autofit/afcjk.c (af_cjk_metrics_init_widths): Add tracing + messages. + (af_cjk_metrics_init_blues): Don't pass blue string array as + argument but use the global array directly. + Use `outline' directly. + Update and add tracing messages. + (af_cjk_metrics_init): Simplify code. + (af_cjk_metrics_scale_dim): Improve tracing message. + (af_cjk_metrics_scale): Synchronize. + + * src/autofit/aflatin.c (af_latin_metrics_init_widths, + af_latin_metrics_init_blues): Improve and add tracing messages. + +2013-08-25 Werner Lemberg + + [autofit] Make `latin' module use blue stringsets. + + * src/autofit/aflatin.c (AF_LATIN_MAX_TEST_CHARACTERS): Removed. + (af_latin_blue_chars): Removed. + (af_latin_metrics_init_blues): Replace AF_LATIN_MAX_TEST_CHARACTERS + with AF_BLUE_STRING_MAX_LEN. + Change loops to use offsets (in file `afblue.h') into the new arrays + `af_blue_stringsets' and `af_blue_strings' (in file `afblue.c'). + Use `AF_LATIN_IS_SMALL_TOP_BLUE' macro. + + * src/autofit/aflatin.h: Remove old enumeration values superseded by + the new data in `afblue.h'. + (AF_LATIN_IS_TOP_BLUE): Updated definition. + (AF_LATIN_IS_SMALL_TOP_BLUE): New macro. + (AF_LATIN_MAX_BLUES): Remove. + (AF_LatinAxisRec): Updated. + +2013-08-25 Werner Lemberg + + [autofit] Add blue stringsets. + + * src/autofit/aftypes.h: Include `afblue.h'. + (AF_ScriptClassRec): Add `blue_stringset' field. + (AF_DEFINE_SCRIPT_CLASS): Updated. + + * src/autofit/autofit.c: Include `afblue.c'. + + * src/autofit/afcjk.c (af_hani_script_class), src/autofit/afdummy.c + (af_dflt_script_class), src/autofit/afindic.c + (af_deva_script_class), src/autofit/aflatin.c + (af_latn_script_class), src/autofit/aflatin2.c + (af_ltn2_script_class): Updated. + + * src/autofit/rules.mk (AUTOF_DRV_SRC): Add `afblue.c'. + +2013-08-25 Werner Lemberg + + [autofit] Introduce data file for blue strings. + + The idea is to have a central file which gets processed by a Perl + script to create proper `.c' and `.h' files using templates. There + are two other reasons to do that: + + . The data file should be easily readable. We use UTF-8 encoding + which then gets converted to single bytes. + + . Since the number of supported scripts will increase soon, the + current usage of blue string arrays is a waste of space. Using + the Perl script it is possible to imitate jagged arrays, + defining enumeration constants as offsets into the arrays. + + This commit only adds files without changing any functionality. + + * src/autofit/afblue.dat: New data file. + * src/tools/afblue.pl: New Perl script for processing `afblue.dat'. + + * src/autofit/afblue.cin, src/autofit/afblue.hin: New template files + for... + * src/autofit/afblue.c, src/autofit/afblue.c: New source files. + To avoid a dependency on Perl, we add them too. + +2013-08-19 Alexei Podtelezhnikov + + [base] Enable new algorithm for `BBox_Cubic_Check'. + + * src/base/ftbbox.c: Enable new BBox_Cubic_Check algorithm, remove + the old one. + Improve comments. + +2013-08-18 Werner Lemberg + + * builds/unix/unix-def.in (freetype2.pc): Don't set executable bit. + +2013-08-18 Werner Lemberg + + Fix Savannah bug #39804. + + * builds/unix/configure.raw (LIBPNG): Define and export. + * builds/unix/freetype-config.in, builds/unix/freetype2.in: Handle + libpng. + +2013-08-17 Alexei Podtelezhnikov + + [base] Clean up BBox_Conic_Check. + + * src/base/ftbbox.c (BBox_Conic_Check): Remove redundant checks for + extremum at the segment ends, which are already within the bbox. + Slightly modify calculations. + +2013-08-15 Alexei Podtelezhnikov + + [base] Finish experimental (disabled) BBox_Cubic_Check implementation. + + * src/base/ftbbox.c (BBox_Cubic_Check): Scale arguments to improve + accuracy and avoid overflows. + +2013-08-13 Alexei Podtelezhnikov + + [base] Refactor experimental (disabled) BBox_Cubic_Check. + + * src/base/ftbbox.c (BBox_Cubic_Check): Implement the minimum search + as the mirror image of the maximum search implemented here... + (update_max): New function. + +2013-08-06 John Tytgat + + Fix Savannah bug #39702. + + * src/cff/cffload.c (cff_index_get_pointers): Check for `cur_offset + != 0'; this stronger test is mandated by the CFF specification. + Fix test for INDEX structures which have one or more empty entries + at the end. + +2013-08-05 Werner Lemberg + + Fix gcc pragmas, part 2. + + * src/truetype/ttinterp.c (TT_MulFix14_long_long, + TT_DotFix14_long_long): `#pragma gcc diagnostic {push,pop}' has been + introduced with gcc version 4.6. + +2013-08-05 Werner Lemberg + + Fix gcc pragmas. + + * src/truetype/ttinterp.c (TT_MulFix14_long_long, + TT_DotFix14_long_long): Older gcc versions don't accept diagnostic + pragmas within a function body. + +2013-08-05 Werner Lemberg + + Fix Savannah bug #39700. + + * builds/unix/ftconfig.h: Synchronize with + `include/freetype/config/ftconfig.h'. + + * builds/vms/ftconfig.h: Ditto. + Make the differences to the master `ftconfig.h' file as small as + possible for easier maintainance. + +2013-08-05 Werner Lemberg + + [autofit] Improve handling of `near' points. + + Points which are very near to each other are now marked as such. + The `weak' flag is then computed by using the `in' vector of the + first and the `out' vector of the last point of a group of near + points. + + For example, this fixes the rendering of glyph `Oslash' in + `Roboto-Thin.ttf'. + + * src/autofit/afhints.h (AF_Flags): New value `AF_FLAGS_NEAR'. + + * src/autofit/afhints.c (af_glyph_hints_reload): Introduce + the heuristic value `near_limit' to decide whether the current point + is near to the previous one, then set `AF_FLAG_NEAR' accordingly. + Store good `in' vector (of last non-near point) in + `last_good_in_{x,y}' and use it as an argument to + `ft_corner_is_flat' if necessary. + +2013-08-02 Werner Lemberg + + * include/freetype/ftcffdrv.h: Improve documentation. + This is based on blog entries from David Lemon and Dave Arnold (both + from Adobe) with kind permission. Dave also helped in + proof-reading. + +2013-08-02 Werner Lemberg + + [autofit] Move declaration of scripts into separate file. + + This has the benefit that we don't need to duplicate the data at + different places. + + * src/autofit/afscript.h: New file. + + * src/autofit/aftypes.h (AF_Script): Include `afscript.h' to define + the enumeration values. + + * src/autofit/afglobal.c: Include `afscript.h' to get the script + specific header files. + (af_script_classes): Include `afscript.h' to fill this array. + + * src/autofit/afpic.c: Include `afscript.h' to get the script + specific header files. + (autofit_module_class_pic_init): Include `afscript.h' for + initialization. + * src/autofit/afpic.h (AF_SCRIPT_CLASSES_COUNT, + AF_SCRIPT_CLASSES_REC_COUNT): Removed. Use `AF_SCRIPT_MAX' instead. + + * src/autofit/rules.mk (AUTOF_DRV_H): Updated. + +2013-08-02 Werner Lemberg + + [autofit] Move declaration of writing systems into separate file. + + This has the benefit that we don't need to duplicate the data at + different places. + + * src/autofit/afwrtsys.h: New file. + + * src/autofit/aftypes.h (AF_WritingSystem): Include `afwrtsys.h' to + define the enumeration values. + + * src/autofit/afglobal.c: Include `afwrtsys.h' to get the writing + system specific header files. + Include `afpic.h'. + (af_writing_system_classes): Include `afwrtsys.h' to fill this + array. + + * src/autofit/afpic.c: Include `afwrtsys.h' to get the writing + system specific header files. + (autofit_module_class_pic_init): Include `afwrtsys.h' for + initialization. + * src/autofit/afpic.h (AF_WRITING_SYSTEM_CLASSES_COUNT, + AF_WRITING_SYSTEM_CLASSES_REC_COUNT): Removed. Use + `AF_WRITING_SYSTEM_MAX' instead. + +2013-08-02 Werner Lemberg + + [sfnt] Fix compilation with g++. + + * src/sfnt/pngshim.c (error_callback, read_data_from_FT_stream): Use + cast. + (Load_SBit_Png): Pacify compiler. + +2013-08-02 suzuki toshiya + Werner Lemberg + + [autofit] Fix `make multi'. + + * include/freetype/config/ftconfig.h (FT_LOCAL_ARRAY, + FT_LOCAL_ARRAY_DEF): New macros. + + * src/autofit/afglobal.c (af_writing_system_classes, + af_script_classes): Use FT_LOCAL_ARRAY_DEF. + * src/autofit/afglobal.h: Declare `af_writing_system_classes' and + `af_script_classes'. + * src/autofit/afloader.c: Include `afpic.h'. + +2013-08-01 Werner Lemberg + + Another round of cppcheck nitpicks. + + The call was (from the top-level of the FreeType tree): + + cppcheck --force \ + --enable=all \ + -I /usr/include \ + -I /usr/local/include \ + -I /usr/lib/gcc/i586-suse-linux/4.7/include \ + -I include \ + -I include/freetype \ + -I include/freetype/config \ + -I include/freetype/internal \ + -DFT2_BUILD_LIBRARY \ + . &> cppcheck.log + + using cppcheck git commit f7e93f99. + + Note that cppcheck still can't handle `#include FOO' (with `FOO' a + macro). + + */* Improve variable scopes. + */* Remove redundant initializations which get overwritten. + + * src/gxvalid/*: Comment out redundant code or guard it with + FT_DEBUG_LEVEL_TRACE. + +2013-07-30 Werner Lemberg + + [autofit] Introduce `writing systems'. + + This patch adds a new top level to the auto-hinter's script class + hierarchy. It defines `writing systems' which can contain multiple + scripts. + + For example, the `latin' writing system (in file `aflatin.c') is + able to support scripts like Latin, Cyrillic, Armenian, etc., which + can be handled similarly. + + Scripts are now named using four-letter OpenType tags. + + * src/autofit/aftypes.h (AF_ScriptClassRec): Move relevant members + to... + (AF_WritingSystemClassRec): This new structure. It holds pointers + to functions which can be shared among related scripts. + (AF_WritingSystem): New enumeration. + (AF_Script): Revised values using four-letter tags. + (AF_DEFINE_WRITING_SYSTEM_CLASS): New macro. + (AF_DEFINE_SCRIPT_CLASS): Updated. + + * src/autofit/afglobal.c (af_writing_system_classes): New global, + constant array. + (af_script_classes): Updated. + (af_face_globals_free): Updated. + Remove assertion. + (af_face_globals_get_metrics): Updated. + + * src/autofit/afglobal.h (AF_SCRIPT_FALLBACK) + [!AF_CONFIG_OPTION_CJK]: Handle this case. + + * src/autofit/afloader.c (af_loader_load_g, af_loader_load_glyph): + Updated. + + * src/autofit/afpic.c (autofit_module_class_pic_init): Updated; + initialize structures for both writing systems and scripts. + * src/autofit/afpic.h: Updated. + (AF_WRITING_SYSTEM_CLASSES_GET): New macro. + + * src/autofit/afcjk.c (af_cjk_writing_system_class): New writing + system. + (af_cjk_uniranges): Renamed to... + (af_hani_uniranges): This. + (af_cjk_script_class): Reduced and renamed to... + (af_hani_script_class): This. + * src/autofit/afcjk.h: Updated. + + * src/autofit/afdummy.c (af_dummy_writing_system_class): New writing + system. + (af_dummy_script_class): Reduced and renamed to... + (af_dflt_script_class): This. + * src/autofit/afdummy.h: Updated. + + * src/autofit/afindic.c (af_indic_writing_system_class): New writing + system. + (af_indic_uniranges): Renamed to... + (af_deva_uniranges): This. + (af_indic_script_class): Reduced and renamed to... + (af_deva_script_class): This. + * src/autofit/afcjk.h: Updated. + + * src/autofit/aflatin.c (af_latin_writing_system_class): New writing + system. + (af_latin_uniranges): Renamed to... + (af_latn_uniranges): This. + (af_latin_script_class): Reduced and renamed to... + (af_latn_script_class): This. + * src/autofit/aflatin.h: Updated. + + * src/autofit/aflatin2.c (af_latin2_writing_system_class): New + writing system. + (af_latin2_uniranges): Renamed to... + (af_ltn2_uniranges): This. + Synchronize ranges with `latin'. + (af_latin2_script_class): Reduced and renamed to... + (af_ltn2_script_class): This. + * src/autofit/aflatin2.h: Updated. + +2013-07-30 Werner Lemberg + + [autofit] Variable renaming. + + * src/autofit/aftypes.h (AF_ScriptMetricsRec): + s/clazz/script_class/. + Update all users. + +2013-07-30 suzuki toshiya + + Ignore libpng-config under cross-building configuration, + because it will return the flags for the hosting environment. + + * builds/unix/configure.raw: Ignore libpng-config when + `cross_compiling' == yes. + +2013-07-30 Behdad Esfahbod + + Prevent division by zero by a transparent color. + + * src/base/ftbitmap.c (ft_gray_for_premultiplied_srgb_bgra): + Return 0 immediately, when alpha channel is zero. + +2013-07-25 Behdad Esfahbod + + Add FT_FACE_FLAG_COLOR and FT_HAS_COLOR. + + Also disambiguate Google's color bitmap tables. + + * include/freetype/freetype.h (FT_FACE_FLAG_COLOR, FT_HAS_COLOR): + New macros. + + * include/freetype/internal/tttypes.h (TT_SbitTableType): Add + TT_SBIT_TABLE_TYPE_CBLC. + + * src/sfnt/sfobjs.c (sfnt_load_face): Handle FT_FACE_FLAG_COLOR. + + * src/sfnt/ttsbit.c (tt_face_load_sbit, + tt_face_load_strike_metrics, tt_face_load_sbit_image): Handle + TT_SBIT_TABLE_TYPE_CBLC. + +2013-07-24 suzuki toshiya + + [sfnt] Fix for `make multi' target. + + * src/sfnt/pngshim.c (Load_SBit_Png): Use FT_LOCAL_DEF(). + +2013-07-20 Werner Lemberg + + * docs/INSTALL.GNU: Updated. + +2013-07-20 Behdad Esfahbod + + [sfnt] Fix `sbix' table version handling. + + * src/sfnt/ttsbit.c (tt_face_load_sbit) [TT_SBIT_TABLE_TYPE_SBIX]: + USHORT version numbers are to be considered as `minor'. + +2013-07-19 Werner Lemberg + + [autofit] Fix segment classification for blue zones. + + The old code (essentially unchanged since the very beginning) + incorrectly handled this configuration + + x -o- x + / \ + / \ + / \ + o o + + as flat and this + + o o + / / + x| x| + | | + o---------------o + + as round. (`o' and `x' are on and off points, respectively). + + This is a major change which should improve the rendering results + enormously for many TrueType fonts, especially in the range approx. + 20-40ppem, fixing the appearance of many overshoots. + + * src/autofit/aflatin.c (af_latin_metrics_init_blues): Look at the + first and last points of the segment, not the points right before + and after. + +2013-07-19 Behdad Esfahbod + + [sfnt] `sbix' fix-ups. + + * src/sfnt/sfobjs.c (sfnt_load_face): Apple's `sbix' color bitmaps + are rendered scaled and then the `glyf' outline rendered on top. We + don't support that yet, so just ignore the `glyf' outline and + advertise it as a bitmap-only font. + + * src/sfnt/ttsbit.c (tt_face_load_strike_metrics) + [TT_SBIT_TABLE_TYPE_SBIX]: Return metrics in 26.6 units. + (tt_face_load_sbix_image): Typo. + +2013-07-18 Behdad Esfahbod + + [sfnt] Add support for Apple's `sbix' color bitmap table. + + * include/freetype/internal/tttypes.h (TT_SBit_MetricsRec): Widen + fields to FT_Short and FT_UShort, respectively. + (TT_SBitTableType): New enumeration. + (TT_FaceRec): Add `sbit_table_type' field. + + * include/freetype/tttags.h (TTAG_sbix): New macro. + + * src/sfnt/pngshim.c (Load_SBit_Png): Pass a more generic + FT_GlyphSlot argument instead FT_Bitmap. + Add flag to control map and metrics handling. + Update all users. + + * src/sfnt/ttsbit.c: Include `ttmtx.h'. + (tt_face_load_eblc): Renamed to... + (tt_face_load_sbit): This. + Handlic `sbix' bitmaps. + (tt_face_free_eblc): Renamed to... + (tt_face_load_sbit): This. + Updated. + (tt_face_load_strike_metrics): Handle `sbix' bitmaps. + (tt_face_load_sbix_image): New function. + (tt_sbit_decoder_alloc_bitmap, tt_sbit_decoder_load_image, + tt_sbit_decoder_load_byte_aligned, tt_sbit_decoder_load_bit_aligned, + tt_sbit_decoder_load_compound, tt_sbit_decoder_load_png, + tt_sbit_decoder_load_image, tt_sbit_decoder_load_bitmap): Don't pass + and handle load flags. + (tt_sbit_decoder_load_bitmap) [!FT_CONFIG_OPTION_USE_PNG]: Better + handle formats 17-19. + Move color to grayscale conversion to... + (tt_face_load_sbit_image): Here. + Handle `sbix' bitmaps. + + * src/sfnt/pngshim.h: Updated. + * src/sfnt/ttsbit.h: Updated. + * src/sfnt/sfdriver.c: Updated. + +2013-07-18 Werner Lemberg + + [sfnt] Ignore invalid magic number in `head' or `bhed'. + + Other font engines seem to ignore it also. Problem reported by + Hin-Tak Leung . + + * src/sfnt/ttload.c (check_table_dir): Don't abort but warn only if + we have an invalid magic number. + +2013-07-16 Werner Lemberg + + [smooth] Fix segfault caused by previous commit. + + * src/smooth/ftgrays.c (gray_set_cell): Always compute + `ras.invalid'. + +2013-07-16 David Turner + + [smooth] Improve performance. + + Provide a work-around for an ARM-specific performance bug in GCC. + This speeds up the rasterizer by more than 5%. + + Also slightly optimize `set_gray_cell' and `gray_record_cell' (which + also improves performance on other platforms by a tiny bit (<1%). + + * src/smooth/ftgrays.c (FT_DIV_MOD): New macro. + Use it where appropriate. + + (gray_record_cell, gray_set_cell, gray_move_to, + gray_convert_glyph_inner): Streamline condition handling. + +2013-07-16 David Turner + + [truetype] Add assembler code for TT_MulFix14 and TT_DotFix14. + + This patch provides slightly optimized versions for ARM, x86, and + x86_64 CPUs if built with GCC. + + Also remove some dead code. + + * src/truetype/ttinterp.c (TT_MulFix14_arm, TT_MulFix14_long_long, + TT_DotFix14_long_long): New functions. + +2013-07-16 David Turner + + Optimize FT_MulFix for x86_64 GCC builds. + + This patch provides an optimized `FT_MulFix' implementation for + x86_64 machines when FreeType is built with GCC, or compatible + compilers like Clang. + + Example: + bin/ftbench -p -t 5 -s 14 -f 0008 Arial.ttf + + Before: + + Load 4.863 us/op + Load_Advances (Normal) 4.816 us/op + Load_Advances (Fast) 0.028 us/op + Render 2.753 us/op + Get_Glyph 0.463 us/op + Get_CBox 0.077 us/op + Get_Char_Index 0.023 us/op + Iterate CMap 13.898 us/op + New_Face 12.368 us/op + Embolden 0.028 us/op + Get_BBox 0.302 us/op + + After: + + Load 4.617 us/op + Load_Advances (Normal) 4.645 us/op + Load_Advances (Fast) 0.027 us/op + Render 2.789 us/op + Get_Glyph 0.460 us/op + Get_CBox 0.077 us/op + Get_Char_Index 0.024 us/op + Iterate CMap 13.403 us/op + New_Face 12.278 us/op + Embolden 0.028 us/op + Get_BBox 0.301 us/op + + * builds/unix/ftconfig.in, include/freetype/config/ftconfig.h + (FT_MulFix_x86_64): New function. + +2013-07-16 David Turner + + Speed up ARMv7 support. + + When building for ARMv7 with thumb2 instructions, the optimized + `FT_MulFix_arm' assembly routine was not being used. + + The reason for this is in the `ftconfig.h' header, namely: + + - The assembly routine uses the `smull' instruction which is not + available when generating Thumb-1 machine code. It is available + in Thumb-2 mode, though. + + - The header was written a long time ago before Thumb-2 became + widely popular (e.g. with Android). So it simply doesn't use the + assembly routine if the `__thumb__' built-in macro is defined. + + - When compiling in Thumb-2 mode, the compiler will define both + `__thumb__' and `__thumb2__'. + + By checking for `(__thumb2__ || !__thumb__)', we ensure that the + assembly routine is only avoided when generating Thumb-1 code. + + Given that this is performance-sensitive function, this improves + `ftbench' as follows on a Galaxy Nexus: + + Before (us/op) After (us/op) + + - loading Arial.ttf glyphs at 14 ppem [1] + + Load 34.285 33.098 + + - same operation with the light auto-hinter [2] + + Load 31.317 29.590 + + - same operation without hinting [3] + + Load 6.143 5.376 + + - loading Arial.ttf advances at 14 ppem [4] + + Load_Advances (normal) 34.216 33.016 + Load_Advances (fast) 0.176 0.176 + + [1] ftbench -t 5 -p -s 14 -b a -f 0008 Arial.ttf + [2] ftbench -t 5 -p -s 14 -b a -r 1 -f 0028 Arial.ttf + [3] ftbench -t 5 -p -s 14 -b a -f 000a Arial.ttf + [4] ftbench -t 5 -p -s 14 -b b -f 0008 Arial.ttf + + * builds/unix/ftconfig.in, include/freetype/config/ftconfig.h + (FT_MULFIX_ASSEMBLER): Fix handling for ARMv7. + +2013-06-28 Werner Lemberg + + * docs/CHANGES: Updated. + +2013-06-27 Werner Lemberg + + * src/winfonts/winfnt.c (FNT_Load_Glyph): Fix bitmap width guard. + +2013-06-25 Werner Lemberg + + [cff] Add darkening limit to `darkening-parameters'. + + * src/cff/cffdrivr.c (cff_property_set): Add check. + +2013-06-25 Werner Lemberg + + [cff] Add `darkening-parameters' property. + + * include/freetype/ftcffdrv.h: Document it. + + * src/cff/cffdrivr.c (cff_property_set, cff_property_get): Handle + `darkening-parameters' property. + + * src/cff/cf2font.h (CF2_FontRec): Add `darkenParams' array. + + * src/cff/cf2font.c (cf2_computeDarkening): Add `darkenParams' + argument and use it. + Update all callers. + + * src/cff/cf2ft.c (cf2_decoder_parse_charstrings): Copy + `darken_params' values. + + * src/cff/cffobjs.h (CFF_DriverRec): Add `darken_params' array. + + * src/cff/cffobjs.c (cff_driver_init): Set default values for + `darken_params'. + +2013-06-25 Werner Lemberg + + [docmaker] Code shuffling. + + * src/tools/docmaker/tohtml.py (re_url): Move regexp... + * src/tools/docmaker/sources.py: ... to this file. + +2013-06-25 Werner Lemberg + + [docmaker] Remove unused functions. + + * src/tools/docmaker/content.py (DocMarkup.get_start, + DocBlock.get_markup_name): Removed. + * src/tools/docmaker/tohtml.py (html_quote0, dump_html_code, + HtmlFormatter.make_html_words): Removed. + +2013-06-25 Werner Lemberg + + * builds/freetype.mk (dll): Remove target. + + Problem reported by Jörg Günnewig . + +2013-06-25 Werner Lemberg + + [docmaker] Recognise URLs. + + * src/tools/docmaker/tohtml.py (re_url): New regular expression. + (make_html_para): Use it. + 2013-06-19 Werner Lemberg * Version 2.5.0.1 released. @@ -295,7 +1851,7 @@ */* Improve variable scopes. */* Remove redundant initializations which get overwritten. - * src/base/ftmac.c ,builds/mac/ftmac.c (count_faces_scalable): + * src/base/ftmac.c, builds/mac/ftmac.c (count_faces_scalable): Remove unused variable. * src/base/ftdbgmem.c (ft_mem_table_destroy): `table' can't be zero. @@ -575,7 +2131,7 @@ [sfnt] Clean up bitmap code. * src/sfnt/ttsbit.c: Deleted. - * src/sfnt/ttsbit0.c: Renamed to `ttsbit.c'. + * src/sfnt/ttsbit0.c: Renamed to `ttsbit.c'. * rules.mk (SFNT_DRV_H): Updated. 2013-05-10 Werner Lemberg diff --git a/modules/freetype2/Jamfile b/modules/freetype2/Jamfile index 2fec5f106f4a..07d1eacce007 100644 --- a/modules/freetype2/Jamfile +++ b/modules/freetype2/Jamfile @@ -1,6 +1,6 @@ # FreeType 2 top Jamfile. # -# Copyright 2001-2011 by +# Copyright 2001-2011, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -140,9 +140,9 @@ DEFINES += FT2_BUILD_LIBRARY ; # FT2_MULTI = true ; -# The file is used to define macros that are -# later used in #include statements. It needs to be parsed in order to -# record these definitions. +# The file is used to define macros that are later used +# in #include statements. It needs to be parsed in order to record these +# definitions. # HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ; HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ; @@ -177,7 +177,7 @@ actions GenExportSymbols1 bind APINAMES $(APINAMES) $(2) > $(1) } -GenExportSymbols ftexport.sym : include/freetype include/freetype/cache ; +GenExportSymbols ftexport.sym : include include/cache ; # Test files (hinter debugging). Only used by FreeType developers. # @@ -195,7 +195,7 @@ rule RefDoc actions RefDoc { - python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.5.0 --output=$(DOC_DIR) $(FT2_INCLUDE)/freetype/*.h $(FT2_INCLUDE)/freetype/config/*.h + python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.5.2 --output=$(DOC_DIR) $(FT2_INCLUDE)/*.h $(FT2_INCLUDE)/config/*.h } RefDoc refdoc ; diff --git a/modules/freetype2/README b/modules/freetype2/README index 798715a41191..c660cd1c27e5 100644 --- a/modules/freetype2/README +++ b/modules/freetype2/README @@ -1,4 +1,4 @@ - FreeType 2.5.0 + FreeType 2.5.2 ============== Homepage: http://www.freetype.org @@ -24,9 +24,9 @@ and download one of the following files. - freetype-doc-2.5.0.tar.bz2 - freetype-doc-2.5.0.tar.gz - ftdoc250.zip + freetype-doc-2.5.2.tar.bz2 + freetype-doc-2.5.2.tar.gz + ftdoc252.zip To view the documentation online, go to diff --git a/modules/freetype2/README.git b/modules/freetype2/README.git index 47cb2423f163..021c121413d2 100644 --- a/modules/freetype2/README.git +++ b/modules/freetype2/README.git @@ -31,9 +31,13 @@ configure script is necessary at all; saying should work on all platforms which have GNU make (or makepp). +Similarly, a build with `cmake' can be done directly from the git +repository. + + ---------------------------------------------------------------------- -Copyright 2005, 2006, 2007, 2008, 2009, 2010 by +Copyright 2005-2010, 2013 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, diff --git a/modules/freetype2/README.moz-patches b/modules/freetype2/README.moz-patches index 5528d099fb72..ff0eddd1804b 100644 --- a/modules/freetype2/README.moz-patches +++ b/modules/freetype2/README.moz-patches @@ -1,4 +1,4 @@ -This directory contains freetype2 v2.5.0.1 downloaded from +This directory contains freetype2 v2.5.2 downloaded from http://savannah.nongnu.org/download/freetype/ There are currently no local changes applied the freetype tree. diff --git a/modules/freetype2/autogen.sh b/modules/freetype2/autogen.sh index 0eaba395b5f9..cc0e661ce5a7 100755 --- a/modules/freetype2/autogen.sh +++ b/modules/freetype2/autogen.sh @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2005, 2006, 2007, 2008, 2009, 2010 by +# Copyright 2005-2010, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -139,7 +139,7 @@ check_tool_version $LIBTOOLIZE libtoolize LIBTOOLIZE 2.2.4 check_tool_version $AUTOCONF autoconf AUTOCONF 2.62 # This sets freetype_major, freetype_minor, and freetype_patch. -eval `sed -nf version.sed include/freetype/freetype.h` +eval `sed -nf version.sed include/freetype.h` # We set freetype-patch to an empty value if it is zero. if test "$freetype_patch" = ".0"; then diff --git a/modules/freetype2/builds/amiga/README b/modules/freetype2/builds/amiga/README index 2b8f8e87dbb4..85fcc43308c5 100644 --- a/modules/freetype2/builds/amiga/README +++ b/modules/freetype2/builds/amiga/README @@ -1,7 +1,7 @@ README for the builds/amiga subdirectory. -Copyright 2005 by +Copyright 2005, 2013 by Werner Lemberg and Detlef Wrkner. This file is part of the FreeType project, and may only be used, modified, @@ -51,8 +51,8 @@ directory. The results are: - ftdebug.o, an object module containing the standard version of the debugging code which uses vprintf() and exit() (not pure). - Debugging can be turned on in FT:include/freetype/config/ftoption.h - and with FT_SetTraceLevel(). + Debugging can be turned on in FT:include/config/ftoption.h and with + FT_SetTraceLevel(). - ftdebugpure.o, an object module containing the pure version of the debugging code which uses KVPrintf() from lib:debug.lib and no @@ -64,15 +64,14 @@ directory. The results are: ftsystem.o would force ALL FreeType2 modules to be linked to your program, I decided to use a different scheme: You must #include FT:src/base/ftinit.c in your sourcecode and specify with #define - statements which modules you need. See - include/freetype/config/ftmodule.h. + statements which modules you need. See include/config/ftmodule.h. To use in your own programs: - Insert the #define and #include statements from top of - include/freetype/config/ftmodule.h in your source code and uncomment - the #define statements for the FreeType2 modules you need. + include/config/ftmodule.h in your source code and uncomment the + #define statements for the FreeType2 modules you need. - You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for calling the FreeType2 functions, because the link library and the diff --git a/modules/freetype2/builds/amiga/include/freetype/config/ftconfig.h b/modules/freetype2/builds/amiga/include/config/ftconfig.h similarity index 90% rename from modules/freetype2/builds/amiga/include/freetype/config/ftconfig.h rename to modules/freetype2/builds/amiga/include/config/ftconfig.h index c2c2ac8dbb69..a73ace671dde 100644 --- a/modules/freetype2/builds/amiga/include/freetype/config/ftconfig.h +++ b/modules/freetype2/builds/amiga/include/config/ftconfig.h @@ -4,7 +4,7 @@ /* */ /* Amiga-specific configuration file (specification only). */ /* */ -/* Copyright 2005, 2006, 2007 by */ +/* Copyright 2005-2007, 2013 by */ /* Werner Lemberg and Detlef Wrkner. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -34,9 +34,9 @@ /* Now include the original file */ #ifndef __MORPHOS__ #ifdef __SASC -#include "FT:include/freetype/config/ftconfig.h" +#include "FT:include/config/ftconfig.h" #else -#include "/FT/include/freetype/config/ftconfig.h" +#include "/FT/include/config/ftconfig.h" #endif #else /* We must define that, it seems that @@ -45,7 +45,7 @@ * binaries from http://www.morphos.de) */ #define _LIBC_LIMITS_H_ -#include "/FT/include/freetype/config/ftconfig.h" +#include "/FT/include/config/ftconfig.h" #endif /* diff --git a/modules/freetype2/builds/amiga/include/freetype/config/ftmodule.h b/modules/freetype2/builds/amiga/include/config/ftmodule.h similarity index 100% rename from modules/freetype2/builds/amiga/include/freetype/config/ftmodule.h rename to modules/freetype2/builds/amiga/include/config/ftmodule.h diff --git a/modules/freetype2/builds/amiga/makefile b/modules/freetype2/builds/amiga/makefile index 379883deec0d..8a1e4c61b159 100644 --- a/modules/freetype2/builds/amiga/makefile +++ b/modules/freetype2/builds/amiga/makefile @@ -5,7 +5,7 @@ # -# Copyright 2005, 2006, 2007, 2009 by +# Copyright 2005-2007, 2009, 2013 by # Werner Lemberg and Detlef Wrkner. # # This file is part of the FreeType project, and may only be used, modified, @@ -43,7 +43,7 @@ # # link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o # (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or -# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h). +# FT_DEBUG_LEVEL_TRACE in include/config/ftoption.h). all: libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o diff --git a/modules/freetype2/builds/amiga/makefile.os4 b/modules/freetype2/builds/amiga/makefile.os4 index 13758bcebf11..a2e6ffcedf70 100644 --- a/modules/freetype2/builds/amiga/makefile.os4 +++ b/modules/freetype2/builds/amiga/makefile.os4 @@ -4,7 +4,7 @@ # -# Copyright 2005, 2006, 2007, 2009 by +# Copyright 2005-2007, 2009, 2013 by # Werner Lemberg and Detlef Wrkner. # # This file is part of the FreeType project, and may only be used, modified, @@ -40,7 +40,7 @@ # # link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o # (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or -# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h). +# FT_DEBUG_LEVEL_TRACE in include/config/ftoption.h). all: assign libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o diff --git a/modules/freetype2/builds/amiga/smakefile b/modules/freetype2/builds/amiga/smakefile index 097aec9b0643..aee7fb9d4881 100644 --- a/modules/freetype2/builds/amiga/smakefile +++ b/modules/freetype2/builds/amiga/smakefile @@ -3,7 +3,7 @@ # -# Copyright 2005,2006, 2007, 2009 by +# Copyright 2005-2007, 2009, 2013 by # Werner Lemberg and Detlef Wrkner. # # This file is part of the FreeType project, and may only be used, modified, @@ -40,7 +40,7 @@ # # link your programs with ft2_680x0.lib and either ftsystem.o or ftsystempure.o # (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or -# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h). +# FT_DEBUG_LEVEL_TRACE in include/config/ftoption.h). OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfstype.o ftgasp.o \ ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o ftpatent.o ftpfr.o \ diff --git a/modules/freetype2/builds/amiga/src/base/ftdebug.c b/modules/freetype2/builds/amiga/src/base/ftdebug.c index 4e13a6a6fc69..39688af783cf 100644 --- a/modules/freetype2/builds/amiga/src/base/ftdebug.c +++ b/modules/freetype2/builds/amiga/src/base/ftdebug.c @@ -4,7 +4,7 @@ /* */ /* Debugging and logging component for amiga (body). */ /* */ -/* Copyright 1996-2001, 2002, 2004, 2005, 2013 by */ +/* Copyright 1996-2002, 2004, 2005, 2013 by */ /* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Wrkner. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -176,7 +176,7 @@ /* the memory and stream components which are set to 7 and 5, */ /* respectively. */ /* */ - /* See the file for details of the */ + /* See the file for details of the */ /* available toggle names. */ /* */ /* The level must be between 0 and 7; 0 means quiet (except for serious */ diff --git a/modules/freetype2/builds/detect.mk b/modules/freetype2/builds/detect.mk index 987ae51c41f2..ce407baf6d30 100644 --- a/modules/freetype2/builds/detect.mk +++ b/modules/freetype2/builds/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2001, 2002, 2003, 2006, 2008 by +# Copyright 1996-2003, 2006, 2008, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -17,8 +17,8 @@ # the following variables: # # BUILD_DIR The configuration and system-specific directory. Usually -# `freetype/builds/$(PLATFORM)' but can be different for -# custom builds of the library. +# `builds/$(PLATFORM)' but can be different for custom builds +# of the library. # # The following variables must be defined in system specific `detect.mk' # files: diff --git a/modules/freetype2/builds/freetype.mk b/modules/freetype2/builds/freetype.mk index 7a89c8e3d019..68edfe50540b 100644 --- a/modules/freetype2/builds/freetype.mk +++ b/modules/freetype2/builds/freetype.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2001, 2002, 2003, 2004, 2005, 2006, 2008 by +# Copyright 1996-2006, 2008, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -97,7 +97,7 @@ BASE_DIR := $(SRC_DIR)/base # Other derived directories. # -PUBLIC_DIR := $(TOP_DIR)/include/freetype +PUBLIC_DIR := $(TOP_DIR)/include INTERNAL_DIR := $(PUBLIC_DIR)/internal SERVICES_DIR := $(INTERNAL_DIR)/services CONFIG_DIR := $(PUBLIC_DIR)/config @@ -116,8 +116,8 @@ PROJECT_LIBRARY := $(LIB_DIR)/$(LIBRARY).$A # IMPORTANT NOTE: The architecture-dependent directory must ALWAYS be placed # before the standard include list. Porters are then able to # put their own version of some of the FreeType components -# in the `freetype/builds/' directory, as these -# files will override the default sources. +# in the `builds/' directory, as these files will +# override the default sources. # INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) \ $(DEVEL_DIR) \ @@ -147,13 +147,14 @@ ifneq ($(wildcard $(OBJ_DIR)/ftoption.h),) FTOPTION_FLAG := $DFT_CONFIG_OPTIONS_H="" endif +# Note that a build with the `configure' script uses $(CFLAGS) only. +# FT_CFLAGS = $(CPPFLAGS) \ $(INCLUDE_FLAGS) \ $(CFLAGS) \ $DFT2_BUILD_LIBRARY \ $DFT_CONFIG_MODULES_H="" \ $(FTOPTION_FLAG) -FT_CC = $(CC) $(FT_CFLAGS) FT_COMPILE = $(CC) $(ANSIFLAGS) $(FT_CFLAGS) @@ -178,7 +179,7 @@ PUBLIC_H := $(wildcard $(PUBLIC_DIR)/*.h) INTERNAL_H := $(wildcard $(INTERNAL_DIR)/*.h) \ $(wildcard $(SERVICES_DIR)/*.h) CONFIG_H := $(wildcard $(CONFIG_DIR)/*.h) \ - $(wildcard $(BUILD_DIR)/freetype/config/*.h) \ + $(wildcard $(BUILD_DIR)/config/*.h) \ $(FTMODULE_H) \ $(FTOPTION_H) DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h) @@ -261,8 +262,6 @@ objects: $(OBJECTS_LIST) library: $(PROJECT_LIBRARY) -dll: $(PROJECT_LIBRARY) exported_symbols - .c.$O: $(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) diff --git a/modules/freetype2/builds/mac/README b/modules/freetype2/builds/mac/README index bd3df8ada4b1..f58e47d4ad28 100644 --- a/modules/freetype2/builds/mac/README +++ b/modules/freetype2/builds/mac/README @@ -1,8 +1,8 @@ This folder contains - * Makefile skeltons for Apple MPW (Macintosh's Programmers Workshop) + * Makefile skeletons for Apple MPW (Macintosh's Programmer's Workshop) - * Python script to generate MPW makefile from skelton + * Python script to generate MPW makefile from skeleton * Metrowerks CodeWarrior 9.0 project file in XML format @@ -51,7 +51,7 @@ environment by Metrowerks. GCC for MPW and Symantec Also you can find documents how to update by MPW-PR. Python is required to restore MPW makefiles from the - skeltons. Python bundled to Mac OS X is enough. For + skeletons. Python bundled to Mac OS X is enough. For classic MacOS, MacPython is available: http://homepages.cwi.nl/~jack/macpython/ @@ -78,10 +78,10 @@ environment by Metrowerks. GCC for MPW and Symantec Detailed building procedure by Apple MPW is described in following. - 3-1-1. Generate MPW makefiles from the skeltons + 3-1-1. Generate MPW makefiles from the skeletons ------------------------------------------------ - Here are 4 skeltons for following targets are + Here are 4 skeletons for following targets are included. - FreeType.m68k_far.make.txt @@ -109,7 +109,7 @@ environment by Metrowerks. GCC for MPW and Symantec MPW makefile syntax uses 8bit characters. To keep from violating them during version control, here - we store skeltons in pure ASCII format. You must + we store skeletons in pure ASCII format. You must generate MPW makefile by Python script ascii2mpw.py. In Mac OS X terminal, you can convert as: @@ -118,10 +118,10 @@ environment by Metrowerks. GCC for MPW and Symantec < builds/mac/FreeType.m68k_far.make.txt \ > FreeType.m68k_far.make - The skeltons are designed to use in the top + The skeletons are designed to use in the top directory where there are builds, include, src etc. You must name the generated MPW makefile by removing - ".txt" from source skelton name. + ".txt" from source skeleton name. 3-1-2. Add resource forks to related files ------------------------------------------ @@ -392,12 +392,10 @@ ATSFontGetFileSpecification() | x | x | x | x | ATS font manager is not published in these versions. ------------------------------------------------------------ -Last update: 2009-Jul-25. +Last update: 2013-Nov-03. Currently maintained by suzuki toshiya, Originally prepared by Leonard Rosenthol, Just van Rossum, - -This directory is now actively maintained as part of the FreeType Project. diff --git a/modules/freetype2/builds/mac/ftmac.c b/modules/freetype2/builds/mac/ftmac.c index 16d50e87fff6..40f6bd20c9b9 100644 --- a/modules/freetype2/builds/mac/ftmac.c +++ b/modules/freetype2/builds/mac/ftmac.c @@ -1392,7 +1392,6 @@ typedef short ResourceIndex; if ( !pathname ) return FT_THROW( Invalid_Argument ); - error = FT_Err_Ok; *aface = NULL; /* try resourcefork based font: LWFN, FFIL */ diff --git a/modules/freetype2/builds/symbian/bld.inf b/modules/freetype2/builds/symbian/bld.inf index dd5f559d4b1f..bc8c1609c9de 100644 --- a/modules/freetype2/builds/symbian/bld.inf +++ b/modules/freetype2/builds/symbian/bld.inf @@ -2,7 +2,7 @@ // FreeType 2 project for the symbian platform // -// Copyright 2008, 2009 by +// Copyright 2008, 2009, 2013 by // David Turner, Robert Wilhelm, and Werner Lemberg. // // This file is part of the FreeType project, and may only be used, modified, @@ -19,48 +19,48 @@ freetype.mmp PRJ_EXPORTS ../../include/ft2build.h -../../include/freetype/config/ftconfig.h freetype/config/ftconfig.h -../../include/freetype/config/ftheader.h freetype/config/ftheader.h -../../include/freetype/config/ftmodule.h freetype/config/ftmodule.h -../../include/freetype/config/ftoption.h freetype/config/ftoption.h -../../include/freetype/config/ftstdlib.h freetype/config/ftstdlib.h -../../include/freetype/freetype.h freetype/freetype.h -../../include/freetype/ftbbox.h freetype/ftbbox.h -../../include/freetype/ftbdf.h freetype/ftbdf.h -../../include/freetype/ftbitmap.h freetype/ftbitmap.h -../../include/freetype/ftcache.h freetype/ftcache.h -../../include/freetype/ftcid.h freetype/ftcid.h -../../include/freetype/fterrdef.h freetype/fterrdef.h -../../include/freetype/fterrors.h freetype/fterrors.h -../../include/freetype/ftgasp.h freetype/ftgasp.h -../../include/freetype/ftglyph.h freetype/ftglyph.h -../../include/freetype/ftgxval.h freetype/ftgxval.h -../../include/freetype/ftgzip.h freetype/ftgzip.h -../../include/freetype/ftbzip2.h freetype/ftbzip2.h -../../include/freetype/ftimage.h freetype/ftimage.h -../../include/freetype/ftincrem.h freetype/ftincrem.h -../../include/freetype/ftlcdfil.h freetype/ftlcdfil.h -../../include/freetype/ftlist.h freetype/ftlist.h -../../include/freetype/ftlzw.h freetype/ftlzw.h -../../include/freetype/ftmac.h freetype/ftmac.h -../../include/freetype/ftmm.h freetype/ftmm.h -../../include/freetype/ftmodapi.h freetype/ftmodapi.h -../../include/freetype/ftmoderr.h freetype/ftmoderr.h -../../include/freetype/ftotval.h freetype/ftotval.h -../../include/freetype/ftoutln.h freetype/ftoutln.h -../../include/freetype/ftpfr.h freetype/ftpfr.h -../../include/freetype/ftrender.h freetype/ftrender.h -../../include/freetype/ftsizes.h freetype/ftsizes.h -../../include/freetype/ftsnames.h freetype/ftsnames.h -../../include/freetype/ftstroke.h freetype/ftstroke.h -../../include/freetype/ftsynth.h freetype/ftsynth.h -../../include/freetype/ftsystem.h freetype/ftsystem.h -../../include/freetype/fttrigon.h freetype/fttrigon.h -../../include/freetype/fttypes.h freetype/fttypes.h -../../include/freetype/ftwinfnt.h freetype/ftwinfnt.h -../../include/freetype/ftxf86.h freetype/ftxf86.h -../../include/freetype/t1tables.h freetype/t1tables.h -../../include/freetype/ttnameid.h freetype/ttnameid.h -../../include/freetype/tttables.h freetype/tttables.h -../../include/freetype/tttags.h freetype/tttags.h -../../include/freetype/ttunpat.h freetype/ttunpat.h +../../include/config/ftconfig.h config/ftconfig.h +../../include/config/ftheader.h config/ftheader.h +../../include/config/ftmodule.h config/ftmodule.h +../../include/config/ftoption.h config/ftoption.h +../../include/config/ftstdlib.h config/ftstdlib.h +../../include/freetype.h freetype.h +../../include/ftbbox.h ftbbox.h +../../include/ftbdf.h ftbdf.h +../../include/ftbitmap.h ftbitmap.h +../../include/ftcache.h ftcache.h +../../include/ftcid.h ftcid.h +../../include/fterrdef.h fterrdef.h +../../include/fterrors.h fterrors.h +../../include/ftgasp.h ftgasp.h +../../include/ftglyph.h ftglyph.h +../../include/ftgxval.h ftgxval.h +../../include/ftgzip.h ftgzip.h +../../include/ftbzip2.h ftbzip2.h +../../include/ftimage.h ftimage.h +../../include/ftincrem.h ftincrem.h +../../include/ftlcdfil.h ftlcdfil.h +../../include/ftlist.h ftlist.h +../../include/ftlzw.h ftlzw.h +../../include/ftmac.h ftmac.h +../../include/ftmm.h ftmm.h +../../include/ftmodapi.h ftmodapi.h +../../include/ftmoderr.h ftmoderr.h +../../include/ftotval.h ftotval.h +../../include/ftoutln.h ftoutln.h +../../include/ftpfr.h ftpfr.h +../../include/ftrender.h ftrender.h +../../include/ftsizes.h ftsizes.h +../../include/ftsnames.h ftsnames.h +../../include/ftstroke.h ftstroke.h +../../include/ftsynth.h ftsynth.h +../../include/ftsystem.h ftsystem.h +../../include/fttrigon.h fttrigon.h +../../include/fttypes.h fttypes.h +../../include/ftwinfnt.h ftwinfnt.h +../../include/ftxf86.h ftxf86.h +../../include/t1tables.h t1tables.h +../../include/ttnameid.h ttnameid.h +../../include/tttables.h tttables.h +../../include/tttags.h tttags.h +../../include/ttunpat.h ttunpat.h diff --git a/modules/freetype2/builds/toplevel.mk b/modules/freetype2/builds/toplevel.mk index 03b6e28d5f45..968202853e14 100644 --- a/modules/freetype2/builds/toplevel.mk +++ b/modules/freetype2/builds/toplevel.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2001, 2003, 2006, 2008-2010, 2012 by +# Copyright 1996-2001, 2003, 2006, 2008-2010, 2012, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -176,7 +176,7 @@ include $(TOP_DIR)/builds/modules.mk # we check for `dist', not `distclean' ifneq ($(findstring distx,$(MAKECMDGOALS)x),) - FT_H := include/freetype/freetype.h + FT_H := include/freetype.h major := $(shell sed -n 's/.*FREETYPE_MAJOR[^0-9]*\([0-9]\+\)/\1/p' < $(FT_H)) minor := $(shell sed -n 's/.*FREETYPE_MINOR[^0-9]*\([0-9]\+\)/\1/p' < $(FT_H)) diff --git a/modules/freetype2/builds/unix/aclocal.m4 b/modules/freetype2/builds/unix/aclocal.m4 index b9312147fa95..94c65087799e 100644 --- a/modules/freetype2/builds/unix/aclocal.m4 +++ b/modules/freetype2/builds/unix/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.13.1 -*- Autoconf -*- +# generated automatically by aclocal 1.14 -*- Autoconf -*- -# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1996-2013 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/modules/freetype2/builds/unix/config.sub b/modules/freetype2/builds/unix/config.sub index 8b612ab89df9..61cb4bc22db8 100755 --- a/modules/freetype2/builds/unix/config.sub +++ b/modules/freetype2/builds/unix/config.sub @@ -2,7 +2,7 @@ # Configuration validation subroutine script. # Copyright 1992-2013 Free Software Foundation, Inc. -timestamp='2013-04-24' +timestamp='2013-10-01' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -257,7 +257,7 @@ case $basic_machine in | avr | avr32 \ | be32 | be64 \ | bfin \ - | c4x | clipper \ + | c4x | c8051 | clipper \ | d10v | d30v | dlx | dsp16xx \ | epiphany \ | fido | fr30 | frv \ @@ -265,6 +265,7 @@ case $basic_machine in | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ + | k1om \ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ @@ -324,7 +325,7 @@ case $basic_machine in c6x) basic_machine=tic6x-unknown ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=-none ;; @@ -372,7 +373,7 @@ case $basic_machine in | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | clipper-* | craynv-* | cydra-* \ + | c8051-* | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ @@ -381,6 +382,7 @@ case $basic_machine in | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ + | k1om-* \ | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ @@ -794,7 +796,7 @@ case $basic_machine in os=-mingw64 ;; mingw32) - basic_machine=i386-pc + basic_machine=i686-pc os=-mingw32 ;; mingw32ce) @@ -830,7 +832,7 @@ case $basic_machine in basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; msys) - basic_machine=i386-pc + basic_machine=i686-pc os=-msys ;; mvs) @@ -1546,6 +1548,9 @@ case $basic_machine in c4x-* | tic4x-*) os=-coff ;; + c8051-*) + os=-elf + ;; hexagon-*) os=-elf ;; diff --git a/modules/freetype2/builds/unix/configure b/modules/freetype2/builds/unix/configure index 64acde93eb43..6435d00ebf6d 100755 --- a/modules/freetype2/builds/unix/configure +++ b/modules/freetype2/builds/unix/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for FreeType 2.5. +# Generated by GNU Autoconf 2.69 for FreeType 2.5.2. # # Report bugs to . # @@ -590,8 +590,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='FreeType' PACKAGE_TARNAME='freetype' -PACKAGE_VERSION='2.5' -PACKAGE_STRING='FreeType 2.5' +PACKAGE_VERSION='2.5.2' +PACKAGE_STRING='FreeType 2.5.2' PACKAGE_BUGREPORT='freetype@nongnu.org' PACKAGE_URL='' @@ -662,6 +662,7 @@ DLLTOOL AS SYSTEM_ZLIB FT2_EXTRA_LIBS +LIBPNG LIBBZ2 LIBZ ftmac_c @@ -1303,7 +1304,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures FreeType 2.5 to adapt to many kinds of systems. +\`configure' configures FreeType 2.5.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1368,7 +1369,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of FreeType 2.5:";; + short | recursive ) echo "Configuration of FreeType 2.5.2:";; esac cat <<\_ACEOF @@ -1485,7 +1486,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -FreeType configure 2.5 +FreeType configure 2.5.2 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2083,7 +2084,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by FreeType $as_me 2.5, which was +It was created by FreeType $as_me 2.5.2, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2439,7 +2440,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu # Don't forget to update docs/VERSION.DLL! -version_info='16:2:10' +version_info='17:1:11' ft_version=`echo $version_info | tr : .` @@ -4775,8 +4776,13 @@ $as_echo_n "checking for libpng... " >&6; } if ! which libpng-config >/dev/null; then as_fn_error $? "\`libpng-config' not found; either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables, +or pass \`--without-png' to the \`configure' script." "$LINENO" 5 + elif test ${cross_compiling} = yes; then + as_fn_error $? "\`libpng-config' should not be used in cross-building; +either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables, or pass \`--without-png' to the \`configure' script." "$LINENO" 5 fi + LIBPNG="`libpng-config --libs`" LIBPNG_CFLAGS="`libpng-config --cflags`" LIBPNG_LDFLAGS="`libpng-config --ldflags`" fi @@ -5372,6 +5378,7 @@ esac + case `pwd` in *\ * | *\ *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 @@ -13363,7 +13370,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by FreeType $as_me 2.5, which was +This file was extended by FreeType $as_me 2.5.2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13429,7 +13436,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -FreeType config.status 2.5 +FreeType config.status 2.5.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/modules/freetype2/builds/unix/configure.ac b/modules/freetype2/builds/unix/configure.ac index e00d2cc334f2..0a67dce6752e 100644 --- a/modules/freetype2/builds/unix/configure.ac +++ b/modules/freetype2/builds/unix/configure.ac @@ -11,13 +11,13 @@ # indicate that you have read the license and understand and accept it # fully. -AC_INIT([FreeType], [2.5], [freetype@nongnu.org], [freetype]) +AC_INIT([FreeType], [2.5.2], [freetype@nongnu.org], [freetype]) AC_CONFIG_SRCDIR([ftconfig.in]) # Don't forget to update docs/VERSION.DLL! -version_info='16:2:10' +version_info='17:1:11' AC_SUBST([version_info]) ft_version=`echo $version_info | tr : .` AC_SUBST([ft_version]) @@ -291,8 +291,13 @@ if test x$with_png != xno; then if ! which libpng-config >/dev/null; then AC_MSG_ERROR([`libpng-config' not found; either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables, +or pass `--without-png' to the `configure' script.]) + elif test ${cross_compiling} = yes; then + AC_MSG_ERROR([`libpng-config' should not be used in cross-building; +either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables, or pass `--without-png' to the `configure' script.]) fi + LIBPNG="`libpng-config --libs`" LIBPNG_CFLAGS="`libpng-config --cflags`" LIBPNG_LDFLAGS="`libpng-config --ldflags`" fi @@ -717,6 +722,7 @@ esac AC_SUBST([ftmac_c]) AC_SUBST([LIBZ]) AC_SUBST([LIBBZ2]) +AC_SUBST([LIBPNG]) AC_SUBST([FT2_EXTRA_LIBS]) AC_SUBST([SYSTEM_ZLIB]) diff --git a/modules/freetype2/builds/unix/configure.raw b/modules/freetype2/builds/unix/configure.raw index 6a6edc715752..57fb5f4167b8 100644 --- a/modules/freetype2/builds/unix/configure.raw +++ b/modules/freetype2/builds/unix/configure.raw @@ -17,7 +17,7 @@ AC_CONFIG_SRCDIR([ftconfig.in]) # Don't forget to update docs/VERSION.DLL! -version_info='16:2:10' +version_info='17:1:11' AC_SUBST([version_info]) ft_version=`echo $version_info | tr : .` AC_SUBST([ft_version]) @@ -291,8 +291,13 @@ if test x$with_png != xno; then if ! which libpng-config >/dev/null; then AC_MSG_ERROR([`libpng-config' not found; either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables, +or pass `--without-png' to the `configure' script.]) + elif test ${cross_compiling} = yes; then + AC_MSG_ERROR([`libpng-config' should not be used in cross-building; +either set the LIBPNG_CFLAGS and LIBPNG_LDFLAGS environment variables, or pass `--without-png' to the `configure' script.]) fi + LIBPNG="`libpng-config --libs`" LIBPNG_CFLAGS="`libpng-config --cflags`" LIBPNG_LDFLAGS="`libpng-config --ldflags`" fi @@ -717,6 +722,7 @@ esac AC_SUBST([ftmac_c]) AC_SUBST([LIBZ]) AC_SUBST([LIBBZ2]) +AC_SUBST([LIBPNG]) AC_SUBST([FT2_EXTRA_LIBS]) AC_SUBST([SYSTEM_ZLIB]) diff --git a/modules/freetype2/builds/unix/freetype-config.in b/modules/freetype2/builds/unix/freetype-config.in index 2edcd1135b1a..e4c504d04a64 100644 --- a/modules/freetype2/builds/unix/freetype-config.in +++ b/modules/freetype2/builds/unix/freetype-config.in @@ -119,13 +119,13 @@ else fi if test "$echo_ft_version" = "yes" ; then - major=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \ + major=`grep define ${SYSROOT}$includedir/freetype2/freetype.h \ | grep FREETYPE_MAJOR \ | sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'` - minor=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \ + minor=`grep define ${SYSROOT}$includedir/freetype2/freetype.h \ | grep FREETYPE_MINOR \ | sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'` - patch=`grep define ${SYSROOT}$includedir/freetype2/freetype/freetype.h \ + patch=`grep define ${SYSROOT}$includedir/freetype2/freetype.h \ | grep FREETYPE_PATCH \ | sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'` echo $major.$minor.$patch @@ -133,15 +133,11 @@ fi if test "$echo_cflags" = "yes" ; then cflags="-I${SYSROOT}$includedir/freetype2" - if test "${SYSROOT}$includedir" != "/usr/include" ; then - echo $cflags -I${SYSROOT}$includedir - else - echo $cflags - fi + echo $cflags fi if test "$echo_libs" = "yes" ; then - libs="-lfreetype %LIBZ% %LIBBZ2% %FT2_EXTRA_LIBS%" + libs="-lfreetype %LIBZ% %LIBBZ2% %LIBPNG% %FT2_EXTRA_LIBS%" if test "${SYSROOT}$libdir" != "/usr/lib" && test "${SYSROOT}$libdir" != "/usr/lib64"; then echo -L${SYSROOT}$libdir $libs diff --git a/modules/freetype2/builds/unix/freetype2.in b/modules/freetype2/builds/unix/freetype2.in index c5c30276e9b5..5e545b6fbdce 100644 --- a/modules/freetype2/builds/unix/freetype2.in +++ b/modules/freetype2/builds/unix/freetype2.in @@ -1,12 +1,12 @@ prefix="%prefix%" exec_prefix="%exec_prefix%" libdir="%libdir%" -includedir="%includedir%" +includedir="%includedir%/freetype2" Name: FreeType 2 Description: A free, high-quality, and portable font engine. Version: %ft_version% Requires: Libs: -L${libdir} -lfreetype -Libs.private: %LIBZ% %LIBBZ2% %FT2_EXTRA_LIBS% -Cflags: -I${includedir}/freetype2 -I${includedir} +Libs.private: %LIBZ% %LIBBZ2% %LIBPNG% %FT2_EXTRA_LIBS% +Cflags: -I${includedir} diff --git a/modules/freetype2/builds/unix/ft2unix.h b/modules/freetype2/builds/unix/ft2unix.h deleted file mode 100644 index 6a3b8d90e9c7..000000000000 --- a/modules/freetype2/builds/unix/ft2unix.h +++ /dev/null @@ -1,61 +0,0 @@ -/***************************************************************************/ -/* */ -/* ft2build.h */ -/* */ -/* Build macros of the FreeType 2 library. */ -/* */ -/* Copyright 1996-2001, 2003, 2006 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. */ -/* */ -/***************************************************************************/ - - - /*************************************************************************/ - /* */ - /* This is a Unix-specific version of that should be used */ - /* exclusively *after* installation of the library. */ - /* */ - /* It assumes that `/usr/local/include/freetype2' (or whatever is */ - /* returned by the `freetype-config --cflags' or `pkg-config --cflags' */ - /* command) is in your compilation include path. */ - /* */ - /* We don't need to do anything special in this release. However, for */ - /* a future FreeType 2 release, the following installation changes will */ - /* be performed: */ - /* */ - /* - The contents of `freetype-2.x/include/freetype' will be installed */ - /* to `/usr/local/include/freetype2' instead of */ - /* `/usr/local/include/freetype2/freetype'. */ - /* */ - /* - This file will #include , instead */ - /* of . */ - /* */ - /* - The contents of `ftheader.h' will be processed with `sed' to */ - /* replace all `' with `'. */ - /* */ - /* - Adding `/usr/local/include/freetype2' to your compilation include */ - /* path will not be necessary anymore. */ - /* */ - /* These changes will be transparent to client applications which use */ - /* freetype-config (or pkg-config). No modifications will be necessary */ - /* to compile with the new scheme. */ - /* */ - /*************************************************************************/ - - -#ifndef __FT2_BUILD_UNIX_H__ -#define __FT2_BUILD_UNIX_H__ - - /* `/include/freetype2' must be in your current inclusion path */ -#include - -#endif /* __FT2_BUILD_UNIX_H__ */ - - -/* END */ diff --git a/modules/freetype2/builds/unix/ftconfig.in b/modules/freetype2/builds/unix/ftconfig.in index d171e2476077..ddaea25d6430 100644 --- a/modules/freetype2/builds/unix/ftconfig.in +++ b/modules/freetype2/builds/unix/ftconfig.in @@ -27,9 +27,9 @@ /* Note however that if some specific modifications are needed, we */ /* advise you to place a modified copy in your build directory. */ /* */ - /* The build directory is usually `freetype/builds/', and */ - /* contains system-specific files that are always included first when */ - /* building the library. */ + /* The build directory is usually `builds/', and contains */ + /* system-specific files that are always included first when building */ + /* the library. */ /* */ /*************************************************************************/ @@ -52,7 +52,7 @@ FT_BEGIN_HEADER /* These macros can be toggled to suit a specific system. The current */ /* ones are defaults used to compile FreeType in an ANSI C environment */ /* (16bit compilers are also supported). Copy this file to your own */ - /* `freetype/builds/' directory, and edit it to port the engine. */ + /* `builds/' directory, and edit it to port the engine. */ /* */ /*************************************************************************/ @@ -86,7 +86,7 @@ FT_BEGIN_HEADER #else /* !FT_USE_AUTOCONF_SIZEOF_TYPES */ /* Following cpp computation of the bit length of int and long */ - /* is copied from default include/freetype/config/ftconfig.h. */ + /* is copied from default include/config/ftconfig.h. */ /* If any improvement is required for this file, it should be */ /* applied to the original header file for the builders that */ /* does not use configure script. */ @@ -293,13 +293,15 @@ FT_BEGIN_HEADER /* FT_LONG64 must be defined if a 64-bit type is available */ #define FT_LONG64 -#define FT_INT64 long +#define FT_INT64 long +#define FT_UINT64 unsigned long #elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */ /* this compiler provides the __int64 type */ #define FT_LONG64 -#define FT_INT64 __int64 +#define FT_INT64 __int64 +#define FT_UINT64 unsigned __int64 #elif defined( __BORLANDC__ ) /* Borland C++ */ @@ -308,7 +310,8 @@ FT_BEGIN_HEADER /* this compiler provides the __int64 type */ #define FT_LONG64 -#define FT_INT64 __int64 +#define FT_INT64 __int64 +#define FT_UINT64 unsigned __int64 #elif defined( __WATCOMC__ ) /* Watcom C++ */ @@ -317,13 +320,15 @@ FT_BEGIN_HEADER #elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */ #define FT_LONG64 -#define FT_INT64 long long int +#define FT_INT64 long long int +#define FT_UINT64 unsigned long long int #elif defined( __GNUC__ ) /* GCC provides the `long long' type */ #define FT_LONG64 -#define FT_INT64 long long int +#define FT_INT64 long long int +#define FT_UINT64 unsigned long long int #endif /* FT_SIZEOF_LONG == 8 */ @@ -366,6 +371,7 @@ FT_BEGIN_HEADER /* These must be defined `static __inline__' with GCC. */ #if defined( __CC_ARM ) || defined( __ARMCC__ ) /* RVCT */ + #define FT_MULFIX_ASSEMBLER FT_MulFix_arm /* documentation is in freetype.h */ @@ -395,8 +401,10 @@ FT_BEGIN_HEADER #ifdef __GNUC__ -#if defined( __arm__ ) && !defined( __thumb__ ) && \ +#if defined( __arm__ ) && \ + ( !defined( __thumb__ ) || defined( __thumb2__ ) ) && \ !( defined( __CC_ARM ) || defined( __ARMCC__ ) ) + #define FT_MULFIX_ASSEMBLER FT_MulFix_arm /* documentation is in freetype.h */ @@ -411,7 +419,11 @@ FT_BEGIN_HEADER __asm__ __volatile__ ( "smull %1, %2, %4, %3\n\t" /* (lo=%1,hi=%2) = a*b */ "mov %0, %2, asr #31\n\t" /* %0 = (hi >> 31) */ +#ifdef __clang__ + "add.w %0, %0, #0x8000\n\t" /* %0 += 0x8000 */ +#else "add %0, %0, #0x8000\n\t" /* %0 += 0x8000 */ +#endif "adds %1, %1, %0\n\t" /* %1 += %0 */ "adc %2, %2, #0\n\t" /* %2 += carry */ "mov %0, %1, lsr #16\n\t" /* %0 = %1 >> 16 */ @@ -422,9 +434,13 @@ FT_BEGIN_HEADER return a; } -#endif /* __arm__ && !__thumb__ && !( __CC_ARM || __ARMCC__ ) */ +#endif /* __arm__ && */ + /* ( __thumb2__ || !__thumb__ ) && */ + /* !( __CC_ARM || __ARMCC__ ) */ + #if defined( __i386__ ) + #define FT_MULFIX_ASSEMBLER FT_MulFix_i386 /* documentation is in freetype.h */ @@ -493,6 +509,66 @@ FT_BEGIN_HEADER #endif /* _MSC_VER */ + +#if defined( __GNUC__ ) && defined( __x86_64__ ) + +#define FT_MULFIX_ASSEMBLER FT_MulFix_x86_64 + + static __inline__ FT_Int32 + FT_MulFix_x86_64( FT_Int32 a, + FT_Int32 b ) + { + /* Temporarily disable the warning that C90 doesn't support */ + /* `long long'. */ +#if ( __GNUC__ > 4 ) || ( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 6 ) ) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wlong-long" +#endif + +#if 1 + /* Technically not an assembly fragment, but GCC does a really good */ + /* job at inlining it and generating good machine code for it. */ + long long ret, tmp; + + + ret = (long long)a * b; + tmp = ret >> 63; + ret += 0x8000 + tmp; + + return (FT_Int32)( ret >> 16 ); +#else + + /* For some reason, GCC 4.6 on Ubuntu 12.04 generates invalid machine */ + /* code from the lines below. The main issue is that `wide_a' is not */ + /* properly initialized by sign-extending `a'. Instead, the generated */ + /* machine code assumes that the register that contains `a' on input */ + /* can be used directly as a 64-bit value, which is wrong most of the */ + /* time. */ + long long wide_a = (long long)a; + long long wide_b = (long long)b; + long long result; + + + __asm__ __volatile__ ( + "imul %2, %1\n" + "mov %1, %0\n" + "sar $63, %0\n" + "lea 0x8000(%1, %0), %0\n" + "sar $16, %0\n" + : "=&r"(result), "=&r"(wide_a) + : "r"(wide_b) + : "cc" ); + + return (FT_Int32)result; +#endif + +#if ( __GNUC__ > 4 ) || ( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 6 ) ) +#pragma GCC diagnostic pop +#endif + } + +#endif /* __GNUC__ && __x86_64__ */ + #endif /* !FT_CONFIG_OPTION_NO_ASSEMBLER */ @@ -520,6 +596,9 @@ FT_BEGIN_HEADER #endif /* FT_MAKE_OPTION_SINGLE_OBJECT */ +#define FT_LOCAL_ARRAY( x ) extern const x +#define FT_LOCAL_ARRAY_DEF( x ) const x + #ifndef FT_BASE diff --git a/modules/freetype2/builds/unix/ftsystem.c b/modules/freetype2/builds/unix/ftsystem.c index 92c7d921149d..7f7b3acb3081 100644 --- a/modules/freetype2/builds/unix/ftsystem.c +++ b/modules/freetype2/builds/unix/ftsystem.c @@ -268,9 +268,9 @@ /* XXX: TODO -- real 64bit platform support */ /* */ - /* `stream->size' is typedef'd to unsigned long (in */ - /* freetype/ftsystem.h); `stat_buf.st_size', however, is usually */ - /* typedef'd to off_t (in sys/stat.h). */ + /* `stream->size' is typedef'd to unsigned long (in `ftsystem.h'); */ + /* `stat_buf.st_size', however, is usually typedef'd to off_t */ + /* (in sys/stat.h). */ /* On some platforms, the former is 32bit and the latter is 64bit. */ /* To avoid overflow caused by fonts in huge files larger than */ /* 2GB, do a test. Temporary fix proposed by Sean McBride. */ @@ -317,7 +317,8 @@ } total_read_count = 0; - do { + do + { ssize_t read_count; diff --git a/modules/freetype2/builds/unix/install.mk b/modules/freetype2/builds/unix/install.mk index 056f46cd1c94..9cd95487576e 100644 --- a/modules/freetype2/builds/unix/install.mk +++ b/modules/freetype2/builds/unix/install.mk @@ -24,35 +24,34 @@ # Unix installation and deinstallation targets. # -# Note that we no longer install internal headers, and we remove any -# `internal' subdirectory found in `$(includedir)/freetype2/freetype'. +# Note that we remove any data in the `freetype' subdirectory found in +# `$(includedir)/freetype2', which was the previous location of the header +# files up to version 2.5.0. # install: $(PROJECT_LIBRARY) - $(MKINSTALLDIRS) $(DESTDIR)$(libdir) \ - $(DESTDIR)$(libdir)/pkgconfig \ - $(DESTDIR)$(includedir)/freetype2/freetype/config \ - $(DESTDIR)$(bindir) \ + $(MKINSTALLDIRS) $(DESTDIR)$(libdir) \ + $(DESTDIR)$(libdir)/pkgconfig \ + $(DESTDIR)$(includedir)/freetype2/config \ + $(DESTDIR)$(bindir) \ $(DESTDIR)$(datadir)/aclocal $(LIBTOOL) --mode=install $(INSTALL) \ $(PROJECT_LIBRARY) $(DESTDIR)$(libdir) - -for P in $(PUBLIC_H) ; do \ - $(INSTALL_DATA) \ - $$P $(DESTDIR)$(includedir)/freetype2/freetype ; \ + -for P in $(PUBLIC_H) ; do \ + $(INSTALL_DATA) \ + $$P $(DESTDIR)$(includedir)/freetype2 ; \ done - -for P in $(CONFIG_H) ; do \ - $(INSTALL_DATA) \ - $$P $(DESTDIR)$(includedir)/freetype2/freetype/config ; \ + -for P in $(CONFIG_H) ; do \ + $(INSTALL_DATA) \ + $$P $(DESTDIR)$(includedir)/freetype2/config ; \ done - -$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/cache/* - -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/cache - -$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/internal/* - -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/internal - $(INSTALL_DATA) $(BUILD_DIR)/ft2unix.h \ - $(DESTDIR)$(includedir)/ft2build.h - $(INSTALL_DATA) $(OBJ_BUILD)/ftconfig.h \ - $(DESTDIR)$(includedir)/freetype2/freetype/config/ftconfig.h - $(INSTALL_DATA) $(OBJ_DIR)/ftmodule.h \ - $(DESTDIR)$(includedir)/freetype2/freetype/config/ftmodule.h + -$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/config/* + -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/config + -$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/* + -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype + $(INSTALL_DATA) $(OBJ_BUILD)/ftconfig.h \ + $(DESTDIR)$(includedir)/freetype2/config/ftconfig.h + $(INSTALL_DATA) $(OBJ_DIR)/ftmodule.h \ + $(DESTDIR)$(includedir)/freetype2/config/ftmodule.h $(INSTALL_SCRIPT) -m 755 $(OBJ_BUILD)/freetype-config \ $(DESTDIR)$(bindir)/freetype-config $(INSTALL_SCRIPT) -m 644 $(BUILD_DIR)/freetype2.m4 \ @@ -63,12 +62,10 @@ install: $(PROJECT_LIBRARY) uninstall: -$(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/$(LIBRARY).$A - -$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/config/* - -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype/config - -$(DELETE) $(DESTDIR)$(includedir)/freetype2/freetype/* - -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/freetype + -$(DELETE) $(DESTDIR)$(includedir)/freetype2/config/* + -$(DELDIR) $(DESTDIR)$(includedir)/freetype2/config + -$(DELETE) $(DESTDIR)$(includedir)/freetype2/* -$(DELDIR) $(DESTDIR)$(includedir)/freetype2 - -$(DELETE) $(DESTDIR)$(includedir)/ft2build.h -$(DELETE) $(DESTDIR)$(bindir)/freetype-config -$(DELETE) $(DESTDIR)$(datadir)/aclocal/freetype2.m4 -$(DELETE) $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc diff --git a/modules/freetype2/builds/unix/unix-def.in b/modules/freetype2/builds/unix/unix-def.in index 010607b90b7e..491e9748600b 100644 --- a/modules/freetype2/builds/unix/unix-def.in +++ b/modules/freetype2/builds/unix/unix-def.in @@ -63,6 +63,7 @@ version_info := @version_info@ FT2_EXTRA_LIBS := @FT2_EXTRA_LIBS@ LIBBZ2 := @LIBBZ2@ LIBZ := @LIBZ@ +LIBPNG := @LIBPNG@ build_libtool_libs := @build_libtool_libs@ ft_version := @ft_version@ @@ -102,6 +103,7 @@ $(OBJ_BUILD)/freetype-config: $(TOP_DIR)/builds/unix/freetype-config.in sed -e 's|%FT2_EXTRA_LIBS%|$(FT2_EXTRA_LIBS)|' \ -e 's|%LIBBZ2%|$(LIBBZ2)|' \ -e 's|%LIBZ%|$(LIBZ)|' \ + -e 's|%LIBPNG%|$(LIBPNG)|' \ -e 's|%build_libtool_libs%|$(build_libtool_libs)|' \ -e 's|%exec_prefix%|$(exec_prefix)|' \ -e 's|%ft_version%|$(ft_version)|' \ @@ -119,6 +121,7 @@ $(OBJ_BUILD)/freetype2.pc: $(TOP_DIR)/builds/unix/freetype2.in sed -e 's|%FT2_EXTRA_LIBS%|$(FT2_EXTRA_LIBS)|' \ -e 's|%LIBBZ2%|$(LIBBZ2)|' \ -e 's|%LIBZ%|$(LIBZ)|' \ + -e 's|%LIBPNG%|$(LIBPNG)|' \ -e 's|%build_libtool_libs%|$(build_libtool_libs)|' \ -e 's|%exec_prefix%|$(exec_prefix)|' \ -e 's|%ft_version%|$(ft_version)|' \ @@ -127,7 +130,6 @@ $(OBJ_BUILD)/freetype2.pc: $(TOP_DIR)/builds/unix/freetype2.in -e 's|%prefix%|$(prefix)|' \ $< \ > $@.tmp - chmod +x $@.tmp chmod a-w $@.tmp mv $@.tmp $@ diff --git a/modules/freetype2/builds/vms/ftconfig.h b/modules/freetype2/builds/vms/ftconfig.h index 62fadac0fa2c..3fb8f84fdca6 100644 --- a/modules/freetype2/builds/vms/ftconfig.h +++ b/modules/freetype2/builds/vms/ftconfig.h @@ -4,7 +4,7 @@ /* */ /* VMS-specific configuration file (specification only). */ /* */ -/* Copyright 1996-2004, 2006-2008, 2011 by */ +/* Copyright 1996-2004, 2006-2008, 2011, 2013 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -27,18 +27,15 @@ /* Note however that if some specific modifications are needed, we */ /* advise you to place a modified copy in your build directory. */ /* */ - /* The build directory is usually `freetype/builds/', and */ - /* contains system-specific files that are always included first when */ - /* building the library. */ + /* The build directory is usually `builds/', and contains */ + /* system-specific files that are always included first when building */ + /* the library. */ /* */ /*************************************************************************/ - #ifndef __FTCONFIG_H__ #define __FTCONFIG_H__ - - /* Include the header file containing all developer build options */ #include #include FT_CONFIG_OPTIONS_H #include FT_CONFIG_STANDARD_LIBRARY_H @@ -46,6 +43,7 @@ FT_BEGIN_HEADER + /*************************************************************************/ /* */ /* PLATFORM-SPECIFIC CONFIGURATION MACROS */ @@ -53,7 +51,7 @@ FT_BEGIN_HEADER /* These macros can be toggled to suit a specific system. The current */ /* ones are defaults used to compile FreeType in an ANSI C environment */ /* (16bit compilers are also supported). Copy this file to your own */ - /* `freetype/builds/' directory, and edit it to port the engine. */ + /* `builds/' directory, and edit it to port the engine. */ /* */ /*************************************************************************/ @@ -120,19 +118,95 @@ FT_BEGIN_HEADER /*************************************************************************/ /* */ - /* IntN types */ + /*
*/ + /* basic_types */ /* */ - /* Used to guarantee the size of some specific integers. */ + /*************************************************************************/ + + + /*************************************************************************/ + /* */ + /* */ + /* FT_Int16 */ + /* */ + /* */ + /* A typedef for a 16bit signed integer type. */ + /* */ + typedef signed short FT_Int16; + + + /*************************************************************************/ + /* */ + /* */ + /* FT_UInt16 */ + /* */ + /* */ + /* A typedef for a 16bit unsigned integer type. */ /* */ - typedef signed short FT_Int16; typedef unsigned short FT_UInt16; -#if FT_SIZEOF_INT == 4 + /* */ + + + /* this #if 0 ... #endif clause is for documentation purposes */ +#if 0 + + /*************************************************************************/ + /* */ + /* */ + /* FT_Int32 */ + /* */ + /* */ + /* A typedef for a 32bit signed integer type. The size depends on */ + /* the configuration. */ + /* */ + typedef signed XXX FT_Int32; + + + /*************************************************************************/ + /* */ + /* */ + /* FT_UInt32 */ + /* */ + /* A typedef for a 32bit unsigned integer type. The size depends on */ + /* the configuration. */ + /* */ + typedef unsigned XXX FT_UInt32; + + + /*************************************************************************/ + /* */ + /* */ + /* FT_Int64 */ + /* */ + /* A typedef for a 64bit signed integer type. The size depends on */ + /* the configuration. Only defined if there is real 64bit support; */ + /* otherwise, it gets emulated with a structure (if necessary). */ + /* */ + typedef signed XXX FT_Int64; + + + /*************************************************************************/ + /* */ + /* */ + /* FT_UInt64 */ + /* */ + /* A typedef for a 64bit unsigned integer type. The size depends on */ + /* the configuration. Only defined if there is real 64bit support; */ + /* otherwise, it gets emulated with a structure (if necessary). */ + /* */ + typedef unsigned XXX FT_UInt64; + + /* */ + +#endif + +#if FT_SIZEOF_INT == (32 / FT_CHAR_BIT) typedef signed int FT_Int32; typedef unsigned int FT_UInt32; -#elif FT_SIZEOF_LONG == 4 +#elif FT_SIZEOF_LONG == (32 / FT_CHAR_BIT) typedef signed long FT_Int32; typedef unsigned long FT_UInt32; @@ -141,13 +215,14 @@ FT_BEGIN_HEADER #error "no 32bit type found -- please check your configuration files" #endif + /* look up an integer type that is at least 32 bits */ -#if FT_SIZEOF_INT >= 4 +#if FT_SIZEOF_INT >= (32 / FT_CHAR_BIT) typedef int FT_Fast; typedef unsigned int FT_UFast; -#elif FT_SIZEOF_LONG >= 4 +#elif FT_SIZEOF_LONG >= (32 / FT_CHAR_BIT) typedef long FT_Fast; typedef unsigned long FT_UFast; @@ -157,17 +232,19 @@ FT_BEGIN_HEADER /* determine whether we have a 64-bit int type for platforms without */ /* Autoconf */ -#if FT_SIZEOF_LONG == 8 +#if FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) /* FT_LONG64 must be defined if a 64-bit type is available */ #define FT_LONG64 -#define FT_INT64 long +#define FT_INT64 long +#define FT_UINT64 unsigned long #elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */ /* this compiler provides the __int64 type */ #define FT_LONG64 -#define FT_INT64 __int64 +#define FT_INT64 __int64 +#define FT_UINT64 unsigned __int64 #elif defined( __BORLANDC__ ) /* Borland C++ */ @@ -176,7 +253,8 @@ FT_BEGIN_HEADER /* this compiler provides the __int64 type */ #define FT_LONG64 -#define FT_INT64 __int64 +#define FT_INT64 __int64 +#define FT_UINT64 unsigned __int64 #elif defined( __WATCOMC__ ) /* Watcom C++ */ @@ -185,28 +263,25 @@ FT_BEGIN_HEADER #elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */ #define FT_LONG64 -#define FT_INT64 long long int +#define FT_INT64 long long int +#define FT_UINT64 unsigned long long int #elif defined( __GNUC__ ) /* GCC provides the `long long' type */ #define FT_LONG64 -#define FT_INT64 long long int +#define FT_INT64 long long int +#define FT_UINT64 unsigned long long int -#endif /* FT_SIZEOF_LONG == 8 */ - - -#define FT_BEGIN_STMNT do { -#define FT_END_STMNT } while ( 0 ) -#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT +#endif /* FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) */ /*************************************************************************/ /* */ /* A 64-bit data type will create compilation problems if you compile */ - /* in strict ANSI mode. To avoid them, we disable their use if */ - /* __STDC__ is defined. You can however ignore this rule by */ - /* defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */ + /* in strict ANSI mode. To avoid them, we disable its use if __STDC__ */ + /* is defined. You can however ignore this rule by defining the */ + /* FT_CONFIG_OPTION_FORCE_INT64 configuration macro. */ /* */ #if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 ) @@ -220,6 +295,225 @@ FT_BEGIN_HEADER #endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */ +#ifdef FT_LONG64 + typedef FT_INT64 FT_Int64; + typedef FT_UINT64 FT_UInt64; +#endif + + +#define FT_BEGIN_STMNT do { +#define FT_END_STMNT } while ( 0 ) +#define FT_DUMMY_STMNT FT_BEGIN_STMNT FT_END_STMNT + + +#ifndef FT_CONFIG_OPTION_NO_ASSEMBLER + /* Provide assembler fragments for performance-critical functions. */ + /* These must be defined `static __inline__' with GCC. */ + +#if defined( __CC_ARM ) || defined( __ARMCC__ ) /* RVCT */ + +#define FT_MULFIX_ASSEMBLER FT_MulFix_arm + + /* documentation is in freetype.h */ + + static __inline FT_Int32 + FT_MulFix_arm( FT_Int32 a, + FT_Int32 b ) + { + register FT_Int32 t, t2; + + + __asm + { + smull t2, t, b, a /* (lo=t2,hi=t) = a*b */ + mov a, t, asr #31 /* a = (hi >> 31) */ + add a, a, #0x8000 /* a += 0x8000 */ + adds t2, t2, a /* t2 += a */ + adc t, t, #0 /* t += carry */ + mov a, t2, lsr #16 /* a = t2 >> 16 */ + orr a, a, t, lsl #16 /* a |= t << 16 */ + } + return a; + } + +#endif /* __CC_ARM || __ARMCC__ */ + + +#ifdef __GNUC__ + +#if defined( __arm__ ) && \ + ( !defined( __thumb__ ) || defined( __thumb2__ ) ) && \ + !( defined( __CC_ARM ) || defined( __ARMCC__ ) ) + +#define FT_MULFIX_ASSEMBLER FT_MulFix_arm + + /* documentation is in freetype.h */ + + static __inline__ FT_Int32 + FT_MulFix_arm( FT_Int32 a, + FT_Int32 b ) + { + register FT_Int32 t, t2; + + + __asm__ __volatile__ ( + "smull %1, %2, %4, %3\n\t" /* (lo=%1,hi=%2) = a*b */ + "mov %0, %2, asr #31\n\t" /* %0 = (hi >> 31) */ + "add %0, %0, #0x8000\n\t" /* %0 += 0x8000 */ + "adds %1, %1, %0\n\t" /* %1 += %0 */ + "adc %2, %2, #0\n\t" /* %2 += carry */ + "mov %0, %1, lsr #16\n\t" /* %0 = %1 >> 16 */ + "orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */ + : "=r"(a), "=&r"(t2), "=&r"(t) + : "r"(a), "r"(b) + : "cc" ); + return a; + } + +#endif /* __arm__ && */ + /* ( __thumb2__ || !__thumb__ ) && */ + /* !( __CC_ARM || __ARMCC__ ) */ + + +#if defined( __i386__ ) + +#define FT_MULFIX_ASSEMBLER FT_MulFix_i386 + + /* documentation is in freetype.h */ + + static __inline__ FT_Int32 + FT_MulFix_i386( FT_Int32 a, + FT_Int32 b ) + { + register FT_Int32 result; + + + __asm__ __volatile__ ( + "imul %%edx\n" + "movl %%edx, %%ecx\n" + "sarl $31, %%ecx\n" + "addl $0x8000, %%ecx\n" + "addl %%ecx, %%eax\n" + "adcl $0, %%edx\n" + "shrl $16, %%eax\n" + "shll $16, %%edx\n" + "addl %%edx, %%eax\n" + : "=a"(result), "=d"(b) + : "a"(a), "d"(b) + : "%ecx", "cc" ); + return result; + } + +#endif /* i386 */ + +#endif /* __GNUC__ */ + + +#ifdef _MSC_VER /* Visual C++ */ + +#ifdef _M_IX86 + +#define FT_MULFIX_ASSEMBLER FT_MulFix_i386 + + /* documentation is in freetype.h */ + + static __inline FT_Int32 + FT_MulFix_i386( FT_Int32 a, + FT_Int32 b ) + { + register FT_Int32 result; + + __asm + { + mov eax, a + mov edx, b + imul edx + mov ecx, edx + sar ecx, 31 + add ecx, 8000h + add eax, ecx + adc edx, 0 + shr eax, 16 + shl edx, 16 + add eax, edx + mov result, eax + } + return result; + } + +#endif /* _M_IX86 */ + +#endif /* _MSC_VER */ + + +#if defined( __GNUC__ ) && defined( __x86_64__ ) + +#define FT_MULFIX_ASSEMBLER FT_MulFix_x86_64 + + static __inline__ FT_Int32 + FT_MulFix_x86_64( FT_Int32 a, + FT_Int32 b ) + { + /* Temporarily disable the warning that C90 doesn't support */ + /* `long long'. */ +#if ( __GNUC__ > 4 ) || ( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 6 ) ) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wlong-long" +#endif + +#if 1 + /* Technically not an assembly fragment, but GCC does a really good */ + /* job at inlining it and generating good machine code for it. */ + long long ret, tmp; + + + ret = (long long)a * b; + tmp = ret >> 63; + ret += 0x8000 + tmp; + + return (FT_Int32)( ret >> 16 ); +#else + + /* For some reason, GCC 4.6 on Ubuntu 12.04 generates invalid machine */ + /* code from the lines below. The main issue is that `wide_a' is not */ + /* properly initialized by sign-extending `a'. Instead, the generated */ + /* machine code assumes that the register that contains `a' on input */ + /* can be used directly as a 64-bit value, which is wrong most of the */ + /* time. */ + long long wide_a = (long long)a; + long long wide_b = (long long)b; + long long result; + + + __asm__ __volatile__ ( + "imul %2, %1\n" + "mov %1, %0\n" + "sar $63, %0\n" + "lea 0x8000(%1, %0), %0\n" + "sar $16, %0\n" + : "=&r"(result), "=&r"(wide_a) + : "r"(wide_b) + : "cc" ); + + return (FT_Int32)result; +#endif + +#if ( __GNUC__ > 4 ) || ( ( __GNUC__ == 4 ) && ( __GNUC_MINOR__ >= 6 ) ) +#pragma GCC diagnostic pop +#endif + } + +#endif /* __GNUC__ && __x86_64__ */ + +#endif /* !FT_CONFIG_OPTION_NO_ASSEMBLER */ + + +#ifdef FT_CONFIG_OPTION_INLINE_MULFIX +#ifdef FT_MULFIX_ASSEMBLER +#define FT_MULFIX_INLINED FT_MULFIX_ASSEMBLER +#endif +#endif + #ifdef FT_MAKE_OPTION_SINGLE_OBJECT @@ -238,6 +532,9 @@ FT_BEGIN_HEADER #endif /* FT_MAKE_OPTION_SINGLE_OBJECT */ +#define FT_LOCAL_ARRAY( x ) extern const x +#define FT_LOCAL_ARRAY_DEF( x ) const x + #ifndef FT_BASE @@ -253,9 +550,9 @@ FT_BEGIN_HEADER #ifndef FT_BASE_DEF #ifdef __cplusplus -#define FT_BASE_DEF( x ) extern "C" x +#define FT_BASE_DEF( x ) x #else -#define FT_BASE_DEF( x ) extern x +#define FT_BASE_DEF( x ) x #endif #endif /* !FT_BASE_DEF */ diff --git a/modules/freetype2/builds/wince/ftdebug.c b/modules/freetype2/builds/wince/ftdebug.c index 354f4f0a7f6d..24f965828155 100644 --- a/modules/freetype2/builds/wince/ftdebug.c +++ b/modules/freetype2/builds/wince/ftdebug.c @@ -4,7 +4,7 @@ /* */ /* Debugging and logging component for WinCE (body). */ /* */ -/* Copyright 1996-2001, 2002, 2005, 2008, 2009, 2013 by */ +/* Copyright 1996-2002, 2005, 2008, 2009, 2013 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -148,8 +148,8 @@ /* for the memory and stream components which are set to 6 and 5, */ /* respectively. */ /* */ - /* See the file for details of the */ - /* available toggle names. */ + /* See the file for details of the available toggle */ + /* names. */ /* */ /* The level must be between 0 and 6; 0 means quiet (except for serious */ /* runtime errors), and 6 means _very_ verbose. */ diff --git a/modules/freetype2/builds/wince/vc2005-ce/freetype.vcproj b/modules/freetype2/builds/wince/vc2005-ce/freetype.vcproj index f7e022e7754c..2c147c865d47 100644 --- a/modules/freetype2/builds/wince/vc2005-ce/freetype.vcproj +++ b/modules/freetype2/builds/wince/vc2005-ce/freetype.vcproj @@ -21,7 +21,7 @@ - + @@ -41,7 +41,7 @@ - + @@ -61,7 +61,7 @@ - + @@ -81,7 +81,7 @@ - + @@ -101,7 +101,7 @@ - + @@ -121,7 +121,7 @@ - + @@ -141,7 +141,7 @@ - + @@ -161,7 +161,7 @@ - + @@ -181,7 +181,7 @@ - + @@ -201,7 +201,7 @@ - + @@ -221,7 +221,7 @@ - + @@ -241,7 +241,7 @@ - + @@ -261,7 +261,7 @@ - + @@ -281,7 +281,7 @@ - + @@ -301,7 +301,7 @@ - + @@ -321,7 +321,7 @@ - + @@ -341,7 +341,7 @@ - + @@ -361,7 +361,7 @@ - + @@ -381,7 +381,7 @@ - + @@ -401,7 +401,7 @@ - + @@ -421,7 +421,7 @@ - + @@ -441,7 +441,7 @@ - + @@ -461,7 +461,7 @@ - + @@ -481,7 +481,7 @@ - + @@ -501,7 +501,7 @@ - + @@ -521,7 +521,7 @@ - + @@ -541,7 +541,7 @@ - + @@ -561,7 +561,7 @@ - + @@ -581,7 +581,7 @@ - + @@ -601,7 +601,7 @@ - + @@ -621,7 +621,7 @@ - + @@ -641,7 +641,7 @@ - + @@ -661,7 +661,7 @@ - + @@ -681,7 +681,7 @@ - + @@ -701,7 +701,7 @@ - + @@ -721,7 +721,7 @@ - + @@ -741,7 +741,7 @@ - + @@ -758,7 +758,7 @@ - + @@ -3822,15 +3822,15 @@ - + - + - + - + - + diff --git a/modules/freetype2/builds/wince/vc2005-ce/index.html b/modules/freetype2/builds/wince/vc2005-ce/index.html index db538535690f..3f39ffbae753 100644 --- a/modules/freetype2/builds/wince/vc2005-ce/index.html +++ b/modules/freetype2/builds/wince/vc2005-ce/index.html @@ -21,14 +21,14 @@ the following targets:
  • PPC/SP WM6 (Windows Mobile 6)
  • -It compiles the following libraries from the FreeType 2.5.0 sources:

    +It compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      + freetype252.lib - release build; single threaded + freetype252_D.lib - debug build; single threaded + freetype252MT.lib - release build; multi-threaded + freetype252MT_D.lib - debug build; multi-threaded

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/modules/freetype2/builds/wince/vc2008-ce/freetype.vcproj b/modules/freetype2/builds/wince/vc2008-ce/freetype.vcproj index 7920751a3d58..123b8a6b6d6e 100644 --- a/modules/freetype2/builds/wince/vc2008-ce/freetype.vcproj +++ b/modules/freetype2/builds/wince/vc2008-ce/freetype.vcproj @@ -88,7 +88,7 @@ /> diff --git a/modules/freetype2/builds/wince/vc2008-ce/index.html b/modules/freetype2/builds/wince/vc2008-ce/index.html index 50160ecb51e8..e2b63fd56417 100644 --- a/modules/freetype2/builds/wince/vc2008-ce/index.html +++ b/modules/freetype2/builds/wince/vc2008-ce/index.html @@ -21,14 +21,14 @@ the following targets:

  • PPC/SP WM6 (Windows Mobile 6)
  • -It compiles the following libraries from the FreeType 2.5.0 sources:

    +It compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      + freetype252.lib - release build; single threaded + freetype252_D.lib - debug build; single threaded + freetype252MT.lib - release build; multi-threaded + freetype252MT_D.lib - debug build; multi-threaded

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/modules/freetype2/builds/win32/detect.mk b/modules/freetype2/builds/windows/detect.mk similarity index 100% rename from modules/freetype2/builds/win32/detect.mk rename to modules/freetype2/builds/windows/detect.mk diff --git a/modules/freetype2/builds/win32/ftdebug.c b/modules/freetype2/builds/windows/ftdebug.c similarity index 97% rename from modules/freetype2/builds/win32/ftdebug.c rename to modules/freetype2/builds/windows/ftdebug.c index 58b7f89ecfca..dd2c2ad7cdd8 100644 --- a/modules/freetype2/builds/win32/ftdebug.c +++ b/modules/freetype2/builds/windows/ftdebug.c @@ -4,7 +4,7 @@ /* */ /* Debugging and logging component for Win32 (body). */ /* */ -/* Copyright 1996-2001, 2002, 2005, 2008, 2009, 2013 by */ +/* Copyright 1996-2002, 2005, 2008, 2009, 2013 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -137,8 +137,8 @@ /* for the memory and stream components which are set to 6 and 5, */ /* respectively. */ /* */ - /* See the file for details of the */ - /* available toggle names. */ + /* See the file for details of the available toggle */ + /* names. */ /* */ /* The level must be between 0 and 6; 0 means quiet (except for serious */ /* runtime errors), and 6 means _very_ verbose. */ diff --git a/modules/freetype2/builds/win32/vc2005/freetype.sln b/modules/freetype2/builds/windows/vc2005/freetype.sln similarity index 100% rename from modules/freetype2/builds/win32/vc2005/freetype.sln rename to modules/freetype2/builds/windows/vc2005/freetype.sln diff --git a/modules/freetype2/builds/win32/vc2005/freetype.vcproj b/modules/freetype2/builds/windows/vc2005/freetype.vcproj similarity index 97% rename from modules/freetype2/builds/win32/vc2005/freetype.vcproj rename to modules/freetype2/builds/windows/vc2005/freetype.vcproj index a7da85a463fb..9d5d5d73b3ae 100644 --- a/modules/freetype2/builds/win32/vc2005/freetype.vcproj +++ b/modules/freetype2/builds/windows/vc2005/freetype.vcproj @@ -16,7 +16,7 @@ - + @@ -33,7 +33,7 @@ - + @@ -50,7 +50,7 @@ - + @@ -67,7 +67,7 @@ - + @@ -84,7 +84,7 @@ - + @@ -101,7 +101,7 @@ - + @@ -629,15 +629,15 @@ - + - + - + - + - + diff --git a/modules/freetype2/builds/win32/vc2005/index.html b/modules/freetype2/builds/windows/vc2005/index.html similarity index 76% rename from modules/freetype2/builds/win32/vc2005/index.html rename to modules/freetype2/builds/windows/vc2005/index.html index 788b83020d37..c060a4dfab61 100644 --- a/modules/freetype2/builds/win32/vc2005/index.html +++ b/modules/freetype2/builds/windows/vc2005/index.html @@ -11,14 +11,14 @@

    This directory contains project files for Visual C++, named freetype.vcproj, and Visual Studio, called freetype.sln. It -compiles the following libraries from the FreeType 2.5.0 sources:

    +compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      + freetype252.lib - release build; single threaded + freetype252_D.lib - debug build; single threaded + freetype252MT.lib - release build; multi-threaded + freetype252MT_D.lib - debug build; multi-threaded

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/modules/freetype2/builds/win32/vc2008/freetype.sln b/modules/freetype2/builds/windows/vc2008/freetype.sln similarity index 100% rename from modules/freetype2/builds/win32/vc2008/freetype.sln rename to modules/freetype2/builds/windows/vc2008/freetype.sln diff --git a/modules/freetype2/builds/win32/vc2008/freetype.vcproj b/modules/freetype2/builds/windows/vc2008/freetype.vcproj similarity index 94% rename from modules/freetype2/builds/win32/vc2008/freetype.vcproj rename to modules/freetype2/builds/windows/vc2008/freetype.vcproj index bd76a2968cb6..6f25fc1ff0b4 100644 --- a/modules/freetype2/builds/win32/vc2008/freetype.vcproj +++ b/modules/freetype2/builds/windows/vc2008/freetype.vcproj @@ -70,7 +70,7 @@ /> diff --git a/modules/freetype2/builds/win32/vc2008/index.html b/modules/freetype2/builds/windows/vc2008/index.html similarity index 76% rename from modules/freetype2/builds/win32/vc2008/index.html rename to modules/freetype2/builds/windows/vc2008/index.html index 498ba6d5ac92..601175c4d4b3 100644 --- a/modules/freetype2/builds/win32/vc2008/index.html +++ b/modules/freetype2/builds/windows/vc2008/index.html @@ -11,14 +11,14 @@

    This directory contains project files for Visual C++, named freetype.vcproj, and Visual Studio, called freetype.sln. It -compiles the following libraries from the FreeType 2.5.0 sources:

    +compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      + freetype252.lib - release build; single threaded + freetype252_D.lib - debug build; single threaded + freetype252MT.lib - release build; multi-threaded + freetype252MT_D.lib - debug build; multi-threaded

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/modules/freetype2/builds/win32/vc2010/freetype.sln b/modules/freetype2/builds/windows/vc2010/freetype.sln similarity index 56% rename from modules/freetype2/builds/win32/vc2010/freetype.sln rename to modules/freetype2/builds/windows/vc2010/freetype.sln index 3439f626c309..e0f13a29040d 100644 --- a/modules/freetype2/builds/win32/vc2010/freetype.sln +++ b/modules/freetype2/builds/windows/vc2010/freetype.sln @@ -1,30 +1,48 @@  Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 +# Visual Studio Express 2012 for Windows Desktop Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "freetype.vcxproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug Multithreaded|Win32 = Debug Multithreaded|Win32 + Debug Multithreaded|x64 = Debug Multithreaded|x64 Debug Singlethreaded|Win32 = Debug Singlethreaded|Win32 + Debug Singlethreaded|x64 = Debug Singlethreaded|x64 Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 Release Multithreaded|Win32 = Release Multithreaded|Win32 + Release Multithreaded|x64 = Release Multithreaded|x64 Release Singlethreaded|Win32 = Release Singlethreaded|Win32 + Release Singlethreaded|x64 = Release Singlethreaded|x64 Release|Win32 = Release|Win32 + Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.ActiveCfg = Debug Multithreaded|Win32 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.Build.0 = Debug Multithreaded|Win32 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|x64.ActiveCfg = Debug Multithreaded|x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|x64.Build.0 = Debug Multithreaded|x64 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|Win32.ActiveCfg = Debug Singlethreaded|Win32 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|Win32.Build.0 = Debug Singlethreaded|Win32 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|x64.ActiveCfg = Debug Singlethreaded|x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|x64.Build.0 = Debug Singlethreaded|x64 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|Win32.ActiveCfg = Debug|Win32 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|Win32.Build.0 = Debug|Win32 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|x64.ActiveCfg = Debug|x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|x64.Build.0 = Debug|x64 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|Win32.ActiveCfg = Release Multithreaded|Win32 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|Win32.Build.0 = Release Multithreaded|Win32 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|x64.ActiveCfg = Release Multithreaded|x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|x64.Build.0 = Release Multithreaded|x64 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|Win32.ActiveCfg = Release Singlethreaded|Win32 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|Win32.Build.0 = Release Singlethreaded|Win32 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|x64.ActiveCfg = Release Singlethreaded|x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|x64.Build.0 = Release Singlethreaded|x64 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|Win32.ActiveCfg = Release|Win32 {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|Win32.Build.0 = Release|Win32 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|x64.ActiveCfg = Release|x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/modules/freetype2/builds/win32/vc2010/freetype.vcxproj b/modules/freetype2/builds/windows/vc2010/freetype.vcxproj similarity index 50% rename from modules/freetype2/builds/win32/vc2010/freetype.vcxproj rename to modules/freetype2/builds/windows/vc2010/freetype.vcxproj index 5c85da93219f..21dd963e1d09 100644 --- a/modules/freetype2/builds/win32/vc2010/freetype.vcxproj +++ b/modules/freetype2/builds/windows/vc2010/freetype.vcxproj @@ -5,26 +5,50 @@ Debug Multithreaded Win32 + + Debug Multithreaded + x64 + Debug Singlethreaded Win32 + + Debug Singlethreaded + x64 + Debug Win32 + + Debug + x64 + Release Multithreaded Win32 + + Release Multithreaded + x64 + Release Singlethreaded Win32 + + Release Singlethreaded + x64 + Release Win32 + + Release + x64 + {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B} @@ -34,31 +58,73 @@ StaticLibrary false MultiByte + v100 + + + StaticLibrary + false + MultiByte + v100 StaticLibrary false MultiByte + v100 + + + StaticLibrary + false + MultiByte + v100 StaticLibrary false MultiByte + v100 + + + StaticLibrary + false + MultiByte + v100 StaticLibrary false MultiByte + v100 + + + StaticLibrary + false + MultiByte + v100 StaticLibrary false MultiByte + v100 + + + StaticLibrary + false + MultiByte + v100 StaticLibrary false MultiByte + v100 + + + StaticLibrary + false + MultiByte + v100 @@ -78,29 +144,57 @@ .\..\..\..\objs\win32\vc2010\ .\..\..\..\objs\debug_mt\ AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + - freetype250_D - freetype250MT_D - freetype250ST_D - freetype250 - freetype250MT - freetype250ST + + freetype252_D + freetype252_D + freetype252MT_D + freetype252MT_D + freetype252ST_D + freetype252ST_D + freetype252 + freetype252 + freetype252MT + freetype252MT + freetype252ST + freetype252ST + + + .\..\..\..\objs\win64\vc2010\ + .\..\..\..\objs\debug\ @@ -127,6 +221,31 @@ true + + + MaxSpeed + OnlyExplicitInline + ..\..\..\include;%(AdditionalIncludeDirectories) + NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + true + Level4 + + + Default + 4001 + true + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + true + + MaxSpeed @@ -152,6 +271,31 @@ true + + + MaxSpeed + OnlyExplicitInline + ..\..\..\include;%(AdditionalIncludeDirectories) + NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions) + true + MultiThreaded + true + true + Level4 + + + Default + 4001 + true + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + true + + MaxSpeed @@ -175,6 +319,29 @@ + + + MaxSpeed + OnlyExplicitInline + ..\..\..\include;%(AdditionalIncludeDirectories) + NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions) + true + MultiThreaded + true + true + Level4 + + + Default + 4001 + true + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + Disabled @@ -197,6 +364,28 @@ true + + + Disabled + ..\..\..\include;%(AdditionalIncludeDirectories) + _DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebugDLL + true + Level4 + ProgramDatabase + Default + 4001 + true + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + + + true + + Disabled @@ -219,6 +408,28 @@ true + + + Disabled + ..\..\..\include;%(AdditionalIncludeDirectories) + _DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDebug + true + Level4 + ProgramDatabase + Default + 4001 + true + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + + + true + + Disabled @@ -243,294 +454,576 @@ true + + + Disabled + ..\..\..\include;%(AdditionalIncludeDirectories) + _DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) + false + false + EnableFastChecks + MultiThreadedDebug + true + Level4 + ProgramDatabase + Default + 4001 + true + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + + + true + + Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks false + false Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks false + false Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks false + false MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) false + false MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) false + false MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) false + false Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) @@ -543,288 +1036,540 @@ Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks Disabled + Disabled %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) EnableFastChecks + EnableFastChecks MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) MaxSpeed + MaxSpeed %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) %(PreprocessorDefinitions) + %(PreprocessorDefinitions) - - - - - + + + + + diff --git a/modules/freetype2/builds/win32/vc2010/freetype.vcxproj.filters b/modules/freetype2/builds/windows/vc2010/freetype.vcxproj.filters similarity index 91% rename from modules/freetype2/builds/win32/vc2010/freetype.vcxproj.filters rename to modules/freetype2/builds/windows/vc2010/freetype.vcxproj.filters index a3a9f1991c5d..99fc43f22260 100644 --- a/modules/freetype2/builds/win32/vc2010/freetype.vcxproj.filters +++ b/modules/freetype2/builds/windows/vc2010/freetype.vcxproj.filters @@ -136,19 +136,19 @@ Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files diff --git a/modules/freetype2/builds/win32/vc2010/index.html b/modules/freetype2/builds/windows/vc2010/index.html similarity index 56% rename from modules/freetype2/builds/win32/vc2010/index.html rename to modules/freetype2/builds/windows/vc2010/index.html index caceac116a7d..38d79c754fca 100644 --- a/modules/freetype2/builds/win32/vc2010/index.html +++ b/modules/freetype2/builds/windows/vc2010/index.html @@ -1,26 +1,30 @@

    - FreeType 2 Project Files for VS.NET 2010 + FreeType 2 Project Files for VS.NET 2010 or newer

    - FreeType 2 Project Files for VS.NET 2010 + FreeType 2 Project Files for VS.NET 2010 or newer

    -

    This directory contains a project file for Visual C++, named -freetype.vcxproj, and Visual Studio, called freetype.sln. It -compiles the following libraries from the FreeType 2.5.0 sources:

    +

    This directory contains a project file for Visual C++ newer), named +freetype.vcxproj, and Visual Studio, called freetype.sln. +It compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      +freetype252.lib - release build +freetype252_D.lib - debug build +freetype252ST.lib - release build; single threaded +freetype252ST_D.lib - debug build; single threaded +freetype252MT.lib - release build; multi-threaded +freetype252MT_D.lib - debug build; multi-threaded
    +

    Both Win32 and x64 builds are supported.

    +

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP archives are already stored this way, so no further action is required. If you use some .tar.*z archives, be sure to configure your extracting diff --git a/modules/freetype2/builds/win32/visualc/freetype.dsp b/modules/freetype2/builds/windows/visualc/freetype.dsp similarity index 87% rename from modules/freetype2/builds/win32/visualc/freetype.dsp rename to modules/freetype2/builds/windows/visualc/freetype.dsp index 516e47f3cad8..8c3f1d9040a2 100644 --- a/modules/freetype2/builds/win32/visualc/freetype.dsp +++ b/modules/freetype2/builds/windows/visualc/freetype.dsp @@ -54,7 +54,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Debug" @@ -78,7 +78,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252_D.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Debug Multithreaded" @@ -92,7 +92,7 @@ LIB32=link.exe -lib # PROP Output_Dir "..\..\..\objs\debug_mt" # PROP Intermediate_Dir "..\..\..\objs\debug_mt" # PROP Target_Dir "" -# ADD BASE CPP /nologo /Za /W3 /Gm /GX /ZI /Od /I "..\freetype\include\\" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /GZ /c +# ADD BASE CPP /nologo /Za /W3 /Gm /GX /ZI /Od /I "..\include\\" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /GZ /c # SUBTRACT BASE CPP /X # ADD CPP /MTd /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c # SUBTRACT CPP /nologo /X /YX @@ -102,8 +102,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"lib\freetype250_D.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT_D.lib" +# ADD BASE LIB32 /nologo /out:"lib\freetype252_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252MT_D.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Release Multithreaded" @@ -117,7 +117,7 @@ LIB32=link.exe -lib # PROP Output_Dir "..\..\..\objs\release_mt" # PROP Intermediate_Dir "..\..\..\objs\release_mt" # PROP Target_Dir "" -# ADD BASE CPP /nologo /Za /W3 /GX /O2 /I "..\freetype\include\\" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /c +# ADD BASE CPP /nologo /Za /W3 /GX /O2 /I "..\include\\" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /c # ADD CPP /MT /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c # SUBTRACT CPP /nologo /Z /YX # ADD BASE RSC /l 0x409 /d "NDEBUG" @@ -126,8 +126,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"lib\freetype250.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT.lib" +# ADD BASE LIB32 /nologo /out:"lib\freetype252.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252MT.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Release Singlethreaded" @@ -151,8 +151,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250.lib" -# ADD LIB32 /out:"..\..\..\objs\freetype250ST.lib" +# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype252.lib" +# ADD LIB32 /out:"..\..\..\objs\freetype252ST.lib" # SUBTRACT LIB32 /nologo !ELSEIF "$(CFG)" == "freetype - Win32 Debug Singlethreaded" @@ -177,8 +177,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250ST_D.lib" +# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype252_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252ST_D.lib" !ENDIF @@ -377,23 +377,23 @@ SOURCE=..\..\..\include\ft2build.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftconfig.h +SOURCE=..\..\..\include\config\ftconfig.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftheader.h +SOURCE=..\..\..\include\config\ftheader.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftmodule.h +SOURCE=..\..\..\include\config\ftmodule.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftoption.h +SOURCE=..\..\..\include\config\ftoption.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftstdlib.h +SOURCE=..\..\..\include\config\ftstdlib.h # End Source File # End Group # End Target diff --git a/modules/freetype2/builds/win32/visualc/freetype.dsw b/modules/freetype2/builds/windows/visualc/freetype.dsw similarity index 100% rename from modules/freetype2/builds/win32/visualc/freetype.dsw rename to modules/freetype2/builds/windows/visualc/freetype.dsw diff --git a/modules/freetype2/builds/win32/visualc/freetype.sln b/modules/freetype2/builds/windows/visualc/freetype.sln similarity index 100% rename from modules/freetype2/builds/win32/visualc/freetype.sln rename to modules/freetype2/builds/windows/visualc/freetype.sln diff --git a/modules/freetype2/builds/win32/visualc/freetype.vcproj b/modules/freetype2/builds/windows/visualc/freetype.vcproj similarity index 94% rename from modules/freetype2/builds/win32/visualc/freetype.vcproj rename to modules/freetype2/builds/windows/visualc/freetype.vcproj index dc5e67ad4135..89a0a5126cf1 100644 --- a/modules/freetype2/builds/win32/visualc/freetype.vcproj +++ b/modules/freetype2/builds/windows/visualc/freetype.vcproj @@ -69,7 +69,7 @@ /> diff --git a/modules/freetype2/builds/win32/visualc/index.html b/modules/freetype2/builds/windows/visualc/index.html similarity index 77% rename from modules/freetype2/builds/win32/visualc/index.html rename to modules/freetype2/builds/windows/visualc/index.html index ef6a5ed629cd..d5f3ae28dc2b 100644 --- a/modules/freetype2/builds/win32/visualc/index.html +++ b/modules/freetype2/builds/windows/visualc/index.html @@ -11,14 +11,14 @@

    This directory contains project files for Visual C++, named freetype.dsp, and Visual Studio, called freetype.sln. It -compiles the following libraries from the FreeType 2.5.0 sources:

    +compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      + freetype252.lib - release build; single threaded + freetype252_D.lib - debug build; single threaded + freetype252MT.lib - release build; multi-threaded + freetype252MT_D.lib - debug build; multi-threaded

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/modules/freetype2/builds/win32/visualce/freetype.dsp b/modules/freetype2/builds/windows/visualce/freetype.dsp similarity index 87% rename from modules/freetype2/builds/win32/visualce/freetype.dsp rename to modules/freetype2/builds/windows/visualce/freetype.dsp index 516e47f3cad8..8c3f1d9040a2 100644 --- a/modules/freetype2/builds/win32/visualce/freetype.dsp +++ b/modules/freetype2/builds/windows/visualce/freetype.dsp @@ -54,7 +54,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Debug" @@ -78,7 +78,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252_D.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Debug Multithreaded" @@ -92,7 +92,7 @@ LIB32=link.exe -lib # PROP Output_Dir "..\..\..\objs\debug_mt" # PROP Intermediate_Dir "..\..\..\objs\debug_mt" # PROP Target_Dir "" -# ADD BASE CPP /nologo /Za /W3 /Gm /GX /ZI /Od /I "..\freetype\include\\" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /GZ /c +# ADD BASE CPP /nologo /Za /W3 /Gm /GX /ZI /Od /I "..\include\\" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /GZ /c # SUBTRACT BASE CPP /X # ADD CPP /MTd /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c # SUBTRACT CPP /nologo /X /YX @@ -102,8 +102,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"lib\freetype250_D.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT_D.lib" +# ADD BASE LIB32 /nologo /out:"lib\freetype252_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252MT_D.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Release Multithreaded" @@ -117,7 +117,7 @@ LIB32=link.exe -lib # PROP Output_Dir "..\..\..\objs\release_mt" # PROP Intermediate_Dir "..\..\..\objs\release_mt" # PROP Target_Dir "" -# ADD BASE CPP /nologo /Za /W3 /GX /O2 /I "..\freetype\include\\" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /c +# ADD BASE CPP /nologo /Za /W3 /GX /O2 /I "..\include\\" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /c # ADD CPP /MT /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c # SUBTRACT CPP /nologo /Z /YX # ADD BASE RSC /l 0x409 /d "NDEBUG" @@ -126,8 +126,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"lib\freetype250.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT.lib" +# ADD BASE LIB32 /nologo /out:"lib\freetype252.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252MT.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Release Singlethreaded" @@ -151,8 +151,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250.lib" -# ADD LIB32 /out:"..\..\..\objs\freetype250ST.lib" +# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype252.lib" +# ADD LIB32 /out:"..\..\..\objs\freetype252ST.lib" # SUBTRACT LIB32 /nologo !ELSEIF "$(CFG)" == "freetype - Win32 Debug Singlethreaded" @@ -177,8 +177,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250ST_D.lib" +# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype252_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype252ST_D.lib" !ENDIF @@ -377,23 +377,23 @@ SOURCE=..\..\..\include\ft2build.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftconfig.h +SOURCE=..\..\..\include\config\ftconfig.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftheader.h +SOURCE=..\..\..\include\config\ftheader.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftmodule.h +SOURCE=..\..\..\include\config\ftmodule.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftoption.h +SOURCE=..\..\..\include\config\ftoption.h # End Source File # Begin Source File -SOURCE=..\..\..\include\freetype\config\ftstdlib.h +SOURCE=..\..\..\include\config\ftstdlib.h # End Source File # End Group # End Target diff --git a/modules/freetype2/builds/win32/visualce/freetype.dsw b/modules/freetype2/builds/windows/visualce/freetype.dsw similarity index 100% rename from modules/freetype2/builds/win32/visualce/freetype.dsw rename to modules/freetype2/builds/windows/visualce/freetype.dsw diff --git a/modules/freetype2/builds/win32/visualce/freetype.vcproj b/modules/freetype2/builds/windows/visualce/freetype.vcproj similarity index 95% rename from modules/freetype2/builds/win32/visualce/freetype.vcproj rename to modules/freetype2/builds/windows/visualce/freetype.vcproj index 88f51679b4fb..bbb1a62c5dbb 100644 --- a/modules/freetype2/builds/win32/visualce/freetype.vcproj +++ b/modules/freetype2/builds/windows/visualce/freetype.vcproj @@ -87,7 +87,7 @@ /> diff --git a/modules/freetype2/builds/win32/visualce/index.html b/modules/freetype2/builds/windows/visualce/index.html similarity index 80% rename from modules/freetype2/builds/win32/visualce/index.html rename to modules/freetype2/builds/windows/visualce/index.html index c97a861a1ceb..66c24ce53f6d 100644 --- a/modules/freetype2/builds/win32/visualce/index.html +++ b/modules/freetype2/builds/windows/visualce/index.html @@ -21,14 +21,14 @@ the following targets:

  • PPC/SP WM6 (Windows Mobile 6)
  • -It compiles the following libraries from the FreeType 2.5.0 sources:

    +It compiles the following libraries from the FreeType 2.5.2 sources:

      -    freetype250.lib     - release build; single threaded
      -    freetype250_D.lib   - debug build;   single threaded
      -    freetype250MT.lib   - release build; multi-threaded
      -    freetype250MT_D.lib - debug build;   multi-threaded
      + freetype252.lib - release build; single threaded + freetype252_D.lib - debug build; single threaded + freetype252MT.lib - release build; multi-threaded + freetype252MT_D.lib - debug build; multi-threaded

    Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/modules/freetype2/builds/win32/w32-bcc.mk b/modules/freetype2/builds/windows/w32-bcc.mk similarity index 88% rename from modules/freetype2/builds/win32/w32-bcc.mk rename to modules/freetype2/builds/windows/w32-bcc.mk index a9f48fc60b02..87d8ea3c2bb6 100644 --- a/modules/freetype2/builds/win32/w32-bcc.mk +++ b/modules/freetype2/builds/windows/w32-bcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005 by +# Copyright 1996-2000, 2003, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -18,7 +18,7 @@ EXPORTS_LIST = $(OBJ_DIR)/freetype.def EXPORTS_OPTIONS = /DEF:$(EXPORTS_LIST) APINAMES_OPTIONS := -dfreetype.dll -wB -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/bcc.mk # include linking instructions diff --git a/modules/freetype2/builds/win32/w32-bccd.mk b/modules/freetype2/builds/windows/w32-bccd.mk similarity index 86% rename from modules/freetype2/builds/win32/w32-bccd.mk rename to modules/freetype2/builds/windows/w32-bccd.mk index 51b15d903246..dd21eddac0b6 100644 --- a/modules/freetype2/builds/win32/w32-bccd.mk +++ b/modules/freetype2/builds/windows/w32-bccd.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2006 by +# Copyright 1996-2000, 2003, 2006, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,7 @@ DEVEL_DIR := $(TOP_DIR)/devel -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/bcc-dev.mk diff --git a/modules/freetype2/builds/win32/w32-dev.mk b/modules/freetype2/builds/windows/w32-dev.mk similarity index 88% rename from modules/freetype2/builds/win32/w32-dev.mk rename to modules/freetype2/builds/windows/w32-dev.mk index 00cacb0f675e..3561229473a9 100644 --- a/modules/freetype2/builds/win32/w32-dev.mk +++ b/modules/freetype2/builds/windows/w32-dev.mk @@ -5,7 +5,7 @@ # -# Copyright 1996-2000, 2003, 2006 by +# Copyright 1996-2000, 2003, 2006, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -21,7 +21,7 @@ DEVEL_DIR := $(TOP_DIR)/devel -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/gcc-dev.mk diff --git a/modules/freetype2/builds/win32/w32-gcc.mk b/modules/freetype2/builds/windows/w32-gcc.mk similarity index 89% rename from modules/freetype2/builds/win32/w32-gcc.mk rename to modules/freetype2/builds/windows/w32-gcc.mk index 580afc5c94c8..3bbdd3cc46e5 100644 --- a/modules/freetype2/builds/win32/w32-gcc.mk +++ b/modules/freetype2/builds/windows/w32-gcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005 by +# Copyright 1996-2000, 2003, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -19,7 +19,7 @@ EXPORTS_OPTIONS = $(EXPORTS_LIST) APINAMES_OPTIONS := -dfreetype.dll -w # include Win32-specific definitions -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk # include gcc-specific definitions include $(TOP_DIR)/builds/compiler/gcc.mk diff --git a/modules/freetype2/builds/win32/w32-icc.mk b/modules/freetype2/builds/windows/w32-icc.mk similarity index 89% rename from modules/freetype2/builds/win32/w32-icc.mk rename to modules/freetype2/builds/windows/w32-icc.mk index 8819a1f49fb3..44d26bd6c056 100644 --- a/modules/freetype2/builds/win32/w32-icc.mk +++ b/modules/freetype2/builds/windows/w32-icc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2005 by +# Copyright 1996-2000, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -18,7 +18,7 @@ EXPORTS_LIST = $(OBJ_DIR)/freetype.def EXPORTS_OPTIONS = /DEF:$(EXPORTS_LIST) APINAMES_OPTIONS := -dfreetype.dll -w -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/visualage.mk # include linking instructions diff --git a/modules/freetype2/builds/win32/w32-intl.mk b/modules/freetype2/builds/windows/w32-intl.mk similarity index 88% rename from modules/freetype2/builds/win32/w32-intl.mk rename to modules/freetype2/builds/windows/w32-intl.mk index ae62e1bcdaee..0f3e22bc3fd7 100644 --- a/modules/freetype2/builds/win32/w32-intl.mk +++ b/modules/freetype2/builds/windows/w32-intl.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005 by +# Copyright 1996-2000, 2003, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -18,7 +18,7 @@ EXPORTS_LIST = $(OBJ_DIR)/freetype.def EXPORTS_OPTIONS = /DEF:$(EXPORTS_LIST) APINAMES_OPTIONS := -dfreetype.dll -w -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/intelc.mk # include linking instructions diff --git a/modules/freetype2/builds/win32/w32-lcc.mk b/modules/freetype2/builds/windows/w32-lcc.mk similarity index 87% rename from modules/freetype2/builds/win32/w32-lcc.mk rename to modules/freetype2/builds/windows/w32-lcc.mk index a147c4cb6178..8bd5b5685423 100644 --- a/modules/freetype2/builds/win32/w32-lcc.mk +++ b/modules/freetype2/builds/windows/w32-lcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -14,7 +14,7 @@ SEP := / -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/win-lcc.mk # include linking instructions diff --git a/modules/freetype2/builds/win32/w32-mingw32.mk b/modules/freetype2/builds/windows/w32-mingw32.mk similarity index 89% rename from modules/freetype2/builds/win32/w32-mingw32.mk rename to modules/freetype2/builds/windows/w32-mingw32.mk index 04e9e211c0cf..b35dbb0c0960 100644 --- a/modules/freetype2/builds/win32/w32-mingw32.mk +++ b/modules/freetype2/builds/windows/w32-mingw32.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005 by +# Copyright 1996-2000, 2003, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -19,7 +19,7 @@ EXPORTS_OPTIONS = $(EXPORTS_LIST) APINAMES_OPTIONS := -dfreetype.dll -w # include Win32-specific definitions -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk LIBRARY := lib$(PROJECT) diff --git a/modules/freetype2/builds/win32/w32-vcc.mk b/modules/freetype2/builds/windows/w32-vcc.mk similarity index 88% rename from modules/freetype2/builds/win32/w32-vcc.mk rename to modules/freetype2/builds/windows/w32-vcc.mk index 7fb879486525..95f76858f85c 100644 --- a/modules/freetype2/builds/win32/w32-vcc.mk +++ b/modules/freetype2/builds/windows/w32-vcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005 by +# Copyright 1996-2000, 2003, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -18,7 +18,7 @@ EXPORTS_LIST = $(OBJ_DIR)/freetype.def EXPORTS_OPTIONS = /DEF:$(EXPORTS_LIST) APINAMES_OPTIONS := -dfreetype.dll -w -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/visualc.mk # include linking instructions diff --git a/modules/freetype2/builds/win32/w32-wat.mk b/modules/freetype2/builds/windows/w32-wat.mk similarity index 88% rename from modules/freetype2/builds/win32/w32-wat.mk rename to modules/freetype2/builds/windows/w32-wat.mk index 820b817358ff..e1ddf66e3515 100644 --- a/modules/freetype2/builds/win32/w32-wat.mk +++ b/modules/freetype2/builds/windows/w32-wat.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005 by +# Copyright 1996-2000, 2003, 2005, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -18,7 +18,7 @@ EXPORTS_LIST = $(OBJ_DIR)/watcom-ftexports.lbc EXPORTS_OPTIONS = -\"export @$(EXPORTS_LIST)\"- APINAMES_OPTIONS := -wW -include $(TOP_DIR)/builds/win32/win32-def.mk +include $(TOP_DIR)/builds/windows/win32-def.mk include $(TOP_DIR)/builds/compiler/watcom.mk # include linking instructions diff --git a/modules/freetype2/builds/win32/win32-def.mk b/modules/freetype2/builds/windows/win32-def.mk similarity index 91% rename from modules/freetype2/builds/win32/win32-def.mk rename to modules/freetype2/builds/windows/win32-def.mk index e6ae31c3b2a4..a65ea4f01b87 100644 --- a/modules/freetype2/builds/win32/win32-def.mk +++ b/modules/freetype2/builds/windows/win32-def.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2003, 2005, 2006 by +# Copyright 1996-2000, 2003, 2005, 2006, 2013 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -16,7 +16,7 @@ DELETE := del CAT := type SEP := $(strip \ ) -BUILD_DIR := $(TOP_DIR)/builds/win32 +BUILD_DIR := $(TOP_DIR)/builds/windows PLATFORM := win32 # The executable file extension (for tools). NOTE: WE INCLUDE THE DOT HERE !! diff --git a/modules/freetype2/devel/ft2build.h b/modules/freetype2/devel/ft2build.h index c1d38c35ae80..6cc34b77b42c 100644 --- a/modules/freetype2/devel/ft2build.h +++ b/modules/freetype2/devel/ft2build.h @@ -2,10 +2,9 @@ /* */ /* ft2build.h */ /* */ -/* FreeType 2 build and setup macros. */ -/* (Generic version) */ +/* FreeType 2 build and setup macros (development version). */ /* */ -/* Copyright 1996-2001, 2003, 2006 by */ +/* Copyright 1996-2001, 2003, 2006, 2013 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -18,24 +17,24 @@ /* - * This is a development version of that is used - * to build the library in debug mode. Its only difference with - * the reference is that it forces the use of the local `ftoption.h' - * which contains different settings for all configuration macros. + * This is a development version of to build the library in + * debug mode. Its only difference to the default version is that it + * includes a local `ftoption.h' header file with different settings for + * many configuration macros. + * + * To use it, simply ensure that the directory containing this file is + * scanned by the compiler before the default FreeType header directory. * - * To use it, you must define the environment variable FT2_BUILD_INCLUDE - * to point to the directory containing these two files (`ft2build.h' and - * `ftoption.h'), then invoke Jam as usual. */ -#ifndef __FT2_BUILD_DEVEL_H__ -#define __FT2_BUILD_DEVEL_H__ +#ifndef __FT2BUILD_H__ +#define __FT2BUILD_H__ -#define FT_CONFIG_OPTIONS_H +#define FT_CONFIG_OPTIONS_H -#include +#include -#endif /* __FT2_BUILD_DEVEL_H__ */ +#endif /* __FT2BUILD_H__ */ /* END */ diff --git a/modules/freetype2/devel/ftoption.h b/modules/freetype2/devel/ftoption.h index 220625df9171..27d1bd9a5d74 100644 --- a/modules/freetype2/devel/ftoption.h +++ b/modules/freetype2/devel/ftoption.h @@ -38,9 +38,9 @@ FT_BEGIN_HEADER /* library from a single source directory. */ /* */ /* - You can put a copy of this file in your build directory, more */ - /* precisely in `$BUILD/freetype/config/ftoption.h', where `$BUILD' */ - /* is the name of a directory that is included _before_ the FreeType */ - /* include path during compilation. */ + /* precisely in `$BUILD/config/ftoption.h', where `$BUILD' is the */ + /* name of a directory that is included _before_ the FreeType include */ + /* path during compilation. */ /* */ /* The default FreeType Makefiles and Jamfiles use the build */ /* directory `builds/' by default, but you can easily change */ @@ -51,7 +51,7 @@ FT_BEGIN_HEADER /* locate this file during the build. For example, */ /* */ /* #define FT_CONFIG_OPTIONS_H */ - /* #include */ + /* #include */ /* */ /* will use `$BUILD/myftoptions.h' instead of this file for macro */ /* definitions. */ @@ -59,7 +59,7 @@ FT_BEGIN_HEADER /* Note also that you can similarly pre-define the macro */ /* FT_CONFIG_MODULES_H used to locate the file listing of the modules */ /* that are statically linked to the library at compile time. By */ - /* default, this file is . */ + /* default, this file is . */ /* */ /* We highly recommend using the third method whenever possible. */ /* */ @@ -528,7 +528,7 @@ FT_BEGIN_HEADER /* does not contain any glyph name though. */ /* */ /* Accessing SFNT names is done through the functions declared in */ - /* `freetype/ftsnames.h'. */ + /* `ftsnames.h'. */ /* */ #define TT_CONFIG_OPTION_SFNT_NAMES diff --git a/modules/freetype2/docs/CHANGES b/modules/freetype2/docs/CHANGES index a5db2d23a1e4..007d873f2d66 100644 --- a/modules/freetype2/docs/CHANGES +++ b/modules/freetype2/docs/CHANGES @@ -1,4 +1,132 @@ +CHANGES BETWEEN 2.5.1 and 2.5.2 + + I. IMPORTANT BUG FIXES + + - Improving the display of some broken TrueType fonts introduced a + bug that made FreeType crash on some popular (but not fully + conformant) fonts like `ahronbd.ttf'. + + - Another round of improvements to correct positioning and hinting + of composite glyphs in TrueType fonts. + + + II. MISCELLANEOUS + + - Version 2.5.1 introduced a bug in handling embedded bitmap + strikes of TrueType fonts, causing garbage display under some + circumstances. + + - The `ftgrid' demo program couldn't be compiled in + non-development builds. + + +====================================================================== + +CHANGES BETWEEN 2.5 and 2.5.1 + + I. IMPORTANT BUG FIXES + + - For some WinFNT files, the last glyph wasn't displayed but + incorrectly marked as invalid. + + - The vertical size of glyphs was incorrectly set after a call to + `FT_GlyphSlot_Embolden', resulting in clipped glyphs. + + - Many fields of the `PCLT' table in SFNT based fonts (if accessed + with `FT_Get_Sfnt_Table') were computed incorrectly. + + - In TrueType fonts, hinting of composite glyphs could sometimes + deliver incorrect positions of components or even distorted + shapes. + + + II. IMPORTANT CHANGES + + - WOFF font format support has been added. + + - The auto-hinter now supports Hebrew. Greek and Cyrillic support + has been improved. + + - Support for the forthcoming `OS/2' SFNT table version 5, as can + be found e.g. in the `Sitka' font family for Windows 8.1. + + - The header file layout has been changed. After installation, + all files are now located in `/include/freetype2'. + + Applications that use (a) `freetype-config' or FreeType's + `pkg-config' file to get the include directory for the compiler, + and (b) the documented way for header inclusion like + + #include + #include FT_FREETYPE_H + ... + + don't need any change to the source code. + + + III. MISCELLANEOUS + + - The stem darkening feature of the new CFF engine can now be + fine-tuned with the new `darkening-parameters' property. + + - `ftgrid' has been updated to toggle various engines with the `H' + key, similar to `ftview' and `ftdiff'. + + - The functionality of `ttdebug' has been greatly enhanced. + + . It now displays twilight, storage, and control value data; key + `T' shows the twilight point table, key `S' the storage data, + and key `C' the control value table. + + . Some keys have been reassigned from lowercase to their + uppercase equivalents; for example `q' to quit the program is + now `Q'. + + . Key `f' finishes the current function. + + . Key `R' restarts the debugger. + + . Keys `b' and `p' set a breakpoint. + + . Key `B' provides a function call backtrace. + + - Better support of ARMv7 and x86_64 processors. + + - Apple's `sbix' color bitmap format is now supported. + + - Improved auto-hinter rendering for many TrueType fonts, + especially in the range 20-40ppem. + + - A new face flag `FT_FACE_FLAG_COLOR' has been added (to be + accessed with the macro `FT_HAS_COLOR'). + + - `FT_Gzip_Uncompress' (modeled after zlib's `uncompress' + function) has been added; this is a by-product of the newly + added WOFF support. + + - Support for a build with `cmake' has been contributed by John + Cary . + + - Support for x64 builds with Visual C++ has been contributed by + Kenneth Miller + + - Manual pages for most demo programs have been added. + + - The GETINFO bytecode instruction for TrueType fonts was buggy if + used to retrieve subpixel hinting information. It was necessary + to set selector bit 6 to get results for selector bits 7-10, + which is wrong. + + - Improved computation of emulated vertical metrics for TrueType + fonts. + + - Fixed horizontal start-up position of vertical phantom points in + TrueType bytecode. + + +====================================================================== + CHANGES BETWEEN 2.4.12 and 2.5 I. IMPORTANT BUG FIXES diff --git a/modules/freetype2/docs/CMAKE b/modules/freetype2/docs/CMAKE new file mode 100644 index 000000000000..31237ae15164 --- /dev/null +++ b/modules/freetype2/docs/CMAKE @@ -0,0 +1,2 @@ +Support for a cmake build has been contributed. See the remarks in the +top-level `CMakeLists.txt' file for more. diff --git a/modules/freetype2/docs/CUSTOMIZE b/modules/freetype2/docs/CUSTOMIZE index 396eda38eae9..dfadb4658d87 100644 --- a/modules/freetype2/docs/CUSTOMIZE +++ b/modules/freetype2/docs/CUSTOMIZE @@ -8,10 +8,9 @@ How to customize the compilation of the library I. Configuration macros - The file found in `include/freetype/config/ftoption.h' contains a - list of commented configuration macros that can be toggled by - developers to indicate which features should be active while - building the library. + The file found in `include/config/ftoption.h' contains a list of + commented configuration macros that can be toggled by developers to + indicate which features should be active while building the library. These options range from debug level to availability of certain features, like native TrueType hinting through a bytecode @@ -36,9 +35,9 @@ II. Modules list can keep the source files `clean'. If you don't use GNU make you have to manually edit the file - `include/freetype/config/ftmodule.h' (which is *not* used with if - compiled with GNU make) to add or remove the drivers and components - you want to compile into the library. See `INSTALL.ANY' for more + `include/config/ftmodule.h' (which is *not* used with if compiled + with GNU make) to add or remove the drivers and components you want + to compile into the library. See `INSTALL.ANY' for more information. @@ -96,19 +95,16 @@ IV. Overriding default configuration and module headers #include FT_CONFIG_OPTIONS_H #include FT_CONFIG_MODULES_H - are compiled. Their default values being - and , you - can do something like: + are compiled. Their default values being and + , you can do something like: custom/ - freetype/ - config/ - ftoption.h => custom options header - ftmodule.h => custom modules list + config/ + ftoption.h => custom options header + ftmodule.h => custom modules list include/ => normal FreeType 2 include - freetype/ - ... + ... then change the C include path to always give the path to `custom' before the FreeType 2 `include'. @@ -126,7 +122,7 @@ IV. Overriding default configuration and module headers #define FT_CONFIG_OPTIONS_H #define FT_CONFIG_MODULES_H - #include + #include #endif /* __FT2_BUILD_MY_PLATFORM_H__ */ @@ -142,7 +138,7 @@ IV. Overriding default configuration and module headers ---------------------------------------------------------------------- -Copyright 2003, 2005, 2006, 2012 by +Copyright 2003, 2005, 2006, 2012, 2013 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, diff --git a/modules/freetype2/docs/DEBUG b/modules/freetype2/docs/DEBUG index 3d6acd3bb0e0..d8c79d187a56 100644 --- a/modules/freetype2/docs/DEBUG +++ b/modules/freetype2/docs/DEBUG @@ -4,63 +4,63 @@ Debugging within the FreeType sources I. Configuration macros ----------------------- -There are several ways to enable debugging features in a FreeType 2 -builds. This is controlled through the definition of special macros +There are several ways to enable debugging features in a FreeType 2 +builds. This is controlled through the definition of special macros located in the file `ftoptions.h'. The macros are: FT_DEBUG_LEVEL_ERROR - #define this macro if you want to compile the FT_ERROR macro calls - to print error messages during program execution. This will not - stop the program. Very useful to spot invalid fonts during + #define this macro if you want to compile the FT_ERROR macro calls + to print error messages during program execution. This will not + stop the program. Very useful to spot invalid fonts during development and to code workarounds for them. FT_DEBUG_LEVEL_TRACE - #define this macro if you want to compile both macros FT_ERROR and - FT_TRACE. This also includes the variants FT_TRACE0, FT_TRACE1, + #define this macro if you want to compile both macros FT_ERROR and + FT_TRACE. This also includes the variants FT_TRACE0, FT_TRACE1, FT_TRACE2, ..., FT_TRACE7. - The trace macros are used to send debugging messages when an - appropriate `debug level' is configured at runtime through the + The trace macros are used to send debugging messages when an + appropriate `debug level' is configured at runtime through the FT2_DEBUG environment variable (more on this later). FT_DEBUG_MEMORY - If this macro is #defined, the FreeType engine is linked with a - small but effective debugging memory manager that tracks all + If this macro is #defined, the FreeType engine is linked with a + small but effective debugging memory manager that tracks all allocations and frees that are performed within the font engine. - When the FT2_DEBUG_MEMORY environment variable is defined at - runtime, a call to FT_Done_FreeType will dump memory statistics, - including the list of leaked memory blocks with the source locations - where these were allocated. It is always a very good idea to define - this in development builds. This works with _any_ program linked to - FreeType, but requires a big deal of memory (the debugging memory - manager never frees the blocks to the heap in order to detect double - frees). + When the FT2_DEBUG_MEMORY environment variable is defined at + runtime, a call to FT_Done_FreeType will dump memory statistics, + including the list of leaked memory blocks with the source + locations where these were allocated. It is always a very good + idea to define this in development builds. This works with _any_ + program linked to FreeType, but requires a big deal of memory (the + debugging memory manager never frees the blocks to the heap in + order to detect double frees). - When FT2_DEBUG_MEMORY isn't defined at runtime, the debugging memory - manager is ignored, and performance is unaffected. + When FT2_DEBUG_MEMORY isn't defined at runtime, the debugging + memory manager is ignored, and performance is unaffected. II. Debugging macros -------------------- -Several macros can be used within the FreeType sources to help debugging -its code: +Several macros can be used within the FreeType sources to help +debugging its code: 1. FT_ERROR(( ... )) - This macro is used to send debug messages that indicate relatively - serious errors (like broken font files), but will not stop the - execution of the running program. Its code is compiled only when - either FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined in + This macro is used to send debug messages that indicate relatively + serious errors (like broken font files), but will not stop the + execution of the running program. Its code is compiled only when + either FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined in `ftoption.h'. - Note that you have to use a printf-like signature, but with double + Note that you have to use a printf-like signature, but with double parentheses, like in FT_ERROR(( "your %s is not %s\n", "foo", "bar" )); @@ -68,128 +68,130 @@ its code: 2. FT_ASSERT( condition ) - This macro is used to check strong assertions at runtime. If its - condition isn't TRUE, the program will abort with a panic message. - Its code is compiled when either FT_DEBUG_LEVEL_ERROR or - FT_DEBUG_LEVEL_TRACE are defined. You don't need double parentheses - here. For example + This macro is used to check strong assertions at runtime. If its + condition isn't TRUE, the program will abort with a panic message. + Its code is compiled when either FT_DEBUG_LEVEL_ERROR or + FT_DEBUG_LEVEL_TRACE are defined. You don't need double + parentheses here. For example FT_ASSERT( ptr != NULL ); 3. FT_TRACE( level, (message...) ) - The FT_TRACE macro is used to send general-purpose debugging - messages during program execution. This macro uses an *implicit* - macro named FT_COMPONENT used to name the current FreeType component - being run. + The FT_TRACE macro is used to send general-purpose debugging + messages during program execution. This macro uses an *implicit* + macro named FT_COMPONENT used to name the current FreeType + component being run. - The developer should always define FT_COMPONENT as appropriate, for - example as in + The developer should always define FT_COMPONENT as appropriate, + for example as in #undef FT_COMPONENT #define FT_COMPONENT trace_io - The value of the FT_COMPONENT macro is an enumeration named - trace_XXXX where XXXX is one of the component names defined in the - internal file `freetype/internal/fttrace.h'. If you modify FreeType - source and insert new trace_XXXX macro, you must register it in - fttrace.h. If you insert or remove many trace macros, you can check - the undefined or the unused trace macro by src/tools/chktrcmp.py. + The value of the FT_COMPONENT macro is an enumeration named + `trace_XXXX' where `XXXX' is one of the component names defined in + the internal file `internal/fttrace.h'. If you modify FreeType + source and insert new `trace_XXXX' macro, you must register it in + `fttrace.h'. If you insert or remove many trace macros, you can + check the undefined or the unused trace macro by + `src/tools/chktrcmp.py'. - Each such component is assigned a `debug level', ranging from 0 - to 7, through the use of the FT2_DEBUG environment variable + Each such component is assigned a `debug level', ranging from 0 to + 7, through the use of the FT2_DEBUG environment variable (described below) when a program linked with FreeType starts. - When FT_TRACE is called, its level is compared to the one of the - corresponding component. Messages with trace levels *higher* than + When FT_TRACE is called, its level is compared to the one of the + corresponding component. Messages with trace levels *higher* than the corresponding component level are filtered and never printed. - This means that trace messages with level 0 are always printed, - those with level 2 are only printed when the component level is *at - least* 2. + This means that trace messages with level 0 are always printed, + those with level 2 are only printed when the component level is + *at least* 2. - The second parameter to FT_TRACE must contain parentheses and + The second parameter to FT_TRACE must contain parentheses and correspond to a printf-like call, as in FT_TRACE( 2, ( "your %s is not %s\n", "foo", "bar" ) ) - The shortcut macros FT_TRACE0, FT_TRACE1, FT_TRACE2, ..., FT_TRACE7 - can be used with constant level indices, and are much cleaner to - use, as in + The shortcut macros FT_TRACE0, FT_TRACE1, FT_TRACE2, ..., + FT_TRACE7 can be used with constant level indices, and are much + cleaner to use, as in - FT_TRACE2(( "your %s is not %s\n", "foo", "bar" )); + FT_TRACE2(( "your %s is not %s\n", "foo", "bar" )); III. Environment variables -------------------------- -The following environment variables control debugging output and +The following environment variables control debugging output and behaviour of FreeType at runtime. FT2_DEBUG - This variable is only used when FreeType is built with - FT_DEBUG_LEVEL_TRACE defined. It contains a list of component level - definitions, following this format: + This variable is only used when FreeType is built with + FT_DEBUG_LEVEL_TRACE defined. It contains a list of component + level definitions, following this format: - component1:level1 component2:level2 component3:level3 ... + component1:level1 component2:level2 component3:level3 ... - where `componentX' is the name of a tracing component, as defined in - `fttrace.h', but without the `trace_' prefix. `levelX' is the + where `componentX' is the name of a tracing component, as defined + in `fttrace.h', but without the `trace_' prefix. `levelX' is the corresponding level to use at runtime. - `any' is a special component name that will be interpreted as + `any' is a special component name that will be interpreted as `any/all components'. For example, the following definitions - set FT2_DEBUG=any:2 memory:5 io:4 (on Windows) - export FT2_DEBUG="any:2 memory:5 io:4" (on Linux with bash) + set FT2_DEBUG=any:2 memory:5 io:4 (on Windows) + export FT2_DEBUG="any:2 memory:5 io:4" (on Linux with bash) - both stipulate that all components should have level 2, except for - the memory and io components which will be set to trace levels 5 and - 4, respectively. + both stipulate that all components should have level 2, except for + the memory and io components which will be set to trace levels 5 + and 4, respectively. FT2_DEBUG_MEMORY - This environment variable, when defined, tells FreeType to use a - debugging memory manager that will track leaking memory blocks as - well as other common errors like double frees. It is also capable - of reporting _where_ the leaking blocks were allocated, which - considerably saves time when debugging new additions to the library. + This environment variable, when defined, tells FreeType to use a + debugging memory manager that will track leaking memory blocks as + well as other common errors like double frees. It is also capable + of reporting _where_ the leaking blocks were allocated, which + considerably saves time when debugging new additions to the + library. - This code is only compiled when FreeType is built with the - FT_DEBUG_MEMORY macro #defined in `ftoption.h' though, it will be + This code is only compiled when FreeType is built with the + FT_DEBUG_MEMORY macro #defined in `ftoption.h' though, it will be ignored in other builds. FT2_ALLOC_TOTAL_MAX - This variable is ignored if FT2_DEBUG_MEMORY is not defined. It - allows you to specify a maximum heap size for all memory allocations - performed by FreeType. This is very useful to test the robustness - of the font engine and programs that use it in tight memory - conditions. + This variable is ignored if FT2_DEBUG_MEMORY is not defined. It + allows you to specify a maximum heap size for all memory + allocations performed by FreeType. This is very useful to test + the robustness of the font engine and programs that use it in + tight memory conditions. - If it is undefined, or if its value is not strictly positive, then + If it is undefined, or if its value is not strictly positive, then no allocation bounds are checked at runtime. FT2_ALLOC_COUNT_MAX - This variable is ignored if FT2_DEBUG_MEMORY is not defined. It - allows you to specify a maximum number of memory allocations - performed by FreeType before returning the error - FT_Err_Out_Of_Memory. This is useful for debugging and testing the - engine's robustness. + This variable is ignored if FT2_DEBUG_MEMORY is not defined. It + allows you to specify a maximum number of memory allocations + performed by FreeType before returning the error + FT_Err_Out_Of_Memory. This is useful for debugging and testing + the engine's robustness. - If it is undefined, or if its value is not strictly positive, then + If it is undefined, or if its value is not strictly positive, then no allocation bounds are checked at runtime. ------------------------------------------------------------------------ -Copyright 2002, 2003, 2004, 2005, 2009 by +Copyright 2002-2005, 2009, 2013 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, diff --git a/modules/freetype2/docs/INSTALL b/modules/freetype2/docs/INSTALL index fc699a8d53cd..456b76d2b55d 100644 --- a/modules/freetype2/docs/INSTALL +++ b/modules/freetype2/docs/INSTALL @@ -43,7 +43,12 @@ I. Normal installation and upgrades directory, where stands for your OS or environment. - 5. From you own IDE, or own Makefiles + 5. Using cmake + + See the top-level `CMakeLists.txt' file for more information. + + + 6. From you own IDE, or own Makefiles If you want to create your own project file, follow the instructions given in the `INSTALL.ANY' document of this @@ -70,7 +75,7 @@ II. Custom builds of the library ---------------------------------------------------------------------- -Copyright 2000-2008, 2010-2011 +Copyright 2000-2008, 2010-2011, 2013 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, diff --git a/modules/freetype2/docs/INSTALL.ANY b/modules/freetype2/docs/INSTALL.ANY index 80f161c64d30..8aa394f1fc53 100644 --- a/modules/freetype2/docs/INSTALL.ANY +++ b/modules/freetype2/docs/INSTALL.ANY @@ -33,25 +33,25 @@ I. Standard procedure src/base/ftbase.c - src/base/ftbbox.c -- recommended, see - src/base/ftglyph.c -- recommended, see + src/base/ftbbox.c -- recommended, see + src/base/ftglyph.c -- recommended, see - src/base/ftbdf.c -- optional, see - src/base/ftbitmap.c -- optional, see - src/base/ftcid.c -- optional, see + src/base/ftbdf.c -- optional, see + src/base/ftbitmap.c -- optional, see + src/base/ftcid.c -- optional, see src/base/ftfstype.c -- optional - src/base/ftgasp.c -- optional, see - src/base/ftgxval.c -- optional, see - src/base/ftlcdfil.c -- optional, see - src/base/ftmm.c -- optional, see - src/base/ftotval.c -- optional, see + src/base/ftgasp.c -- optional, see + src/base/ftgxval.c -- optional, see + src/base/ftlcdfil.c -- optional, see + src/base/ftmm.c -- optional, see + src/base/ftotval.c -- optional, see src/base/ftpatent.c -- optional - src/base/ftpfr.c -- optional, see - src/base/ftstroke.c -- optional, see - src/base/ftsynth.c -- optional, see - src/base/fttype1.c -- optional, see - src/base/ftwinfnt.c -- optional, see - src/base/ftxf86.c -- optional, see + src/base/ftpfr.c -- optional, see + src/base/ftstroke.c -- optional, see + src/base/ftsynth.c -- optional, see + src/base/fttype1.c -- optional, see + src/base/ftwinfnt.c -- optional, see + src/base/ftxf86.c -- optional, see src/base/ftmac.c -- only on the Macintosh @@ -143,7 +143,7 @@ II. Support for flat-directory compilation ---------------------------------------------------------------------- -Copyright 2003, 2005, 2006, 2009, 2010 by +Copyright 2003, 2005, 2006, 2009, 2010, 2013 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, diff --git a/modules/freetype2/docs/INSTALL.GNU b/modules/freetype2/docs/INSTALL.GNU index 72df50a4eacd..c2ff299a663a 100644 --- a/modules/freetype2/docs/INSTALL.GNU +++ b/modules/freetype2/docs/INSTALL.GNU @@ -1,7 +1,7 @@ -This document contains instructions how to build the FreeType library -on non-Unix systems with the help of GNU Make. Note that if you are -running Cygwin or MSys in Windows, you should follow the instructions -in the file INSTALL.UNIX instead. +This document contains instructions how to build the FreeType library +on non-Unix systems with the help of GNU Make. Note that if you are +running Cygwin or MinGW/MSYS in Windows, you should follow the +instructions in the file `INSTALL.UNIX' instead. FreeType 2 includes a powerful and flexible build system that allows @@ -54,8 +54,8 @@ in the file INSTALL.UNIX instead. platform win32 compiler gcc - configuration directory .\builds\win32 - configuration rules .\builds\win32\w32-gcc.mk + configuration directory .\builds\windows + configuration rules .\builds\windows\w32-gcc.mk If this does not correspond to your system or settings please remove the file 'config.mk' from this directory then read the @@ -138,15 +138,17 @@ in the file INSTALL.UNIX instead. Final note - The build system builds a statically linked library of the font - engine in the `objs' directory. It does _not_ support the build - of DLLs on Windows and OS/2. If you need these, you have to - either use an IDE-specific project file, or follow the + The above instructions build a _statically_ linked library of the + font engine in the `objs' directory. On Windows, you can build a + DLL either with MinGW (within an MSYS shell, following the + instructions in `INSTALL.UNIX'), or you use one of the Visual C++ + project files; see the subdirectories of `builds/windows'. For + everything else, you are on your own, and you might follow the instructions in `INSTALL.ANY' to create your own Makefiles. ---------------------------------------------------------------------- -Copyright 2003, 2004, 2005, 2006, 2008 by +Copyright 2003, 2004, 2005, 2006, 2008, 2013 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, diff --git a/modules/freetype2/docs/VERSION.DLL b/modules/freetype2/docs/VERSION.DLL index 2d1cc9acff03..354683a93f88 100644 --- a/modules/freetype2/docs/VERSION.DLL +++ b/modules/freetype2/docs/VERSION.DLL @@ -52,6 +52,8 @@ on _most_ systems, but not all of them: release libtool so ------------------------------- + 2.5.2 17.1.11 6.11.1 + 2.5.1 17.0.11 6.11.0 2.5.0 16.2.10 6.10.2 2.4.12 16.1.10 6.10.1 2.4.11 16.0.10 6.10.0 diff --git a/modules/freetype2/docs/reference/ft2-auto_hinter.html b/modules/freetype2/docs/reference/ft2-auto_hinter.html index f2cf72a9d005..60fe073303e8 100644 --- a/modules/freetype2/docs/reference/ft2-auto_hinter.html +++ b/modules/freetype2/docs/reference/ft2-auto_hinter.html @@ -3,7 +3,7 @@ -FreeType-2.5.0 API Reference +FreeType-2.5.2 API Reference