On Fri, Sep 13, 2019 at 8:24 AM Theodore Hall <twh...@umich.edu> wrote:
> Greetings, > > set_target_properties(target PROPERTIES > IMPORTED_LOCATION location > IMPORTED_IMPLIB implib > INTERFACE_INCLUDE_DIRECTORIES directory+ > ) > > Is there a way to assign more than one directory to > INTERFACE_INCLUDE_DIRECTORIES ? The property name is plural, but every > attempt I've made to specify more than one directory has failed. CMake > complains that either: I've passed the wrong number of arguments; or > concatenates all of them into one path which of course doesn't exist. > > I've found a work-around using > > target_include_directories (target > INTERFACE directory1 > INTERFACE directory2 > ) > > It just seems odd that a property with a plural name accepts only a > singular value. I feel like I'm missing something. I've tried wrapping > multiple directories in various kinds of brackets and quotes and separating > them with ; or , instead of whitespace. (This is Windows, so : isn't a > path separator; the system PATH variable uses ; as the separator.) > OPTION A: Put quotes around a semi-colon separated string if using set_target_properties(): set_target_properties(target PROPERTIES IMPORTED_LOCATION location IMPORTED_IMPLIB implib INTERFACE_INCLUDE_DIRECTORIES "directory1;directory2" ) OPTION B: List multiple directories after just one INTERFACE keyword if using target_include_directories(): target_include_directories (target INTERFACE directory1 directory2 ) Either option should work for all platforms, but note that option A will overwrite any previous contents of INTERFACE_INCLUDED_DIRECTORIES whereas option B will append to any previous contents. For that reason, I'd generally recommend option B. > -- Craig Scott Melbourne, Australia https://crascit.com Get the hand-book for every CMake user: Professional CMake: A Practical Guide <https://crascit.com/professional-cmake/> Consulting services (CMake, C++, build/release processes): https://crascit.com/services
-- 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: https://cmake.org/mailman/listinfo/cmake