[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/borglab/gtsam/develop/python/setup.py.in [Back]  [Original]

"""Setup file to install the GTSAM package."""

from setuptools import setup, find_namespace_packages, Distribution

packages = find_namespace_packages(
    where=".",
    exclude=('build', 'build.*', 'CMakeFiles', 'CMakeFiles.*',
             'gtsam.notebooks', '*.preamble', '*.specializations', 'dist'))
print("PACKAGES: ", packages)

package_data = {
    '': [
        "./*.so",
        "./*.dll",
        "./*.pyd",
        "*.pyi", "**/*.pyi",  # Add the type hints
    ]
}

# Cleaner to read in the contents rather than copy them over.
readme_contents = open("${GTSAM_SOURCE_DIR}/README.md").read()

# The cibuildwheel tool won't recognize a wheel as platform-dependent unless the ext_modules option is defined in setup.py. This is used to define C/C++ source files that need to be built for the wheel.
# However, we pre-build our C++ files. Thus, we force cibuildwheel to think that there are ext_modules defined by overwriting the has_ext_modules() function.
class BinaryDistribution(Distribution):
    def has_ext_modules(foo):
        return True

setup(
    name='${SETUP_NAME}',
    description='Georgia Tech Smoothing And Mapping library',
    url='https://gtsam.org/',
    version='${GTSAM_VERSION_STRING}',  # https://www.python.org/dev/peps/pep-0440/
    author='Frank Dellaert et. al.',
    author_email='frank.dellaert@gtsam.org',
    license='Simplified BSD license',
    keywords='slam sam robotics localization mapping optimization',
    long_description_content_type='text/markdown',
    long_description=readme_contents,
    # https://pypi.org/pypi?%3Aaction=list_classifiers
    classifiers=[
        'Development Status :: 5 - Production/Stable',
        'Intended Audience :: Education',
        'Intended Audience :: Developers',
        'Intended Audience :: Science/Research',
        'Operating System :: MacOS',
        'Operating System :: Microsoft :: Windows',
        'Operating System :: POSIX',
        'License :: OSI Approved :: BSD License',
        'Programming Language :: Python :: 3',
    ],
    packages=packages,
    include_package_data=True,
    package_data=package_data,
    distclass=BinaryDistribution,
    test_suite="gtsam.tests",
    install_requires=open("${GTSAM_SOURCE_DIR}/python/requirements.txt").readlines(),
    zip_safe=False,
)

Web Proxy Viewer  |  New URL  |  Original Page