| # 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/crypto.gni") |
| import("//build/config/features.gni") |
| import("//build/config/ui.gni") |
| |
| assert(enable_extensions) |
| |
| gypi_values = exec_script( |
| "//build/gypi_to_gn.py", |
| [ rebase_path("../../chrome_browser_extensions.gypi") ], |
| "scope", |
| [ "../../chrome_browser_extensions.gypi" ]) |
| |
| # GYP version: chrome/chrome_browser_extensions.gypi:browser_extensions |
| static_library("extensions") { |
| sources = [] |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_enabled_sources, |
| ".", "//chrome") |
| |
| defines = [] |
| |
| # Since browser and browser_extensions actually depend on each other, |
| # we must omit the dependency from browser_extensions to browser. |
| # However, this means browser_extensions and browser should more or less |
| # have the same dependencies. Once browser_extensions is untangled from |
| # browser, then we can clean up these dependencies. |
| public_deps = [ |
| "//chrome/common/extensions/api", |
| "//content/public/browser", |
| ] |
| deps = [ |
| "//chrome:extra_resources", |
| "//chrome:resources", |
| "//chrome:strings", |
| "//chrome/app/resources:platform_locale_settings", |
| "//chrome/app/theme:theme_resources", |
| "//chrome/browser/devtools", |
| "//chrome/browser/history:in_memory_url_index_cache_proto", |
| "//chrome/common", |
| "//chrome/common/extensions/api:api_registration", |
| "//chrome/common/net", |
| "//chrome/common/safe_browsing:proto", |
| "//chrome/installer/util", |
| "//components/copresence", |
| "//components/omaha_query_params", |
| "//components/onc", |
| "//components/proximity_auth", |
| "//components/strings", |
| "//components/url_matcher", |
| "//content/app/resources", |
| "//content/public/common", |
| "//crypto", |
| "//device/bluetooth", |
| "//device/hid", |
| "//extensions/browser", |
| "//extensions/common/api", |
| "//extensions/common/api:api_registration", |
| "//extensions/strings", |
| "//net", |
| "//skia", |
| "//storage/common", |
| "//sync", |
| "//third_party/WebKit/public:resources", |
| "//third_party/cacheinvalidation", |
| "//third_party/icu", |
| "//third_party/leveldatabase", |
| "//third_party/re2", |
| "//third_party/webrtc/modules/desktop_capture", |
| "//ui/accessibility:ax_gen", |
| "//ui/base", |
| "//ui/gfx", |
| "//ui/gfx/geometry", |
| "//ui/resources", |
| "//ui/strings", |
| "//url", |
| "//storage/browser", |
| ] |
| |
| if (is_chromeos) { |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_chromeos_sources, |
| ".", "//chrome") |
| sources -= [ |
| "api/audio/audio_service_linux.cc", |
| "api/music_manager_private/device_id_linux.cc", |
| ] |
| configs += [ "//build/config/linux:dbus" ] |
| deps += [ |
| "//third_party/libevent", |
| "//third_party/protobuf:protobuf_lite", |
| "//chromeos/ime:gencode", |
| ] |
| } else { |
| sources += [ |
| "default_apps.cc", |
| "default_apps.h'" |
| ] |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_non_chromeos_sources, |
| ".", "//chrome") |
| } |
| |
| if (use_ash) { |
| sources += [ |
| "api/tabs/ash_panel_contents.cc", |
| "api/tabs/ash_panel_contents.h", |
| ] |
| } |
| if (use_athena) { |
| defines += [ USE_ATHENA ] |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_athena_sources, |
| ".", "//chrome") |
| } else { |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_non_athena_sources, |
| ".", "//chrome") |
| } |
| |
| if (is_linux) { |
| configs += [ "//build/config/linux:fontconfig" ] |
| deps += [ "//dbus" ] |
| if (use_x11) { |
| configs += [ |
| "//build/config/linux:x11", |
| ] |
| deps += [ |
| "//ui/events:events_base", |
| "//ui/events/platform", |
| "//ui/events/platform/x11", |
| ] |
| } |
| } else { |
| sources += [ |
| "api/audio/audio_service.cc", |
| ] |
| } |
| |
| if (enable_configuration_policy) { |
| deps += [ "//components/policy" ] |
| sources += [ |
| "policy_handlers.cc", |
| "policy_handlers.h", |
| ] |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_policy_sources, |
| ".", "//chrome") |
| } |
| |
| if (enable_webrtc) { |
| sources += [ |
| "api/webrtc_logging_private/webrtc_logging_private_api.cc", |
| ] |
| } else { |
| sources += [ |
| "api/webrtc_logging_private/webrtc_logging_private_api_stub.cc", |
| ] |
| } |
| |
| if (use_brlapi) { |
| deps += [ "//build/config/linux:libbrlapi" ] |
| sources += rebase_path(gypi_values.chrome_browser_extensions_brlapi_sources, |
| ".", "//chrome") |
| } else { |
| sources += [ |
| "api/braille_display_private/braille_controller_stub.cc", |
| ] |
| } |
| |
| if (use_aura) { |
| deps += [ |
| "//ui/keyboard", |
| "//ui/keyboard:resources", |
| ] |
| } |
| |
| # chromeos uses its own global_shortcut_listener, _x11 is not necessary. |
| if (is_chromeos || !use_x11) { |
| sources -= [ |
| "global_shortcut_listener_x11.cc", |
| "global_shortcut_listener_x11.h", |
| ] |
| } |
| |
| if (safe_browsing_mode == 1) { |
| defines += [ "FULL_SAFE_BROWSING" ] |
| } |
| if (safe_browsing_mode == 2) { |
| defines += [ "MOBILE_SAFE_BROWSING" ] |
| } |
| |
| if (is_win || is_mac) { |
| deps += [ "//components/wifi" ] |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_networking_private_sources_winmac, |
| ".", "//chrome") |
| } |
| |
| if (is_desktop_linux) { |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_networking_private_sources_linux, |
| ".", "//chrome") |
| } |
| |
| if (is_win) { |
| deps += [ |
| "//third_party/iaccessible2", |
| "//third_party/isimpledom", |
| ] |
| } else if (!is_chromeos) { |
| sources += [ |
| "display_info_provider_aura.cc", |
| "display_info_provider_aura.h", |
| ] |
| } |
| |
| if (enable_app_list) { |
| sources += rebase_path( |
| gypi_values.chrome_browser_extensions_app_list_sources, |
| ".", "//chrome") |
| } |
| |
| if (is_chromeos && use_ozone) { |
| sources -= [ |
| "global_shortcut_listener_chromeos.cc", |
| ] |
| } |
| if (!use_ozone) { |
| sources -= [ |
| "global_shortcut_listener_ozone.cc", |
| ] |
| } |
| } |