Revert of Add d8 target to the GN build. (patchset #2 id:40001 of https://codereview.chromium.org/834113005/)

Reason for revert:
V8 roll fails due to this change. (see https://codereview.chromium.org/843673003/)

Original issue's description:
> Add d8 target to the GN build.
>
> Also formats the rest of the file with "gn format". This accounts for all the changes except for the "d8" target additions.
>
> Committed: https://crrev.com/36383f08c1f692ea797d54a27d7c6b3d3d53b440
> Cr-Commit-Position: refs/heads/master@{#25984}

TBR=jochen@chromium.org,machenbach@chromium.org,brettw@chromium.org
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/838983002

Cr-Commit-Position: refs/heads/master@{#25985}
This commit is contained in:
yangguo 2015-01-08 00:38:13 -08:00 committed by Commit bot
parent 36383f08c1
commit ef50fdfdb0

224
BUILD.gn
View File

@ -23,6 +23,7 @@ v8_enable_extra_checks = is_debug
v8_target_arch = cpu_arch v8_target_arch = cpu_arch
v8_random_seed = "314159265" v8_random_seed = "314159265"
############################################################################### ###############################################################################
# Configurations # Configurations
# #
@ -63,34 +64,54 @@ config("features") {
defines = [] defines = []
if (v8_enable_disassembler == true) { if (v8_enable_disassembler == true) {
defines += [ "ENABLE_DISASSEMBLER" ] defines += [
"ENABLE_DISASSEMBLER",
]
} }
if (v8_enable_gdbjit == true) { if (v8_enable_gdbjit == true) {
defines += [ "ENABLE_GDB_JIT_INTERFACE" ] defines += [
"ENABLE_GDB_JIT_INTERFACE",
]
} }
if (v8_object_print == true) { if (v8_object_print == true) {
defines += [ "OBJECT_PRINT" ] defines += [
"OBJECT_PRINT",
]
} }
if (v8_enable_verify_heap == true) { if (v8_enable_verify_heap == true) {
defines += [ "VERIFY_HEAP" ] defines += [
"VERIFY_HEAP",
]
} }
if (v8_interpreted_regexp == true) { if (v8_interpreted_regexp == true) {
defines += [ "V8_INTERPRETED_REGEXP" ] defines += [
"V8_INTERPRETED_REGEXP",
]
} }
if (v8_deprecation_warnings == true) { if (v8_deprecation_warnings == true) {
defines += [ "V8_DEPRECATION_WARNINGS" ] defines += [
"V8_DEPRECATION_WARNINGS",
]
} }
if (v8_enable_i18n_support == true) { if (v8_enable_i18n_support == true) {
defines += [ "V8_I18N_SUPPORT" ] defines += [
"V8_I18N_SUPPORT",
]
} }
if (v8_enable_extra_checks == true) { if (v8_enable_extra_checks == true) {
defines += [ "ENABLE_EXTRA_CHECKS" ] defines += [
"ENABLE_EXTRA_CHECKS",
]
} }
if (v8_enable_handle_zapping == true) { if (v8_enable_handle_zapping == true) {
defines += [ "ENABLE_HANDLE_ZAPPING" ] defines += [
"ENABLE_HANDLE_ZAPPING",
]
} }
if (v8_use_external_startup_data == true) { if (v8_use_external_startup_data == true) {
defines += [ "V8_USE_EXTERNAL_STARTUP_DATA" ] defines += [
"V8_USE_EXTERNAL_STARTUP_DATA",
]
} }
} }
@ -103,16 +124,24 @@ config("toolchain") {
# TODO(jochen): Add support for arm, mips, mipsel. # TODO(jochen): Add support for arm, mips, mipsel.
if (v8_target_arch == "arm64") { if (v8_target_arch == "arm64") {
defines += [ "V8_TARGET_ARCH_ARM64" ] defines += [
"V8_TARGET_ARCH_ARM64",
]
} }
if (v8_target_arch == "x86") { if (v8_target_arch == "x86") {
defines += [ "V8_TARGET_ARCH_IA32" ] defines += [
"V8_TARGET_ARCH_IA32",
]
} }
if (v8_target_arch == "x64") { if (v8_target_arch == "x64") {
defines += [ "V8_TARGET_ARCH_X64" ] defines += [
"V8_TARGET_ARCH_X64",
]
} }
if (is_win) { if (is_win) {
defines += [ "WIN32" ] defines += [
"WIN32",
]
# TODO(jochen): Support v8_enable_prof. # TODO(jochen): Support v8_enable_prof.
} }
@ -175,7 +204,7 @@ action("js2c") {
] ]
outputs = [ outputs = [
"$target_gen_dir/libraries.cc", "$target_gen_dir/libraries.cc"
] ]
if (v8_enable_i18n_support) { if (v8_enable_i18n_support) {
@ -191,28 +220,11 @@ action("js2c") {
outputs += [ "$target_gen_dir/libraries.bin" ] outputs += [ "$target_gen_dir/libraries.bin" ]
args += [ args += [
"--startup_blob", "--startup_blob",
rebase_path("$target_gen_dir/libraries.bin", root_build_dir), rebase_path("$target_gen_dir/libraries.bin", root_build_dir)
] ]
} }
} }
action("d8_js2c") {
visibility = [ ":*" ] # Only targets in this file can depend on this.
script = "tools/js2c.py"
inputs = [
"src/d8.js",
"src/macros.py",
]
outputs = [
"$target_gen_dir/d8-js.cc",
]
args = rebase_path(outputs, root_build_dir) + [ "D8" ] +
rebase_path(inputs, root_build_dir)
}
action("js2c_experimental") { action("js2c_experimental") {
visibility = [ ":*" ] # Only targets in this file can depend on this. visibility = [ ":*" ] # Only targets in this file can depend on this.
@ -233,16 +245,15 @@ action("js2c_experimental") {
"src/harmony-classes.js", "src/harmony-classes.js",
"src/harmony-tostring.js", "src/harmony-tostring.js",
"src/harmony-templates.js", "src/harmony-templates.js",
"src/harmony-regexp.js", "src/harmony-regexp.js"
] ]
outputs = [ outputs = [
"$target_gen_dir/experimental-libraries.cc", "$target_gen_dir/experimental-libraries.cc"
] ]
args = [ args = [
rebase_path("$target_gen_dir/experimental-libraries.cc", rebase_path("$target_gen_dir/experimental-libraries.cc", root_build_dir),
root_build_dir),
"EXPERIMENTAL", "EXPERIMENTAL",
] + rebase_path(sources, root_build_dir) ] + rebase_path(sources, root_build_dir)
@ -250,7 +261,7 @@ action("js2c_experimental") {
outputs += [ "$target_gen_dir/libraries_experimental.bin" ] outputs += [ "$target_gen_dir/libraries_experimental.bin" ]
args += [ args += [
"--startup_blob", "--startup_blob",
rebase_path("$target_gen_dir/libraries_experimental.bin", root_build_dir), rebase_path("$target_gen_dir/libraries_experimental.bin", root_build_dir)
] ]
} }
} }
@ -261,16 +272,16 @@ if (v8_use_external_startup_data) {
deps = [ deps = [
":js2c", ":js2c",
":js2c_experimental", ":js2c_experimental"
] ]
sources = [ sources = [
"$target_gen_dir/libraries.bin", "$target_gen_dir/libraries.bin",
"$target_gen_dir/libraries_experimental.bin", "$target_gen_dir/libraries_experimental.bin"
] ]
outputs = [ outputs = [
"$root_out_dir/natives_blob.bin", "$root_out_dir/natives_blob.bin"
] ]
script = "tools/concatenate-files.py" script = "tools/concatenate-files.py"
@ -290,24 +301,23 @@ action("postmortem-metadata") {
] ]
outputs = [ outputs = [
"$target_gen_dir/debug-support.cc", "$target_gen_dir/debug-support.cc"
] ]
args = rebase_path(outputs, root_build_dir) + args =
rebase_path(outputs, root_build_dir) +
rebase_path(sources, root_build_dir) rebase_path(sources, root_build_dir)
} }
action("run_mksnapshot") { action("run_mksnapshot") {
visibility = [ ":*" ] # Only targets in this file can depend on this. visibility = [ ":*" ] # Only targets in this file can depend on this.
deps = [ deps = [ ":mksnapshot($host_toolchain)" ]
":mksnapshot($host_toolchain)",
]
script = "tools/run.py" script = "tools/run.py"
outputs = [ outputs = [
"$target_gen_dir/snapshot.cc", "$target_gen_dir/snapshot.cc"
] ]
args = [ args = [
@ -315,27 +325,24 @@ action("run_mksnapshot") {
"root_out_dir") + "/mksnapshot", "root_out_dir") + "/mksnapshot",
root_build_dir), root_build_dir),
"--log-snapshot-positions", "--log-snapshot-positions",
"--logfile", "--logfile", rebase_path("$target_gen_dir/snapshot.log", root_build_dir),
rebase_path("$target_gen_dir/snapshot.log", root_build_dir), rebase_path("$target_gen_dir/snapshot.cc", root_build_dir)
rebase_path("$target_gen_dir/snapshot.cc", root_build_dir),
] ]
if (v8_random_seed != "0") { if (v8_random_seed != "0") {
args += [ args += [ "--random-seed", v8_random_seed ]
"--random-seed",
v8_random_seed,
]
} }
if (v8_use_external_startup_data) { if (v8_use_external_startup_data) {
outputs += [ "$root_out_dir/snapshot_blob.bin" ] outputs += [ "$root_out_dir/snapshot_blob.bin" ]
args += [ args += [
"--startup_blob", "--startup_blob",
rebase_path("$root_out_dir/snapshot_blob.bin", root_build_dir), rebase_path("$root_out_dir/snapshot_blob.bin", root_build_dir)
] ]
} }
} }
############################################################################### ###############################################################################
# Source Sets (aka static libraries) # Source Sets (aka static libraries)
# #
@ -357,11 +364,7 @@ source_set("v8_nosnapshot") {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config", ":features", ":toolchain" ]
":internal_config",
":features",
":toolchain",
]
} }
source_set("v8_snapshot") { source_set("v8_snapshot") {
@ -382,11 +385,7 @@ source_set("v8_snapshot") {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config", ":features", ":toolchain" ]
":internal_config",
":features",
":toolchain",
]
} }
if (v8_use_external_startup_data) { if (v8_use_external_startup_data) {
@ -408,11 +407,7 @@ if (v8_use_external_startup_data) {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config", ":features", ":toolchain" ]
":internal_config",
":features",
":toolchain",
]
} }
} }
@ -1217,11 +1212,7 @@ source_set("v8_base") {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config", ":features", ":toolchain" ]
":internal_config",
":features",
":toolchain",
]
if (!is_debug) { if (!is_debug) {
configs -= [ "//build/config/compiler:optimize" ] configs -= [ "//build/config/compiler:optimize" ]
@ -1229,9 +1220,7 @@ source_set("v8_base") {
} }
defines = [] defines = []
deps = [ deps = [ ":v8_libbase" ]
":v8_libbase",
]
if (is_win) { if (is_win) {
# TODO(jschuh): crbug.com/167187 fix size_t to int truncations. # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
@ -1243,7 +1232,6 @@ source_set("v8_base") {
if (is_win) { if (is_win) {
deps += [ "//third_party/icu:icudata" ] deps += [ "//third_party/icu:icudata" ]
} }
# TODO(jochen): Add support for icu_use_data_file_flag # TODO(jochen): Add support for icu_use_data_file_flag
defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE" ] defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE" ]
} else { } else {
@ -1312,11 +1300,7 @@ source_set("v8_libbase") {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config_base", ":features", ":toolchain" ]
":internal_config_base",
":features",
":toolchain",
]
if (!is_debug) { if (!is_debug) {
configs -= [ "//build/config/compiler:optimize" ] configs -= [ "//build/config/compiler:optimize" ]
@ -1326,11 +1310,15 @@ source_set("v8_libbase") {
defines = [] defines = []
if (is_posix) { if (is_posix) {
sources += [ "src/base/platform/platform-posix.cc" ] sources += [
"src/base/platform/platform-posix.cc"
]
} }
if (is_linux) { if (is_linux) {
sources += [ "src/base/platform/platform-linux.cc" ] sources += [
"src/base/platform/platform-linux.cc"
]
libs = [ "rt" ] libs = [ "rt" ]
} else if (is_android) { } else if (is_android) {
@ -1359,10 +1347,7 @@ source_set("v8_libbase") {
defines += [ "_CRT_RAND_S" ] # for rand_s() defines += [ "_CRT_RAND_S" ] # for rand_s()
libs = [ libs = [ "winmm.lib", "ws2_32.lib" ]
"winmm.lib",
"ws2_32.lib",
]
} }
# TODO(jochen): Add support for qnx, freebsd, openbsd, netbsd, and solaris. # TODO(jochen): Add support for qnx, freebsd, openbsd, netbsd, and solaris.
@ -1381,11 +1366,7 @@ source_set("v8_libplatform") {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config_base", ":features", ":toolchain" ]
":internal_config_base",
":features",
":toolchain",
]
if (!is_debug) { if (!is_debug) {
configs -= [ "//build/config/compiler:optimize" ] configs -= [ "//build/config/compiler:optimize" ]
@ -1411,11 +1392,7 @@ if (current_toolchain == host_toolchain) {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config", ":features", ":toolchain" ]
":internal_config",
":features",
":toolchain",
]
deps = [ deps = [
":v8_base", ":v8_base",
@ -1424,43 +1401,6 @@ if (current_toolchain == host_toolchain) {
"//build/config/sanitizers:deps", "//build/config/sanitizers:deps",
] ]
} }
executable("d8") {
sources = [
"src/d8.cc",
]
deps = [
":d8_js2c",
":v8",
":v8_libplatform",
]
configs += [
":internal_config",
":features",
":toolchain",
]
# TODO(GYP): Build option for readline support.
if (is_posix) {
sources += [ "src/d8-posix.cc" ]
} else if (is_win) {
sources += [ "src/d8-windows.cc" ]
}
if (component_mode != "shared_library") {
sources += [
"src/d8-debug.cc",
"$target_gen_dir/d8-js.cc",
]
}
if (v8_enable_i18n_support) {
deps += [ "//third_party/icu" ]
}
# TODO(GYP) v8_enable_vtunejit support in d8.
}
} }
############################################################################### ###############################################################################
@ -1468,6 +1408,7 @@ if (current_toolchain == host_toolchain) {
# #
if (component_mode == "shared_library") { if (component_mode == "shared_library") {
component("v8") { component("v8") {
sources = [ sources = [
"src/v8dll-main.cc", "src/v8dll-main.cc",
@ -1493,11 +1434,7 @@ if (component_mode == "shared_library") {
configs -= [ "//build/config/compiler:chromium_code" ] configs -= [ "//build/config/compiler:chromium_code" ]
configs += [ "//build/config/compiler:no_chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code" ]
configs += [ configs += [ ":internal_config", ":features", ":toolchain" ]
":internal_config",
":features",
":toolchain",
]
direct_dependent_configs = [ ":external_config" ] direct_dependent_configs = [ ":external_config" ]
@ -1506,7 +1443,9 @@ if (component_mode == "shared_library") {
libs += [ "log" ] libs += [ "log" ]
} }
} }
} else { } else {
group("v8") { group("v8") {
if (v8_use_snapshot && v8_use_external_startup_data) { if (v8_use_snapshot && v8_use_external_startup_data) {
deps = [ deps = [
@ -1528,4 +1467,5 @@ if (component_mode == "shared_library") {
direct_dependent_configs = [ ":external_config" ] direct_dependent_configs = [ ":external_config" ]
} }
} }