Integrated FindBoost cmake module doesn't work on boost >=1.62
oleid opened this issue · 3 comments
Hey,
when compiling flexcore on Archlinux, boost::log can't be found. FindBoost.cmake supplied with the repository comes with a list of known versions and dependencies. Adding my boost version (1.63) works fine, however, I'm wondering if it makes more sense to use the distribution's FindBoost to always make sure to have an updated list on a recent distribution.
Best,
Olaf
I think we can remove the find boost module.
Since the cmake in flexcore requires cmake >= 3.0 anyways, the find boost module by cmake should do.
The cmake module included with flexcore is from cmake 3.6 and provides imported targets for the various boost libraries, as well as dealing with dependencies between them. Without this I found it was impossible to write a correct flexcore-config.cmake
file that is relocatable (i.e. boost location not hardcoded in the generated flexcore-targets.cmake). The older find boost modules also had a rather unpleasant variable based interface.
I'd be for deleting the bundled module it if I would be possible to adjust the minimum required version of cmake to 3.5 (that's when the FindBoost module was modernized). But since we're interested in supporting cmake version 3.3, I'd rather just sync the FindBoost module from cmake 3.7 over, and keep doing that as long as it works. Thoughts?
How about using the FindBoost module coming with flexcore only for elder cmake versions and keep using the cmake's own version for cmake >= 3.5?