check for per python version libboost_python library
[mussa.git] / makelib / FindBoost.cmake
index e65bb30443c94d5860ab890c9480208b9130689e..dd2dab97f0ce24fa9e8fcef2600b6a704e5eaee0 100644 (file)
@@ -14,38 +14,58 @@ FIND_PATH(BOOST_INCLUDE_DIR boost/weak_ptr.hpp
                             C:\\Boost\\Include\\boost-1_34
                             C:\\Boost\\include\\boost-1_33_1 )
 
+FIND_PACKAGE(PythonInterp)
+IF(PYTHONINTERP_FOUND)
+  STRING(REGEX MATCH "[0-9]\\.[0-9]$" PYVER ${PYTHON_EXECUTABLE})
+ENDIF(PYTHONINTERP_FOUND)
 
 IF(MINGW)
   SET (BOOST_ROOT C:\\Boost)
-  FIND_LIBRARY( BOOST_FILESYSTEM_LIBRARY 
+  FIND_LIBRARY( BOOST_FILESYSTEM_LIBRARY NAMES
                 libboost_filesystem-mgw-s
+                libboost_filesystem-mgw34-s-1_34
                 PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_FILESYSTEM_LIBRARY_DEBUG 
+  FIND_LIBRARY( BOOST_FILESYSTEM_LIBRARY_DEBUG NAMES
                 libboost_filesystem-mgw-sd
+                libboost_filesystem-mgw34-s-1_34
                 PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_PROGRAM_OPTIONS_LIBRARY 
+  FIND_LIBRARY( BOOST_PROGRAM_OPTIONS_LIBRARY NAMES
                 libboost_program_options-mgw-s
+                libboost_program_options-mgw34-s-1_34
                 PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_PROGRAM_OPTIONS_LIBRARY_DEBUG 
+  FIND_LIBRARY( BOOST_PROGRAM_OPTIONS_LIBRARY_DEBUG NAMES 
                 libboost_program_options-mgw-sd
+                libboost_program_options-mgw34-sd-1_34
                 PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_PYTHON_LIBRARY 
-                libboost_python-mgw
-                PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_PYTHON_LIBRARY_DEBUG 
-                libboost_python-mgw-d
-                PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_SERIALIZATION_LIBRARY 
+  IF(PYTHONINTERP_FOUND)
+    FIND_LIBRARY( BOOST_PYTHON_LIBRARY NAMES
+                  libboost_python${PYVER}-mgw
+                  libboost_python${PYVER}-mgw34-1_34
+                  libboost_python-mgw
+                  libboost_python-mgw34-1_34
+                  PATHS ${BOOST_ROOT}\\lib )
+    FIND_LIBRARY( BOOST_PYTHON_LIBRARY_DEBUG NAMES 
+                  libboost_python${PYVER}-mgw-d
+                  libboost_python${PYVER}-mgw34-d-1_34
+                  libboost_python-mgw-d
+                  libboost_python-mgw34-d-1_34
+                  PATHS ${BOOST_ROOT}\\lib )
+  ENDIF(PYTHONINTERP_FOUND)
+  FIND_LIBRARY( BOOST_SERIALIZATION_LIBRARY NAMES
                 libboost_serialization-mgw
+                libboost_serialization-mgw34-1_34
                 PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_SERIALIZATION_LIBRARY_DEBUG 
+  FIND_LIBRARY( BOOST_SERIALIZATION_LIBRARY_DEBUG NAMES
                 libboost_python-mgw-d
+                libboost_python-mgw34-d-1_34
                 PATHS ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_UNIT_TEST_LIBRARY 
-                libboost_unit_test_framework-mgw-s
-                ${BOOST_ROOT}\\lib )
-  FIND_LIBRARY( BOOST_UNIT_TEST_LIBRARY_DEBUG 
+  FIND_LIBRARY( BOOST_UNIT_TEST_LIBRARY NAMES
                 libboost_unit_test_framework-mgw-s
+                libboost_unit_test_framework-mgw34-s-1_34
+                PATHS ${BOOST_ROOT}\\lib )
+  FIND_LIBRARY( BOOST_UNIT_TEST_LIBRARY_DEBUG NAMES
+                libboost_unit_test_framework-mgw-sd
+                libboost_unit_test_framework-mgw34-sd-1_34
                 PATHS ${BOOST_ROOT}\\lib )
 ELSE(MINGW)
 
@@ -58,14 +78,25 @@ FIND_LIBRARY( BOOST_PROGRAM_OPTIONS_LIBRARY NAMES
               boost_program_options
               boost_program_options-40
               PATHS /usr/lib /usr/local/lib C:\\Boost\\lib )
-FIND_LIBRARY( BOOST_PYTHON_LIBRARY NAMES 
-              boost_python
-              boost_python-40
-              PATHS /usr/lib /usr/local/lib C:\\Boost\\lib )
-FIND_LIBRARY( BOOST_PYTHON_LIBRARY_DEBUG NAMES 
-              boost_python-d
-              boost_python-40-d
-              PATHS /usr/lib /usr/local/lib C:\\Boost\\lib )
+IF(PYTHONINTERP_FOUND)
+  FIND_LIBRARY( BOOST_PYTHON_LIBRARY NAMES 
+                boost_python${PYVER}
+                boost_python${PYVER}-40
+                boost_python${PYVER}-gcc40-1_34
+                boost_python
+                boost_python-40
+                boost_python-gcc40-1_34
+                PATHS /usr/lib /usr/local/lib C:\\Boost\\lib )
+  FIND_LIBRARY( BOOST_PYTHON_LIBRARY_DEBUG NAMES 
+                boost_python${PYVER}-d
+                boost_python${PYVER}-40-d
+                boost_python${PYVER}-gcc40-d
+                boost_python${PYVER}-gcc40-d-1_34
+                boost_python-d
+                boost_python-40-d
+                boost_python-gcc40-d-1_34
+                PATHS /usr/lib /usr/local/lib C:\\Boost\\lib )
+ENDIF(PYTHONINTERP_FOUND)
 FIND_LIBRARY( BOOST_SERIALIZATION_LIBRARY NAMES 
               boost_serialization
               boost_serialization-40