On Fri, May 9, 2008 at 4:12 PM, Alexander Neundorf &lt;<a href="mailto:a.neundorf-work@gmx.net">a.neundorf-work@gmx.net</a>&gt; wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div></div><div class="Wj3C7c">On Friday 09 May 2008, Philip Lowman wrote:<br>
&gt; Should the pkg_check_modules() included with CMake 2.6.0 in<br>
&gt; FindPkgConfig.cmake return full path declarations for &lt;XPREFIX&gt;_LIBRARIES<br>
&gt; and &lt;XPREFIX&gt;_STATIC_LIBRARIES instead of just NameA;NameB;NameC ?<br>
&gt;<br>
&gt; This would make an extremely useful feature in my book in trying to port<br>
&gt; stuff to CMake <a href="http://2.6.0." target="_blank">2.6.0.</a> &nbsp;Anyone else agree?<br>
<br>
</div></div>Yes, I do.</blockquote><div><br>I implemented it.&nbsp; I could use feedback and testing.&nbsp; It seems to work fine for me and plays very nicely with CMake&#39;s new file-extension based find_library support and full path target_link_libraries support.&nbsp; Here are the changes:<br>
<br>1.&nbsp; &lt;XPREFIX&gt;_LIBRARIES is now &lt;XPREFIX&gt;_LIBRARIES_NOPATHS.<br><br>2.&nbsp; Full paths for &lt;XPREFIX&gt;_LIBRARIES_NOPATHS are calculated.&nbsp; For each library in the linking list, find_library() is used to create an advanced cache variable to attempt to find said library.<br>
<br>3.&nbsp; First &lt;XPREFIX&gt;_LIBRARY_DIRS is searched with NO_DEFAULT_PATH, then the CMake system path (/lib, /usr/lib, whatever).&nbsp; Variables like CMAKE_LIBRARY_PATH are ignored right now (rationale is to prevent picking stuff not dictated by the pkgconfig path).<br>
<br>4.&nbsp; If a full path to a library is found, it gets placed in &lt;XPREFIX&gt;_LIBRARIES<br><br>5.&nbsp; If a full path to a library is _not_ found a warning is issued and the plain library name is substituted into &lt;XPREFIX&gt;_LIBRARIES<br>
<br>6.&nbsp; Ditto for &lt;XPREFIX&gt;_STATIC_LIBRARIES<br></div></div><br>-- <br>Philip Lowman