-
Notifications
You must be signed in to change notification settings - Fork 428
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/host dependency of header-only C++ packages #3796
Comments
If you add the |
Did it solve your problem? |
Well I thought of using runtime requirements briefly but then the headers would be installed with the dowstream project What I think might be needed is the twin of # meta.yaml of foo
build:
host_exports:
- bar so anyone using My workaround is to list both # meta.yaml of foobar
requirements:
host:
- foo
- bar # this should not be needed |
I had a quick look on how this situation is handled in Vcpkg:
I guess it's the same for Conda. Maybe I should rename this issue to make it clear it is about build-only dependencies (and actually not specific to header-only libraries). |
It's counterintuitive for sure, but here if you add a run requirement on bar for foo, them it will be present in the host section for foobar, but will not be a run dependency for foobar. You can think of the host section as using the run requirements for all of the specs on the host section. If foo and bar both had run_exports, foo's run exports would be in foobar, but bar's would not necessarily, because run exports are not transitive. |
Hi there, thank you for your contribution! This issue has been automatically marked as stale because it has not had recent activity. It will be closed automatically if no further activity occurs. If you would like this issue to remain open please:
NOTE: If this issue was closed prematurely, please leave a comment. Thanks! |
Just a note, to discuss adding |
When a C++ header-only package
foo
depends on another header only-packagebar
, is there a way to ensure that the downstream project get both installed ashost
requirements?with
With the current implementation, only foo gets installed.
Is there any way to export the build/host requirements of a package to the downstream projects transitively, maybe something like
build_export
?The text was updated successfully, but these errors were encountered: