# Concatenates all .metal sources into one C++ translation unit exposing raid::metal::msl_bundle(). set(_out "namespace raid { namespace metal { const char* msl_bundle() { return R\"RAIDMSL(\n") set(_sep "") foreach(s ${SHADERS}) file(READ ${s} _c) string(APPEND _out "// ---- ${s}\n${_c}\n") endforeach() string(APPEND _out ")RAIDMSL\"; } } }\n") file(WRITE ${OUT} "${_out}")