xref: /openbsd-src/gnu/llvm/lldb/third_party/Python/module/pexpect-4.6/setup.py (revision 061da546b983eb767bad15e67af1174fb0bcf31c)
1*061da546Spatrick# encoding: utf-8
2*061da546Spatrickfrom distutils.core import setup
3*061da546Spatrickimport os
4*061da546Spatrickimport re
5*061da546Spatrickimport sys
6*061da546Spatrick
7*061da546Spatrickif any(a == 'bdist_wheel' for a in sys.argv):
8*061da546Spatrick    from setuptools import setup
9*061da546Spatrick
10*061da546Spatrickwith open(os.path.join(os.path.dirname(__file__), 'pexpect', '__init__.py'), 'r') as f:
11*061da546Spatrick    for line in f:
12*061da546Spatrick        version_match = re.search(r"__version__ = ['\"]([^'\"]*)['\"]", line)
13*061da546Spatrick        if version_match:
14*061da546Spatrick            version = version_match.group(1)
15*061da546Spatrick            break
16*061da546Spatrick    else:
17*061da546Spatrick        raise Exception("couldn't find version number")
18*061da546Spatrick
19*061da546Spatricklong_description = """
20*061da546SpatrickPexpect is a pure Python module for spawning child applications; controlling
21*061da546Spatrickthem; and responding to expected patterns in their output. Pexpect works like
22*061da546SpatrickDon Libes' Expect. Pexpect allows your script to spawn a child application and
23*061da546Spatrickcontrol it as if a human were typing commands.
24*061da546Spatrick
25*061da546SpatrickPexpect can be used for automating interactive applications such as ssh, ftp,
26*061da546Spatrickpasswd, telnet, etc. It can be used to a automate setup scripts for duplicating
27*061da546Spatricksoftware package installations on different servers. It can be used for
28*061da546Spatrickautomated software testing. Pexpect is in the spirit of Don Libes' Expect, but
29*061da546SpatrickPexpect is pure Python.
30*061da546Spatrick
31*061da546SpatrickThe main features of Pexpect require the pty module in the Python standard
32*061da546Spatricklibrary, which is only available on Unix-like systems. Some features—waiting
33*061da546Spatrickfor patterns from file descriptors or subprocesses—are also available on
34*061da546SpatrickWindows.
35*061da546Spatrick"""
36*061da546Spatrick
37*061da546Spatricksetup(name='pexpect',
38*061da546Spatrick    version=version,
39*061da546Spatrick    packages=['pexpect'],
40*061da546Spatrick    package_data={'pexpect': ['bashrc.sh']},
41*061da546Spatrick    description='Pexpect allows easy control of interactive console applications.',
42*061da546Spatrick    long_description=long_description,
43*061da546Spatrick    author='Noah Spurrier; Thomas Kluyver; Jeff Quast',
44*061da546Spatrick    author_email='noah@noah.org, thomas@kluyver.me.uk, contact@jeffquast.com',
45*061da546Spatrick    url='https://pexpect.readthedocs.io/',
46*061da546Spatrick    license='ISC license',
47*061da546Spatrick    platforms='UNIX',
48*061da546Spatrick    classifiers = [
49*061da546Spatrick        'Development Status :: 5 - Production/Stable',
50*061da546Spatrick        'Environment :: Console',
51*061da546Spatrick        'Intended Audience :: Developers',
52*061da546Spatrick        'Intended Audience :: System Administrators',
53*061da546Spatrick        'License :: OSI Approved :: ISC License (ISCL)',
54*061da546Spatrick        'Operating System :: POSIX',
55*061da546Spatrick        'Operating System :: MacOS :: MacOS X',
56*061da546Spatrick        'Programming Language :: Python',
57*061da546Spatrick        'Programming Language :: Python :: 2.7',
58*061da546Spatrick        'Programming Language :: Python :: 3',
59*061da546Spatrick        'Topic :: Software Development',
60*061da546Spatrick        'Topic :: Software Development :: Libraries :: Python Modules',
61*061da546Spatrick        'Topic :: Software Development :: Quality Assurance',
62*061da546Spatrick        'Topic :: Software Development :: Testing',
63*061da546Spatrick        'Topic :: System',
64*061da546Spatrick        'Topic :: System :: Archiving :: Packaging',
65*061da546Spatrick        'Topic :: System :: Installation/Setup',
66*061da546Spatrick        'Topic :: System :: Shells',
67*061da546Spatrick        'Topic :: System :: Software Distribution',
68*061da546Spatrick        'Topic :: Terminals',
69*061da546Spatrick    ],
70*061da546Spatrick    install_requires=['ptyprocess>=0.5'],
71*061da546Spatrick)
72