[CMake] find_package for both debug and release with Visual Studio
John Barbero Unenge
john.barbero.unenge at gmail.com
Fri Sep 25 05:58:03 EDT 2015
I'm tearing my hair out about how to include thrid party libraries in my
cmake project. Currently I build Poco and a bunch of others that all
generate their respective <LibName>Config.cmake which I use with
find_package. I have a wrapping build script that builds all of my
dependencies and package them separately for debug and release (I don't
want to tweak their cmake-scripts unless I really really really need to
because maintanance).
I thought I could just do:
find_package(Foo
HINTS "${CMAKE_SOURCE_DIR}/some/path/debug/libFoo/lib/cmake"
REQUIRED
)
get_target_property(LIB_FOO_DEBUG lib_foo LOCATION)
find_package(Foo
HINTS "${CMAKE_SOURCE_DIR}/some/path/release/libFoo/lib/cmake"
REQUIRED
)
get_target_property(LIB_FOO_RELEASE lib_foo LOCATION)
set(LIB_FOO_LIBRARIES optimized "${LIB_FOO_RELEASE}" debug
"${LIB_FOO_DEBUG}")
message("LIB_FOO_LIBRARIES: \"${LIB_FOO_LIBRARIES}\"")
# Gives: LIB_FOO_LIBRARIES: "
optimized;C:/path/to/proj/some/path/debug/libFoo/lib/foo.lib;debug;C:/path/to/proj/some/path/debug/libFoo/lib/foo.lib"
It seems like the first call to find_package for target Foo is cached, whis
I don't really want.
Am I going about this the wrong way? How do I properly work with 3rd party
libraries with the Visual Studio generator?
Any pointers are greatly appreciated.
/ John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20150925/738d1d00/attachment.html>
More information about the CMake
mailing list