llvm / llvm/circt

CI to Package Binary Releases of CIRCT

Open
#2,842 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
2.2k
Forks
524
Avg merge
3d 2h
Merged PRs (30d)
46

Description

As CIRCT progresses, we are going to need a way to distribute the tools that CIRCT provides in an easy to use format. This ideally means that we have CI that is packaging CIRCT for various operating systems/architectures. Concretely, we'd like to start making CIRCT a real option for Chisel users. However, it is onerous to expect a Chisel user to go build LLVM and CIRCT from source.

At minimum, we should add CI that builds a Linux statically-linked binary of CIRCT/CIRCT tools. Going beyond that, it would be good to have MacOS and Windows binaries as well. Going even further, it would be useful to have a matrix of builds for different operating systems and processor architectures.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the repository's existing CI configuration and how CIRCT tools are built. Implement the minimum Linux statically linked binary packaging described in the issue, then assess adding macOS and Windows builds and an OS/architecture matrix. Done means CI produces usable binary release artifacts for the supported targets.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, github-actions
Domain
build-system, ci-cd, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.