Home | History | Annotate | Download | only in devtools
      1 # Copyright 2014 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 import("//tools/grit/grit_rule.gni")
      6 
      7 # In GYP: devtools_resources target.
      8 group("resources") {
      9   deps = [
     10     ":devtools_resources",
     11     ":devtools_protocol_constants",
     12   ]
     13 }
     14 
     15 # In GYP: devtools_resources action in the devtools_resources target.
     16 action("devtools_resources") {
     17   visibility = ":resources"
     18 
     19   # This can't use grit_rule.gni because the grd file is generated at build
     20   # time, so the trick of using grit_info to get the real inputs/outputs at GYP
     21   # time isn't possible.
     22   script = "//tools/grit/grit.py"
     23 
     24   grdfile = "$root_gen_dir/devtools/devtools_resources.grd"
     25 
     26   source_prereqs = [ grdfile ] +
     27     rebase_path(exec_script("//tools/grit/grit_info.py", [ "--inputs" ],
     28                             "list lines"),
     29                 ".", "//")
     30 
     31   out_dir = "$root_gen_dir/webkit"
     32   outputs = [
     33     "$out_dir/grit/devtools_resources.h",
     34     "$out_dir/devtools_resources.pak",
     35     "$out_dir/grit/devtools_resources_map.cc",
     36     "$out_dir/grit/devtools_resources_map.h",
     37   ]
     38 
     39   args = [
     40     "-i", rebase_path(grdfile, root_build_dir), "build",
     41     "-f", rebase_path("//tools/gritsettings/resource_ids", root_build_dir),
     42     "-o", rebase_path(out_dir, root_build_dir),
     43     "-D", "SHARED_INTERMEDIATE_DIR=" +
     44       rebase_path(root_gen_dir, root_build_dir),
     45   ] + grit_defines
     46 
     47   deps = [
     48     # This is the action that generates out .grd input file.
     49     "//third_party/WebKit/public:blink_generate_devtools_grd",
     50   ]
     51 }
     52 
     53 action("devtools_protocol_constants") {
     54   visibility = ":resources"
     55 
     56   script = "//content/public/browser/devtools_protocol_constants_generator.py"
     57 
     58   blink_protocol = "//third_party/WebKit/Source/devtools/protocol.json"
     59   browser_protocol = "browser_protocol.json"
     60   source_prereqs = [ blink_protocol, browser_protocol ]
     61 
     62   outputs = [
     63     "$target_gen_dir/devtools_protocol_constants.cc",
     64     "$target_gen_dir/devtools_protocol_constants.h",
     65   ]
     66 
     67   args = [ "content" ] + rebase_path(outputs, root_build_dir) + [
     68     rebase_path(blink_protocol, root_build_dir),
     69     rebase_path(browser_protocol, root_build_dir),
     70   ]
     71 }
     72