diff options
Diffstat (limited to 'src/core/configure/BUILD.root.gn.in')
-rw-r--r-- | src/core/configure/BUILD.root.gn.in | 180 |
1 files changed, 146 insertions, 34 deletions
diff --git a/src/core/configure/BUILD.root.gn.in b/src/core/configure/BUILD.root.gn.in index bf0454863..0e913f1d4 100644 --- a/src/core/configure/BUILD.root.gn.in +++ b/src/core/configure/BUILD.root.gn.in @@ -11,6 +11,7 @@ import("//build/config/locales.gni") import("//chrome/chrome_repack_locales.gni") import("//extensions/buildflags/buildflags.gni") import("//ui/ozone/ozone.gni") +import("//tools/v8_context_snapshot/v8_context_snapshot.gni") # Workaround for cmake configure_file command. Words wrapped with @ characters are # handled as variables in this file. @@ -33,7 +34,7 @@ if (moc_source_h_files != []) { script = "@WEBENGINE_ROOT_SOURCE_DIR@/tools/scripts/gn_run_binary.py" sources = moc_source_h_files outputs = [ "${target_gen_dir}/.moc/moc_{{source_name_part}}.cpp" ] - inputs = [ "@WEBENGINE_ROOT_SOURCE_DIR@/CMakeLists.txt" ] + inputs = [ "@WEBENGINE_ROOT_SOURCE_DIR@/src/core/CMakeLists.txt" ] args = [ @GN_ARGS_MOC_BIN@, @GN_ARGS_DEFINES@, @@ -80,26 +81,28 @@ config("QtWebEngineCore_config") { declare_args() { use_embedded_config = false + enable_webenginedriver = true } config("embedded_config") { defines = [ "QTWEBENGINE_EMBEDDED_SWITCHES=1" ] } -config("cpp17_config") { - # static initialized constexpr expressions must be compiled always as c++14 or always as c++17 - # and our qtwebengine core sources use them as c++17 +config("cpp20_config") { + # Chromium is built with C++20 if (is_win) { - cflags_cc = [ "/std:c++17" ] + cflags_cc = [ "/std:c++20" ] + } else if(is_gcc) { + cflags_cc = [ "-std=gnu++20" ] } else { - cflags_cc = [ "-std=c++17" ] + cflags_cc = [ "-std=c++20" ] } } shared_library("QtWebEngineCore") { - rsp_types = [ "objects", "archives", "libs" ] + rsp_types = [ "objects", "archives", "libs", "ldir"] configs += [ - ":cpp17_config", + ":cpp20_config", ":QtWebEngineCore_config", "//build/config:precompiled_headers" ] @@ -109,7 +112,8 @@ shared_library("QtWebEngineCore") { "//third_party/boringssl/src/include", "//third_party/skia/include/core" ] - defines = [ "CHROMIUM_VERSION=\"" + chromium_version[0] + "\"" ] + data_deps = [] + defines = [ "CHROMIUM_VERSION=" + chromium_version[0] ] deps = [ "//base", "//components/autofill/content/browser", @@ -117,11 +121,13 @@ shared_library("QtWebEngineCore") { "//components/autofill/core/browser", "//components/autofill/core/browser:buildflags", "//components/cdm/renderer", + "//components/embedder_support/origin_trials", "//components/error_page/common", "//components/favicon/content", "//components/gcm_driver", "//components/history/content/browser", "//components/keyed_service/content", + "//components/lens:buildflags", "//components/navigation_interception", "//components/network_hints/browser", "//components/network_hints/common:mojo_bindings", @@ -132,6 +138,7 @@ shared_library("QtWebEngineCore") { "//components/web_cache/browser", "//components/web_cache/renderer", "//components/spellcheck:buildflags", + "//components/supervised_user/core/common:buildflags", "//components/profile_metrics", "//components/proxy_config", "//components/user_prefs", @@ -164,12 +171,16 @@ shared_library("QtWebEngineCore") { if (is_win) { configs += [ "//build/config/compiler:rtti" ] - data_deps = [ ":QtWebEngineCoreSandbox" ] + data_deps += [ ":QtWebEngineCoreSandbox" ] } if (use_embedded_config) { configs += [ ":embedded_config" ] } + if (is_apple) { + configs -= [ "//build/config/compiler:enable_arc" ] + } + sources = [ @GN_HEADERS@, @GN_SOURCES@ @@ -185,6 +196,11 @@ shared_library("QtWebEngineCore") { ":generate_cpp_mocs", ] } + if (use_v8_context_snapshot) { + data_deps += [ + "//tools/v8_context_snapshot:v8_context_snapshot" + ] + } } source_set("qtwebengine_spellcheck_sources") { @@ -193,6 +209,8 @@ source_set("qtwebengine_spellcheck_sources") { sources = [ "//chrome/browser/spellchecker/spell_check_host_chrome_impl.cc", "//chrome/browser/spellchecker/spell_check_host_chrome_impl.h", + "//chrome/browser/spellchecker/spell_check_initialization_host_impl.cc", + "//chrome/browser/spellchecker/spell_check_initialization_host_impl.h", "//chrome/browser/spellchecker/spellcheck_custom_dictionary.cc", "//chrome/browser/spellchecker/spellcheck_custom_dictionary.h", "//chrome/browser/spellchecker/spellcheck_factory.cc", @@ -216,16 +234,45 @@ source_set("qtwebengine_spellcheck_sources") { } } +source_set("devtools_sources") { + configs += [ ":cpp20_config" ] + deps = [ + "//chrome/app:generated_resources", + "//components/zoom", + "//third_party/blink/public/mojom:mojom_platform", + ] + sources = [ + "//chrome/browser/devtools/devtools_eye_dropper.cc", + "//chrome/browser/devtools/devtools_eye_dropper.h", + "//chrome/browser/devtools/devtools_file_helper.cc", + "//chrome/browser/devtools/devtools_file_helper.h", + "//chrome/browser/devtools/devtools_file_system_indexer.cc", + "//chrome/browser/devtools/devtools_file_system_indexer.h", + "//chrome/browser/devtools/devtools_file_watcher.cc", + "//chrome/browser/devtools/devtools_file_watcher.h", + "//chrome/browser/devtools/url_constants.cc", + "//chrome/browser/devtools/url_constants.h", + "//chrome/browser/devtools/devtools_ui_bindings.cc", + "//chrome/browser/devtools/devtools_ui_bindings.h", + "//chrome/browser/devtools/devtools_settings.cc", + "//chrome/browser/devtools/devtools_settings.h", + "//chrome/browser/devtools/devtools_embedder_message_dispatcher.cc", + "//chrome/browser/devtools/devtools_embedder_message_dispatcher.h", + ] +} + source_set("qtwebengine_sources") { configs += [ - ":cpp17_config", + ":cpp20_config", "//skia:skia_config", "//third_party/boringssl:external_config", ] deps = [ + ":devtools_sources", "//build:branding_buildflags", "//build/config/chromebox_for_meetings:buildflags", "//chrome/browser:dev_ui_browser_resources_grit", + "//chrome/browser/resources/accessibility:resources", "//chrome/browser/resources/net_internals:resources", "//chrome/browser/signin:identity_manager_provider", "//chrome/common:buildflags", @@ -234,7 +281,9 @@ source_set("qtwebengine_sources") { "//components/embedder_support:embedder_support", "//components/nacl/common:buildflags", "//components/performance_manager", + "//components/permissions:permissions_common", "//components/plugins/renderer/", + "//components/compose:buildflags", "//content/browser/resources/quota:resources", "//extensions/buildflags:buildflags", "//pdf:buildflags", @@ -246,19 +295,22 @@ source_set("qtwebengine_sources") { sources = [ "//chrome/browser/accessibility/accessibility_ui.cc", "//chrome/browser/accessibility/accessibility_ui.h", - "//chrome/browser/devtools/devtools_eye_dropper.cc", - "//chrome/browser/devtools/devtools_eye_dropper.h", - "//chrome/browser/devtools/devtools_file_helper.cc", - "//chrome/browser/devtools/devtools_file_helper.h", - "//chrome/browser/devtools/devtools_file_watcher.cc", - "//chrome/browser/devtools/devtools_file_watcher.h", "//chrome/browser/gcm/gcm_product_util.cc", "//chrome/browser/gcm/gcm_product_util.h", "//chrome/browser/gcm/gcm_profile_service_factory.cc", "//chrome/browser/gcm/gcm_profile_service_factory.h", "//chrome/browser/gcm/instance_id/instance_id_profile_service_factory.cc", "//chrome/browser/gcm/instance_id/instance_id_profile_service_factory.h", + "//chrome/browser/media/webrtc/desktop_capturer_wrapper.cc", + "//chrome/browser/media/webrtc/desktop_capturer_wrapper.h", + "//chrome/browser/media/webrtc/desktop_media_list.cc", "//chrome/browser/media/webrtc/desktop_media_list.h", + "//chrome/browser/media/webrtc/desktop_media_list_base.cc", + "//chrome/browser/media/webrtc/desktop_media_list_base.h", + "//chrome/browser/media/webrtc/native_desktop_media_list.cc", + "//chrome/browser/media/webrtc/native_desktop_media_list.h", + "//chrome/browser/media/webrtc/thumbnail_capturer.cc", + "//chrome/browser/media/webrtc/thumbnail_capturer.h", "//chrome/browser/net/chrome_mojo_proxy_resolver_factory.cc", "//chrome/browser/net/chrome_mojo_proxy_resolver_factory.h", "//chrome/browser/prefs/chrome_command_line_pref_store.cc", @@ -301,12 +353,12 @@ source_set("qtwebengine_sources") { "//chrome/browser/tab_contents/form_interaction_tab_helper.h", "//chrome/browser/tab_contents/web_contents_collection.cc", "//chrome/browser/tab_contents/web_contents_collection.h", - "//chrome/browser/ui/webui/device_log_ui.cc", - "//chrome/browser/ui/webui/device_log_ui.h", - "//chrome/browser/ui/webui/devtools_ui.cc", - "//chrome/browser/ui/webui/devtools_ui.h", - "//chrome/browser/ui/webui/devtools_ui_data_source.cc", - "//chrome/browser/ui/webui/devtools_ui_data_source.h", + "//chrome/browser/ui/webui/device_log/device_log_ui.cc", + "//chrome/browser/ui/webui/device_log/device_log_ui.h", + "//chrome/browser/ui/webui/devtools/devtools_ui.cc", + "//chrome/browser/ui/webui/devtools/devtools_ui.h", + "//chrome/browser/ui/webui/devtools/devtools_ui_data_source.cc", + "//chrome/browser/ui/webui/devtools/devtools_ui_data_source.h", "//chrome/browser/ui/webui/net_internals/net_internals_ui.cc", "//chrome/browser/ui/webui/net_internals/net_internals_ui.h", "//chrome/browser/ui/webui/user_actions/user_actions_ui.cc", @@ -317,15 +369,35 @@ source_set("qtwebengine_sources") { "//chrome/browser/ui/webui/webui_util.h", "//chrome/common/chrome_switches.cc", "//chrome/common/chrome_switches.h", - "//chrome/common/pref_names.cc", "//chrome/common/pref_names.h", - "//chrome/common/url_constants.cc", "//chrome/common/url_constants.h", "//chrome/common/webui_url_constants.cc", "//chrome/common/webui_url_constants.h", "//components/embedder_support/user_agent_utils.cc", "//components/embedder_support/user_agent_utils.h", ] + if (use_ozone) { + deps += [ + "//ui/gfx/linux:drm", + ] + + sources += [ + "//ui/ozone/platform/wayland/gpu/wayland_gl_egl_utility.cc", + "//ui/ozone/platform/wayland/gpu/wayland_gl_egl_utility.h", + ] + + if (ozone_platform_x11) { + deps += [ + "//ui/base/x:gl", + "//ui/gfx/linux:gpu_memory_buffer_support_x11", + ] + + sources += [ + "//ui/ozone/platform/x11/gl_egl_utility_x11.cc", + "//ui/ozone/platform/x11/gl_egl_utility_x11.h", + ] + } + } if (enable_extensions) { deps += [ ":qtwebengine_extensions_features", @@ -343,7 +415,6 @@ source_set("qtwebengine_sources") { "//extensions/common:core_api_provider", "//extensions/browser", "//extensions/browser/api", - "//extensions/browser:core_api_provider", "//extensions/renderer", "//extensions:extensions_resources", "//extensions/strings", @@ -368,16 +439,21 @@ source_set("qtwebengine_sources") { "//extensions/common/url_pattern.h", ] } - if (is_linux) { + if (is_linux || is_win) { sources += [ "//chrome/browser/ui/webui/sandbox/sandbox_internals_ui.cc", "//chrome/browser/ui/webui/sandbox/sandbox_internals_ui.h", ] + deps += [ + "//chrome/browser/resources/sandbox_internals:resources", + ] } if (is_win) { sources += [ "//chrome/browser/net/chrome_mojo_proxy_resolver_win.cc", "//chrome/browser/net/chrome_mojo_proxy_resolver_win.h", + "//chrome/browser/ui/webui/sandbox/sandbox_handler.cc", + "//chrome/browser/ui/webui/sandbox/sandbox_handler.h", ] deps += [ "//services/proxy_resolver_win", "//services/proxy_resolver_win/public/mojom", @@ -469,7 +545,7 @@ source_set("qtwebengine_sources") { if (is_win) { static_library("QtWebEngineCoreSandbox") { complete_static_lib = true - configs += [ ":cpp17_config", + configs += [ ":cpp20_config", ":QtWebEngineCore_config", "//build/config:precompiled_headers" ] @@ -487,6 +563,7 @@ group("qtwebengine_resources") { "//chrome/browser:resources", "//chrome/browser/resources:component_extension_resources", "//chrome/common:resources", + "//chrome/browser/resources/device_log:resources", "//components/resources:components_resources", ":qtwebengine_repack_resources", ":qtwebengine_repack_resources_100", @@ -499,38 +576,56 @@ group("qtwebengine_resources") { repack("qtwebengine_repack_resources") { sources = [ "$root_gen_dir/qtwebengine/qt_webengine_resources.pak", + "$root_gen_dir/chrome/accessibility_resources.pak", "$root_gen_dir/chrome/common_resources.pak", "$root_gen_dir/chrome/dev_ui_browser_resources.pak", + "$root_gen_dir/chrome/device_log_resources.pak", "$root_gen_dir/chrome/net_internals_resources.pak", "$root_gen_dir/components/components_resources.pak", "$root_gen_dir/components/dev_ui_components_resources.pak", + "$root_gen_dir/components/ukm_resources.pak", + "$root_gen_dir/content/attribution_internals_resources.pak", "$root_gen_dir/content/browser/resources/media/media_internals_resources.pak", "$root_gen_dir/content/browser/tracing/tracing_resources.pak", "$root_gen_dir/content/content_resources.pak", - "$root_gen_dir/content/dev_ui_content_resources.pak", + "$root_gen_dir/content/gpu_resources.pak", + "$root_gen_dir/content/histograms_resources.pak", + "$root_gen_dir/content/indexed_db_resources.pak", + "$root_gen_dir/content/network_errors_resources.pak", + "$root_gen_dir/content/process_resources.pak", "$root_gen_dir/content/quota_internals_resources.pak", + "$root_gen_dir/content/service_worker_resources.pak", "$root_gen_dir/mojo/public/js/mojo_bindings_resources.pak", "$root_gen_dir/net/net_resources.pak", "$root_gen_dir/third_party/blink/public/resources/blink_resources.pak", - "$root_gen_dir/ui/resources/webui_generated_resources.pak", + "$root_gen_dir/ui/resources/webui_resources.pak", ] output = "$root_out_dir/qtwebengine_resources.pak" deps = [ "//qtwebengine/browser:qt_webengine_resources", "//chrome/browser:dev_ui_browser_resources_grit", + "//chrome/browser/resources/accessibility:resources", "//chrome/browser/resources/net_internals:resources", "//chrome/common:resources_grit", + "//chrome/browser/resources/device_log:resources_grit", "//components/resources:components_resources_grit", "//components/resources:dev_ui_components_resources_grit", + "//components/ukm/debug:resources", + "//content/browser/resources/attribution_reporting:resources", + "//content/browser/resources/gpu:resources", + "//content/browser/resources/histograms:resources_grit", + "//content/browser/resources/indexed_db:resources", "//content/browser/resources/media:resources", + "//content/browser/resources/net:resources", + "//content/browser/resources/process:resources", + "//content/browser/resources/quota:resources", + "//content/browser/resources/service_worker:resources", "//content/browser/tracing:resources", "//content:content_resources", - "//content/browser/resources/quota:resources", - "//content:dev_ui_content_resources_grit", "//mojo/public/js:resources", "//net:net_resources_grit", "//third_party/blink/public:resources_grit", - "//ui/resources:webui_generated_resources_grd", + "//ui/resources:webui_resources_grd", ] if (enable_extensions) { sources += [ @@ -568,6 +663,14 @@ repack("qtwebengine_repack_resources") { "//chrome/browser/resources/pdf:resources", ] } + if (is_linux || is_win) { + sources += [ + "$root_gen_dir/chrome/sandbox_internals_resources.pak", + ] + deps += [ + "//chrome/browser/resources/sandbox_internals:resources_grit", + ] + } } repack("qtwebengine_repack_resources_100") { @@ -665,7 +768,7 @@ if (enable_extensions) { if (enable_spellcheck) { shared_library("convert_dict") { - rsp_types = [ "objects", "archives", "libs" ] + rsp_types = [ "objects", "archives", "libs", "ldir" ] configs += [ "//build/config/compiler:wexit_time_destructors" ] deps = [ "//chrome/tools/convert_dict:lib", @@ -675,3 +778,12 @@ if (enable_spellcheck) { ] } } + +if (enable_webenginedriver) { + group("webenginedriver_group") { + testonly = true + deps = [ + "//chrome/test/chromedriver:chromedriver_server", + ] + } +} |