{% set name = "fonttools" %}
{% set version = "4.51.0" %}
{% set sha256 = "85aa9cdf030dd82f28ca584a8814de265150b46bfc65067343a631773efa885a" %}

package:
  name: {{ name|lower }}
  version: {{ version }}

source:
  fn: {{ name }}-{{ version }}.tar.gz
  url: https://github.com/{{ name }}/{{ name }}/archive/{{ version }}.tar.gz
  sha256: {{ sha256 }}

build:
  number: 0
  script: {{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation
  entry_points:
    - fonttools = fontTools.__main__:main
    - ttx = fontTools.ttx:main
    - pyftsubset = fontTools.subset:main
    - pyftmerge = fontTools.merge:main
  script_env:
    - FONTTOOLS_WITH_CYTHON=1

requirements:
  build:
    - {{ compiler('c') }}
  host:
    - python
    - cython
    - setuptools
    - pip
    - wheel
  run:
    - python
    - brotli >=1.0.1
    - unicodedata2 >=15.1.0 # [py<313]
  run_constrained:
    - fs >=2.2.0,<3
    - lxml >=4.0
    - zopfli >=0.1.4
    - lz4 >=1.7.4.2
    - skia-pathops >=0.5.0
    - uharfbuzz >=0.23.0

test:
  imports:
    - fontTools
    - fontTools.ttLib
  commands:
    - pip check
    - fonttools subset --help
    - ttx -h
    - pyftsubset --help
    - echo $FONTTOOLS_WITH_CYTHON
    - python -c "from fontTools.cu2qu.cu2qu import COMPILED; assert COMPILED"
    # pyftmerge has no help option
    # pyftinspect requires gtk
  requires:
    - pip

about:
  home: https://github.com/fonttools/fonttools
  license: MIT
  license_family: MIT
  license_file: LICENSE
  summary: 'fontTools is a library for manipulating fonts, written in Python.'

  description: |
    fontTools is a library for manipulating fonts, written in Python. The
    project includes the TTX tool, that can convert TrueType and OpenType
    fonts to and from an XML text format, which is also called TTX. It
    supports TrueType, OpenType, AFM and to an extent Type 1 and some
    Mac-specific formats. The project has a BSD-style open-source licence.

  doc_url: https://fonttools.readthedocs.io/
  dev_url: https://github.com/fonttools/fonttools

extra:
  recipe-maintainers:
    - CJ-Wright
