Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/electronics-and-drives/SPAM
SKILL Package Manager
https://github.com/electronics-and-drives/SPAM
asic asic-design cadence cadence-skill cadence-virtuoso design-automation package-manager skill skill-cadence virtuoso
Last synced: 26 days ago
JSON representation
SKILL Package Manager
- Host: GitHub
- URL: https://github.com/electronics-and-drives/SPAM
- Owner: electronics-and-drives
- License: mit
- Created: 2019-04-16T12:52:23.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-04-17T14:25:30.000Z (over 5 years ago)
- Last Synced: 2024-08-04T20:02:17.618Z (4 months ago)
- Topics: asic, asic-design, cadence, cadence-skill, cadence-virtuoso, design-automation, package-manager, skill, skill-cadence, virtuoso
- Homepage:
- Size: 32.2 KB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hwd-tools - electronics-and-drives/SPAM - SPAM is a package management system for Cadence SKILL (Full Custom Design / Verification)
README
# SKILL Package Manager (SPAM)
SPAM is a package management system for Cadence SKILL.
## Dependencies
Following utilities must be installed:
+ wget
+ unzipSPAM has only been tested under Cadence Design Framework:
+ virtuoso version 6.1.7-64b 01/24/2018
+ SKILL 35.00## Getting Started
Download spam
```bash
$ git clone https://github.com/rbzentrum/SPAM.git ~/.cadence/spam
```
into a directory of your choosing, for example ```~/.cadence/spam/```.Make sure environment variables ```SPAMHOMEPATH``` and ```SPAMPROJPATH``` are set either with
```bash
$ export SPAMHOMEPATH=~/.cadence/spam
$ export SPAMPROJPATH=/path/to/project
```
or in your ```.cdsinit```
```scheme
(setShellEnvVar "SPAMHOMEPATH" "~/.cadence/spam")
(setShellEnvVar "SPAMPROJPATH" "/path/to/project")
```
and load ```spam.ils```.
```scheme
(load "spam.ils")
```## Adding Repositories
The repository definition for github is given in ```repo.ils```,
just add others or private repositories in the same way to that list.
Alternatively you can call ```spmDefineRepo``` at runtime:
```scheme
(spmDefineRepo
t_name
t_metaUrl
u_urlGenerator
) => r_repo
```
and add this ```r_repo``` object to ```(get SPAM 'repositories)```.## Function Reference
### spamSearch
```scheme
(spamSearch
t_query
) => t | nil
```
Searches for packages with the names given by the string 't_query'.### spamInstall
```scheme
(spamInstall
t_name
[ t_name ]
...
) => t | nil
```
Installs the packages given by the strings 't_name'.
If the installation was successful, t is returned.### spamRemove
```scheme
(spamRemove
t_name
[ t_name ]
...
) => t | nil
```
Removes the packages with the names given by the strings 't_name'.### spamUpdate
```scheme
(spamUpdate
[t_name]
...
) => t | nil
```
Updates a given list of packages (t_name).
If no packages are specified the meta database will be updated.### spamInfo
```scheme
(spamInfo
t_name
) => t | nil
```
Prints information about the given package with name 't_name'.### spamUse
```scheme
(spamUse
t_name
[ t_name ]
...
) => t | nil
```
Includes the given packages in the given order into the current toplevel.