<div dir="ltr"><div dir="ltr">Hello List,<div><br><div>In our projects we are using static linkage on Windows (MSVC) and Linux. A number of static libs are created and then linked into executables, such as unit tests, tools and the actual production artifacts. Very normal stuff.</div></div><div><br></div><div>add_library(mylib STATIC mysources)</div><div>add_excecutable(mytest mytest.cpp)</div><div>target_link_libraries(mytest mylib)</div><div><br></div><div>Now although I don't understand the exact reasons behind that, over the years came to accept that depedencies between the lib and the resulting artifcats are not working. Like, when I change a source file to mylib, the lib will get rebuilt but the resulting test tool won't be relinked.</div><div>For test driven development or busy change cycles that can put quite a strain on effort, especially on windows. My normal workflow is that I always click in mytest.cpp, add and remove a space to mark it dirty as quickly as possible and thereby cause the rebuild. But sometimes I forget this and this caused me quite a bit of extra work.</div><div>My question is, can I fake that dependency somehow? Perhaps by some hack or using some workaround?</div><div><br></div><div>What I want to achieve is that when I change the lib, the unit test (or any other test tool using it) that depends on it will be relinked, even if it has not changed.</div><div><br></div><div>Is that possible somehow?</div><div><br></div><div>Cheers,</div><div>Stephan</div></div></div>