| # 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/split_static_library.gni") |
| import("//build/config/chromecast_build.gni") |
| import("//third_party/blink/renderer/bindings/bindings.gni") |
| import("//third_party/blink/renderer/bindings/modules/v8/generated.gni") |
| import("//third_party/blink/renderer/bindings/modules/v8/v8.gni") |
| import("//third_party/blink/renderer/build/scripts/scripts.gni") |
| import("//third_party/blink/renderer/modules/modules.gni") |
| import("//third_party/blink/renderer/modules/modules_idl_files.gni") |
| |
| visibility = [ "//third_party/blink/renderer/*" ] |
| |
| if (!is_component_build && is_win) { |
| # This target as a static library (for non-component builds) is >2GB for |
| # official builds and some goma builds on Windows. This causes linking to |
| # fail. As a workaround, force using a split static library for these |
| # configurations. |
| modules_target_type = "split_static_library" |
| } else { |
| modules_target_type = "component" |
| } |
| |
| config("modules_implementation") { |
| defines = [ "BLINK_MODULES_IMPLEMENTATION=1" ] |
| |
| if (is_chromecast) { |
| defines += [ |
| "BLINK_MSLOG=LOG(INFO)", |
| "BLINK_SBLOG=LOG(INFO)", |
| ] |
| } |
| } |
| |
| make_names("module_names") { |
| in_files = [ "indexeddb/indexed_db_names.json5" ] |
| output_dir = blink_modules_output_dir |
| deps = [] # Don't use default deps (otherwise it will be circular). |
| } |
| |
| target("jumbo_" + modules_target_type, "modules") { |
| output_name = "blink_modules" |
| |
| if (modules_target_type == "split_static_library") { |
| split_count = 5 |
| } |
| |
| visibility = [] # Allow re-assignment of list. |
| visibility = [ "//third_party/blink/*" ] |
| |
| sources = [ |
| "event_modules.h", |
| "event_modules_factory.h", |
| "event_target_modules.h", |
| "modules_export.h", |
| "modules_initializer.cc", |
| "modules_initializer.h", |
| ] |
| |
| # Compile sources generated by module_names script. |
| sources += get_target_outputs(":module_names") |
| |
| sources += bindings_modules_v8_files |
| sources += rebase_path( |
| [ bindings_generated_v8_context_snapshot_external_references_file ], |
| ".", |
| "//") |
| |
| configs += [ |
| ":modules_implementation", |
| |
| # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
| "//build/config/compiler:no_size_t_to_int_warning", |
| "//third_party/blink/renderer:config", |
| "//third_party/blink/renderer:non_test_config", |
| "//third_party/blink/renderer:inside_blink", |
| "//third_party/blink/renderer/core:blink_core_pch", |
| "//tools/v8_context_snapshot:use_v8_context_snapshot", |
| ] |
| |
| deps = [ |
| ":make_modules_generated", |
| ":module_names", |
| "//third_party/blink/renderer/bindings/modules:generated", |
| "//third_party/blink/renderer/bindings/modules/v8:bindings_modules_impl", |
| "//third_party/blink/renderer/bindings/modules/v8:bindings_modules_origin_trial_features", |
| "//third_party/blink/renderer/core", |
| "//third_party/blink/renderer/modules/accessibility", |
| "//third_party/blink/renderer/modules/animationworklet", |
| "//third_party/blink/renderer/modules/app_banner", |
| "//third_party/blink/renderer/modules/audio_output_devices", |
| "//third_party/blink/renderer/modules/background_fetch", |
| "//third_party/blink/renderer/modules/background_sync", |
| "//third_party/blink/renderer/modules/battery", |
| "//third_party/blink/renderer/modules/beacon", |
| "//third_party/blink/renderer/modules/bluetooth", |
| "//third_party/blink/renderer/modules/broadcastchannel", |
| "//third_party/blink/renderer/modules/cache_storage", |
| "//third_party/blink/renderer/modules/canvas", |
| "//third_party/blink/renderer/modules/clipboard", |
| "//third_party/blink/renderer/modules/cookie_store", |
| "//third_party/blink/renderer/modules/credentialmanager", |
| "//third_party/blink/renderer/modules/crypto", |
| "//third_party/blink/renderer/modules/csspaint", |
| "//third_party/blink/renderer/modules/device_orientation", |
| "//third_party/blink/renderer/modules/document_metadata", |
| "//third_party/blink/renderer/modules/donottrack", |
| "//third_party/blink/renderer/modules/encoding", |
| "//third_party/blink/renderer/modules/encryptedmedia", |
| "//third_party/blink/renderer/modules/eventsource", |
| "//third_party/blink/renderer/modules/exported", |
| "//third_party/blink/renderer/modules/filesystem", |
| "//third_party/blink/renderer/modules/gamepad", |
| "//third_party/blink/renderer/modules/geolocation", |
| "//third_party/blink/renderer/modules/imagecapture", |
| "//third_party/blink/renderer/modules/indexeddb", |
| "//third_party/blink/renderer/modules/installation", |
| "//third_party/blink/renderer/modules/installedapp", |
| "//third_party/blink/renderer/modules/keyboard", |
| "//third_party/blink/renderer/modules/locks", |
| "//third_party/blink/renderer/modules/manifest", |
| "//third_party/blink/renderer/modules/media_capabilities", |
| "//third_party/blink/renderer/modules/media_controls", |
| "//third_party/blink/renderer/modules/mediacapturefromelement", |
| "//third_party/blink/renderer/modules/mediarecorder", |
| "//third_party/blink/renderer/modules/mediasession", |
| "//third_party/blink/renderer/modules/mediasource", |
| "//third_party/blink/renderer/modules/mediastream", |
| "//third_party/blink/renderer/modules/navigatorcontentutils", |
| "//third_party/blink/renderer/modules/netinfo", |
| "//third_party/blink/renderer/modules/nfc", |
| "//third_party/blink/renderer/modules/notifications", |
| "//third_party/blink/renderer/modules/payments", |
| "//third_party/blink/renderer/modules/peerconnection", |
| "//third_party/blink/renderer/modules/permissions", |
| "//third_party/blink/renderer/modules/picture_in_picture", |
| "//third_party/blink/renderer/modules/plugins", |
| "//third_party/blink/renderer/modules/presentation", |
| "//third_party/blink/renderer/modules/push_messaging", |
| "//third_party/blink/renderer/modules/quota", |
| "//third_party/blink/renderer/modules/remoteplayback", |
| "//third_party/blink/renderer/modules/screen_orientation", |
| "//third_party/blink/renderer/modules/sensor", |
| "//third_party/blink/renderer/modules/service_worker", |
| "//third_party/blink/renderer/modules/shapedetection", |
| "//third_party/blink/renderer/modules/speech", |
| "//third_party/blink/renderer/modules/srcobject", |
| "//third_party/blink/renderer/modules/storage", |
| "//third_party/blink/renderer/modules/time_zone_monitor", |
| "//third_party/blink/renderer/modules/vibration", |
| "//third_party/blink/renderer/modules/vr", |
| "//third_party/blink/renderer/modules/wake_lock", |
| "//third_party/blink/renderer/modules/webaudio", |
| "//third_party/blink/renderer/modules/webdatabase", |
| "//third_party/blink/renderer/modules/webgl", |
| "//third_party/blink/renderer/modules/webgpu", |
| "//third_party/blink/renderer/modules/webmidi", |
| "//third_party/blink/renderer/modules/webshare", |
| "//third_party/blink/renderer/modules/websockets", |
| "//third_party/blink/renderer/modules/webusb", |
| "//third_party/blink/renderer/modules/xr", |
| "//third_party/icu", |
| "//third_party/webrtc/pc:libjingle_peerconnection", |
| "//third_party/webrtc_overrides:init_webrtc", |
| "//third_party/zlib", |
| ] |
| |
| if (is_win) { |
| cflags = [ "/wd4334" ] # Result of 32-bit shift implicitly converted to 64 bits. |
| } |
| |
| configs -= [ "//build/config/compiler:default_symbols" ] |
| configs += blink_symbols_config |
| } |
| |
| jumbo_source_set("modules_testing") { |
| sources = [ |
| "$bindings_modules_v8_output_dir/v8_internals_partial.cc", |
| "$bindings_modules_v8_output_dir/v8_internals_partial.h", |
| "accessibility/testing/internals_accessibility.cc", |
| "accessibility/testing/internals_accessibility.h", |
| "mediastream/testing/internals_media_stream.cc", |
| "mediastream/testing/internals_media_stream.h", |
| "navigatorcontentutils/testing/internals_navigator_content_utils.cc", |
| "navigatorcontentutils/testing/internals_navigator_content_utils.h", |
| "navigatorcontentutils/testing/navigator_content_utils_client_mock.cc", |
| "navigatorcontentutils/testing/navigator_content_utils_client_mock.h", |
| "peerconnection/adapters/test/mock_ice_transport_adapter.h", |
| "peerconnection/testing/internals_rtc_certificate.cc", |
| "peerconnection/testing/internals_rtc_certificate.h", |
| "peerconnection/testing/internals_rtc_peer_connection.cc", |
| "peerconnection/testing/internals_rtc_peer_connection.h", |
| "service_worker/testing/internals_service_worker.cc", |
| "service_worker/testing/internals_service_worker.h", |
| "speech/testing/internals_speech_synthesis.cc", |
| "speech/testing/internals_speech_synthesis.h", |
| "speech/testing/platform_speech_synthesizer_mock.cc", |
| "speech/testing/platform_speech_synthesizer_mock.h", |
| "vibration/testing/internals_vibration.cc", |
| "vibration/testing/internals_vibration.h", |
| "webaudio/testing/internals_web_audio.cc", |
| "webaudio/testing/internals_web_audio.h", |
| ] |
| |
| configs += [ |
| "//third_party/blink/renderer:config", |
| "//third_party/blink/renderer:inside_blink", |
| "//third_party/blink/renderer/core:blink_core_pch", |
| ] |
| |
| deps = [ |
| "//third_party/blink/renderer/core", |
| "//third_party/blink/renderer/modules", |
| ] |
| } |
| |
| group("make_modules_generated") { |
| public_deps = [ |
| ":module_names", |
| "//third_party/blink/renderer/bindings/modules:bindings_modules_generated", |
| "//third_party/blink/renderer/core:core_event_interfaces", |
| ] |
| } |
| |
| jumbo_source_set("unit_tests") { |
| testonly = true |
| |
| sources = [ |
| "accessibility/accessibility_object_model_test.cc", |
| "accessibility/ax_object_cache_test.cc", |
| "accessibility/ax_object_test.cc", |
| "accessibility/ax_position_test.cc", |
| "accessibility/ax_range_test.cc", |
| "accessibility/ax_selection_test.cc", |
| "accessibility/testing/accessibility_selection_test.cc", |
| "accessibility/testing/accessibility_selection_test.h", |
| "accessibility/testing/accessibility_test.cc", |
| "accessibility/testing/accessibility_test.h", |
| "animationworklet/animation_worklet_global_scope_test.cc", |
| "animationworklet/animation_worklet_thread_test.cc", |
| "animationworklet/worklet_animation_test.cc", |
| "background_fetch/background_fetch_icon_loader_test.cc", |
| "background_fetch/background_fetch_manager_test.cc", |
| "cache_storage/cache_test.cc", |
| "canvas/canvas2d/canvas_rendering_context_2d_api_test.cc", |
| "canvas/canvas2d/canvas_rendering_context_2d_test.cc", |
| "canvas/htmlcanvas/html_canvas_element_module_test.cc", |
| "canvas/offscreencanvas/offscreen_canvas_test.cc", |
| "credentialmanager/credentials_container_test.cc", |
| "credentialmanager/password_credential_test.cc", |
| "csspaint/paint_rendering_context_2d_test.cc", |
| "csspaint/paint_worklet_test.cc", |
| "device_orientation/device_motion_event_pump_unittest.cc", |
| "device_orientation/device_orientation_event_pump_unittest.cc", |
| "document_metadata/copyless_paste_extractor_test.cc", |
| "eventsource/event_source_parser_test.cc", |
| "filesystem/dom_file_system_base_test.cc", |
| "filesystem/file_writer_test.cc", |
| "indexeddb/idb_key_path_test.cc", |
| "indexeddb/idb_request_test.cc", |
| "indexeddb/idb_test_helper.cc", |
| "indexeddb/idb_transaction_test.cc", |
| "indexeddb/idb_value_wrapping_test.cc", |
| "indexeddb/mock_web_idb_database.cc", |
| "indexeddb/mock_web_idb_database.h", |
| "manifest/image_resource_type_converters_test.cc", |
| "media_controls/elements/media_control_animated_arrow_container_element_test.cc", |
| "media_controls/elements/media_control_display_cutout_fullscreen_button_element_test.cc", |
| "media_controls/elements/media_control_input_element_test.cc", |
| "media_controls/elements/media_control_loading_panel_element_test.cc", |
| "media_controls/elements/media_control_panel_element_test.cc", |
| "media_controls/elements/media_control_scrubbing_message_element_test.cc", |
| "media_controls/elements/media_control_timeline_element_test.cc", |
| "media_controls/elements/media_control_toggle_closed_captions_button_element_test.cc", |
| "media_controls/media_controls_display_cutout_delegate_test.cc", |
| "media_controls/media_controls_impl_test.cc", |
| "media_controls/media_controls_orientation_lock_delegate_test.cc", |
| "media_controls/media_controls_rotate_to_fullscreen_delegate_test.cc", |
| "mediastream/media_constraints_test.cc", |
| "mediastream/media_devices_test.cc", |
| "notifications/notification_data_test.cc", |
| "notifications/notification_image_loader_test.cc", |
| "notifications/notification_resources_loader_test.cc", |
| "payments/abort_test.cc", |
| "payments/can_make_payment_test.cc", |
| "payments/complete_test.cc", |
| "payments/on_payment_response_test.cc", |
| "payments/payment_address_test.cc", |
| "payments/payment_event_data_conversion_test.cc", |
| "payments/payment_request_details_test.cc", |
| "payments/payment_request_test.cc", |
| "payments/payment_request_update_event_test.cc", |
| "payments/payment_response_test.cc", |
| "payments/payment_test_helper.cc", |
| "payments/payment_test_helper.h", |
| "payments/payments_validators_test.cc", |
| "peerconnection/rtc_data_channel_test.cc", |
| "peerconnection/rtc_ice_transport_test.cc", |
| "peerconnection/rtc_peer_connection_test.cc", |
| "picture_in_picture/html_video_element_picture_in_picture_test.cc", |
| "presentation/mock_presentation_service.h", |
| "presentation/presentation_availability_state_test.cc", |
| "presentation/presentation_availability_test.cc", |
| "presentation/presentation_receiver_test.cc", |
| "presentation/presentation_request_test.cc", |
| "push_messaging/push_manager_test.cc", |
| "push_messaging/push_message_data_test.cc", |
| "push_messaging/push_subscription_test.cc", |
| "remoteplayback/remote_playback_test.cc", |
| "screen_orientation/screen_orientation_controller_impl_test.cc", |
| "service_worker/service_worker_container_test.cc", |
| "service_worker/service_worker_installed_scripts_manager_test.cc", |
| "service_worker/thread_safe_script_container_test.cc", |
| "service_worker/web_embedded_worker_impl_test.cc", |
| "wake_lock/screen_wake_lock_test.cc", |
| "webaudio/audio_basic_processor_handler_test.cc", |
| "webaudio/audio_context_autoplay_test.cc", |
| "webaudio/audio_context_test.cc", |
| "webaudio/audio_worklet_global_scope_test.cc", |
| "webaudio/audio_worklet_thread_test.cc", |
| "webaudio/convolver_node_test.cc", |
| "webaudio/dynamics_compressor_node_test.cc", |
| "webaudio/script_processor_node_test.cc", |
| "webaudio/stereo_panner_node_test.cc", |
| "webdatabase/quota_tracker_test.cc", |
| "websockets/dom_websocket_test.cc", |
| "websockets/websocket_channel_impl_test.cc", |
| ] |
| |
| configs += [ |
| "//third_party/blink/renderer:config", |
| "//third_party/blink/renderer:inside_blink", |
| "//third_party/blink/renderer/core:blink_core_pch", |
| ] |
| |
| deps = [ |
| ":modules", |
| ":modules_testing", |
| "//services/device/public/cpp/test:test_support", |
| "//services/viz/public/interfaces:interfaces_blink", |
| "//skia", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/blink/public:media_devices_mojo_bindings_blink", |
| "//third_party/blink/renderer/core", |
| "//third_party/blink/renderer/modules/storage:unit_tests", |
| "//third_party/blink/renderer/platform", |
| "//third_party/blink/renderer/platform/wtf", |
| "//v8", |
| ] |
| } |