Skip to content
Snippets Groups Projects
setup.py 1.27 KiB
Newer Older
try:
    from dune.packagemetadata import metaData
except ImportError:
    from packagemetadata import metaData
from setuptools import find_namespace_packages
from skbuild import setup

# When building a new package, update the version numbers below and run:
# > python setup.py sdist
# > python -m twine upload dist/*
dumuxVersion = "3.4.0.dev20210308"
duneVersion = "2.8.0.dev20210308"

metadata = metaData(duneVersion)[1]
metadata["version"] = dumuxVersion
metadata["long_description"] = metadata["long_description"].replace(
    "doc/logo/dumux_logo_hires_whitebg.png", "https://dumux.org/images/logo.svg"
metadata["packages"] = find_namespace_packages(where="python", include=["dumux.*"])
# auto-generate pyproject.toml with duneVersion when building sdist
from skbuild.command.sdist import sdist
class mysdist(sdist):
    def run(self):
        requires = ["setuptools", "wheel", "scikit-build", "cmake", "ninja", "requests"]
        requires += metadata["install_requires"]
        with open("pyproject.toml", "w") as f:
            f.write("[build-system]\n")
            f.write("requires = ['" + "', '".join(requires) + "']\n")
            f.write("build-backend = 'setuptools.build_meta'\n")
        sdist.run(self)


metadata["cmdclass"] = {"sdist": mysdist}
setup(**metadata)