| # Copyright 2014 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. |
| |
| import("//build/config/ui.gni") |
| import("//chrome/common/features.gni") |
| import("//ppapi/features/features.gni") |
| import("//printing/features/features.gni") |
| import("//services/catalog/public/tools/catalog.gni") |
| import("//services/service_manager/public/service_manifest.gni") |
| import("//tools/grit/grit_rule.gni") |
| |
| # This target is for dependency tracking for the command ID header. |
| source_set("command_ids") { |
| sources = [ |
| "chrome_command_ids.h", |
| ] |
| } |
| |
| # Shared by //chrome/browser and //chrome/app/mash. Not in //chrome/common |
| # because it isn't shared with processes like renderer, utility, etc. |
| source_set("shutdown_signal_handlers") { |
| sources = [ |
| "shutdown_signal_handlers_posix.cc", |
| "shutdown_signal_handlers_posix.h", |
| ] |
| deps = [ |
| "//base", |
| ] |
| } |
| |
| # On Windows, links chrome_dll.rc. On other platforms, does nothing so you can |
| # unconditionally depend on it. |
| source_set("chrome_dll_resources") { |
| # This source is added unconditionally for include checking on non-Windows |
| # platforms. |
| sources = [ |
| "chrome_dll_resource.h", |
| ] |
| if (is_win) { |
| sources += [ "chrome_dll.rc" ] |
| if (enable_basic_printing) { |
| # The resource compiler can only handle macro functions up to 31 chars |
| # which the buildflag system produces for this. Make a define so we can |
| # toggle off of the enable-basic-printing flag in the .rc file. |
| defines = [ "ENABLE_BASIC_PRINTING_FOR_RC" ] |
| } |
| deps = [ |
| "//printing/features", |
| ] |
| } |
| } |
| |
| if (is_android) { |
| import("//build/config/android/rules.gni") |
| android_generated_java_resources = [ |
| "java/res/values-am/generated_resources.xml", |
| "java/res/values-ar/generated_resources.xml", |
| "java/res/values-bg/generated_resources.xml", |
| "java/res/values-ca/generated_resources.xml", |
| "java/res/values-cs/generated_resources.xml", |
| "java/res/values-da/generated_resources.xml", |
| "java/res/values-de/generated_resources.xml", |
| "java/res/values-el/generated_resources.xml", |
| "java/res/values-en-rGB/generated_resources.xml", |
| "java/res/values-es-rUS/generated_resources.xml", |
| "java/res/values-es/generated_resources.xml", |
| "java/res/values-fa/generated_resources.xml", |
| "java/res/values-fi/generated_resources.xml", |
| "java/res/values-fr/generated_resources.xml", |
| "java/res/values-hi/generated_resources.xml", |
| "java/res/values-hr/generated_resources.xml", |
| "java/res/values-hu/generated_resources.xml", |
| "java/res/values-in/generated_resources.xml", |
| "java/res/values-it/generated_resources.xml", |
| "java/res/values-iw/generated_resources.xml", |
| "java/res/values-ja/generated_resources.xml", |
| "java/res/values-ko/generated_resources.xml", |
| "java/res/values-lt/generated_resources.xml", |
| "java/res/values-lv/generated_resources.xml", |
| "java/res/values-nb/generated_resources.xml", |
| "java/res/values-nl/generated_resources.xml", |
| "java/res/values-pl/generated_resources.xml", |
| "java/res/values-pt-rBR/generated_resources.xml", |
| "java/res/values-pt-rPT/generated_resources.xml", |
| "java/res/values-ro/generated_resources.xml", |
| "java/res/values-ru/generated_resources.xml", |
| "java/res/values-sk/generated_resources.xml", |
| "java/res/values-sl/generated_resources.xml", |
| "java/res/values-sr/generated_resources.xml", |
| "java/res/values-sv/generated_resources.xml", |
| "java/res/values-sw/generated_resources.xml", |
| "java/res/values-th/generated_resources.xml", |
| "java/res/values-tl/generated_resources.xml", |
| "java/res/values-tr/generated_resources.xml", |
| "java/res/values-uk/generated_resources.xml", |
| "java/res/values-vi/generated_resources.xml", |
| "java/res/values-zh-rCN/generated_resources.xml", |
| "java/res/values-zh-rTW/generated_resources.xml", |
| "java/res/values/generated_resources.xml", |
| ] |
| } |
| |
| grit("generated_resources") { |
| source = "generated_resources.grd" |
| use_qualified_include = true |
| defines = chrome_grit_defines |
| output_dir = "$root_gen_dir/chrome" |
| outputs = [ |
| "grit/generated_resources.h", |
| "generated_resources_am.pak", |
| "generated_resources_ar.pak", |
| "generated_resources_bg.pak", |
| "generated_resources_bn.pak", |
| "generated_resources_ca.pak", |
| "generated_resources_cs.pak", |
| "generated_resources_da.pak", |
| "generated_resources_de.pak", |
| "generated_resources_el.pak", |
| "generated_resources_en-GB.pak", |
| "generated_resources_en-US.pak", |
| "generated_resources_es.pak", |
| "generated_resources_es-419.pak", |
| "generated_resources_et.pak", |
| "generated_resources_fa.pak", |
| "generated_resources_fake-bidi.pak", |
| "generated_resources_fi.pak", |
| "generated_resources_fil.pak", |
| "generated_resources_fr.pak", |
| "generated_resources_gu.pak", |
| "generated_resources_he.pak", |
| "generated_resources_hi.pak", |
| "generated_resources_hr.pak", |
| "generated_resources_hu.pak", |
| "generated_resources_id.pak", |
| "generated_resources_it.pak", |
| "generated_resources_ja.pak", |
| "generated_resources_kn.pak", |
| "generated_resources_ko.pak", |
| "generated_resources_lt.pak", |
| "generated_resources_lv.pak", |
| "generated_resources_ml.pak", |
| "generated_resources_mr.pak", |
| "generated_resources_ms.pak", |
| "generated_resources_nl.pak", |
| "generated_resources_nb.pak", |
| "generated_resources_pl.pak", |
| "generated_resources_pt-BR.pak", |
| "generated_resources_pt-PT.pak", |
| "generated_resources_ro.pak", |
| "generated_resources_ru.pak", |
| "generated_resources_sk.pak", |
| "generated_resources_sl.pak", |
| "generated_resources_sr.pak", |
| "generated_resources_sv.pak", |
| "generated_resources_sw.pak", |
| "generated_resources_ta.pak", |
| "generated_resources_te.pak", |
| "generated_resources_th.pak", |
| "generated_resources_tr.pak", |
| "generated_resources_uk.pak", |
| "generated_resources_vi.pak", |
| "generated_resources_zh-CN.pak", |
| "generated_resources_zh-TW.pak", |
| ] |
| |
| if (is_android) { |
| outputs += android_generated_java_resources |
| } |
| } |
| |
| if (is_android) { |
| java_strings_grd_prebuilt("java_strings_grd") { |
| grit_output_dir = "$root_gen_dir/chrome/java/res" |
| generated_files = |
| rebase_path(android_generated_java_resources, "java/res", ".") |
| deps = [ |
| ":generated_resources", |
| ] |
| } |
| } |
| |
| grit("google_chrome_strings") { |
| source = "google_chrome_strings.grd" |
| use_qualified_include = true |
| defines = chrome_grit_defines |
| output_dir = "$root_gen_dir/chrome" |
| outputs = [ |
| "grit/google_chrome_strings.h", |
| "google_chrome_strings_am.pak", |
| "google_chrome_strings_ar.pak", |
| "google_chrome_strings_bg.pak", |
| "google_chrome_strings_bn.pak", |
| "google_chrome_strings_ca.pak", |
| "google_chrome_strings_cs.pak", |
| "google_chrome_strings_da.pak", |
| "google_chrome_strings_de.pak", |
| "google_chrome_strings_el.pak", |
| "google_chrome_strings_en-GB.pak", |
| "google_chrome_strings_en-US.pak", |
| "google_chrome_strings_es.pak", |
| "google_chrome_strings_es-419.pak", |
| "google_chrome_strings_et.pak", |
| "google_chrome_strings_fa.pak", |
| "google_chrome_strings_fi.pak", |
| "google_chrome_strings_fil.pak", |
| "google_chrome_strings_fr.pak", |
| "google_chrome_strings_gu.pak", |
| "google_chrome_strings_he.pak", |
| "google_chrome_strings_hi.pak", |
| "google_chrome_strings_hr.pak", |
| "google_chrome_strings_hu.pak", |
| "google_chrome_strings_id.pak", |
| "google_chrome_strings_it.pak", |
| "google_chrome_strings_ja.pak", |
| "google_chrome_strings_kn.pak", |
| "google_chrome_strings_ko.pak", |
| "google_chrome_strings_lt.pak", |
| "google_chrome_strings_lv.pak", |
| "google_chrome_strings_ml.pak", |
| "google_chrome_strings_mr.pak", |
| "google_chrome_strings_ms.pak", |
| "google_chrome_strings_nl.pak", |
| "google_chrome_strings_nb.pak", |
| "google_chrome_strings_pl.pak", |
| "google_chrome_strings_pt-BR.pak", |
| "google_chrome_strings_pt-PT.pak", |
| "google_chrome_strings_ro.pak", |
| "google_chrome_strings_ru.pak", |
| "google_chrome_strings_sk.pak", |
| "google_chrome_strings_sl.pak", |
| "google_chrome_strings_sr.pak", |
| "google_chrome_strings_sv.pak", |
| "google_chrome_strings_sw.pak", |
| "google_chrome_strings_ta.pak", |
| "google_chrome_strings_te.pak", |
| "google_chrome_strings_th.pak", |
| "google_chrome_strings_tr.pak", |
| "google_chrome_strings_uk.pak", |
| "google_chrome_strings_vi.pak", |
| "google_chrome_strings_zh-CN.pak", |
| "google_chrome_strings_zh-TW.pak", |
| "google_chrome_strings_fake-bidi.pak", |
| ] |
| } |
| |
| grit("chromium_strings") { |
| source = "chromium_strings.grd" |
| use_qualified_include = true |
| defines = chrome_grit_defines |
| output_dir = "$root_gen_dir/chrome" |
| outputs = [ |
| "grit/chromium_strings.h", |
| "chromium_strings_am.pak", |
| "chromium_strings_ar.pak", |
| "chromium_strings_bg.pak", |
| "chromium_strings_bn.pak", |
| "chromium_strings_ca.pak", |
| "chromium_strings_cs.pak", |
| "chromium_strings_da.pak", |
| "chromium_strings_de.pak", |
| "chromium_strings_el.pak", |
| "chromium_strings_en-GB.pak", |
| "chromium_strings_en-US.pak", |
| "chromium_strings_es.pak", |
| "chromium_strings_es-419.pak", |
| "chromium_strings_et.pak", |
| "chromium_strings_fa.pak", |
| "chromium_strings_fake-bidi.pak", |
| "chromium_strings_fi.pak", |
| "chromium_strings_fil.pak", |
| "chromium_strings_fr.pak", |
| "chromium_strings_gu.pak", |
| "chromium_strings_he.pak", |
| "chromium_strings_hi.pak", |
| "chromium_strings_hr.pak", |
| "chromium_strings_hu.pak", |
| "chromium_strings_id.pak", |
| "chromium_strings_it.pak", |
| "chromium_strings_ja.pak", |
| "chromium_strings_kn.pak", |
| "chromium_strings_ko.pak", |
| "chromium_strings_lt.pak", |
| "chromium_strings_lv.pak", |
| "chromium_strings_ml.pak", |
| "chromium_strings_mr.pak", |
| "chromium_strings_ms.pak", |
| "chromium_strings_nl.pak", |
| "chromium_strings_nb.pak", |
| "chromium_strings_pl.pak", |
| "chromium_strings_pt-BR.pak", |
| "chromium_strings_pt-PT.pak", |
| "chromium_strings_ro.pak", |
| "chromium_strings_ru.pak", |
| "chromium_strings_sk.pak", |
| "chromium_strings_sl.pak", |
| "chromium_strings_sr.pak", |
| "chromium_strings_sv.pak", |
| "chromium_strings_sw.pak", |
| "chromium_strings_ta.pak", |
| "chromium_strings_te.pak", |
| "chromium_strings_th.pak", |
| "chromium_strings_tr.pak", |
| "chromium_strings_uk.pak", |
| "chromium_strings_vi.pak", |
| "chromium_strings_zh-CN.pak", |
| "chromium_strings_zh-TW.pak", |
| ] |
| } |
| |
| static_library("test_support") { |
| testonly = true |
| visibility = [ "//chrome/test:test_support" ] |
| |
| sources = [ |
| "chrome_main_delegate.cc", |
| "chrome_main_delegate.h", |
| ] |
| |
| deps = [ |
| "//base", |
| "//chrome/browser", |
| "//chrome/browser/policy:path_parser", |
| "//chrome/child", |
| "//chrome/common", |
| "//chrome/gpu", |
| "//chrome/renderer", |
| "//chrome/utility", |
| "//components/crash/content/app", |
| "//components/crash/content/app:lib", |
| "//components/startup_metric_utils/browser:lib", |
| "//content/public/app:both", |
| "//content/public/common", |
| "//pdf", |
| "//ppapi/features", |
| "//printing/features", |
| "//ui/base", |
| ] |
| |
| if (is_mac) { |
| sources += [ "chrome_main_mac.mm" ] |
| |
| deps += [ "//chrome:chrome_framework" ] |
| } |
| |
| if (is_win) { |
| deps += [ |
| "//chrome:chrome_initial", |
| "//chrome/install_static:install_static_util", |
| "//sandbox/win:sandbox", |
| ] |
| } |
| |
| if (is_chromeos) { |
| deps += [ |
| "//chrome/browser/chromeos", |
| "//components/metrics/leak_detector:leak_detector", |
| ] |
| } |
| |
| if (enable_plugins && enable_nacl) { |
| deps += [ |
| "//components/nacl/browser", |
| "//components/nacl/renderer/plugin:nacl_trusted_plugin", |
| ] |
| } |
| } |
| |
| chrome_packaged_services = [ |
| ":chrome_manifest", |
| "//chrome/browser:preferences_manifest", |
| "//services/image_decoder:manifest", |
| ] |
| |
| service_manifest("chrome_manifest") { |
| source = "chrome_manifest.json" |
| } |
| |
| service_manifest("chrome_content_packaged_services_manifest_overlay_for_mash") { |
| source = |
| "//chrome/browser/chrome_content_packaged_services_manifest_overlay.json" |
| packaged_services = chrome_packaged_services |
| } |
| |
| service_manifest("chrome_content_packaged_services_manifest_overlay") { |
| source = |
| "//chrome/browser/chrome_content_packaged_services_manifest_overlay.json" |
| packaged_services = chrome_packaged_services |
| if (is_chromeos) { |
| packaged_services += [ "//ash/mus:manifest" ] |
| } |
| } |
| |
| service_manifest("chrome_content_browser_manifest_overlay") { |
| source = "//chrome/browser/chrome_content_browser_manifest_overlay.json" |
| } |
| |
| service_manifest("chrome_content_gpu_manifest_overlay") { |
| source = "//chrome/browser/chrome_content_gpu_manifest_overlay.json" |
| } |
| |
| service_manifest("chrome_content_plugin_manifest_overlay") { |
| source = "//chrome/browser/chrome_content_plugin_manifest_overlay.json" |
| } |
| |
| service_manifest("chrome_content_renderer_manifest_overlay") { |
| source = "//chrome/browser/chrome_content_renderer_manifest_overlay.json" |
| } |
| |
| service_manifest("chrome_content_utility_manifest_overlay") { |
| source = "//chrome/browser/chrome_content_utility_manifest_overlay.json" |
| } |
| |
| group("chrome_content_manifest_overlays") { |
| deps = [ |
| ":chrome_content_browser_manifest_overlay", |
| ":chrome_content_gpu_manifest_overlay", |
| ":chrome_content_packaged_services_manifest_overlay", |
| ":chrome_content_plugin_manifest_overlay", |
| ":chrome_content_renderer_manifest_overlay", |
| ":chrome_content_utility_manifest_overlay", |
| ] |
| |
| if (enable_package_mash_services) { |
| deps += [ ":chrome_content_packaged_services_manifest_overlay_for_mash" ] |
| } |
| } |
| |
| if (use_aura) { |
| # NOTE: These rules generate compiled versions of the content service |
| # manifests with Chrome's overlays applied. These are only used at run-time, |
| # and only when running Chrome inside the Mash environment. In production |
| # Chrome, the content manifests and Chrome's overlays are baked into browser |
| # resources and merged at runtime. |
| |
| service_manifest("chrome_content_packaged_services_manifest") { |
| source_manifest = "//content/public/app:packaged_services_manifest" |
| overlays = [ ":chrome_content_packaged_services_manifest_overlay" ] |
| } |
| |
| service_manifest("chrome_content_packaged_services_manifest_for_mash") { |
| source_manifest = "//content/public/app:packaged_services_manifest" |
| overlays = [ ":chrome_content_packaged_services_manifest_overlay_for_mash" ] |
| } |
| |
| service_manifest("chrome_content_browser_manifest") { |
| source_manifest = "//content/public/app:browser_manifest" |
| overlays = [ ":chrome_content_browser_manifest_overlay" ] |
| } |
| |
| service_manifest("chrome_content_gpu_manifest") { |
| source_manifest = "//content/public/app:gpu_manifest" |
| overlays = [ ":chrome_content_gpu_manifest_overlay" ] |
| } |
| |
| service_manifest("chrome_content_plugin_manifest") { |
| source_manifest = "//content/public/app:plugin_manifest" |
| overlays = [ ":chrome_content_plugin_manifest_overlay" ] |
| } |
| |
| service_manifest("chrome_content_renderer_manifest") { |
| source_manifest = "//content/public/app:renderer_manifest" |
| overlays = [ ":chrome_content_renderer_manifest_overlay" ] |
| } |
| |
| service_manifest("chrome_content_utility_manifest") { |
| source_manifest = "//content/public/app:utility_manifest" |
| overlays = [ ":chrome_content_utility_manifest_overlay" ] |
| } |
| |
| group("service_manifests") { |
| deps = [ |
| ":chrome_content_browser_manifest", |
| ":chrome_content_gpu_manifest", |
| ":chrome_content_plugin_manifest", |
| ":chrome_content_renderer_manifest", |
| ":chrome_content_utility_manifest", |
| ] |
| |
| if (enable_package_mash_services) { |
| deps += [ ":chrome_content_packaged_services_manifest_for_mash" ] |
| } |
| } |
| |
| chrome_embedded_services = [ |
| ":chrome_content_browser_manifest", |
| ":chrome_content_gpu_manifest", |
| ":chrome_content_plugin_manifest", |
| ":chrome_content_renderer_manifest", |
| ":chrome_content_utility_manifest", |
| ] |
| |
| if (enable_package_mash_services) { |
| catalog("catalog_for_mash") { |
| embedded_services = |
| chrome_embedded_services + |
| [ ":chrome_content_packaged_services_manifest_for_mash" ] |
| } |
| } |
| |
| catalog("catalog") { |
| embedded_services = chrome_embedded_services + |
| [ ":chrome_content_packaged_services_manifest" ] |
| } |
| } |