# SPDX-FileCopyrightText: Copyright 2023 Arm Limited and/or its affiliates <open-source-office@arm.com>
#
# SPDX-License-Identifier: Apache-2.0
#
# Licensed under the Apache License, Version 2.0 (the License); you may
# not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an AS IS BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

[project]
name = "ethos-u-vela"
description = "Neural network model compiler for Arm Ethos-U NPUs"
requires-python = "~=3.7"
authors = [{name = "Arm Ltd", email = "mlg-vela@arm.com"}]
license = {text= "Apache License 2.0"}
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: Apache Software License",
    "Operating System :: POSIX :: Linux",
    "Operating System :: Microsoft :: Windows :: Windows 10",
    "Programming Language :: C",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.9",
    "Topic :: Scientific/Engineering :: Artificial Intelligence",
    "Topic :: Software Development :: Compilers",
]
keywords = ["ethos-u", "vela compiler", "tflite", "npu"]
dependencies = [
    "flatbuffers==2.0.7",
    "numpy<=1.21.3; python_version<='3.7'",
    "numpy; python_version>'3.7'",
    "lxml>=4.5.2"
]
dynamic = ["readme", "version"]

[project.optional-dependencies]
dev = [
    "pytest",
    "pytest-cov",
    "pre-commit",
    "build",
    "setuptools_scm[toml]~=7.1.0"
]

[project.urls]
Homepage = "https://git.mlplatform.org/ml/ethos-u/ethos-u-vela.git/"

[project.scripts]
vela = "ethosu.vela.vela:main"

[build-system]
requires = [
    "numpy<=1.21.3; python_version<='3.7'",
    "numpy; python_version>'3.7'",
    "setuptools_scm[toml]~=7.1.0"
]
build-backend = "setuptools.build_meta"