from skbuild import setup

import os

# This script is used by the docker/Dockerfile to build wheels for the python bindings.

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` triggers setuptools' deprecated fetch_build_eggs path
#   (_DeprecatedInstaller). We build via PEP 517 (see pyproject.toml with
#   scikit-build), so build-time deps must be declared there instead.
# - `test_suite` is not a supported distribution option and produced
#   "Unknown distribution option: 'test_suite'" warnings.
setup(
    name='opm-simulators',
    version = '@opm-simulators_VERSION@' + '@opm-simulators_PYTHON_PACKAGE_VERSION@',
    url='http://www.opm-project.org',
    author='The Open Porous Media Project',
    author_email='opmuser@gmail.com',
    description='OPM-Simulators Python bindings',
    long_description=long_description,
    long_description_content_type="text/markdown",
    packages=[
                'opm',
                'opm.simulators'
            ],
    package_data={
        'opm': [
            '$<TARGET_FILE_NAME:BlackOil>',
            '$<TARGET_FILE_NAME:GasWater>',
            '$<TARGET_FILE_NAME:OnePhase>',
        ]
    },
    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.8',
    # 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",
    ],
)
