1def _embedsrcs_files_impl(ctx): 2 name = ctx.attr.name 3 dir = ctx.actions.declare_directory(name) 4 args = [dir.path] + ctx.attr.files 5 ctx.actions.run( 6 outputs = [dir], 7 executable = ctx.executable._gen, 8 arguments = args, 9 ) 10 return [DefaultInfo(files = depset([dir]))] 11 12embedsrcs_files = rule( 13 implementation = _embedsrcs_files_impl, 14 attrs = { 15 "files": attr.string_list(), 16 "_gen": attr.label( 17 default = ":gen_embedsrcs_files", 18 executable = True, 19 cfg = "exec", 20 ), 21 }, 22) 23