1diff --git .gn .gn 2index 22070a9adc507..e55d32f80b438 100644 3--- .gn 4+++ .gn 5@@ -156,6 +156,8 @@ exec_script_whitelist = 6 7 "//chrome/android/webapk/shell_apk/prepare_upload_dir/BUILD.gn", 8 9+ "//cef/BUILD.gn", 10+ 11 # TODO(dgn): Layer violation but breaks the build otherwise, see 12 # https://crbug.com/474506. 13 "//clank/java/BUILD.gn", 14diff --git BUILD.gn BUILD.gn 15index df8b37fc8b0af..e46843b39d228 100644 16--- BUILD.gn 17+++ BUILD.gn 18@@ -16,6 +16,7 @@ import("//build/config/sanitizers/sanitizers.gni") 19 import("//build/config/ui.gni") 20 import("//build/gn_logs.gni") 21 import("//build/util/generate_wrapper.gni") 22+import("//cef/libcef/features/features.gni") 23 import("//chrome/browser/buildflags.gni") 24 import("//chrome/browser/media/router/features.gni") 25 import("//components/nacl/features.gni") 26@@ -267,6 +268,9 @@ group("gn_all") { 27 deps += [ "//chrome/test:telemetry_perf_unittests${_target_suffix}" ] 28 } 29 } 30+ if (enable_cef) { 31+ deps += [ "//cef" ] 32+ } 33 } else if (is_ios) { 34 deps += [ 35 "//ios:all", 36diff --git build/config/win/visual_studio_version.gni build/config/win/visual_studio_version.gni 37index 982fbe8d3f0d0..e757be4688f10 100644 38--- build/config/win/visual_studio_version.gni 39+++ build/config/win/visual_studio_version.gni 40@@ -12,9 +12,8 @@ declare_args() { 41 # Currently always "2015". 42 visual_studio_version = "" 43 44- # Directory of the Windows driver kit. If visual_studio_path is empty, this 45- # will be auto-filled. 46- wdk_path = "" 47+ # Path to Visual Studio runtime libraries. 48+ visual_studio_runtime_dirs = "" 49 50 # Full path to the Windows SDK, not including a backslash at the end. 51 # This value is the default location, override if you have a different 52@@ -28,12 +27,11 @@ if (visual_studio_path == "") { 53 visual_studio_path = toolchain_data.vs_path 54 windows_sdk_path = toolchain_data.sdk_path 55 visual_studio_version = toolchain_data.vs_version 56- wdk_path = toolchain_data.wdk_dir 57 visual_studio_runtime_dirs = toolchain_data.runtime_dirs 58 } else { 59 assert(visual_studio_version != "", 60 "You must set the visual_studio_version if you set the path") 61- assert(wdk_path != "", 62- "You must set the wdk_path if you set the visual studio path") 63- visual_studio_runtime_dirs = [] 64+ assert(visual_studio_runtime_dirs != "", 65+ "You must set the visual_studio_runtime_dirs if you set the visual " + 66+ "studio path") 67 } 68diff --git chrome/app/framework.order chrome/app/framework.order 69index f8f71ef369c08..7a2ed5da7bda3 100644 70--- chrome/app/framework.order 71+++ chrome/app/framework.order 72@@ -31,3 +31,8 @@ _ChromeMain 73 _lprofDirMode 74 ___llvm_profile_filename 75 ___llvm_profile_raw_version 76+ 77+# Symbols exported for CEF. 78+_OBJC_CLASS_$_UnderlayOpenGLHostingWindow 79+_OBJC_METACLASS_$_UnderlayOpenGLHostingWindow 80+ 81diff --git chrome/chrome_paks.gni chrome/chrome_paks.gni 82index c540719a510ab..1107dfc9f2537 100644 83--- chrome/chrome_paks.gni 84+++ chrome/chrome_paks.gni 85@@ -5,6 +5,7 @@ 86 import("//ash/ambient/resources/resources.gni") 87 import("//build/config/chromeos/ui_mode.gni") 88 import("//build/config/locales.gni") 89+import("//cef/libcef/features/features.gni") 90 import("//chrome/browser/buildflags.gni") 91 import("//chrome/common/features.gni") 92 import("//chromeos/components/chromebox_for_meetings/buildflags/buildflags.gni") 93@@ -75,6 +76,10 @@ template("chrome_repack_percent") { 94 "//ui/chromeos/resources", 95 ] 96 } 97+ if (enable_cef) { 98+ sources += [ "$root_gen_dir/cef/cef_resources.pak" ] 99+ deps += [ "//cef:cef_resources" ] 100+ } 101 if (enable_extensions) { 102 sources += [ "$root_gen_dir/extensions/extensions_browser_resources_${percent}_percent.pak" ] 103 deps += [ "//extensions:extensions_browser_resources" ] 104diff --git chrome/chrome_repack_locales.gni chrome/chrome_repack_locales.gni 105index d969da6550bcb..97a5d2b843af5 100644 106--- chrome/chrome_repack_locales.gni 107+++ chrome/chrome_repack_locales.gni 108@@ -6,6 +6,7 @@ import("//build/config/chrome_build.gni") 109 import("//build/config/chromeos/ui_mode.gni") 110 import("//build/config/features.gni") 111 import("//build/config/ui.gni") 112+import("//cef/libcef/features/features.gni") 113 import("//extensions/buildflags/buildflags.gni") 114 import("//tools/grit/repack.gni") 115 116@@ -90,6 +91,10 @@ template("chrome_repack_locales") { 117 [ "${root_gen_dir}/chromeos/strings/chromeos_strings_" ] 118 deps += [ "//chromeos/strings" ] 119 } 120+ if (enable_cef) { 121+ source_patterns += [ "${root_gen_dir}/cef/cef_strings_" ] 122+ deps += [ "//cef:cef_strings" ] 123+ } 124 if (enable_extensions) { 125 source_patterns += 126 [ "${root_gen_dir}/extensions/strings/extensions_strings_" ] 127diff --git chrome/installer/mini_installer/BUILD.gn chrome/installer/mini_installer/BUILD.gn 128index 51fa0d7f4cf77..2ede68e9377eb 100644 129--- chrome/installer/mini_installer/BUILD.gn 130+++ chrome/installer/mini_installer/BUILD.gn 131@@ -6,6 +6,7 @@ import("//build/config/compiler/compiler.gni") 132 import("//build/config/features.gni") 133 import("//build/config/python.gni") 134 import("//build/config/ui.gni") 135+import("//cef/libcef/features/features.gni") 136 import("//chrome/process_version_rc_template.gni") 137 import("//components/nacl/features.gni") 138 import("//third_party/ffmpeg/ffmpeg_options.gni") 139@@ -121,11 +122,13 @@ action("mini_installer_archive") { 140 inputs = [ 141 "$root_out_dir/chrome.dll", 142 "$root_out_dir/chrome.exe", 143- "$root_out_dir/locales/en-US.pak", 144 "$root_out_dir/setup.exe", 145 "//chrome/tools/build/win/makecab.py", 146 release_file, 147 ] 148+ if (!enable_cef) { 149+ inputs += [ "$root_out_dir/locales/en-US.pak" ] 150+ } 151 152 outputs = [ 153 # See also chrome.packed.7z conditionally added below. 154diff --git tools/grit/grit_defines.gni tools/grit/grit_defines.gni 155index 60022cbefac60..00f3bcd528ee0 100644 156--- tools/grit/grit_defines.gni 157+++ tools/grit/grit_defines.gni 158@@ -5,6 +5,7 @@ 159 import("//build/config/chrome_build.gni") 160 import("//build/config/chromeos/ui_mode.gni") 161 import("//build/config/devtools.gni") 162+import("//build/config/locales.gni") 163 import("//build/config/ui.gni") 164 165 shared_intermediate_dir = rebase_path(root_gen_dir, root_build_dir) 166@@ -112,6 +113,13 @@ if (is_android) { 167 ] 168 } 169 170+if (enable_pseudolocales) { 171+ grit_defines += [ 172+ "-D", 173+ "enable_pseudolocales", 174+ ] 175+} 176+ 177 # When cross-compiling, explicitly pass the target system to grit. 178 if (current_toolchain != host_toolchain) { 179 if (is_android) { 180