|
Boost : |
Subject: Re: [boost] Follow-up to the follow-up of the CMake follow-up
From: paul (pfultz2_at_[hidden])
Date: 2017-07-13 18:46:57
On Thu, 2017-07-13 at 10:55 -0700, Louis Dionne via Boost wrote:
> >
> > In branch feature/install-cmake-config-2 of the superproject, you can
> > findÂ
> > an improved version of the award-winning work presented in my previousÂ
> > follow-up. This one integrates into the top-level "b2 install" and "b2Â
> > stage" and installs (or, respectively, stages) the CMake configuration
> > filesÂ
> > necessary for find_package to work.
> >
> > [...]
> I think this is a very good start! It shows that we can automate part of the
> process of creating the CMake XYZConfig.cmake files for existing libraries,
> which is nice. However, the resulting XYZConfig files are not always
> sufficient,
> for example Boost.Interprocess, which requires additional libraries to link.
> Specifically, the config file for Boost.Interprocess would need to specifyÂ
> something along the lines of:
>
> Â if ("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")Â
> Â Â Â Â target_link_libraries(boost_interprocess INTERFACE -lrt)
> Â endif()Â
Actually, using the scripts I have here:
https://github.com/pfultz2/boost-cmake
This will let you inject extra cmake code for projects. That's how I generate
code for Boost.Context, which needs a lot of custom work. The same could be
done for Boost.Interprocess. Its fairly simple to add if you would like to add
your patches.
It currently can build all of boost, but there is some more work that needs to
be done, including adding more tests, and disabling libraries such as MPI or
Python that need external dependencies.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk