Detect the correct Python major version
authorJeroen Kromwijk <jeroen.kromwijk@gmail.com>
Sun, 18 Sep 2016 10:02:33 +0000 (12:02 +0200)
committerJeroen Kromwijk <jeroen.kromwijk@gmail.com>
Sun, 18 Sep 2016 10:02:33 +0000 (12:02 +0200)
cmake/OpenCVDetectPython.cmake

index f304a50..f6452eb 100644 (file)
@@ -47,19 +47,24 @@ if(NOT ${found})
     endforeach()
   endif()
 
+  string(REGEX MATCH "^[0-9]+" _preferred_version_major ${preferred_version})
+
   find_host_package(PythonInterp "${preferred_version}")
   if(NOT PYTHONINTERP_FOUND)
     find_host_package(PythonInterp "${min_version}")
   endif()
 
   if(PYTHONINTERP_FOUND)
-    # Copy outputs
-    set(_found ${PYTHONINTERP_FOUND})
-    set(_executable ${PYTHON_EXECUTABLE})
-    set(_version_string ${PYTHON_VERSION_STRING})
-    set(_version_major ${PYTHON_VERSION_MAJOR})
-    set(_version_minor ${PYTHON_VERSION_MINOR})
-    set(_version_patch ${PYTHON_VERSION_PATCH})
+    # Check if python major version is correct
+    if(${_preferred_version_major} EQUAL ${PYTHON_VERSION_MAJOR})
+      # Copy outputs
+      set(_found ${PYTHONINTERP_FOUND})
+      set(_executable ${PYTHON_EXECUTABLE})
+      set(_version_string ${PYTHON_VERSION_STRING})
+      set(_version_major ${PYTHON_VERSION_MAJOR})
+      set(_version_minor ${PYTHON_VERSION_MINOR})
+      set(_version_patch ${PYTHON_VERSION_PATCH})
+    endif()
 
     # Clear find_host_package side effects
     unset(PYTHONINTERP_FOUND)