<div dir="ltr">Thanks.  Upgrading cmake right now is problematic.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jan 25, 2016 at 4:33 AM, Tamás Kenéz <span dir="ltr"><<a href="mailto:tamas.kenez@gmail.com" target="_blank">tamas.kenez@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I think you need something like CMakeExpandImportedTargets.cmake (<a href="https://cmake.org/cmake/help/latest/module/CMakeExpandImportedTargets.html" target="_blank">https://cmake.org/cmake/help/latest/module/CMakeExpandImportedTargets.html</a>). But that module has been deprecated for a while and does not support some newer CMake features.<div><br></div><div>Instead, feel free to try out my fork: <a href="https://gist.github.com/tamaskenez/ef98237fff654c6d28b5" target="_blank">https://gist.github.com/tamaskenez/ef98237fff654c6d28b5</a> . This fork adds support for IMPORTED_IMPLIB, INTERFACE_LINK_LIBRARIES and $<CONFIG:> expressions.</div><div><br></div><div>It recursively resolves all dependencies for the given configuration (Debug, Release, ...)<br><div><br></div><div>Tamas</div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Fri, Jan 22, 2016 at 11:01 PM, Tom Kacvinsky <span dir="ltr"><<a href="mailto:tom.kacvinsky@vectorcast.com" target="_blank">tom.kacvinsky@vectorcast.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr">Ah yes, that was it.  Switching to 3.3.2 did the trick.  Time to upgrade cmake.<br></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 22, 2016 at 4:40 PM, Tom Kacvinsky <span dir="ltr"><<a href="mailto:tom.kacvinsky@vectorcast.com" target="_blank">tom.kacvinsky@vectorcast.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><font size="2"><span style="font-family:arial,helvetica,sans-serif">I am now having a problem with transitive dependencies.  I need all libraries that are linked in.  I am missing the ones that are linked in transitively.  Modified code is, ignoring J. Decker's suggestion about using generator expressions to get the path to the target's output.<span><br><br>get_property(libs TARGET a_target PROPERTY LINK_LIBRARIES)<br>foreach(lib ${libs})<br>  if(TARGET ${lib})<br></span>    # If this is a library, get its transitive dependencies<br>    get_property(trans TARGET ${lib} PROPERTY INTERFACE_LINK_LIBRARIES)<br>    foreach(tran ${trans})<br>      if(TARGET ${tran})<br>        get_property(path TARGET ${tran} PROPERTY LOCATION)<br>        file(APPEND "${CMAKE_BINARY_DIR/libs.txt" "${path}\n")<br>      endif()<br>    endforeach()<span><br>    get_property(path TARGET ${lib} PROPERTY LOCATION)<br></span>    file(APPEND "${CMAKE_BINARY_DIR}/libs.txt" "${path}\n")<br>  else()<br>    file(APPEND "${CMAKE_BINARY_DIR}/libs.txt" "${lib}\n")<br>  endif()<br>endforeach()<br></span></font><div class="gmail_extra"><font size="2"><span style="font-family:arial,helvetica,sans-serif"><br></span></font></div><div class="gmail_extra"><font size="2"><span style="font-family:arial,helvetica,sans-serif">I am using cmake 2.8.11.2, perhaps this property doesn't do what I thought it would with this version of cmake?<br><br></span></font></div><div class="gmail_extra"><font size="2"><span style="font-family:arial,helvetica,sans-serif">Thanks,<br><br></span></font></div><div class="gmail_extra"><font size="2"><span style="font-family:arial,helvetica,sans-serif">Tom<br><br></span></font></div><div class="gmail_extra"><div class="gmail_quote"><span><font size="2"><span style="font-family:arial,helvetica,sans-serif">On Fri, Jan 22, 2016 at 9:23 AM, Tom Kacvinsky <span dir="ltr"><<a href="mailto:tom.kacvinsky@vectorcast.com" target="_blank">tom.kacvinsky@vectorcast.com</a>></span> wrote:<br></span></font></span><div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><font size="2"><span style="font-family:arial,helvetica,sans-serif">I have need for a cross platform methods of getting libraries linked<br>
into an executable.<br></span></font>
<font size="2"><span style="font-family:arial,helvetica,sans-serif"><br>
Say for instance, we have<br></span></font>
<font size="2"><span style="font-family:arial,helvetica,sans-serif"><br>
add_library(foo STATIC a.c)<br>
add_exceutable(bar b.c)<br>
target_link_libraries(bar foo)<br></span></font>
<font size="2"><span style="font-family:arial,helvetica,sans-serif"><br>
So I know for that bar has a dependency on foo.lib (on Windows) and<br>
libfoo.a on Linux.<br></span></font>
<font size="2"><span style="font-family:arial,helvetica,sans-serif"><br>
And so forth.  What I would like to do is after everything is set up,<br>
query the properties of bar<br>
and find the list of libraries linked into bar in such a fashion I get<br>
that platform's specific library name (instead of the library's target<br>
name).<br></span></font>
<font size="2"><span style="font-family:arial,helvetica,sans-serif"><br>
IS this possible?  I read the docs and didn't see a property for<br>
getting this list.  Did I miss something?  If so I plan on using<br>
either get_property of get_target_property.<br></span></font>
<font size="2"><span style="font-family:arial,helvetica,sans-serif"><br>
Thanks.<br></span></font>
</blockquote></div></div></div><font size="2"><span style="font-family:arial,helvetica,sans-serif"><br></span></font></div></div>
</blockquote></div><br></div>
</div></div><br></div></div><span class="">--<br>
<br>
Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
<br>
Please keep messages on-topic and check the CMake FAQ at: <a href="http://www.cmake.org/Wiki/CMake_FAQ" rel="noreferrer" target="_blank">http://www.cmake.org/Wiki/CMake_FAQ</a><br>
<br>
Kitware offers various services to support the CMake community. For more information on each offering, please visit:<br>
<br>
CMake Support: <a href="http://cmake.org/cmake/help/support.html" rel="noreferrer" target="_blank">http://cmake.org/cmake/help/support.html</a><br>
CMake Consulting: <a href="http://cmake.org/cmake/help/consulting.html" rel="noreferrer" target="_blank">http://cmake.org/cmake/help/consulting.html</a><br>
CMake Training Courses: <a href="http://cmake.org/cmake/help/training.html" rel="noreferrer" target="_blank">http://cmake.org/cmake/help/training.html</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/cmake" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/cmake</a><br></span></blockquote></div><br></div>
</blockquote></div><br></div>