Here is how I got around what you describe. My project sounds pretty similar in how it is set up<br><br>when building the exe:<br>IF (PLATFORM MATCHES "win32") <br> IF (CMAKE_GENERATOR MATCHES "Visual Studio 8 2005")
<br> SET_TARGET_PROPERTIES (${project_exe} PROPERTIES<br> LINK_FLAGS "$(TargetDir)/project_shared.lib"<br> )<br> ELSE (CMAKE_GENERATOR MATCHES "Visual Studio 8 2005") #nmake makefiles
<br> SET_TARGET_PROPERTIES (${project_exe} PROPERTIES<br> LINK_FLAGS "${LIBRARY_OUTPUT_PATH}/project_shared.lib"<br> )<br> ENDIF (CMAKE_GENERATOR MATCHES "Visual Studio 8 2005")
<br>ELSE (PLATFORM MATCHES "win32")<br> SET_TARGET_PROPERTIES (${project_exe} PROPERTIES<br> LINK_FLAGS "-L${LIBRARY_OUTPUT_PATH} -lproject_shared"<br> )<br>ENDIF (PLATFORM MATCHES "win32")
<br><br>building shared library:<br>IF (PLATFORM MATCHES "win32")<br> # nothing<br>ELSE (PLATFORM MATCHES "win32")<br> SET_TARGET_PROPERTIES (${project_SHARED} PROPERTIES<br> PREFIX "lib"
<br> )<br>ENDIF (PLATFORM MATCHES "win32")<br><br>building a plugin:<br>IF (PLATFORM MATCHES "win32")<br> IF (CMAKE_GENERATOR MATCHES "Visual Studio 8 2005")<br> SET_TARGET_PROPERTIES (${PLUGIN_NAME} PROPERTIES
<br> LINK_FLAGS "$(TargetDir)/project_shared.lib"<br> )<br> ELSE (CMAKE_GENERATOR MATCHES "Visual Studio 8 2005") #nmake<br> SET_TARGET_PROPERTIES (${PLUGIN_NAME} PROPERTIES
<br> LINK_FLAGS "${LIBRARY_OUTPUT_PATH}/project_shared.lib"<br> )<br> ENDIF (CMAKE_GENERATOR MATCHES "Visual Studio 8 2005")<br>ELSE (PLATFORM MATCHES "win32")<br> SET_TARGET_PROPERTIES (${PLUGIN_NAME} PROPERTIES
<br> LINK_FLAGS "-L${LIBRARY_OUTPUT_PATH} -lproject_shared"<br> )<br>ENDIF (PLATFORM MATCHES "win32")<br><br>exe depends on shared library<br>plugins depend on shared library<br><br>the plugins in my case, are the ones that depend on the third party libraries
<br>