summaryrefslogtreecommitdiff
path: root/plac/setup.py
blob: aafe43dcd31be3fdb3c9564b5fedd25decf3e129 (plain)
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
try:
    from setuptools import setup
except ImportError:
    from distutils.core import setup
import os.path

def require(*modules):
    """Check if the given modules are already available; if not add them to
    the dependency list."""
    deplist = []
    for module in modules:
        try:
            __import__(module)
        except ImportError:
            deplist.append(module)
    return deplist

def getversion(fname):
    "Get the __version__ without importing plac"
    for line in open(fname):
        if line.startswith('__version__'):
            return eval(line[13:])

if __name__ == '__main__':
    setup(name='plac',
          version=getversion(
            os.path.join(os.path.dirname(__file__), 'plac.py')),
          description=('The smartest command line arguments parser '
                       'in the world'),
          long_description=open('README.txt').read(),
          author='Michele Simionato',
          author_email='michele.simionato@gmail.com',
          url='http://pypi.python.org/pypi/plac',
          license="BSD License",
          py_modules = ['plac_core', 'plac_ext', 'plac'],
          scripts = ['plac_runner.py'],
          install_requires=require('argparse', 'multiprocessing'),
          use_2to3=True,
          keywords="command line arguments parser",
          platforms=["All"],
          classifiers=['Development Status :: 3 - Alpha',
                       'Intended Audience :: Developers',
                       'License :: OSI Approved :: BSD License',
                       'Natural Language :: English',
                       'Operating System :: OS Independent',
                       'Programming Language :: Python',
                       'Topic :: Software Development :: Libraries',
                       'Topic :: Utilities'],
          zip_safe=False)