content: [project]
  name = "swig-project" # Name on PyPI
  readme = "README.md"
  requires-python = ">=3.7"
  license = "MIT"
  license-files = ["LICENSE"]
  authors = [{ "name" = "Pieter P", "email" = "pieter.p.dev@outlook.com" }]
  keywords = ["example", "addition", "subtraction", "swig"]
  classifiers = [
      "Development Status :: 3 - Alpha",
      "Programming Language :: Python :: 3",
      "Programming Language :: Python :: 3.7",
      "Programming Language :: Python :: 3.8",
      "Programming Language :: Python :: 3.9",
      "Programming Language :: Python :: 3.10",
      "Programming Language :: Python :: 3.11",
      "Programming Language :: Python :: 3.12",
      "Programming Language :: Python :: 3.13",
      "Operating System :: POSIX :: Linux",
      "Operating System :: Microsoft :: Windows",
      "Operating System :: MacOS",
  ]
  urls = { "Documentation" = "https://tttapa.github.io/" }
  dependencies = []
  dynamic = ["version", "description"]
  
  [project.scripts]
  add = "swig_project.add:main"
  
  [project.optional-dependencies]
  test = ["pytest>=7.2.0,<9"]
  
  [build-system]
  requires = [
      "py-build-cmake~=0.5.0",
      "swig~=4.3.1",                # https://github.com/nightlark/swig-pypi
  ]
  build-backend = "py_build_cmake.build"
  
  [tool.py-build-cmake.module]
  name = "swig_project"    # Import name
  directory = "src"
  
  [tool.py-build-cmake.sdist]
  include = ["CMakeLists.txt", "cmake/*.cmake", "src/ext"]
  exclude = []
  
  [tool.py-build-cmake.cmake]
  minimum_version = "3.18"
  build_type = "Release"
  source_path = "."                       # Containing CMakeLists.txt
  options = {}
  args = ["-Wdev"]
  build_args = ["-j"]
  build_tool_args = []
  install_args = ["--verbose"]
  install_components = ["python_modules"]
  env = {}
  
  [tool.py-build-cmake.linux.cmake] # Linux-specific options
  generator = "Ninja"
  
  [tool.py-build-cmake.mac.cmake] # macOS-specific options
  generator = "Ninja"
  
  [tool.py-build-cmake.wheel]
  python_abi = 'abi3'
  abi3_minimum_cpython_version = 37 # Should match Py_LIMITED_API
  
  [tool.pytest.ini_options]
  testpaths = ["tests"]
  
  [tool.cibuildwheel]
  build-verbosity = 1
  environment = { PY_BUILD_CMAKE_VERBOSE = "1" }
  test-command = "pytest {package}/tests"
  test-extras = ["test"]
  [tool.cibuildwheel.windows]
  archs = ["AMD64", "x86"] # No ARM64: https://gitlab.kitware.com/cmake/cmake/-/issues/26493
  