# Copyright 2016 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # TODO(nparker): reduce the duplication between these two, somehow. # Generate the binary proto form of "file_types" from the ascii proto. action("make_file_types_protobuf") { script = "gen_file_type_proto.py" # The output goes in $target_gen_dir since that's where # chrome/browser/browser_resources.grd will look for it. input_filename = "download_file_types.asciipb" output_dir = target_gen_dir output_basename = "download_file_types.pb" python_path_root = "$root_out_dir/pyproto" python_path_safe_browsing = "$python_path_root/chrome/common/safe_browsing" # Pick an architecture to generate for. These string match those # in the python script. if (is_android) { target_arch = "android" } else if (is_chromeos) { target_arch = "chromeos" } else if (is_win) { target_arch = "win" } else if (is_mac) { target_arch = "mac" } else if (is_linux) { target_arch = "linux" } else { # This will cause the script to fail. target_arch = "unknown_target_arch" } inputs = [ input_filename, ] deps = [ "//chrome/common/safe_browsing:proto", "//third_party/protobuf:py_proto", ] outputs = [ "$output_dir/$output_basename", ] args = [ "-w", "-t", target_arch, "-i", rebase_path(input_filename, root_build_dir), "-d", rebase_path(output_dir, root_build_dir), "-o", output_basename, "-p", rebase_path(python_path_root, root_build_dir), "-p", rebase_path(python_path_safe_browsing, root_build_dir), ] } # Generate the binary proto for ALL platforms. This is only run manually # when pushing the files to GCS for the component-updater to pick up. action("make_all_file_types_protobuf") { script = "gen_file_type_proto.py" input_filename = "download_file_types.asciipb" output_dir = "$target_gen_dir/all" output_basename = "download_file_types.pb" python_path_root = "$root_build_dir/pyproto" python_path_safe_browsing = "$python_path_root/chrome/common/safe_browsing" inputs = [ input_filename, ] deps = [ "//chrome/common/safe_browsing:proto", "//third_party/protobuf:py_proto", ] # A directory, since we can't derive the actual file names here. outputs = [ output_dir, ] args = [ "-w", "-a", "-i", rebase_path(input_filename, root_build_dir), "-d", rebase_path(output_dir, root_build_dir), "-o", output_basename, "-p", rebase_path(python_path_root, root_build_dir), "-p", rebase_path(python_path_safe_browsing, root_build_dir), ] }