Skip to content
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

Build refactoring #76

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

Build refactoring #76

wants to merge 2 commits into from

Conversation

ethanwu10
Copy link
Collaborator

@ethanwu10 ethanwu10 commented Mar 19, 2024

Switch back to using an explicit root project as per standard sbt style, with all keys within the root project. Add back the idePackagePrefix setting so that IDEs know to create the correct packages / write the correct import paths. Remove unused Maven repos (particularly mavenLocal, which can cause a lot of pain with developers with weird / broken packages unintentionally there; Sonatype OSS Releases is essentially Maven Central, so it is redundant too).

The renovate changes are untested since I'm not sure how to test them... but currently the bot is erroring since it cannot locate versions from the snapshot repos. By including it in this project's build.sbt we already rule out directly including its build into the main chipyard build (necessitating freshProject or similar), so we should likely just track a recent rocket-chip in this repo.

@ethanwu10
Copy link
Collaborator Author

For reference, firesim has a subproject (midas) which depends on rocket-chip and is directly included into chipyard, but this works because firesim explicitly grabs the rocketchip project out of the chipyard project it is included in - the assumption is that either firesim is living as a submodule of chipyard, or the chipyard target is a submodule of the firesim repo.

@jerryz123
Copy link

Does this project actually need to depend on rocket-chip in the first place?

@ansaschmulbach
Copy link
Collaborator

well, i use the async queue from rocket chip, but I did have a working setup where I just copied over the necessary files (it's quite a few though)....

@jerryz123
Copy link

I think you should just do that then.. if its just one-off utilities. AsyncQueue is defined in a single file

@ansaschmulbach
Copy link
Collaborator

I mean the AsyncQueue depends on things in other files though? I think the necessary additions to make AsyncQueue work are in this commit: 1fa8740
I removed it in a later commit but could re-add.

@jerryz123
Copy link

Ah you are right... its a little bit more involved than I recall.

We are trying to split rocket-chip into independent libraries, each ideally with their own stable APIs and published releases, but that is still very much WIP

ethanwu10 added 2 commits May 7, 2024 19:22
Switch back to using an explicit root project as per standard sbt style,
with all keys within the root project. Add back the `idePackagePrefix`
setting so that IDEs know to create the correct packages / write the
correct import paths. Remove unused Maven repos (particularly
`mavenLocal`, which can cause a lot of pain with developers with weird /
broken packages unintentionally there; Sonatype OSS Releases is
essentially Maven Central, so it is redundant too).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants