Subject: CVS commit: pkgsrc/graphics/freetype2
From: Benny Siegert
Date: 2016-01-10 22:16:34
Message id: 20160110211634.35A09FBB5@cvs.NetBSD.org

Log Message:
Update freetype2 to 2.6.2. Include file layout changed yet again, please
test dependent packages.

CHANGES BETWEEN 2.6 and 2.6.1

  I. IMPORTANT BUG FIXES

    - It turned  out that for CFFs  only the advance widths  should be
      taken from the  `htmx' table, not the side  bearings.  This bug,
      introduced in  version 2.6.0, makes  it necessary to  upgrade if
      you are using  CFFs; otherwise, you get cropped  glyphs with GUI
      interfaces like GTK or Qt.

    - Accessing Type 42 fonts returned  incorrect results if the glyph
      order of the embedded TrueType font differs from the glyph order
      of the Type 42 charstrings table.

  II. IMPORTANT CHANGES

    - The header  file layout  has been  changed (again),  moving  all
      header files except `ft2build.h' into a subdirectory tree.

      Doing so  reduces the  possibility of  header file  name clashes
      (e.g., FTGL's  `FTGlyph.h' with FreeType's `ftglyph.h')  on case
      insensitive file systems like Mac OS X or Windows.

      Applications  that  use  (a)  the  `freetype-config'  script  or
      FreeType's `freetype2.pc' file for pkg-config to get the include
      directory  for the  compiler,  and (b)  the  documented way  for
      header inclusion like

        #include <ft2build.h>
        #include FT_FREETYPE_H
        ...

      don't need any change to the source code.

    - Simple access  to named instances  in GX variation fonts  is now
      available (in addition to the  previous method via FreeType's MM
      interface).   In  the `FT_Face'  structure,  bits  16-30 of  the
      `face_index' field hold the current named instance index for the
      given face  index, and bits  16-30 of `style_flags'  contain the
      number of  instances for  the given face  index.  `FT_Open_Face'
      and friends also understand the  extended bits of the face index
      parameter.

      You need to enable  TT_CONFIG_OPTION_GX_VAR_SUPPORT for this new
      feature.  Otherwise, bits  16-30 of the two fields  are zero (or
      are ignored).

    - Lao script support has been added to the auto-hinter.

  III. MISCELLANEOUS

    - The auto-hinter's Arabic script support has been enhanced.

    - Superscript-like and  subscript-like glyphs  as used  by various
      phonetic alphabets like the IPA  are now better supported by the
      auto-hinter.

    - The TrueType bytecode interpreter now runs slightly faster.

    - Improved support for builds with cmake.

    - The  function  `FT_CeilFix'  now   always  rounds  towards  plus
      infinity.

    - The  function  `FT_FloorFix'  now always  rounds  towards  minus
      infinity.

    - A  new load  flag `FT_LOAD_COMPUTE_METRICS'  has been  added; it
      makes FreeType  ignore pre-computed  metrics, as needed  by font
      validating  or  font  editing  programs.  Right  now,  only  the
      TrueType  module supports  it  to ignore  data  from the  `hdmx'
      table.

    - Another round of bug fixes  to better handle broken fonts, found
      by Kostya Serebryany <kcc@google.com>.

CHANGES BETWEEN 2.6.1 and 2.6.2

  I. IMPORTANT CHANGES

    - The auto-hinter now supports stem darkening, to be controlled by
      the    new   `no-stem-darkening'    and   `darkening-parameters'
      properties.   This is  an  experimental  feature contributed  by
      Nikolaus Waxweiler, and  the interface might change  in a future
      release.

    - By default, stem darkening is now switched off (for both the CFF
      engine and the  auto-hinter).  The main reason is  that you need
      linear  alpha  blending  and  gamma correction  to  get  correct
      rendering results, and  the latter is not yet  available in most
      freely  available  rendering  stacks like  X11.   Applying  stem
      darkening without proper gamma correction  leads to far too dark
      rendering results.

    - The   meaning  of   `FT_RENDER_MODE_LIGHT'  has   been  slightly
      modified.   It  now  essentially  means `no  hinting  along  the
      horizontal  axis'; in  particular,  no change  of glyph  advance
      widths.  Consequently, the auto-hinter  is used for all scalable
      font  formats  except  for  CFF.    It  is  planned  that  other
      font-specific rendering engines (TrueType, Type 1) will follow.

  II. MISCELLANEOUS

    - The default  LCD filter  has been changed  to be  normalized and
      color-balanced.

    - For    better    compatibility   with    FontConfig,    function
      `FT_Library_SetLcdFilter'  accepts   a  new   enumeration  value
      `FT_LCD_FILTER_LEGACY1'   (which  has   the   same  meaning   as
      `FT_LCD_FILTER_LEGACY').

    - A large number of bugs have been detected by using the libFuzzer
      framework,  which should  further  improve  handling of  invalid
      fonts.  Thanks again to Kostya Serebryany and Bungeman!

    - `TT_CONFIG_OPTION_MAX_RUNNABLE_OPCODES',  a   new  configuration
      option, controls the maximum number of executed opcodes within a
      bytecode program.  You don't want to change this except for very
      special  situations (e.g.,  making a  library fuzzer  spend less
      time to handle broken fonts).

    - The smooth renderer has been made faster.

    - The `ftstring'  demo program  now supports  sub-pixel rendering;
      use key `l' to cycle through the LCD modes.

    - The `ftstring'  demo program now supports  colour rendering; use
      the `space' key to cycle through various colour combinations.

    - The graphical demo programs now use a default gamma value of 1.8
      (instead of 1.2).

Files:
RevisionActionfile
1.101modifypkgsrc/graphics/freetype2/Makefile
1.23modifypkgsrc/graphics/freetype2/PLIST
1.56modifypkgsrc/graphics/freetype2/distinfo
1.20removepkgsrc/graphics/freetype2/patches/patch-aa