Steven Watanabe wrote:
The purpose of that incrementing library-id, as far as I can infer, is to enable two libraries to have their own private zlib dependencies.
That's not really correct. The reason for the library-id is to make sure that target alternative selection only happens at the top level on the /zlib//zlib target.
So it's intended for cases like using zlib : 1.2.7 : <source>C:/Devel/src/zlib-1.2.7 : <toolset>msvc ; using zlib : 1.2.7 : <source>/opt/src/zlib-1.2.7 : <toolset>gcc ; ? Either way, in general, when I see lib1 having a CMake dependency on foo.1 and lib2 having a dependency on foo.2, ignoring the suffix doesn't seem correct. I could add a specific check for `zlib.*` and `bzip2.*` but this will only work for Iostreams. What's the intended path forward (in general, not specifically for the CMake configurations) when a second Boost library wants to use zlib and bzip2?