[CMake] CMake 2.8.6 RC3 FindBoost Regression Error
Todd Gamblin
tgamblin at llnl.gov
Thu Sep 22 18:02:38 EDT 2011
That was introduced in this version, and it disables the recursive call to find_package with NO_MODULE.
Given the symptoms you are describing, it *sounds* like you might've renamed the lib/boost-1.44.0 directory that boost-cmake installs to something more compatible with a standard boost install. Boost-cmake installs libraries by default in a lib/boost-<version> directory rather than a lib/boost_<version> directory as bjam does. This fix was introduced because FindBoost could *not* find boost-cmake due to this problem.
If you moved things without changing BoostConfig.cmake, then your boost-cmake install is going to be broken, at least as far as finding it using find_package goes. If I'm right, then the fix in 2.8.6 will allow you to install boost-cmake versions without making these changes.
-Todd
On Sep 22, 2011, at 1:04 PM, Michael Jackson wrote:
> So was (Boost_NO_BOOST_CMAKE 1) introduced in this version of CMake or Past versions? I will tell you up front that I am only using a subset of Boost that I create with "bcp" from boost itself so there could very well be something slightly "off" with what I have that has been able to get through the previous versions of FindBoost but now with updates to FindBoost it is starting to fail.
> Just to be clear, add (Boost_NO_BOOST_CMAKE 1) allowed my project to use my own boost version.
> ___________________________________________________________
> Mike Jackson www.bluequartz.net
> Principal Software Engineer mike.jackson at bluequartz.net
> BlueQuartz Software Dayton, Ohio
>
> On Sep 22, 2011, at 3:51 PM, Todd Gamblin wrote:
>
>> David,
>>
>> I just tried 2.8.6-rc3 on a Linux machine with a system boost version 1.33.1 and a boost-cmake version 1.47.0. It seems to find both of them fine.
>>
>> It looks like Michael is using boost-cmake version 1.44, so I tried that too, but it also works. I'm not sure what could be wrong here.
>>
>> I did notice that there is a problem with printing the boost version for boost-cmake. My module prints Boost_FIND_VERSION instead of Boost_VERSION, and the print format is inconsistent with what the module does. I am not sure if you want me to fix that for 2.8.6.
>>
>> -Todd
>>
>>
>>
>> On Sep 22, 2011, at 11:41 AM, David Cole wrote:
>>
>>> Philip and Todd have been the recent authors/committers in FindBoost.cmake.
>>>
>>> Any comments on this one, guys?
>>>
>>>
>>> Thanks,
>>> David
>>>
>>>
>>> On Thu, Sep 22, 2011 at 12:23 PM, Michael Jackson
>>> <mike.jackson at bluequartz.net> wrote:
>>>> Semi Answering my own question if I "set (Boost_NO_BOOST_CMAKE 1)" my project seems to configure ok.
>>>> So I guess that is new.
>>>> ___________________________________________________________
>>>> Mike Jackson www.bluequartz.net
>>>> Principal Software Engineer mike.jackson at bluequartz.net
>>>> BlueQuartz Software Dayton, Ohio
>>>>
>>>> On Sep 22, 2011, at 12:14 PM, Michael Jackson wrote:
>>>>
>>>>> There seems to be either a regression or my project has been slipping through the cracks with respect to FindBoost. I have the following CMake code in my project:
>>>>>
>>>>>
>>>>> # ---------- Find Boost Headers/Libraries -----------------------
>>>>> SET (Boost_FIND_REQUIRED TRUE)
>>>>> SET (Boost_DEBUG FALSE)
>>>>> set (Boost_USE_MULTITHREADED TRUE)
>>>>> set (Boost_USE_STATIC_LIBS TRUE)
>>>>> SET (Boost_ADDITIONAL_VERSIONS "1.47.0" "1.46.0" "1.44.0" "1.44" "1.41" "1.41.0" "1.39" "1.39.0")
>>>>> set (Boost_FIND_COMPONENTS "")
>>>>> FIND_PACKAGE(Boost COMPONENTS ${Boost_FIND_COMPONENTS} )
>>>>> INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
>>>>> LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})
>>>>>
>>>>> Under CMake 2.8.5 (all prior) this worked just fine. Now with CMake 2.8.6 I get the following error:
>>>>>
>>>>>
>>>>> globbed: ../../boost-1.41.0//cmake//BoostConfig.cmake;../../boost-1.44.0//cmake//BoostConfig.cmake
>>>>> FOUNDVERSION=1.44.0
>>>>> CMake Error at /Users/Shared/Toolkits/MXABoost-1.44/share/boost-1.44.0/cmake/BoostConfig.cmake:87 (message):
>>>>> Boost components not found: thread;program_options;date_time
>>>>> Call Stack (most recent call first):
>>>>> /Users/Shared/Toolkits/MXABoost-1.44/share/cmake/boost/BoostConfig.cmake:15 (include)
>>>>> /Users/Shared/Toolkits/CMake-2.8.6/CMake-2.8.6.app/Contents/share/cmake-2.8/Modules/FindBoost.cmake:282 (find_package)
>>>>> CMakeLists.txt:144 (FIND_PACKAGE)
>>>>>
>>>>>
>>>>> -- Configuring incomplete, errors occurred!
>>>>>
>>>>> I dug into the FindBoost.cmake file that comes with RC3 and started reading the docs at the top. It states that if I am using Boost Headers only then I can leave out the "COMPONENTS" part. I changed my CMakeLists.txt file to reflect this and I still get the error.
>>>>>
>>>>> Operator Error or regression?
>>>>>
>>>>> ___________________________________________________________
>>>>> Mike Jackson www.bluequartz.net
>>>>> Principal Software Engineer mike.jackson at bluequartz.net
>>>>> BlueQuartz Software Dayton, Ohio
>>>>>
>>>>
>>>> --
>>>>
>>>> Powered by www.kitware.com
>>>>
>>>> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>>>>
>>>> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>>>>
>>>> Follow this link to subscribe/unsubscribe:
>>>> http://www.cmake.org/mailman/listinfo/cmake
>>>>
>>
>> ______________________________________________________________________
>> Todd Gamblin, tgamblin at llnl.gov, http://people.llnl.gov/gamblin2
>> CASC @ Lawrence Livermore National Laboratory, Livermore, CA, USA
>>
>
> --
>
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
______________________________________________________________________
Todd Gamblin, tgamblin at llnl.gov, http://people.llnl.gov/gamblin2
CASC @ Lawrence Livermore National Laboratory, Livermore, CA, USA
More information about the CMake
mailing list