-
Notifications
You must be signed in to change notification settings - Fork 278
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CAPI] Add circt-capi target and build it in CI #7017
Conversation
Thanks @dtzSiFive and @hailongSun2000 for pointing out that this was an issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
Having check-circt
depend on circt-capi
so that check-circt
build-tests CAPI doesn't feel quite right.
Both because we build things unneeded for testing, and because there may be others omitted (if not needed by a test) when what we really want is to ensure developers and CI are building all the things.
The macro and new target seems useful regardless 👍.
Looks like ninja circt
works in a unified build, and just ninja
works normally. Perhaps having our CI do whichever of those is the way to go? WDYT?
I can just make CI run |
Add a `circt-capi` target that depends on all C API libraries. Introduce a new `add_circt_public_c_api_library` CMake function that wraps around the MLIR equivalent, but also adds a dependency from `circt-capi`. Make at least the short integration tests CI job build the `circt-capi` target to ensure it has a bit of CI coverage.
4e19b28
to
5512d74
Compare
Oops, I.. nevermind. Me either! 😅 .
Yes, totally, agreed. I too tend to build-test with Regarding integration tests-- https://reviews.llvm.org/D97241 Assuming integration tests know how to gate themselves on their tool/environmental dependencies, including them makes sense to me! |
Oh that's neat! I keep tripping over the integration tests not being included as part of the regular tests. But that's probably just me being a derp 😬 I'll land this with the |
Add a
circt-capi
target that depends on all C API libraries. Introduce a newadd_circt_public_c_api_library
CMake function that wraps around the MLIR equivalent, but also adds a dependency fromcirct-capi
. Make at least the short integration tests CI job build thecirct-capi
target to ensure it has a bit of CI coverage.