mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
128 lines
3.3 KiB
Plaintext
128 lines
3.3 KiB
Plaintext
# Copyright 2015 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/config/features.gni")
|
|
import("//build/config/nacl/config.gni")
|
|
|
|
if (is_nacl) {
|
|
group("ppapi_lib") {
|
|
deps = [
|
|
"//ppapi/native_client/src/untrusted/irt_stub:ppapi_stub_lib",
|
|
]
|
|
}
|
|
|
|
executable("nacl_irt") {
|
|
deps = [
|
|
"//base",
|
|
"//components/tracing",
|
|
"//gpu/command_buffer/client",
|
|
"//gpu/command_buffer/client:gles2_implementation",
|
|
"//gpu/command_buffer/common",
|
|
"//gpu/ipc/common:command_buffer_traits",
|
|
"//ipc",
|
|
"//media:shared_memory_support",
|
|
"//native_client/src/shared/gio",
|
|
"//native_client/src/shared/platform",
|
|
"//native_client/src/tools/tls_edit($host_toolchain)",
|
|
"//native_client/src/untrusted/irt:irt_core_lib",
|
|
"//native_client/src/untrusted/nacl:imc_syscalls",
|
|
"//ppapi/native_client/src/untrusted/pnacl_irt_shim:irt",
|
|
"//ppapi/proxy",
|
|
"//ppapi/proxy:ipc",
|
|
"//ppapi/shared_impl",
|
|
]
|
|
|
|
assert_no_deps = [
|
|
# Skia is one of the easiest dependencies to accidentally add since a
|
|
# bunch of graphics and GPU code uses it.
|
|
"//skia/*",
|
|
"//third_party/WebKit/*",
|
|
]
|
|
}
|
|
|
|
# TODO(phosek): We can remove this ugliness if we change the
|
|
# IRT file name in components/nacl/browser/nacl_browser.cc
|
|
if (current_cpu == "x86") {
|
|
irt_cpu = "x86_32"
|
|
} else if (current_cpu == "x64") {
|
|
irt_cpu = "x86_64"
|
|
} else if (current_cpu == "mipsel") {
|
|
irt_cpu = "mips32"
|
|
} else {
|
|
irt_cpu = current_cpu
|
|
}
|
|
irt_name = "nacl_irt_" + irt_cpu + ".nexe"
|
|
|
|
copy("nacl_irt_debug") {
|
|
sources = [
|
|
"${root_out_dir}/exe.unstripped/nacl_irt.nexe",
|
|
]
|
|
outputs = [
|
|
"${root_build_dir}/${irt_name}.debug",
|
|
]
|
|
deps = [
|
|
":nacl_irt",
|
|
]
|
|
}
|
|
|
|
action("nacl_irt_debuglink") {
|
|
deps = [
|
|
":nacl_irt",
|
|
":nacl_irt_debug",
|
|
]
|
|
|
|
objcopy = "${nacl_toolprefix}objcopy"
|
|
if (host_os == "win") {
|
|
objcopy += ".exe"
|
|
}
|
|
|
|
irt_stripped = "${root_out_dir}/nacl_irt.nexe"
|
|
irt_debug = get_target_outputs(":nacl_irt_debug")
|
|
irt_debug = irt_debug[0]
|
|
irt_final = "${root_build_dir}/${irt_name}"
|
|
|
|
inputs = [
|
|
objcopy,
|
|
]
|
|
sources = [
|
|
irt_debug,
|
|
irt_stripped,
|
|
]
|
|
outputs = [
|
|
irt_final,
|
|
]
|
|
|
|
script = "irt_debuglink.py"
|
|
args = [
|
|
rebase_path(objcopy, root_build_dir),
|
|
rebase_path(irt_debug, root_build_dir),
|
|
rebase_path(irt_stripped, root_build_dir),
|
|
rebase_path(irt_final, root_build_dir),
|
|
]
|
|
}
|
|
}
|
|
|
|
group("irt") {
|
|
# The nacl_irt needs to be marked as data dependency so that it's
|
|
# properly resolved as runtime dependency. However, some target
|
|
# use nacl_irt as input for actions which require it to be marked
|
|
# as public dependency as well.
|
|
irt_deps = [
|
|
":nacl_irt_debug(//build/toolchain/nacl:irt_${target_cpu})",
|
|
":nacl_irt_debuglink(//build/toolchain/nacl:irt_${target_cpu})",
|
|
]
|
|
public_deps = irt_deps
|
|
data_deps = irt_deps
|
|
|
|
# On 32-bit Windows, we also ship the 64-bit IRT.
|
|
if (is_win && target_cpu == "x86") {
|
|
irt_x64_deps = [
|
|
":nacl_irt_debug(//build/toolchain/nacl:irt_x64)",
|
|
":nacl_irt_debuglink(//build/toolchain/nacl:irt_x64)",
|
|
]
|
|
public_deps += irt_x64_deps
|
|
data_deps += irt_x64_deps
|
|
}
|
|
}
|