mindspore2022/mindspore/lite/cmake/merge.cmake

19 lines
649 B
CMake

function(merge_parser CL_SRC_DIR OUT_FILE_NAME)
message(STATUS "Merge parser from ${CL_SRC_DIR} to ${OUT_FILE_NAME}")
if(NOT EXISTS ${CL_SRC_DIR})
return()
endif()
if(DEFINED MSLITE_COMPILE_TWICE AND NOT MSLITE_COMPILE_TWICE)
return()
endif()
file(GLOB_RECURSE CL_LIST ${CL_SRC_DIR}/*.cc)
list(SORT CL_LIST)
set(out_file ${OUT_FILE_NAME})
file(REMOVE ${out_file})
file(WRITE ${out_file} "")
foreach(file_path ${CL_LIST})
file(STRINGS ${file_path} READ_CC_CONTEXT NEWLINE_CONSUME NO_HEX_CONVERSION)
file(APPEND ${out_file} ${READ_CC_CONTEXT})
endforeach()
endfunction()