Boost logo

Boost Users :

Subject: [Boost-users] 1.66 changes in layout suffix seems to break cmake finder
From: Stephan Menzel (stephan.menzel_at_[hidden])
Date: 2018-01-08 15:14:49


Hello,

I am currently trying to upgrade my projects to 1.66 and I am puzzled by a
change in bjam's 'laout' parameter.

I am building boost for MSVC14 (x64). Normally I use the following command
line:

> bjam.exe --layout=versioned variant=release address-model=64
link=static,shared runtime-link=shared threading=multi stage

to achieve the build flags and setup that I need.
Up until 1.65 this yielded libs named like:

libboost_atomic-vc140-mt-1_65.lib

This is what appears to be the most flexible for my use case and I always
discover them using the 'normal' CMake finders like this:

set(BOOST_ROOT ${WHERE_MY_THIRD_PARTY_STUFF_IS}/boost-1.66.0
CACHE PATH "set root of boost install")
set(BOOST_INCLUDEDIR ${BOOST_ROOT}/include
CACHE PATH "set boost includes")
set(BOOST_LIBRARYDIR ${BOOST_ROOT}/lib
CACHE PATH "set boost library dir")
set(Boost_ADDITIONAL_VERSIONS "1.66.0")

find_package(Boost REQUIRED COMPONENTS ...)

Now over the years the meaning of the --layout parameter and its defaults
have occasionally changed by I always managed to get something like this.

But now, with 1.66 the filenames are changed to that:

libboost_atomic-vc140-mt-x64-1_66.lib

With this, CMake won't find the libs anymore. I have tried all different
variantions of --layout I know (system, tagged, versioned) but I cannot get
the old naming scheme back. I could rename the files manually but I am a
bit afraid that this might break some linker (autolink) magick and also it
doesn't seem right. Trying with several CMake finder options also got me
nowhere. Using layout system is not desired as I like to quickly
distinguish between versions on sight.
 So my question is:
Is there a way to get >=1.66 to build with the filename scheme it had until
now? Or is there a change to the CMake finders that will fix this?

Thanks for any suggestions...

Stephan



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net