Skip to main content

EDA tool detection, configuration and selection layer.

Project description

Sourcecode on GitHub Sourcecode License Documentation Documentation License Gitter
PyPI PyPI - Status PyPI - Python Version
GitHub Workflow - Build and Test Status Libraries.io status for latest release Codacy - Quality Codacy - Coverage Codecov - Branch Coverage

Main Goals

  • Provide abstract information of where a tool is installed and configured on the local machine.
  • Find local EDA tool installations and gather all necessary information in a configuration file.
  • Support multiple versions and variants of the same tool.
  • In case of multiple tool versions/variants select one default installation.
  • Allow switching the default version/variant.
  • Allow reading and writing such a configuration file via API.
  • Allow reading and writing such a configuration file via CLI.

Features

  • Find tool installations:
    • at default installation locations (based on operating system).
    • in PATH.
    • via environment variables.
  • Support multiple versions of the same tool.
    E.g. Vivado 2018.3, 2021.2
  • Support multiple variants of the same tool.
    E.g. ModelSim Altera Edition vs. ModelSim SE vs. QuestaSim
  • Configuring a default version/variant per tool.

Condensed View on ToolInformation Class

from pathlib import Path
from pyTooling.Decorators import export

@export
class ToolInformation:
  def __init__(self, installationDirectory: Path, binaryDirectory: Path, version: str = None, edition: str = None): ...

  @property
  def InstallationDirectory(self) -> Path:
    return self._installationDirectory

  @property
  def BinaryDirectory(self) -> Path:
    return self._binaryDirectory

  @property
  def Version(self) -> str:
    return self._version

  @property
  def Edition(self) -> str:
    return self._edition

Examples

from pathlib import Path
from pyEDAA.ToolSetup import Installations

yamlFile = Path("configuration.yml")

installation = Installations(yamlFile)
activeHDL = installation.Aldec.ActiveHDL
activeHDLVersion = activeHDL["10.3"]
print(activeHDLVersion.BinaryDirectory)

Consumers

This layer is used by:

  • 🚧 pyEDAA.Workflow

References

Contributors

License

This Python package (source code) is licensed under Apache License 2.0.
The accompanying documentation is licensed under Creative Commons - Attribution 4.0 (CC-BY 4.0).


SPDX-License-Identifier: Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyedaa_toolsetup-0.5.1.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyedaa_toolsetup-0.5.1-py3-none-any.whl (29.7 kB view details)

Uploaded Python 3

File details

Details for the file pyedaa_toolsetup-0.5.1.tar.gz.

File metadata

  • Download URL: pyedaa_toolsetup-0.5.1.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for pyedaa_toolsetup-0.5.1.tar.gz
Algorithm Hash digest
SHA256 3a16a6d830312f2e6681360f614040ab15639312625dbea631b5ce634df92f0d
MD5 38d38905091350219431202d897e7812
BLAKE2b-256 5e38749b333182468ddca117793863db80da56b6c51f4024c64cc6065b67bfd8

See more details on using hashes here.

File details

Details for the file pyedaa_toolsetup-0.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pyedaa_toolsetup-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f9f3b0d5c958f3e76b4e2eee81b0a7a22f350e44f10af702073849b7d4e6fdd0
MD5 6dee0428bfc429571cd1e9eb0c002a11
BLAKE2b-256 b6fba1ba757a4d48e4a5ba8f7118b92c6b9181a5915d8cdc7b2648dc90e4d55f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page