Christian Ehrlicher schrieb:
Von: Hendrik Sattler
Christian Ehrlicher schrieb:
during your new warning when mixing libs in target_link_libraries (CMP0003) I changed target_link_libraries(foo ws2_32) to

find_library(WS2_32_LIBRARY ws2_32)
target_link_libraries(foo ${WS2_32_LIBRARY})

but now cmake finds ws2_32.dll in system32 instead the correct one (ws2_32.dll.a / ws2_32.a) in mingw dir.
Set the LIB environment variable to the MinGW lib dir. While you are at it, do the same for INCLUDE.
This is comparable to the setup for cl.

Also they solution is clear I don't like it. MinGW doesn't care about LIB 
(otherwise it wouldn't link against ws2_32.a) so why should cmake do in this 
case?
The problem is the new warning - it suggest that a simple find_library would do 
the job but it doesn't - it breaks compilation. Looks like this warning is the 
first one which I'll disable by default. Maybe also in kde4/win because it's 
imho useless when linking against system libs (on windows).
Did find_library in CMake 2.4 find he correct one?
I also think that this could be improved: for "MinGW Makefiles" generator, cmake could get the base MinGW directory and add the lib/ and include/ subdirs to the front of default paths. Then, find_library() would magically work again.
Do you want to create a bug tracker entry for that issue?

HS

_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to