-
Notifications
You must be signed in to change notification settings - Fork 989
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
[question] Conditional transitive packages #15001
Comments
Hi @jasal82 I think this PR #14871 could be what you are looking for. Please have a look and let us know. I'd discourage solutions based on detection, but making them imperative, being able to define in your profile that you want the |
Hi @memsharded, |
I'm using the following workaround now for 1.x: We rename |
These PRs have been merged:
So I'd say that this feature would be addressed by those for 2.0, if you have a workaround for 1.X, then probably we could close this ticket. Feedback about those 2.0 features would be very welcomed. |
What is your question?
We have the following problem: Our firmware application builds target an embedded distro that we build with Yocto. The target RFS usually already has an OpenSSL library installed, so we don't want to build it from source (for build time and target image size considerations). However, if the firmware build adds 3rd party packages like
grpc
from Conan Center as a requirement, then we get an implicit dependency to the OpenSSL package. Our previous workaround was to provide a modified recipe for OpenSSL that detects the target environment, validates the requested version against the available one and enables linking against the system library if necessary, instead of building itself. However, I don't like this solution as it doesn't scale very well. In particular, I want to avoid having to maintain changes to the original recipes.Ideally, there should be a native solution for this in Conan, but I'm not aware of one. So I was thinking that a proxy package could be a valid workaround. If we export the actual
openssl
recipe asopenssl_upstream
and a proxy recipe with auto detection asopenssl
, then depending on the detected environment the proxy recipe could addopenssl_upstream
as a dependency to the graph, or not. However, it is not clear to me how to pass the package info through in such a case so that downstream is linked againstopenssl
(as provided byopenssl_upstream
).Have you read the CONTRIBUTING guide?
The text was updated successfully, but these errors were encountered: