chaseruskin / legoHDL

An experimental package manager and development tool for Hardware Description Languages (HDL).
https://c-rus.github.io/legoHDL
MIT License
14 stars 2 forks source link

Add -freeze flag for export command #41

Closed chaseruskin closed 2 months ago

chaseruskin commented 3 years ago

Sometimes when a final product/design is complete, it is beneficial to have all the used files together in one location for easy sharing with anyone.

The freeze option can only be ran after a blueprint file is created, and from the blueprint file it will read what files to zip. By default it will only zip up the HDL files. A command-line variables -inc will be available where users can specify what label files to also include in the zip archive, such as a constraint file. The opposite of -inc will be -omit, similar to exporting a VHDL package file. Or, to include all labels and all gathered files in the blueprint, the user can pass a command-line argument -all.

The zipped archive will be found in the build/ directory.

Examples:

  1. create blueprint file legohdl export top

  2. generate freeze files zip archive (maybe make them all read-only?).

Only grabs HDL files by default. legohdl export -freeze

Grabs HDL files and all files found labelled with xdc and pin-plan (case insensitive) legohdl export -freeze -inc="xdc,pin-plan"

Grabs HDL files and all found files excluding files labelled with py-model legohdl export -freeze -omit="py-model"

Grabs every file listed in the blueprint file. legohdl export -freeze -all