Roll src/third_party/WebKit 5376503:96de67d (svn 199879:199889)
[chromium-blink-merge.git] / ui / resources / BUILD.gn
blob13ccb8604bd4682b2ef9e84c42d69795a61b87ab
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.
5 import("//tools/grit/grit_rule.gni")
6 import("//tools/grit/repack.gni")
8 # GYP version: ui/resources/ui_resources.gyp:ui_resources
9 group("resources") {
10   deps = [
11     ":ui_resources_grd",
12     ":ui_unscaled_resources_grd",
13     ":webui_resources_grd",
14   ]
17 grit("ui_resources_grd") {
18   source = "ui_resources.grd"
19   outputs = [
20     "grit/ui_resources.h",
21     "grit/ui_resources_map.cc",
22     "grit/ui_resources_map.h",
23     "ui_resources_100_percent.pak",
24     "ui_resources_200_percent.pak",
25     "ui_resources_300_percent.pak",
26   ]
29 grit("ui_unscaled_resources_grd") {
30   source = "ui_unscaled_resources.grd"
31   use_qualified_include = true
32   outputs = [
33     "grit/ui_unscaled_resources.h",
34     "ui_unscaled_resources.rc",
35   ]
38 grit("webui_resources_grd") {
39   source = "../webui/resources/webui_resources.grd"
40   outputs = [
41     "grit/webui_resources.h",
42     "grit/webui_resources_map.cc",
43     "grit/webui_resources_map.h",
44     "webui_resources.pak",
45   ]
48 if (!is_mac) {
49   copy("copy_ui_resources_100_percent") {
50     sources = [
51       "$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
52     ]
53     outputs = [
54       "$root_out_dir/ui_resources_100_percent.pak",
55     ]
56     deps = [
57       "//ui/resources",
58     ]
59   }
62 # On iOS and Mac the string resources need to go into a locale subfolder, which
63 # introduces an extra dependency.
65 # GYP version: ui/resources/ui_resources.gyp:ui_test_pak
66 #              (copy_ui_test_pak action)
67 if (is_ios || is_mac) {
68   group("ui_test_pak") {
69     public_deps = [
70       ":repack_ui_test_pak",
71       ":repack_ui_test_mac_locale_pack",
72     ]
73   }
74 } else {
75   copy("ui_test_pak") {
76     sources = [
77       "$root_out_dir/ui_test.pak",
78     ]
79     outputs = [
80       "$root_out_dir/ui/en-US.pak",
81     ]
82     public_deps = [
83       ":repack_ui_test_pak",
84     ]
85   }
88 # GYP version: ui/resources/ui_resources.gyp:ui_test_pak
89 repack("repack_ui_test_pak") {
90   # Depend on ui_test_pak instead of this one.
91   visibility = [ ":ui_test_pak" ]
93   sources = [
94     "$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
95     "$root_gen_dir/ui/resources/webui_resources.pak",
96     "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak",
97     "$root_gen_dir/ui/strings/ui_strings_en-US.pak",
98   ]
100   if (is_chromeos) {
101     sources += [
102       "$root_gen_dir/ui/chromeos/resources/ui_chromeos_resources_100_percent.pak",
103       "$root_gen_dir/ui/chromeos/strings/ui_chromeos_strings_en-US.pak",
104     ]
105   }
107   output = "$root_out_dir/ui_test.pak"
109   deps = [
110     "//ui/resources",
111     "//ui/strings",
112   ]
114   if (!is_mac) {
115     deps += [ ":copy_ui_resources_100_percent" ]
116   }
118   if (is_chromeos) {
119     deps += [
120       "//ui/chromeos/resources",
121       "//ui/chromeos/strings",
122     ]
123   }
125   if (toolkit_views) {
126     deps += [ "//ui/views/resources" ]
127     sources +=
128         [ "$root_gen_dir/ui/views/resources/views_resources_100_percent.pak" ]
129   }
132 # Repack just the strings for the framework locales on Mac and iOS. This
133 # emulates repack_locales.py, but just for en-US. Note ui_test.pak is not simply
134 # copied, because it causes leaks from allocations within system libraries when
135 # trying to load non-string resources. http://crbug.com/413034.
136 repack("repack_ui_test_mac_locale_pack") {
137   visibility = [
138     ":ui_test_pak",
139     "//:gn_visibility",  # TODO(GYP): this shouldn't be necessary.
140   ]
142   sources = [
143     "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak",
144     "$root_gen_dir/ui/strings/ui_strings_en-US.pak",
145   ]
147   output = "$root_out_dir/ui/en.lproj/locale.pak"
149   deps = [
150     "//ui/strings",
151   ]