soc/integration/csr_bridge: use registered version only when SDRAM is present.
[litex.git] / setup.py
index 84bfd55e5e29226283aeca62d1808d06c83ef370..efefa52a4a085eed97c1b0812e2b5ae6a0be0228 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -1,46 +1,53 @@
 #!/usr/bin/env python3
-# vim: noexpandtab:tabstop=8:softtabstop=8
-""" Migen's distutils distribution and installation script. """
 
-import sys, os
-from distutils.core import setup
+from setuptools import setup
+from setuptools import find_packages
 
-here = os.path.abspath(os.path.dirname(__file__))
-README = open(os.path.join(here, "README")).read()
 
-required_version = (3, 1)
-if sys.version_info < required_version:
-       raise SystemExit("migen requires python {0} or greater".format(
-               ".".join(map(str, required_version))))
-
-packages = ["migen"]
-packages_dir = os.path.sep.join((here, packages[0]))
-for entry in os.listdir(packages_dir):
-       if (os.path.isdir(os.path.sep.join((packages_dir, entry))) and
-        os.path.isfile(os.path.sep.join((packages_dir, entry, "__init__.py")))):
-               packages.append(".".join((packages[0], entry)))
-
-packages_dir={"": "migen"}
 setup(
-       name="migen",
-       version="unknown",
-       description="Python toolbox for building complex digital hardware",
-       long_description=README,
-       author="Sebastien Bourdeauducq",
-       author_email="sebastien@milkymist.org",
-       url="http://www.milkymist.org",
-       download_url="https://github.com/milkymist/migen",
-       packages=packages,
-       license="GPL",
-       platforms=["Any"],
-       keywords="HDL ASIC FPGA hardware design",
-       classifiers=[
-               "Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)",
-               "Environment :: Console",
-               "Development Status :: Alpha",
-               "Intended Audience :: Developers",
-               "License :: OSI Approved :: GNU General Public License (GPL)",
-               "Operating System :: OS Independent",
-               "Programming Language :: Python",
-       ],
+    name="litex",
+    description="Python SoC/Core builder for building FPGA based systems.",
+    author="Florent Kermarrec",
+    author_email="florent@enjoy-digital.fr",
+    url="http://enjoy-digital.fr",
+    download_url="https://github.com/enjoy-digital/litex",
+    test_suite="test",
+    license="BSD",
+    python_requires="~=3.6",
+    install_requires=[
+        "migen",
+        "pyserial",
+        "requests",
+        "pythondata-software-compiler_rt",
+    ],
+    packages=find_packages(exclude=("test*", "sim*", "doc*")),
+    include_package_data=True,
+    platforms=["Any"],
+    keywords="HDL ASIC FPGA hardware design",
+    classifiers=[
+        "Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)",
+        "Environment :: Console",
+        "Development Status :: Alpha",
+        "Intended Audience :: Developers",
+        "License :: OSI Approved :: BSD License",
+        "Operating System :: OS Independent",
+        "Programming Language :: Python",
+    ],
+    entry_points={
+        "console_scripts": [
+            # full names
+            "litex_term=litex.tools.litex_term:main",
+            "litex_server=litex.tools.litex_server:main",
+            "litex_jtag_uart=litex.tools.litex_jtag_uart:main",
+            "litex_crossover_uart=litex.tools.litex_crossover_uart:main",
+            "litex_sim=litex.tools.litex_sim:main",
+            "litex_read_verilog=litex.tools.litex_read_verilog:main",
+            "litex_simple=litex.boards.targets.simple:main",
+            "litex_json2dts=litex.tools.litex_json2dts:main",
+            # short names
+            "lxterm=litex.tools.litex_term:main",
+            "lxserver=litex.tools.litex_server:main",
+            "lxsim=litex.tools.litex_sim:main",
+        ],
+    },
 )