[CMake] Loop expansion in find_library() seems backwards
Philip Lowman
philip at yhbt.com
Wed Sep 8 02:25:10 EDT 2010
Let's say I have many different potential names for a library and the
following filesystem
/usr/lib/libnspr4.so
${CMAKE_CURRENT_SOURCE_DIR}/libnspr4a.so
find_library(TEST_LIBRARY
NAMES nspr4 nspr4a
HINTS ${CMAKE_CURRENT_SOURCE_DIR}
)
I'm somewhat surprised that the following code finds /usr/lib/libnspr4.so
instead of the alternate name for it (libnspr4a.so). This tells me that the
loop is backwards. Shouldn't the find_library() command be iterating the
list of library names across each directory. For example, the above should
search:
First ${CMAKE_CURRENT_SOURCE_DIR}...
${CMAKE_CURRENT_SOURCE_DIR}/libnspr4.so
${CMAKE_CURRENT_SOURCE_DIR}/libnspr4a.so
Then the system directories...
(system paths)/lib/libnspr4.so
(system paths)/lib/libnspr4a.so
Etc.
The system is actually searching
${CMAKE_CURRENT_SOURCE_DIR}/libnspr4.so
/usr/lib/libnspr4.so
${CMAKE_CURRENT_SOURCE_DIR}/libnspr4a.so
/usr/lib/libnspr4a.so
This is with CMake 2.8.2
--
Philip Lowman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20100908/1db89e27/attachment-0001.htm>
More information about the CMake
mailing list