Subject: Re: [boost] Proposal for moving Boost to CMake
From: David Sankel (camior_at_[hidden])
Date: 2017-06-17 04:54:51
On Sat, Jun 17, 2017 at 12:34 AM, P F <pfultz2_at_[hidden]> wrote:
> > On Jun 16, 2017, at 11:24 PM, David Sankel via Boost <
> boost_at_[hidden]> wrote:
> > On Fri, Jun 16, 2017 at 9:01 PM, Robert Ramey via Boost <
> > boost_at_[hidden]> 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
> >> current one is not up the task. Getting this right - or even better is
> >> 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
> > 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.