question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Feature: model intra-package dependencies

See original GitHub issue

From https://github.com/conan-io/conan/issues/2382

This could help both to model system dependencies self.cpp_info.libs = ["mylib", "pthread"], and then some consumer can depend on pthread by other means, and the order mylib->pthread is not defined.

It can be generalized for your own libs deps “Mylib1”->“MyLib2” inside the same package.

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:17 (13 by maintainers)

github_iconTop GitHub Comments

3reactions
sigieseccommented, Sep 6, 2018

This feature should also integrate with frequently used build systems such as CMake. CMake has the information on intra-package dependencies (as well as other information such as public compile options etc.), and it would be very desirable if one wouldn’t have to specify this redundantly in the conanfile.py

2reactions
SSE4commented, Jul 9, 2018

so, for instance, if we have ffmpeg library which provides the following libraries: libavcodec, libavformat, libavfilter, etc. which might be used independently. so, it would be nice to define in conanfile.py something like this:

self.cpp_info.libavcodec.libs = ['avcodec']
self.cpp_info.libavformat.libs = ['avformat']
self.cpp_info.libavfilter.libs = ['avfilter']

and then, in consumer (e.g. CMake one), we can link to the particular libraries:

target_link_libraries(exe_using_avcodec PRIVATE CONAN_PKG::ffmpeg::libavcodec)
...
target_link_libraries(exe_using_avformat PRIVATE CONAN_PKG::ffmpeg::libavformat)

this is very conceptual, and actual syntax might be very different from my examples, but I guess you got the idea behind it. same probably applies to lots of other multilib packages (like Qt, wxWidgets, OpenCV, GStreamer, etc.) these libraries build as a single, and it’s not feasible to split each of them into multiple conan files (as code will be the almost the same), like in boost case.

Read more comments on GitHub >

github_iconTop Results From Across the Web

INFERRING INTRA PACKAGE AND MODULE DEPENDENCIES
With the feature vector as input, an ML model detects whether or not the operational trace is anomalous, based on the explicit features...
Read more >
Measurement and refactoring for package structure based on ...
An intra-package dependency means its caller and callee are in the same package, while the two participators of inter-package dependency locate ...
Read more >
swift - Intra-Package Module Dependencies - Stack Overflow
I've check your project and it compiles for me. Here are few things to check: 1. Follow Install instructions from Swift.or
Read more >
The Dependency Finder User Manual - Shodor
Outbound Intra-Package Feature Dependencies (OIPF): Methods and fields within the classes of the same package that this method depends on.
Read more >
4. Package structure and distribution
We can find the type of a Python object using the type() function. ... This is an “intra-package reference” and can be accomplished...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found