""" openmmforcefields Additional force fields for OpenMM. """ import sys from setuptools import setup, find_packages import versioneer short_description = __doc__.split("\n") # from https://github.com/pytest-dev/pytest-runner#conditional-requirement needs_pytest = {"pytest", "test", "ptr"}.intersection(sys.argv) pytest_runner = ["pytest-runner"] if needs_pytest else [] with open("README.md") as handle: long_description = handle.read() setup( # Self-descriptive entries which should always be present name="openmmforcefields", author="Chodera lab // MSKCC", author_email="john.chodera@choderalab.org", description=short_description[0], long_description=long_description, long_description_content_type="text/markdown", keywords="molecular mechanics, forcefield, OpenMM, AMBER, CHARMM, GAFF", url="http://github.com/choderalab/openmm-forcefields", version=versioneer.get_version(), cmdclass=versioneer.get_cmdclass(), license="MIT", classifiers=[ "Development Status :: 3 - Alpha", "Topic :: Utilities", "License :: OSI Approved :: MIT", ], # Don't install as an egg, since OpenMM can't find ffxml files if we do zip_safe=False, # Which Python importable modules should be included when your package is installed # Handled automatically by setuptools. Use 'exclude' to prevent some specific # subpackage(s) from being added, if needed packages=find_packages(), # Optional include package data to ship with your package # Customize MANIFEST.in if the general case does not suit your needs # Comment out this line to prevent the files from being packaged with your software include_package_data=True, # Allows `setup.py test` to work correctly with pytest setup_requires=[] + pytest_runner, entry_points={ "console_scripts": [], "openmm.forcefielddir": [ "ffxml = openmmforcefields.utils:get_ffxml_path", ], }, package_data={"openmmforcefields": ["ffxml/amber/*.xml", "ffxml/amber/gaff/*.{xml,dat}", "ffxml/charmm/*.xml"]}, )