On 06/06/2014 10:11 AM, Sam Spilsbury wrote: > The solution is just not to add dependencies on such libraries, as any > dependencies of the IMPORTED target itself will be added as > dependencies of targets depending on the IMPORTED target.
There are no build rules for imported targets so they have no dependencies anyway. The patch in question: // Pass the full path to the target file. std::string lib = tgt->GetFullPath(config, implib, true); - if(!this->LinkDependsNoShared || - tgt->GetType() != cmTarget::SHARED_LIBRARY) + if((!this->LinkDependsNoShared || + tgt->GetType() != cmTarget::SHARED_LIBRARY) && !tgt->IsImported()) { this->Depends.push_back(lib); } touches code used to generate dependencies on a link rule. If link rules do not depend on imported libraries then they will not re-link when those libraries change on disk. This is incorrect. > Fixes #13574. All generators except Ninja are able to deal with this correctly. The place to fix it must be in the Ninja generator. Thanks, -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers