rendered paste bodyIndex: FindBoostPython.cmake
===================================================================
--- FindBoostPython.cmake (revision 732453)
+++ FindBoostPython.cmake (working copy)
@@ -20,18 +20,35 @@
include(CheckIncludeFileCXX)
include(CheckLibraryExists)
+#finding boost and pythonlibs (not the interpreter)
+find_package(Boost)
+find_package(PythonLibs)
+
# reset vars
set(BOOST_PYTHON_INCLUDES)
set(BOOST_PYTHON_LIBS)
# handy arrays
-set(PYTHON_VERSIONS "python;python2.5;python2.4;python2.3;python2.2")
+set(PYTHON_VERSIONS "python;python2.5;python25;python2.4;python24;python2.3;python23;python2.2;python22")
set(PYTHON_INCLUDE_DIRS "/usr/include/$pyver;/usr/local/include/$pyver;/usr/$pyver/include;/usr/local/$pyver/include;$prefix/include/$pyver;$prefix/$pyver/include")
set(PYTHON_LIBRARY_DIRS "/usr/lib;/usr/local/lib;/usr/lib/$pyver/config")
+if (WIN32)
+ set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_PATH};${PYTHON_INCLUDE_DIRS}" )
+ set(PYTHON_LIBRARY_DIRS "${PYTHON_INCLUDE_PATH}/../libs;${PYTHON_LIBRARY_DIRS}")
+endif (WIN32)
set(PYTHON_LIBS "boost_python-gcc-mt;boost_python-mt;boost_python-gcc-mt-1_33;boost_python-gcc-mt-1_33_1;boost_python;boost_python-gcc-mt-1_32")
-# 1st: check for boost/shared_ptr.hpp
-check_include_file_cxx(boost/shared_ptr.hpp HAVE_BOOST_SHARED_PTR_HPP)
+if (Boost_FOUND)
+ # 1st: check for boost/shared_ptr.hpp
+ set(my_BOOST_ROOT $ENV{BOOST_ROOT})
+ if(WIN32 AND NOT my_BOOST_ROOT)
+ set(my_BOOST_ROOT ${CMAKE_INSTALL_PREFIX})
+ endif(WIN32 AND NOT my_BOOST_ROOT)
+ if (my_BOOST_ROOT)
+ set(CMAKE_REQUIRED_INCLUDES "${my_BOOST_ROOT}/include")
+ endif (my_BOOST_ROOT)
+ check_include_file_cxx(boost/shared_ptr.hpp HAVE_BOOST_SHARED_PTR_HPP)
+endif (Boost_FOUND)
if(HAVE_BOOST_SHARED_PTR_HPP)
@@ -61,8 +78,8 @@
if(NOT _found)
- set(CMAKE_REQUIRED_FLAGS "-L${_pylibdir}")
- set(CMAKE_REQUIRED_INCLUDES ${_pydir})
+ set(CMAKE_REQUIRED_FLAGS "-L${_pylibdir} -L${CMAKE_INSTALL_PREFIX}/bin")
+ set(CMAKE_REQUIRED_INCLUDES ${_pydir} ${my_BOOST_ROOT}/include)
set(CMAKE_REQUIRED_LIBRARIES ${_pblib} ${_pyver})
check_cxx_source_compiles("
@@ -77,20 +94,20 @@
// python lib dir: ${_pylibdir}
// boost python lib: ${_pblib}
-" boost_python_${_pylibdir}_${_pydir}_${_pblib}_compile )
+" bp_${_pylibdir}_${_pydir}_${_pblib}_${_pyver}_compile )
set(CMAKE_REQUIRED_FLAGS)
set(CMAKE_REQUIRED_INCLUDES)
set(CMAKE_REQUIRED_LIBRARIES)
- if(boost_python_${_pylibdir}_${_pydir}_${_pblib}_compile)
+ if(bp_${_pylibdir}_${_pydir}_${_pblib}_${_pyver}_compile)
set(_found TRUE)
set(BOOST_PYTHON_INCLUDES ${_pydir})
- set(BOOST_PYTHON_LIBS "-l${_pyver} -L${_pylibdir} -l${_pblib}")
+ set(BOOST_PYTHON_LIBS " -L${_pylibdir} -L${CMAKE_INSTALL_PREFIX}/bin -l${_pyver} -l${_pblib}")
- endif(boost_python_${_pylibdir}_${_pydir}_${_pblib}_compile)
+ endif(bp_${_pylibdir}_${_pydir}_${_pblib}_${_pyver}_compile)
endif(NOT _found)