1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
|
#! /usr/bin/env python
import os, sys
from distutils.core import setup, Extension
from distutils.command.build_ext import build_ext
try:
# load py2exe distutils extension, if available
import py2exe
except ImportError:
pass
try:
import numpy
except ImportError:
print "*** Warning: FontTools needs the numpy library, see:"
print " http://numpy.scipy.org/"
try:
import xml.parsers.expat
except ImportError:
print "*** Warning: FontTools needs PyXML, see:"
print " http://sourceforge.net/projects/pyxml/"
class build_ext_optional(build_ext):
"""build_ext command which doesn't abort when it fails."""
def build_extension(self, ext):
# Skip extensions which cannot be built
try:
build_ext.build_extension(self, ext)
except:
self.announce(
'*** WARNING: Building of extension "%s" '
'failed: %s' %
(ext.name, sys.exc_info()[1]))
if sys.version_info > (2, 3, 0, 'alpha', 1):
# Trove classifiers for PyPI
classifiers = {"classifiers": [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Environment :: Other Environment",
"Intended Audience :: Developers",
"Intended Audience :: End Users/Desktop",
"License :: OSI Approved :: BSD License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Multimedia :: Graphics",
"Topic :: Multimedia :: Graphics :: Graphics Conversion",
]}
else:
classifiers = {}
long_description = """\
FontTools/TTX is a library to manipulate font files from Python.
It supports reading and writing of TrueType/OpenType fonts, reading
and writing of AFM files, reading (and partially writing) of PS Type 1
fonts. The package also contains a tool called "TTX" which converts
TrueType/OpenType fonts to and from an XML-based format.
"""
setup(
name = "fonttools",
version = "2.4",
description = "Tools to manipulate font files",
author = "Just van Rossum",
author_email = "just@letterror.com",
maintainer = "Just van Rossum",
maintainer_email = "just@letterror.com",
url = "http://fonttools.sourceforge.net/",
license = "OpenSource, BSD-style",
platforms = ["Any"],
long_description = long_description,
packages = [
"",
"fontTools",
"fontTools.encodings",
"fontTools.misc",
"fontTools.pens",
"fontTools.ttLib",
"fontTools.ttLib.tables",
"fontTools.ttLib.test",
],
package_dir = {'': 'Lib'},
extra_path = 'FontTools',
ext_modules = [
Extension(
"fontTools.misc.eexecOp",
["Src/eexecOp/eexecOpmodule.c"],
include_dirs=[],
define_macros=[],
library_dirs=[],
libraries=[],
)
],
scripts = ["Tools/ttx"],
console = ["Tools/ttx"],
cmdclass = {"build_ext": build_ext_optional},
data_files = [('share/man/man1', ["Doc/ttx.1"])],
**classifiers
)
|