# BUILD file for unicode_test load(":unicode_test.bzl", "run_executable_rule", "write_file_rule", "run_executable_with_param_file_rule") # In Russian and Bengali: "Down with mojibake! We want unicode!" non_ascii_string = "Долой кракозябры! আমরা ইউনিকোড চাই!" genrule( name = "genrule_cmd", cmd = "echo -n \"%s\" > \"$@\"" % non_ascii_string, outs = ["genrule_cmd.out"], ) write_file_rule( name = "shell_echo", content = """#!/bin/bash outfile=$1; shift exec echo -n $@ > $outfile""", out = "shell_echo.sh", is_executable = True, ) run_executable_rule( name = "action_run_argument", executable = "shell_echo.sh", extra_arguments = [non_ascii_string], out = "action_run_argument.out", ) write_file_rule( name = "action_write_content", content = non_ascii_string, out = "action_write_content.out", ) run_executable_with_param_file_rule( name = "action_run_param_file", executable = "cat_param_file.sh", content = non_ascii_string, out = "action_run_param_file.out", ) write_file_rule( name = "cat_param_file", content = """#!/bin/bash cat "$1" >> "$2"; """, out = "cat_param_file.sh", is_executable = True, )