On Wed, 1 May 2019 at 02:10, Paul Harris
On Tue, 30 Apr 2019 at 22:53, Mateusz Loskot via Boost
wrote: BTW, there are also CMake's issues in FindCMake.cmake related to the compiler and architecture tag. So, you may have to specify Boost_COMPILER and Boost_ARCHITECTURE hints in order to help FindBoost.cmake recognise versioned names.
Seems like something that could be fixed at the CMake end... is anyone working on that?
Things are being fixed, for example https://gitlab.kitware.com/cmake/cmake/merge_requests/2579 Another fix related to your problem was this https://gitlab.kitware.com/cmake/cmake/issues/17701 which actually spawned introduction of Boost_ARCHITECTURE https://gitlab.kitware.com/cmake/cmake/merge_requests/2568 Those hints like Boost_ARCHITECTURE, Boost_COMPILER are actually provided to let users work around FindBoost.cmake deficiencies. Since Find-modules are just 'guessers', they (and maintainers) are doing their best, but they will never be solid and change-proof.
I don't see any documentation around the compiler version tag, what is the
current policy?
One of is what b2 --help says about --layout
"The default value is 'versioned' on Windows, and 'system' on Unix."
Yes but it doesn't mention anything about the compiler version tag and how the version number is decided (and how that decision changed).
No idea, but reading and blaming the source code itself may help, e.g.: https://github.com/boostorg/build/blob/develop/src/tools/common.jam#L960-L10...
https://www.boost.org/doc/libs/1_70_0/more/getting_started/unix-variants.htm... this just says -vc71 Toolset tag: identifies the toolset and version used to build the binary. I would've liked to see a little more detail on the "version" part, in particular, how it changed with a particular Boost and Compiler version.
AFAIK, it's always compiler's major and minor version stitched together. Then, for GCC this scheme had to change to major only bacause: "From GCC 5, versioning changes and minor becomes patch" Best regards, -- Mateusz Loskot, http://mateusz.loskot.net