#
# meson_options.txt
#

# Copyright (C) 2020-2021 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.


option('zlib',
  type: 'feature',
  value: 'auto',
  description: 'Support reading gzip-compressed font files.')

option('bzip2',
  type: 'feature',
  value: 'auto',
  description: 'Support reading bzip2-compressed font files.')

option('png',
  type: 'feature',
  value: 'auto',
  description: 'Support color bitmap glyph formats in the PNG format.'
               + 'Requires libpng.')

option('harfbuzz',
  type: 'feature',
  value: 'auto',
  description: 'Use Harfbuzz library to improve auto-hinting.'
               + ' If available, many glyphs not directly addressable'
               + ' by a font\'s character map will be hinted also.')

option('tests',
  type: 'feature',
  value: 'disabled',
  description: 'Enable FreeType unit and regression tests.')

option('brotli',
  type: 'feature',
  value: 'auto',
  description: 'Use Brotli library to support decompressing WOFF2 fonts.')

option('mmap',
  type: 'feature',
  value: 'auto',
  description: 'Use mmap() to open font files for faster parsing.')
