FindDoxygen: Escape backslashes in default values

Doxygen 1.8.15 added a new LATEX_MAKEINDEX_CMD config
item and it has a default value that contains a backslash on
some installations.

Fixes: #18738
This commit is contained in:
Craig Scott 2019-01-27 10:34:05 +11:00
parent 8887ebc69b
commit e81fd5d5ba

View File

@ -708,7 +708,9 @@ if(TARGET Doxygen::doxygen)
if(_line MATCHES "([A-Z][A-Z0-9_]+)( *=)(.*)")
set(_key "${CMAKE_MATCH_1}")
set(_eql "${CMAKE_MATCH_2}")
string(REPLACE ";" "\\\n" _value "${CMAKE_MATCH_3}")
set(_value "${CMAKE_MATCH_3}")
string(REPLACE "\\" "\\\\" _value "${_value}")
string(REPLACE ";" "\\\n" _value "${_value}")
list(APPEND _Doxygen_tpl_params "${_key}${_eql}${_value}")
endif()
endforeach()