if(NOT _found) set(CMAKE_REQUIRED_FLAGS "-L${_pylibdir} -L${my_BOOST_ROOT}/lib") set(CMAKE_REQUIRED_INCLUDES ${_pydir} ${my_BOOST_ROOT}/include) set(CMAKE_REQUIRED_LIBRARIES ${_pblib} ${_pyver}) #${_pblib} ${_pyver} message(STATUS "++++++++ all dirs: " ${_pydir} " " ${_pylibdir} " " ${_pblib} " " ${_pyver}) check_cxx_source_compiles(" #include const char* greet() { return \"Hello world!\"; } BOOST_PYTHON_MODULE(hello) { boost::python::def(\"greet\", greet); } int main() { return 0; } // some vars, in case of the compilation fail... // python include dir: ${_pydir} // python lib dir: ${_pylibdir} // boost python lib: ${_pblib} " bp_${_pylibdir}_${_pydir}_${_pblib}_${_pyver}_compile ) set(CMAKE_REQUIRED_FLAGS) set(CMAKE_REQUIRED_INCLUDES) set(CMAKE_REQUIRED_LIBRARIES) if(bp_${_pylibdir}_${_pydir}_${_pblib}_${_pyver}_compile) message(STATUS "++++++++ compiled: " ${_pydir} " " ${_pylibdir} " " ${_pblib} " " ${_pyver}) set(_found TRUE) set(BOOST_PYTHON_INCLUDES ${_pydir}) set(BOOST_PYTHON_LIBS "-l${_pyver} -L${_pylibdir} -l${_pblib} -L${my_BOOST_ROOT}/lib") endif(bp_${_pylibdir}_${_pydir}_${_pblib}_${_pyver}_compile) endif(NOT _found)