1 #!/usr/bin/python 2 3 from distutils.core import setup 4 from optparse import OptionParser 5 from glob import glob 6 from Pyrex.Distutils.extension import Extension 7 from Pyrex.Distutils import build_ext 8 9 parser = OptionParser() 10 parser.add_option('-b','--build', help='Build directory in which libraries are found. Relative to project root') 11 parser.disable_interspersed_args() 12 13 (opts, args) = parser.parse_args() 14 15 rfile = file("runpy", "w") 16 rfile.write("""#!/bin/sh 17 LD_LIBRARY_PATH=../../%s/src/.libs PYTHONPATH=build/lib.`python -c 'import distutils.util, sys; print distutils.util.get_platform()+"-"+str(sys.version_info[0])+"."+str(sys.version_info[1])'` "$@" 18 """ % opts.build) 19 rfile.close() 20 21 setup(name='harfbuzz', 22 version='0.0.1', 23 description='Harfbuzz compatibility layer', 24 long_description='Harfbuzz python integration modules and supporting scripts', 25 maintainer='Martin Hosken', 26 maintainer_email='martin_hosken (at] sil.org', 27 packages=['harfbuzz'], 28 ext_modules = [ 29 Extension("harfbuzz", ["lib/harfbuzz.pyx"], libraries=["harfbuzz"], library_dirs=["../../%s/src/.libs" % opts.build], include_dirs=["/usr/include/freetype2", "../../src", "../../%s/src" % opts.build]), 30 Extension("fontconfig", ["lib/fontconfig.pyx"], libraries=["fontconfig"]) 31 ], 32 cmdclass = {'build_ext' : build_ext}, 33 scripts = glob('scripts/*'), 34 license = 'LGPL', 35 platforms = ['Linux', 'Win32', 'Mac OS X'], 36 package_dir = {'harfbuzz' : 'lib'}, 37 script_args = args 38 ) 39 40