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

Indirect dependency files(.props) are not written to the "Include" "lib" directory #253

Open
JohnnyKrr opened this issue Sep 9, 2024 · 2 comments
Labels

Comments

@JohnnyKrr
Copy link

Module A depends on module B, and module B depends on module C, write in the conanfile.yml:
requirements:

  • moduleB/[1.0]
    Module A generates the conan directory, the .props of module B and module C, but module C conan_modulec_vars_debug_x64.props the "ConanmodulecncludeDirectories", "ConanmodulecLibraryDirectories","Conanmodule_managerLibraries" in the .props are empty. I don't want to populate module A's yml with dependency module C. Can you fix this issue?
@danimtb
Copy link
Member

danimtb commented Sep 9, 2024

Hi @JohnnyKrr,

Thank you for your issue. I would need more information to be able to help you. Could you describe with more detail why do you mean by "module"? Is that a project inside your VS solution or a conan dependency?

I would need a minimal reproducible example to be able to debug it. Than you 😄

@JohnnyKrr
Copy link
Author

JohnnyKrr commented Sep 10, 2024

Hi @danimtb
Thank you for your reply! More detailed description is below.
Now there are three VS Projects, ProjectA (Console), ProjectB (dll), ProjectC (dll), I package ProjectB, ProjectC compiled binaries as conan binary packages and export to the local cache.
Dependencies: ProjectA->ProjectB->ProjectC. ProjectA is directly dependent on ProjectB, and ProjectA's conandata.yml:

requirements:
- ProjectB/[1.0] 

When compiling ProjectA, the conan plugin generates props files for ProjectB and ProjectC. But in ProjectC's props file, "ConanmoduleCIncludeDirectories",
"ConanmoduleCLibraryDirectories" and "ConanmoduleCLibraries" are empty. If ProjectA's conandata.yml writes:

requirements:
- ProjectB/[1.0] 
- ProjectC/[1.0] 

then everything is fine. But I don't want to write that way, because I want to rely on only the top-level packages when the dependencies are deep, and not change ProjectC from an indirect dependency to a direct dependency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants