<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><meta http-equiv="Content-Type" content="text/html charset=us-ascii" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi All,<div class=""><br class=""></div><div class="">So from a previous threads, we were discussing pkgconfig and cmake interoperability. One issue with using pkgconfig currently, is that the results are completely flat. This is due to using the CLI to retrieve pkgconfig, which gives the user all the flags from every transitive package. This is great from a user perspective, but from cmake perspective not so because may already being using one of the transitive dependencies.</div><div class=""><br class=""></div><div class="">So instead of using the CLI, there is a library implementation of pkgconfig called pkgconf:</div><div class=""><br class=""></div><div class=""><a href="https://github.com/pkgconf/pkgconf" class="">https://github.com/pkgconf/pkgconf</a></div><div class=""><a href="http://pkgconf.readthedocs.io/en/latest/" class="">http://pkgconf.readthedocs.io/en/latest/</a></div><div class=""><br class=""></div><div class="">CMake could use pkgconf internally, and then use functions like `pkgconf_pkg_traverse` to iterate over the transitive dependencies. We could use variable in the .pc files like `cmake_package` to know which cmake package the dependency belongs to or perhaps `cmake_target` to set the name of the cmake imported target. </div><div class=""><br class=""></div><div class="">Daniel Pfeiffer proposed supporting pkgconfig by extending `find_package`, like this:</div><div class=""><br class=""></div><div class="">find_package(zlib CONF)</div><div class=""><br class=""></div><div class="">And this would look up zlib using pkgconfig. The advantage of this, is that the transitive dependencies can be specified in the same manner as `find_dependency(zlib CONF)`.</div><div class=""><br class=""></div><div class="">Paul</div></div></body></html>