私は cmake のスコープ規則に完全に精通しているわけではありません。IDL の RPC コード生成を実行しながら、さまざまなファイルのリストを作成する必要があります。
function(generate_rpc file_name)
set(PROTO_FILES ${PROTO_FILES} ${file_name})
endfunction(generate_rpc)
generate_rpc(BasicProtocol.proto)
generate_rpc(dummy.proto)
message(STATUS "PROTO FILES: ${PROTO_FILES}")
リストは毎回空です。関数内から構築できる追加可能なリストが必要です。