[build] Share windows runtime dlls with src/build

Bug: chromium:653569
Change-Id: I6ced614819f9fd7f594acf2fd08c491f16d3eed5
Reviewed-on: https://webrtc-review.googlesource.com/68480
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#22790}
This commit is contained in:
Michael Achenbach
2018-04-09 09:34:21 +02:00
committed by Commit Bot
parent 9098b30700
commit 220609774a

View File

@ -14,9 +14,6 @@ if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
}
if (is_win) {
import("//build/config/clang/clang.gni")
}
group("base") {
public_deps = [
@ -367,6 +364,7 @@ rtc_source_set("rtc_base_approved_generic") {
cflags = []
defines = []
libs = []
data_deps = []
deps = [
":atomicops",
":checks",
@ -458,80 +456,9 @@ rtc_source_set("rtc_base_approved_generic") {
if (is_win) {
sources += [ "file_win.cc" ]
data_deps += [ "//build/win:runtime_libs" ]
}
if (is_component_build && is_win) {
# Copy the VS runtime DLLs into the isolate so that they don't have to be
# preinstalled on the target machine. The debug runtimes have a "d" at
# the end.
# This is a copy of https://codereview.chromium.org/1783973002.
# TODO(ehmaldonado): We'd like Chromium to make this changes easier to use,
# so we don't have to copy their changes and risk breakages.
# See http://crbug.com/653569
if (is_debug) {
vcrt_suffix = "d"
} else {
vcrt_suffix = ""
}
# These runtime files are copied to the output directory by the
# vs_toolchain script that runs as part of toolchain configuration.
data = [
"$root_out_dir/msvcp140${vcrt_suffix}.dll",
"$root_out_dir/vccorlib140${vcrt_suffix}.dll",
"$root_out_dir/vcruntime140${vcrt_suffix}.dll",
# Universal Windows 10 CRT files
"$root_out_dir/api-ms-win-core-console-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-datetime-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-debug-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-errorhandling-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-file-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-file-l1-2-0.dll",
"$root_out_dir/api-ms-win-core-file-l2-1-0.dll",
"$root_out_dir/api-ms-win-core-handle-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-heap-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-interlocked-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-libraryloader-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-localization-l1-2-0.dll",
"$root_out_dir/api-ms-win-core-memory-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-namedpipe-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-processenvironment-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-processthreads-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-processthreads-l1-1-1.dll",
"$root_out_dir/api-ms-win-core-profile-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-rtlsupport-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-string-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-synch-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-synch-l1-2-0.dll",
"$root_out_dir/api-ms-win-core-sysinfo-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-timezone-l1-1-0.dll",
"$root_out_dir/api-ms-win-core-util-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-conio-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-convert-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-environment-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-filesystem-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-heap-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-locale-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-math-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-multibyte-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-private-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-process-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-runtime-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-stdio-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-string-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-time-l1-1-0.dll",
"$root_out_dir/api-ms-win-crt-utility-l1-1-0.dll",
"$root_out_dir/ucrtbase${vcrt_suffix}.dll",
]
if (is_asan) {
if (current_cpu == "x64") {
data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-x86_64.dll" ]
} else {
data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-i386.dll" ]
}
}
}
if (is_nacl) {
deps += [ "//native_client_sdk/src/libraries/nacl_io" ]
}