13 lines · plain
1function(add_irdl_to_cpp_target target irdl_file)2 add_custom_command(3 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${irdl_file}.cpp.inc4 COMMAND ${MLIR_IRDL_TO_CPP_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/${irdl_file} -o ${CMAKE_CURRENT_BINARY_DIR}/${irdl_file}.cpp.inc5 6 # The command output depends on the executable to ensure IRDL sources are properly rebuilt7 # if the tool changes.8 DEPENDS ${MLIR_IRDL_TO_CPP_TARGET} ${MLIR_IRDL_TO_CPP_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/${irdl_file}9 COMMENT "Building ${irdl_file}..."10 )11 add_custom_target(${target} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${irdl_file}.cpp.inc)12endfunction()13