mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 08:16:09 +03:00
181 lines
3.9 KiB
Plaintext
181 lines
3.9 KiB
Plaintext
|
# Copyright 2014 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/buildflag_header.gni")
|
||
|
import("//build/config/allocator.gni")
|
||
|
import("//testing/test.gni")
|
||
|
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
|
||
|
import("//v8/gni/v8.gni")
|
||
|
|
||
|
component("gin") {
|
||
|
sources = [
|
||
|
"arguments.cc",
|
||
|
"arguments.h",
|
||
|
"array_buffer.cc",
|
||
|
"array_buffer.h",
|
||
|
"context_holder.cc",
|
||
|
"converter.cc",
|
||
|
"converter.h",
|
||
|
"data_object_builder.cc",
|
||
|
"data_object_builder.h",
|
||
|
"debug_impl.cc",
|
||
|
"debug_impl.h",
|
||
|
"dictionary.cc",
|
||
|
"dictionary.h",
|
||
|
"function_template.cc",
|
||
|
"function_template.h",
|
||
|
"gin_export.h",
|
||
|
"gin_features.cc",
|
||
|
"gin_features.h",
|
||
|
"handle.h",
|
||
|
"interceptor.cc",
|
||
|
"interceptor.h",
|
||
|
"isolate_holder.cc",
|
||
|
"modules/console.cc",
|
||
|
"modules/console.h",
|
||
|
"object_template_builder.cc",
|
||
|
"object_template_builder.h",
|
||
|
"per_context_data.cc",
|
||
|
"per_context_data.h",
|
||
|
"per_isolate_data.cc",
|
||
|
"per_isolate_data.h",
|
||
|
"public/context_holder.h",
|
||
|
"public/debug.h",
|
||
|
"public/gin_embedders.h",
|
||
|
"public/isolate_holder.h",
|
||
|
"public/v8_idle_task_runner.h",
|
||
|
"public/v8_platform.h",
|
||
|
"public/wrapper_info.h",
|
||
|
"runner.cc",
|
||
|
"runner.h",
|
||
|
"shell_runner.cc",
|
||
|
"shell_runner.h",
|
||
|
"try_catch.cc",
|
||
|
"try_catch.h",
|
||
|
"v8_foreground_task_runner.cc",
|
||
|
"v8_foreground_task_runner.h",
|
||
|
"v8_foreground_task_runner_base.cc",
|
||
|
"v8_foreground_task_runner_base.h",
|
||
|
"v8_foreground_task_runner_with_locker.cc",
|
||
|
"v8_foreground_task_runner_with_locker.h",
|
||
|
"v8_initializer.cc",
|
||
|
"v8_initializer.h",
|
||
|
"v8_isolate_memory_dump_provider.cc",
|
||
|
"v8_isolate_memory_dump_provider.h",
|
||
|
"v8_platform.cc",
|
||
|
"wrappable.cc",
|
||
|
"wrappable.h",
|
||
|
"wrapper_info.cc",
|
||
|
]
|
||
|
|
||
|
if (v8_use_external_startup_data) {
|
||
|
data = [
|
||
|
"$root_out_dir/natives_blob.bin",
|
||
|
"$root_out_dir/snapshot_blob.bin",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
defines = [ "GIN_IMPLEMENTATION" ]
|
||
|
|
||
|
public_deps = [
|
||
|
"//base",
|
||
|
"//v8",
|
||
|
]
|
||
|
deps = [
|
||
|
"//base/third_party/dynamic_annotations",
|
||
|
]
|
||
|
|
||
|
if (is_mac) {
|
||
|
libs = [ "CoreFoundation.framework" ]
|
||
|
}
|
||
|
|
||
|
configs += [ "//v8:external_startup_data" ]
|
||
|
}
|
||
|
|
||
|
executable("gin_shell") {
|
||
|
sources = [
|
||
|
"shell/gin_main.cc",
|
||
|
]
|
||
|
|
||
|
deps = [
|
||
|
":gin",
|
||
|
"//base",
|
||
|
"//base:i18n",
|
||
|
"//build/win:default_exe_manifest",
|
||
|
"//v8",
|
||
|
]
|
||
|
|
||
|
configs += [ "//v8:external_startup_data" ]
|
||
|
}
|
||
|
|
||
|
source_set("gin_test") {
|
||
|
testonly = true
|
||
|
sources = [
|
||
|
"test/v8_test.cc",
|
||
|
"test/v8_test.h",
|
||
|
]
|
||
|
|
||
|
public_deps = [
|
||
|
":gin",
|
||
|
"//testing/gtest",
|
||
|
]
|
||
|
deps = [
|
||
|
"//base/test:test_support",
|
||
|
"//v8",
|
||
|
]
|
||
|
|
||
|
configs += [ "//v8:external_startup_data" ]
|
||
|
}
|
||
|
|
||
|
test("gin_unittests") {
|
||
|
sources = [
|
||
|
"arguments_unittest.cc",
|
||
|
"array_buffer_unittest.cc",
|
||
|
"converter_unittest.cc",
|
||
|
"data_object_builder_unittest.cc",
|
||
|
"interceptor_unittest.cc",
|
||
|
"per_context_data_unittest.cc",
|
||
|
"shell_runner_unittest.cc",
|
||
|
"test/run_all_unittests.cc",
|
||
|
"v8_isolate_memory_dump_provider_unittest.cc",
|
||
|
"v8_platform_unittest.cc",
|
||
|
"wrappable_unittest.cc",
|
||
|
]
|
||
|
|
||
|
deps = [
|
||
|
":gin_test",
|
||
|
"//base/test:test_support",
|
||
|
"//testing/gmock",
|
||
|
"//testing/gtest",
|
||
|
"//v8",
|
||
|
]
|
||
|
|
||
|
configs += [
|
||
|
"//tools/v8_context_snapshot:use_v8_context_snapshot",
|
||
|
"//v8:external_startup_data",
|
||
|
]
|
||
|
|
||
|
data_deps = [
|
||
|
"//tools/v8_context_snapshot:v8_context_snapshot",
|
||
|
]
|
||
|
data = []
|
||
|
|
||
|
# gin_shell is not an Android app.
|
||
|
if (!is_android) {
|
||
|
sources += [ "shell/gin_shell_unittest.cc" ]
|
||
|
deps += [ ":gin_shell" ]
|
||
|
data_deps += [ ":gin_shell" ]
|
||
|
data += [ "shell/hello_world.js" ]
|
||
|
}
|
||
|
|
||
|
# On Android, the APK must bundle the startup data.
|
||
|
if (is_android) {
|
||
|
if (use_v8_context_snapshot) {
|
||
|
deps += [ "//tools/v8_context_snapshot:v8_context_snapshot_assets" ]
|
||
|
} else {
|
||
|
deps += [ "//v8:v8_external_startup_data_assets" ]
|
||
|
}
|
||
|
}
|
||
|
}
|