Boost logo

Boost :

Subject: Re: [boost] CMake - one more time
From: Peter Dimov (lists_at_[hidden])
Date: 2016-04-24 12:16:31

Paul Fultz II wrote:

> What would be nice if BPM was extensible to support libraries in the
> incubator. That is the user had some form of channel or PPA that could be
> added, which would install these unofficial libraries as well.

I could in principle borrow a page from your book and make it treat

    bpm install pdimov:mp11

as referring to, placing it into libs/mp11, but the
problem is then versioning. When everything is under the boostorg umbrella,
the nice thing about the superproject is that it gives me a global version
across all submodules. So when you install filesystem 1.60.0, it knows to
get system 1.60.0 as well.

(pdimov/mp11 doesn't work because we already have numeric/odeint.)

Actually, now that I think about it, I'm not sure downloading the Github
tarball of boostorg/boost would give me the information I need to download
the correct revision of the submodules... and I rather not integrate git
into bpm. :-)

> > But now I think that this is unnecessary; I plan to rework it to
> > download the packages directly from Github, and to scan the dependencies
> > in place, so as to eliminate the need for a bpm-specific packaging.
> Wouldn’t it need to download all of boost to do that? Otherwise, how does
> it know which header belongs to which library?

My current plan is to autodetect the library from boost/{library}/... or
boost/{library}.hpp and rely on a list with the headers that do not fit this

I just added --list-exceptions to boostdep for this purpose; the main
offenders are boost/archive, which belongs to serialization,
boost/graph/distributed and boost/graph/parallel, which are in
graph_parallel, and boost/detail/winapi which is the winapi module.

> > This would be very useful in .travis.yml, except that you'd need to
> > somehow bootstrap bpm first.
> And b2 as well, correct?

I could integrate the b2 engine into bpm. The idea being that bpm.exe should
be all one needs to install and build everything else.

Although I don't have the time at present to flesh all this out, so it could
be that I've overlooked something.

Boost list run by bdawes at, gregod at, cpdaniel at, john at