Replaces repetitive tool execution logic with a reusable `run_tool` function to streamline code and reduce duplication.
Introduces a shared `copy_report_file` utility for consistent report copying and error handling.
Simplifies individual tool scripts (XST, NGDBuild, MAP, PAR, BitGen) by delegating core logic to common utilities.
Improves maintainability and consistency across the codebase.
Adds scripts and utilities for synthesis, mapping, placement, and bitstream generation using Xilinx ISE tools. Refactors configuration management into a dedicated module. Updates project model to support tool-specific options. Adjusts `.gitignore` and Python version compatibility.
Simplifies directory handling and ensures modularity by reorganizing configuration and tool logic.
Introduces a function to resolve wildcard patterns in source file paths, normalizing and returning them as tuples of library and file path. Improves flexibility in handling source files.
Implements functions to ensure directories exist and to clear them based on configuration. Provides user feedback for created, existing, or removed directories.
Helps manage project-specific directory structure efficiently.
Updates .gitignore to exclude build artifacts and project-specific files.
Introduces pyproject.toml with project metadata, dependencies, and build system configuration using Poetry.
Facilitates project reproducibility and dependency management.