On Sat, Jun 17, 2017 at 12:34 AM, P F
On Jun 16, 2017, at 11:24 PM, David Sankel via Boost < boost@lists.boost.org> wrote:
On Fri, Jun 16, 2017 at 9:01 PM, Robert Ramey via Boost < boost@lists.boost.org> wrote:
On 6/16/17 4:44 PM, David Sankel via Boost wrote:
* Boost sources would provide a compatible, drop-in replacement for the 'FindBoost' module that is distributed with CMake. A CMake-based application could point to it and, instead of using the system Boost libraries, Boost targets would be built from source as part of the user build.
Hmmm would this be a FindBoost for the whole of Boost or for each particular library? Who would re-write and maintain this FindBoost as the current one is not up the task. Getting this right - or even better is not a trivial task.
I agree that this is a non-trivial task. The contract for FindBoost is relatively straightforward. The implementation for the Boost-source version of this library would look at the COMPONENTS argument and, based on that, add_subdirectory the source for the particularly requested library. The CMakeLists.txt file would be author maintained and provide its corresponding target (e.g. boost::thread).
Thats not the the way `find_package` works at all. The `find_package` is used to find packages installed, it should never go out and build libraries.
I don't know where you get that impression (again, see the video I linked to earlier). This is, indeed, the only way to write packages that can be built with already-installed binaries *or* together with the source code of their dependencies. It is a very important property to have in a build system for large-scale development.