mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-05 13:20:47 -06:00
Merge topic 'matlab_root'
72dd680609FindMatlab: follow CMP0074 <PackageName>_ROOT search behaviorba74c58ca4FindMatlab: add'l check that Matlab test version file exists Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7616
This commit is contained in:
@@ -85,10 +85,18 @@ Module Input Variables
|
||||
Users or projects may set the following variables to configure the module
|
||||
behavior:
|
||||
|
||||
:variable:`Matlab_ROOT <<PackageName>_ROOT>`
|
||||
.. versionadded:: 3.25
|
||||
|
||||
Default value for :variable:`Matlab_ROOT_DIR`, the root of the Matlab
|
||||
installation.
|
||||
|
||||
:variable:`Matlab_ROOT_DIR`
|
||||
the root of the Matlab installation.
|
||||
The root of the Matlab installation.
|
||||
|
||||
:variable:`MATLAB_FIND_DEBUG`
|
||||
outputs debug information
|
||||
|
||||
:variable:`MATLAB_ADDITIONAL_VERSIONS`
|
||||
additional versions of Matlab for the automatic retrieval of the installed
|
||||
versions.
|
||||
@@ -843,6 +851,15 @@ function(matlab_get_version_from_matlab_run matlab_binary_program matlab_list_ve
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT EXISTS "${_matlab_temporary_folder}/matlabVersionLog.cmaketmp")
|
||||
# last resort check as some HPC with "module load matlab" not enacted fail to catch in earlier checks
|
||||
# and error CMake configure even if find_package(Matlab) is not REQUIRED
|
||||
if(MATLAB_FIND_DEBUG)
|
||||
message(WARNING "[MATLAB] Unable to determine the version of Matlab. The version log file does not exist.")
|
||||
endif()
|
||||
return()
|
||||
endif()
|
||||
|
||||
# if successful, read back the log
|
||||
file(READ "${_matlab_temporary_folder}/matlabVersionLog.cmaketmp" _matlab_version_from_cmd)
|
||||
file(REMOVE "${_matlab_temporary_folder}/matlabVersionLog.cmaketmp")
|
||||
@@ -1572,6 +1589,13 @@ endfunction()
|
||||
# this variable will get all Matlab installations found in the current system.
|
||||
set(_matlab_possible_roots)
|
||||
|
||||
if(NOT DEFINED Matlab_ROOT AND DEFINED ENV{Matlab_ROOT})
|
||||
set(Matlab_ROOT $ENV{Matlab_ROOT})
|
||||
endif()
|
||||
if(DEFINED Matlab_ROOT)
|
||||
set(Matlab_ROOT_DIR ${Matlab_ROOT})
|
||||
endif()
|
||||
|
||||
if(Matlab_ROOT_DIR)
|
||||
# if the user specifies a possible root, we keep this one
|
||||
|
||||
|
||||
Reference in New Issue
Block a user