Project

General

Profile

Bug #8326

chef-libs/cmake fails when an external boost is pointed to by boost/include= and boost/lib= contract options

Added by Eric Stern over 4 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Start date:
04/13/2015
Due date:
% Done:

0%

Estimated time:
Duration:

Description

On mira/bgq for instance, I am building with the installation provided boost by specifying contract options

boost/include=/soft/libraries/boost/current/cnk-gcc/current/include (user)
boost/lib=/soft/libraries/boost/current/cnk-gcc/current/lib (user)

When it comes time for chef-libs/cmake, those variables are not propagated to the cmake command line so cmake does not find the proper boost and it fails. This is the cmake command:

cmake -DCMAKE_INSTALL_PREFIX:PATH=/gpfs/mira-home/egstern/syn2-dev-201504/install -DFFTW3_LIBRARY_DIRS="/gpfs/mira-home/egstern/syn2-dev-201504/install/lib" -DCMAKE_BUILD_TYPE=Release -DBUILD_PARSER_MODULES=0 -DBUILD_PYTHON_BINDINGS=1 -DBUILD_SHARED_LIBS=1 /gpfs/mira-home/egstern/syn2-dev-201504/build/chef-libs -DCMAKE_EXE_LINKER_FLAGS:STRING="-dy -dynamic" -DCMAKE_CXX_COMPILER:FILEPATH=/bgsys/drivers/ppcfloor/gnu-linux/bin/powerpc64-bgq-linux-g++

There needs to be a definition of -DBOOST_INCLUDEDIR:PATH= on the cmake command library to point to the right place. In packages/chef_libs.py, there is the specification of the location when boost is built internally here:

if boost_internal.get():
chef_libs_conf += ' -DBOOST_INCLUDEDIR:PATH=%(boost.include_dir)s'

but this needs to be supplemented by specifying the same variable if the boost/include= contract option has been specified.

History

#1 Updated by Eric Stern over 4 years ago

  • Status changed from New to Resolved

Force the location of boost includes to be passed to chef-libs/cmake and synergia2/cmake in all cases.
commit:8321709a2eef642a43d0c9c8563dd518794f0242

#2 Updated by Eric Stern over 4 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF