Update interface library properties#218
Conversation
|
@pdimov could you please take a look at this PR? Should it be fixed here or somewhere in the generic Boost's cmake wrappers? |
is wrong for at least two reasons. First, I don't see any CMake install tests in your CI so I would recommend against touching this until you do, at least when your library is not part of the superproject (but when it isn't you still need to test that installation works). (Although of course this branch will only be exercised on CMake earlier than 3.23, so you need to make sure to test on at least one such.) As for using FILE_SET HEADERS instead of target_include_directories, we don't yet support this in the CMake infrastructure, but it's probably just a matter of adding the appropriate destination here although since CMAKE_INSTALL_INCLUDEDIR is the default (and BoostRoot adjusts this appropriately for versioned layout), it might even work without any changes. |
Implement solution to problem from #217
I used a glob as I usually do to keep the file list concise, but I don't know if it's the proper boost etiquette.
The target_sources allow for wetter handling of the headers during install, but I also fixed the issue with the absolute path when using CMake version where the target_sources command with file sets is not available.
You can test it with a sample project:
CMakeLists.txt:
main.cpp:
header.hpp: