|
| 1 | +# coding: utf-8 |
| 2 | +# Copyright 2013 The Font Bakery Authors. |
| 3 | +# Copyright 2017 The Google Fonts Tools Authors. |
| 4 | +# |
| 5 | +# Licensed under the Apache License, Version 2.0 (the "License"); |
| 6 | +# you may not use this file except in compliance with the License. |
| 7 | +# You may obtain a copy of the License at |
| 8 | +# |
| 9 | +# http://www.apache.org/licenses/LICENSE-2.0 |
| 10 | +# |
| 11 | +# Unless required by applicable law or agreed to in writing, software |
| 12 | +# distributed under the License is distributed on an "AS IS" BASIS, |
| 13 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 14 | +# See the License for the specific language governing permissions and |
| 15 | +# limitations under the License. |
| 16 | +# |
| 17 | +# See AUTHORS.txt for the list of Authors and LICENSE.txt for the License. |
| 18 | +import os |
| 19 | +from setuptools import setup |
| 20 | + |
| 21 | +def gftools_scripts(): |
| 22 | + scripts = [os.path.join('bin', f) for f in os.listdir('bin') if f.startswith('gftools-')] |
| 23 | + scripts.append(os.path.join('bin', 'gftools')) |
| 24 | + return scripts |
| 25 | + |
| 26 | +# Read the contents of the README file |
| 27 | +with open('README.md') as f: |
| 28 | + long_description = f.read() |
| 29 | + |
| 30 | +setup( |
| 31 | + name="gftools", |
| 32 | + use_scm_version={"write_to": "Lib/gftools/_version.py"}, |
| 33 | + url='https://github.com/googlefonts/tools/', |
| 34 | + description='Google Fonts Tools is a set of command-line tools' |
| 35 | + ' for testing font projects', |
| 36 | + long_description=long_description, |
| 37 | + long_description_content_type='text/markdown', # This is important! |
| 38 | + author=('Google Fonts Tools Authors: ' |
| 39 | + 'Dave Crossland, ' |
| 40 | + 'Felipe Sanches, ' |
| 41 | + 'Lasse Fister, ' |
| 42 | + 'Marc Foley, ' |
| 43 | + 'Eli Heuer, ' |
| 44 | + 'Roderick Sheeter'), |
| 45 | + author_email='dave@lab6.com', |
| 46 | + package_dir={'': 'Lib'}, |
| 47 | + packages=['gftools', |
| 48 | + 'gftools.actions', |
| 49 | + 'gftools.util', |
| 50 | + 'gftools.builder'], |
| 51 | + package_data={'gftools.util': ["GlyphsInfo/*.xml", "UnicodeSections/*.json"], |
| 52 | + 'gftools': [ |
| 53 | + 'template.upstream.yaml', |
| 54 | + "udhr_all.txt", |
| 55 | + "templates/*.html", |
| 56 | + "push-templates/*.html" |
| 57 | + ] |
| 58 | + }, |
| 59 | + scripts=gftools_scripts(), |
| 60 | + zip_safe=False, |
| 61 | + classifiers=[ |
| 62 | + 'Environment :: Console', |
| 63 | + 'Intended Audience :: Developers', |
| 64 | + 'Topic :: Text Processing :: Fonts', |
| 65 | + 'License :: OSI Approved :: Apache Software License', |
| 66 | + 'Operating System :: OS Independent', |
| 67 | + 'Programming Language :: Python :: 2', |
| 68 | + 'Programming Language :: Python :: 3' |
| 69 | + ], |
| 70 | + python_requires=">=3.7", |
| 71 | + setup_requires=['setuptools_scm>=4,<6.1'], |
| 72 | + # Dependencies needed for gftools qa. |
| 73 | + extras_require={"qa": ['fontbakery', 'fontdiffenator', 'gfdiffbrowsers']}, |
| 74 | + install_requires=[ |
| 75 | +# 'fontforge', # needed by build-font2ttf script |
| 76 | +# but there's no fontforge package on pypi |
| 77 | +# see: https://github.com/fontforge/fontforge/issues/2048 |
| 78 | + 'setuptools', |
| 79 | + 'FontTools[ufo]', |
| 80 | + 'axisregistry>=0.3.1', # API update removed fallback names pre-processing |
| 81 | + 'absl-py', |
| 82 | + 'glyphsLib', |
| 83 | + 'gflanguages>=0.4.0', |
| 84 | + 'glyphsets>=0.2.1', |
| 85 | + 'PyGithub', |
| 86 | + 'pillow', |
| 87 | + 'protobuf==3.19.4', |
| 88 | + 'requests', |
| 89 | + 'tabulate', |
| 90 | + 'unidecode', |
| 91 | + 'opentype-sanitizer', |
| 92 | + 'vttlib', |
| 93 | + 'pygit2', |
| 94 | + 'strictyaml', |
| 95 | + 'fontmake>=3.3.0', |
| 96 | + 'skia-pathops', |
| 97 | + 'statmake', |
| 98 | + 'PyYAML', |
| 99 | + 'babelfont', |
| 100 | + 'ttfautohint-py', |
| 101 | + 'brotli', |
| 102 | + 'browserstack-local==1.2.2', |
| 103 | + 'pybrowserstack-screenshots==0.1', |
| 104 | + 'jinja2', |
| 105 | + 'hyperglot', |
| 106 | + 'fontFeatures', |
| 107 | + 'vharfbuzz', |
| 108 | + 'bumpfontversion', |
| 109 | + 'nanoemoji>=0.15.0', |
| 110 | + 'font-v', |
| 111 | + ] |
| 112 | + ) |
0 commit comments