Browse Source

FindMatlab: Only consider versioned MCR subdirectory if it exists

Issue: #26306
Hermann von Kleist 1 year ago
parent
commit
cd4782bac3
1 changed files with 4 additions and 1 deletions
  1. 4 1
      Modules/FindMatlab.cmake

+ 4 - 1
Modules/FindMatlab.cmake

@@ -636,11 +636,14 @@ function(matlab_get_all_valid_matlab_roots_from_registry matlab_versions matlab_
       string(REPLACE "." "" _matlab_current_version_without_dot "${_matlab_current_version}")
 
       if(IS_DIRECTORY "${current_MATLAB_ROOT}")
+        if(IS_DIRECTORY "${current_MATLAB_ROOT}/v${_matlab_current_version_without_dot}")
+          cmake_path(APPEND current_MATLAB_ROOT "v${_matlab_current_version_without_dot}")
+        endif()
         _Matlab_VersionInfoXML("${current_MATLAB_ROOT}" _matlab_version_tmp)
         if("${_matlab_version_tmp}" STREQUAL "unknown")
           set(_matlab_version_tmp ${_matlab_current_version})
         endif()
-        list(APPEND _matlab_roots_list "MCR" ${_matlab_version_tmp} "${current_MATLAB_ROOT}/v${_matlab_current_version_without_dot}")
+        list(APPEND _matlab_roots_list "MCR" ${_matlab_version_tmp} "${current_MATLAB_ROOT}")
       endif()
     endforeach()
   endforeach()