from skbuild import setup

import os

setupdir = os.path.dirname(__file__)
if setupdir != '':
  os.chdir( setupdir )

with open("README.md", "r") as fh:
    long_description = fh.read()

with open("requirements.txt", "r") as fh:
    requires = [line.rstrip() for line in fh]

# NOTE (2025-09-12): Removed legacy `setup_requires` and `test_suite` arguments.
# - `setup_requires` triggered setuptools' deprecated fetch_build_eggs path
#   and is incompatible with modern PEP 517 builds. Build-time deps belong in
#   pyproject.toml (we already use scikit-build there).
# - `test_suite` is not a recognized distribution option and caused
#   "Unknown distribution option: 'test_suite'" warnings.
setup(
    name='opm',
    version = '@opm-common_VERSION@' + '@opm-common_PYTHON_PACKAGE_VERSION@',
    url='http://www.opm-project.org',
    author='The Open Porous Media Project',
    author_email='opmuser@gmail.com',
    description='OPM-Common Python bindings',
    long_description=long_description,
    long_description_content_type="text/markdown",
    packages=[
                'opm_embedded',
                'opm',
                'opm.io',
                'opm.io.deck',
                'opm.io.ecl_state',
                'opm.io.parser',
                'opm.io.schedule',
                'opm.io.sim',
                'opm.io.summary',
                'opm.io.ecl',
                'opm.ml.ml_tools',
                'opm.tools',
                'opm.util'
            ],
    package_data={'opm' : ['$<TARGET_FILE_NAME:opmcommon_python>']},
    include_package_data=True,
    # SPDX license expression to replace deprecated license classifier usage.
    license='GPL-3.0-or-later',
    install_requires=requires,
    python_requires='>=3.6',
    # NOTE (2025-09-12): Remove deprecated license classifier in favor of
    # SPDX license expression above. Keep non-license classifiers only.
    classifiers=[
        "Programming Language :: Python :: 3",
    ],
)
