fix(src/CMakeLists): sanitize regex

This commit is contained in:
Wojciech Nawrocki 2019-02-13 18:34:23 +00:00 committed by Leonardo de Moura
parent 6f852cf7af
commit 1c7ee616a2

View file

@ -475,8 +475,17 @@ file(GLOB_RECURSE LEAN_SOURCES
"${LEAN_SOURCE_DIR}"
"${LEAN_SOURCE_DIR}/[A-Za-z]*.cpp"
"${LEAN_SOURCE_DIR}/[A-Za-z]*.h")
function(escape_regex OUT_NAME INPUT)
foreach(CHAR IN ITEMS ^ $ . [ ] - + * \( \) )
string(REPLACE "${CHAR}" "\\${CHAR}" INPUT ${INPUT})
endforeach(CHAR)
set(${OUT_NAME} ${INPUT} PARENT_SCOPE)
endfunction()
escape_regex(LEAN_SOURCE_DIR_REGEX_SAFE ${LEAN_SOURCE_DIR})
foreach(SOURCE ${LEAN_SOURCES})
if(${SOURCE} MATCHES "${LEAN_SOURCE_DIR}/boot/.*")
if(${SOURCE} MATCHES "${LEAN_SOURCE_DIR_REGEX_SAFE}/boot/.*")
LIST(REMOVE_ITEM LEAN_SOURCES ${SOURCE})
endif()
endforeach()