Rolf Eike Beer wrote: > Am Samstag 01 Oktober 2011, 13:57:09 schrieb Stephen Kelly: >> Rolf Eike Beer wrote: >> >> > The "tricky" part of this is to tell CMake to not enforce the >> >> > implicit >> >> > dependencies to be exported when creating an export file for >> >> > targets >> >> > created with this property enabled. Or better: to not enforce >> >> > _any_ >> >> > dependencies of a shared library to be exported then. >> >> >> >> I don't think I understand your description of the tricky part or your >> >> suggested solution. Can you expand on it? >> > >> > What I once tried to do was: build a bunch of libraries (both shared >> > and static), link in some ways, and then export just one shared library >> > that had the link dependencies set to empty. CMake didn't let me, it >> > always wanted to have me export all the other stuff, too. >> >> When you talk about exports you're talking about install(foo EXPORTS ...) >> right? > > Yes. > >> And when you say CMake didn't let you, do you mean that the installed >> >> lib/cmake/foo/fooTargets-debug.cmake >> >> contains >> >> IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "Bar;Baz" >> >> though it shouldn't contain Baz? What did you do to make it not contain >> Baz, assuming I've restated your issue correctly? > > Nope, it gave me a CMake error when trying to make an export for Bar > because it depends on Baz and Baz wasn't exported. > > At the end I just exported everything for our local build stuff and didn't > pass any of these files to users that could have used them, but provided a > Find*.cmake for them. >
That sounds like 'just' a bug, right? I can't see how that relates to using set(CMAKE_LINK_INTERFACE_LIBRARIES "") instead of macro(wrapper_add_library) add_library(${ARGN}) target_link_libraries(${ARG1} LINK_INTERFACE_LIBRARIES "") endmacro() Then again, I haven't understood your issue, because what I understand from your issue would make almost the entire exports stuff not work, so clearly I have not understood your issue. It looks like it should either be a bug report or a documented limitation though. All the best, Steve. -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers