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

Fix leakage of transitive dependencies to dependent projects #152

Open
tudortimi opened this issue Jun 13, 2024 · 2 comments
Open

Fix leakage of transitive dependencies to dependent projects #152

tudortimi opened this issue Jun 13, 2024 · 2 comments

Comments

@tudortimi
Copy link
Owner

Assuming we have 3 projects:

  • bot, has no dependencies
  • mid, has a dependency on bot
  • top, has dependencies on both mid and bot

If top only defines a dependency on mid, it will still compile, because bot leaks into the compilation of top.

For Xcelium, it seems that the -pkgsearch option would help here. This explicitly forces us to specify where to look for packages. When compiling top, without specifying a dependency on bot, we would get the following:

-makelib top_lib
  -pkgsearch mid_lib
  top.sv
-endlib

This would cause a compile error related to bot not being visible.

This mechanism is only activated when there is at least one -pkgsearch directive. To ensure that we specify all required -pkgsearch options, even when forgetting all dependencies, we can add a dummy -pkgsearch option pointing to the current library.

@tudortimi
Copy link
Owner Author

We still have to check what happens where dependencies have internal dependencies, which we don't want to expose.

@tudortimi
Copy link
Owner Author

Exported headers also have to be fixed. Those we can fix in a simulator independent way.

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

No branches or pull requests

1 participant