# Copyright (c) 2020, Xilinx # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # * Redistributions of source code must retain the above copyright notice, this # list of conditions and the following disclaimer. # # * Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # * Neither the name of FINN nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # This file is used to configure your project. # Read more about the various options under: # http://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files [metadata] name = finn description = A Framework for Fast, Scalable Quantized Neural Network Inference author = Yaman Umuroglu author_email = yamanu@xilinx.com license = new-bsd long_description = file: README.md long_description_content_type = text/markdown url = https://xilinx.github.io/finn/ project_urls = Documentation = https://finn.readthedocs.io/ # Change if running only on Windows, Mac or Linux (comma-separated) platforms = any # Add here all kinds of additional classifiers as defined under # https://pypi.python.org/pypi?%3Aaction=list_classifiers classifiers = Development Status :: 4 - Beta Programming Language :: Python Operating System :: POSIX :: Linux [options] zip_safe = False packages = find_namespace: include_package_data = True package_dir = =src # DON'T CHANGE THE FOLLOWING LINE! IT WILL BE UPDATED BY PYSCAFFOLD! setup_requires = pyscaffold>=3.2a0,<3.3a0 # The usage of test_requires is discouraged, see `Dependency Management` docs # tests_require = pytest; pytest-cov # Require a specific Python version, e.g. Python 2.7 or >= 3.4 # python_requires = >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.* install_requires = referencing==0.8.11 jsonschema==4.17.3 jsonschema-specifications==2022.12.3 jupyter-events==0.6.3 [options.packages.find] where = src exclude = tests [options.extras_require] # Add here additional requirements for extra features, to install with: # `pip install FINN[PDF]` like: # PDF = ReportLab; RXP # qonnx is needed to build the full set of docs docs = docutils==0.17.1 dataclasses-json==0.5.7 gspread==3.6.0 IPython pytest netron vcdvcd sphinx==5.0.2 sphinx_rtd_theme==0.5.0 torchvision torch qonnx@git+https://github.com/fastmachinelearning/qonnx@main#egg=qonnx pyverilator@git+https://github.com/maltanar/pyverilator@master#egg=pyverilator brevitas@git+https://github.com/Xilinx/brevitas@master#egg=brevitas_examples # Add here test requirements (semicolon/line-separated) testing = pytest pytest-cov [options.entry_points] console_scripts = build_dataflow = finn.builder.build_dataflow:main # Add here console scripts like: # console_scripts = # script_name = finn.module:function # For example: # console_scripts = # fibonacci = finn.skeleton:run # And any other entry points, for example: # pyscaffold.cli = # awesome = pyscaffoldext.awesome.extension:AwesomeExtension [test] # py.test options when running `python setup.py test` # addopts = --verbose [tool:pytest] # Options for py.test: # Specify command line options as you would do when invoking py.test directly. # e.g. --cov-report html (or xml) for html/xml output or --junitxml junit.xml # in order to write a coverage file that can be read by Jenkins. addopts = --verbose markers = slow: marks tests as slow (deselect with '-m "not slow"') vivado: mark tests that require Vivado or Vivado HLS vitis: mark tests that require Vitis board: mark tests that require a PYNQ board brevitas_export : mark tests that test brevitas export functionality streamline: mark tests that test streamlining functionality util: mark tests that test util functions transform: mark tests that test transformations (before hls layers) fpgadataflow: mark tests related to hls layers end2end: mark tests that run the end2end flow notebooks: mark tests that execute all Jupyter notebooks norecursedirs = dist build .tox testpaths = tests [aliases] dists = bdist_wheel [bdist_wheel] # Use this option if your package is pure-python universal = 0 [build_sphinx] source_dir = docs/finn build_dir = build/sphinx [devpi:upload] # Options for the devpi: PyPI server and packaging tool # VCS export must be deactivated since we are using setuptools-scm no-vcs = 1 formats = bdist_wheel [flake8] # Some sane defaults for the code style checker flake8 exclude = .tox build dist .eggs docs/conf.py [pyscaffold] # PyScaffold's parameters when the project was created. # This will be used when updating. Do not change! version = 3.2.1 package = finn extensions = travis pre_commit namespace namespace = finn