Jesper Eskilson wrote
Well, that turned out to be a little hasty conclusion.

In case of linking with a DLL, having paths to both the dll and import lib in LINK_DIRECTORIES avoids relinking. So far, so good.

However, I still get relinks due to a dependency on a static library. In this case, I'm unable to add the path using LINK_DIRECTORIES since the path is different depending on the configuration. I'm currently adding the path using the LINK_FLAGS_{DEBUG, ...} target property (which probably is the cause of the relinking).

So, I would like to be able to do something like, given the debug version of MyStaticLib.lib is in lib/win32/debug:

LINK_DIRECTORIES_DEBUG(lib/win32/debug)
TARGET_LINK_LIBRARIES(Foo MyStaticLib)

To make things more difficult, I cannot do something like:

LINK_DIRECTORIES("lib/win32/$(ConfigurationName)")

because the configurations available for the static library (MyStaticLib.lib) do not map cleanly on the values for $(ConfigurationName).

Is there any reason why

IF("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
  LINK_DIRECTORIES("/path/to/debug/lib")
ELSE("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
  LINK_DIRECTORIES("/path/to/release/lib")
ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")

won't work for you?

-- Jack
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to