cef/patch/patches/gn_config.patch

142 lines
5.8 KiB
Diff

diff --git .gn .gn
index cd7ed79..0c318f9 100644
--- .gn
+++ .gn
@@ -257,6 +257,8 @@ exec_script_whitelist =
# in the Chromium repo outside of //build.
"//build_overrides/build.gni",
+ "//cef/BUILD.gn",
+
# TODO(dgn): Layer violation but breaks the build otherwise, see
# https://crbug.com/474506.
"//clank/java/BUILD.gn",
diff --git BUILD.gn BUILD.gn
index d24c2da..7f0d451 100644
--- BUILD.gn
+++ BUILD.gn
@@ -158,6 +158,7 @@ group("gn_all") {
# and whether there should be other targets that are iOS-only and missing.
deps += [
"//cc:cc_unittests",
+ "//cef",
"//chrome/test:telemetry_perf_unittests",
"//chrome/test:unit_tests",
"//components:components_browsertests",
diff --git build/config/win/visual_studio_version.gni build/config/win/visual_studio_version.gni
index 982fbe8..e757be46 100644
--- build/config/win/visual_studio_version.gni
+++ build/config/win/visual_studio_version.gni
@@ -12,9 +12,8 @@ declare_args() {
# Currently always "2015".
visual_studio_version = ""
- # Directory of the Windows driver kit. If visual_studio_path is empty, this
- # will be auto-filled.
- wdk_path = ""
+ # Path to Visual Studio runtime libraries.
+ visual_studio_runtime_dirs = ""
# Full path to the Windows SDK, not including a backslash at the end.
# This value is the default location, override if you have a different
@@ -28,12 +27,11 @@ if (visual_studio_path == "") {
visual_studio_path = toolchain_data.vs_path
windows_sdk_path = toolchain_data.sdk_path
visual_studio_version = toolchain_data.vs_version
- wdk_path = toolchain_data.wdk_dir
visual_studio_runtime_dirs = toolchain_data.runtime_dirs
} else {
assert(visual_studio_version != "",
"You must set the visual_studio_version if you set the path")
- assert(wdk_path != "",
- "You must set the wdk_path if you set the visual studio path")
- visual_studio_runtime_dirs = []
+ assert(visual_studio_runtime_dirs != "",
+ "You must set the visual_studio_runtime_dirs if you set the visual " +
+ "studio path")
}
diff --git build/toolchain/win/setup_toolchain.py build/toolchain/win/setup_toolchain.py
index e8b0849..0bfc676 100644
--- build/toolchain/win/setup_toolchain.py
+++ build/toolchain/win/setup_toolchain.py
@@ -132,18 +132,20 @@ def _LoadToolchainEnv(cpu, sdk_dir):
# variable.
if 'VSINSTALLDIR' in os.environ:
del os.environ['VSINSTALLDIR']
- other_path = os.path.normpath(os.path.join(
+ script_path = os.path.normpath(os.path.join(
os.environ['GYP_MSVS_OVERRIDE_PATH'],
'VC/Auxiliary/Build/vcvarsall.bat'))
- if not os.path.exists(other_path):
- raise Exception('%s is missing - make sure VC++ tools are installed.' %
- script_path)
- script_path = other_path
- # Chromium requires the 10.0.14393.0 SDK. Previous versions don't have all
- # of the required declarations, and 10.0.15063.0 is buggy.
- args = [script_path, 'amd64_x86' if cpu == 'x86' else 'amd64',
- '10.0.14393.0']
- variables = _LoadEnvFromBat(args)
+ if os.path.exists(script_path):
+ # Chromium requires the 10.0.14393.0 SDK. Previous versions don't have all
+ # of the required declarations, and 10.0.15063.0 is buggy.
+ args = [script_path, 'amd64_x86' if cpu == 'x86' else 'amd64',
+ '10.0.14393.0']
+ variables = _LoadEnvFromBat(args)
+ else:
+ variables = []
+ for k in sorted(os.environ.keys()):
+ variables.append('%s=%s' % (str(k), str(os.environ[k])))
+ variables = '\n'.join(variables)
return _ExtractImportantEnvironment(variables)
diff --git build/vs_toolchain.py build/vs_toolchain.py
index 90a562d..8c63b12 100755
--- build/vs_toolchain.py
+++ build/vs_toolchain.py
@@ -78,11 +78,18 @@ def SetEnvironmentAndGetRuntimeDllDirs():
runtime_path = os.path.pathsep.join(vs_runtime_dll_dirs)
os.environ['PATH'] = runtime_path + os.path.pathsep + os.environ['PATH']
elif sys.platform == 'win32' and not depot_tools_win_toolchain:
+ has_override_path = True
if not 'GYP_MSVS_OVERRIDE_PATH' in os.environ:
+ has_override_path = False
os.environ['GYP_MSVS_OVERRIDE_PATH'] = DetectVisualStudioPath()
if not 'GYP_MSVS_VERSION' in os.environ:
os.environ['GYP_MSVS_VERSION'] = GetVisualStudioVersion()
+ if has_override_path:
+ # Don't attempt to copy DLLs when using a custom toolchain.
+ # The DLLs should already be discoverable via the PATH env variable.
+ return None
+
# When using an installed toolchain these files aren't needed in the output
# directory in order to run binaries locally, but they are needed in order
# to create isolates or the mini_installer. Copying them to the output
diff --git chrome/chrome_paks.gni chrome/chrome_paks.gni
index 4e303dc..a0398f1 100644
--- chrome/chrome_paks.gni
+++ chrome/chrome_paks.gni
@@ -249,7 +249,7 @@ template("chrome_paks") {
additional_source_patterns = invoker.additional_locale_source_patterns
}
input_locales = locales
- output_dir = "${invoker.output_dir}/locales"
+ output_dir = "${invoker.output_dir}/chrome/locales"
if (is_mac) {
output_locales = locales_as_mac_outputs
diff --git chrome/installer/mini_installer/BUILD.gn chrome/installer/mini_installer/BUILD.gn
index 5d2fe25..dd08482 100644
--- chrome/installer/mini_installer/BUILD.gn
+++ chrome/installer/mini_installer/BUILD.gn
@@ -128,7 +128,7 @@ template("generate_mini_installer") {
inputs = [
"$chrome_dll_file",
"$root_out_dir/chrome.exe",
- "$root_out_dir/locales/en-US.pak",
+ "$root_out_dir/chrome/locales/en-US.pak",
"$root_out_dir/setup.exe",
release_file,
]