pytorch/cmake/Allowlist.cmake

33 lines
786 B
CMake

if(__caffe2_allowlist_included)
return()
endif()
set(__caffe2_allowlist_included TRUE)
set(CAFFE2_ALLOWLISTED_FILES)
if(NOT CAFFE2_ALLOWLIST)
return()
endif()
# First read the allowlist file and break it by line.
file(READ "${CAFFE2_ALLOWLIST}" allowlist_content)
# Convert file contents into a CMake list
string(REGEX REPLACE "\n" ";" allowlist_content ${allowlist_content})
foreach(item ${allowlist_content})
file(GLOB_RECURSE tmp ${item})
set(CAFFE2_ALLOWLISTED_FILES ${CAFFE2_ALLOWLISTED_FILES} ${tmp})
endforeach()
macro(caffe2_do_allowlist output allowlist)
set(_tmp)
foreach(item ${${output}})
list(FIND ${allowlist} ${item} _index)
if(${_index} GREATER -1)
set(_tmp ${_tmp} ${item})
endif()
endforeach()
set(${output} ${_tmp})
endmacro()