| # 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/jumbo.gni") |
| import("//device/vr/buildflags/buildflags.gni") |
| import("//media/media_options.gni") |
| |
| jumbo_source_set("utility") { |
| # Only the public target should depend on this. All other targets (even |
| # internal content ones other than test) should depend on the public one. |
| visibility = [ |
| ":for_content_tests", |
| "//content/app:*", |
| "//content/public/utility:utility_sources", |
| ] |
| |
| sources = [ |
| "browser_exposed_utility_interfaces.cc", |
| "browser_exposed_utility_interfaces.h", |
| "in_process_utility_thread.cc", |
| "in_process_utility_thread.h", |
| "services.cc", |
| "services.h", |
| "utility_blink_platform_with_sandbox_support_impl.cc", |
| "utility_blink_platform_with_sandbox_support_impl.h", |
| "utility_main.cc", |
| "utility_service_factory.cc", |
| "utility_service_factory.h", |
| "utility_thread_impl.cc", |
| "utility_thread_impl.h", |
| ] |
| |
| configs += [ "//content:content_implementation" ] |
| |
| deps = [ |
| "//base", |
| "//components/services/storage", |
| "//components/services/storage/public/mojom", |
| "//content:export", |
| "//content/child", |
| "//content/public/child:child_sources", |
| "//content/public/common:common_sources", |
| "//device/vr/buildflags", |
| "//media:media_buildflags", |
| "//mojo/public/cpp/bindings", |
| "//net", |
| "//sandbox", |
| "//services/audio", |
| "//services/data_decoder:lib", |
| "//services/data_decoder/public/cpp", |
| "//services/network:network_service", |
| "//services/service_manager", |
| "//services/service_manager/public/cpp", |
| "//services/service_manager/public/mojom", |
| "//services/shape_detection:lib", |
| "//services/shape_detection/public/mojom", |
| "//services/tracing:lib", |
| "//services/tracing/public/mojom", |
| "//services/video_capture:lib", |
| "//services/video_capture/public/mojom:constants", |
| "//third_party/blink/public:blink_headers", |
| "//url", |
| ] |
| |
| # When pepper CDMs are supported, we also support running the CDM in the |
| # utility process using mojo MediaService. |
| if (enable_library_cdms) { |
| deps += [ |
| "//media", |
| "//media/mojo:buildflags", |
| "//media/mojo/services", |
| ] |
| } |
| |
| if (is_chromeos) { |
| deps += [ |
| "//chromeos/services/ime:sandbox_hook", |
| "//chromeos/services/tts:sandbox_hook", |
| ] |
| } |
| |
| # PAC execution is done in process on Android. |
| if (!is_android) { |
| deps += [ "//services/proxy_resolver:lib" ] |
| } |
| |
| if (is_linux) { |
| deps += [ "//content/utility/speech:speech_recognition_sandbox_hook" ] |
| } |
| |
| if (enable_vr && !is_android) { |
| deps += [ |
| "//content/services/isolated_xr_device:lib", |
| "//device/vr/public/mojom", |
| ] |
| } |
| } |
| |
| # See comment at the top of //content/BUILD.gn for how this works. |
| group("for_content_tests") { |
| visibility = [ "//content/test/*" ] |
| if (!is_component_build) { |
| public_deps = [ ":utility" ] |
| } |
| } |