You could use CMAKE_RUNTIME_OUTPUT_DIRECTORY or the
RUNTIME_OUTPUT_DIRECTORY target property to specify where CMake should
put all the produced runtime stuff (on Windows, AFAIK this is *.exe
and *.dll), so you don't have to copy them around manually.
If the dll's are not built by you, you might want to have a look at
the GetPrerequisites and InstallRequiredSystemLibraries modules.
Michael
On 28. Aug, 2009, at 10:12, Müller Michael wrote:
Hi Michael,
Thanks for your repsonse but I need the required DLLs to copy them
in a post-build step. So I need the information which libaries are
required for executing something. E.g., in your example
add_library(a ${A_SRCS})
add_library(b ${B_SRCS})
target_link_libraries(b a)
add_executable(c ${C_SRCS})
target_link_libraries(c b)
I`d like to have something like
GET_TARGET_PROPERTY(LIBS c IMPORTED_LINK_DEPENDENT_LIBRARIES) and
then LIBS would contain "C:\project\a.dll;C:\project\b.dll". I also
tried it with IMPORTED_LINK_DEPENDENT_LIBRARIES but that gives me an
empty variable.
Hopefully, this made my problem clearer.
Michael
-----Ursprüngliche Nachricht-----
Von: Michael Wild [mailto:[email protected]]
Gesendet: Freitag, 28. August 2009 09:30
An: Müller Michael
Cc: [email protected]
Betreff: Re: [CMake] Get all required shared libs from a target
On 28. Aug, 2009, at 8:29, Müller Michael wrote:
Hi guys,
is it possible to "investigate" a target for all required shared
libs (transitively). That means i dont which libraries where set
with TARGET_LINK_LIBRARIES and somewhere in my CMakeLists.txt i want
to find it out again.
Thank you
Michael
Hi
You don't need this (for the case you described). CMake remembers for
you:
add_library(a ${A_SRCS})
add_library(b ${B_SRCS})
target_link_libraries(b a)
add_executable(c ${C_SRCS})
target_link_libraries(c b)
As you see in the last line, c is mentioned to link against b. CMake,
however, remembers that b also links against a, and consequently also
adds a to the list of libraries to link against.
HTH
Michael
_______________________________________________
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://www.cmake.org/mailman/listinfo/cmake
_______________________________________________
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://www.cmake.org/mailman/listinfo/cmake