Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(196)

Side by Side Diff: runtime/vm/BUILD.gn

Issue 2832353002: Add support for building patched_sdk and platform.dill for dart2js: (Closed)
Patch Set: fix .gn circularity by removing use of rebase_path Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « pkg/front_end/tool/fasta_perf.dart ('k') | tools/patch_sdk.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 # for details. All rights reserved. Use of this source code is governed by a 2 # for details. All rights reserved. Use of this source code is governed by a
3 # BSD-style license that can be found in the LICENSE file. 3 # BSD-style license that can be found in the LICENSE file.
4 4
5 import("../../build/executable_suffix.gni") 5 import("../../build/executable_suffix.gni")
6 import("../../build/prebuilt_dart_sdk.gni") 6 import("../../build/prebuilt_dart_sdk.gni")
7 import("../../utils/generate_patch_sdk.gni")
7 import("gypi_contents.gni") 8 import("gypi_contents.gni")
8 import("../runtime_args.gni") 9 import("../runtime_args.gni")
9 10
10 config("libdart_vm_config") { 11 config("libdart_vm_config") {
11 if (defined(is_fuchsia) && is_fuchsia) { 12 if (defined(is_fuchsia) && is_fuchsia) {
12 libs = [ "magenta" ] 13 libs = [ "magenta" ]
13 } else if (is_win) { 14 } else if (is_win) {
14 libs = [ 15 libs = [
15 "advapi32.lib", 16 "advapi32.lib",
16 "shell32.lib", 17 "shell32.lib",
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after
374 inputs = [] 375 inputs = []
375 output = invoker.output 376 output = invoker.output
376 script = "../tools/concatenate_patches.py" 377 script = "../tools/concatenate_patches.py"
377 args = [ 378 args = [
378 "--output", 379 "--output",
379 rebase_path(output, root_build_dir), 380 rebase_path(output, root_build_dir),
380 ] 381 ]
381 } 382 }
382 } 383 }
383 384
384 template("generate_patched_sdk") { 385 template("generate_vm_patched_sdk") {
385 assert(defined(invoker.libraries), "Need libraries in $target_name") 386 assert(defined(invoker.libraries), "Need libraries in $target_name")
386 387
387 concatenation_target_names = [] 388 concatenation_target_names = []
388 389
389 # Concatenate vm library patches. 390 # Concatenate vm library patches.
390 foreach(library, invoker.libraries) { 391 foreach(library, invoker.libraries) {
391 name = library[0] 392 name = library[0]
392 393
393 target_output = "$target_gen_dir/patches/${name}_patch.dart" 394 target_output = "$target_gen_dir/patches/${name}_patch.dart"
394 concatenate_patch("concatenate_${name}_patch") { 395 concatenate_patch("concatenate_${name}_patch") {
395 libsources = rebase_path(library[1], ".", library[2]) 396 libsources = rebase_path(library[1], ".", library[2])
396 output = target_output 397 output = target_output
397 } 398 }
398 concatenation_target_names += [ ":concatenate_${name}_patch" ] 399 concatenation_target_names += [ ":concatenate_${name}_patch" ]
399 } 400 }
400 401
401 # Build the patched sdk out of the concatenated patches and the special 402 # Build the patched sdk out of the concatenated patches and the special
402 # libraries. 403 # libraries.
403 action(target_name) { 404 generate_patched_sdk(target_name) {
405 mode = "vm"
404 deps = concatenation_target_names 406 deps = concatenation_target_names
405 if (!prebuilt_dart_exe_works) { 407 input_patches_dir = "$target_gen_dir/patches"
406 deps += [ "../bin:dart_bootstrap($host_toolchain)" ] 408 patched_sdk_dir = "patched_sdk"
407 }
408
409 patches_dir = "$target_gen_dir/patches"
410 patched_sdk_dir = "$root_out_dir/patched_sdk"
411
412 script = "../../tools/patch_sdk.py"
413
414 # We list the `patch_sdk.dart` tool here because the [script] (which is
415 # implicitly an input) will call it.
416 inputs = [
417 "../../tools/patch_sdk.dart",
418 ]
419 depfile = "$root_out_dir/patched_sdk.d"
420
421 outputs = [
422 # Instead of listing all outputs we list a single well-known one.
423 "${patched_sdk_dir}/platform.dill",
424 ]
425
426 args = [ "--quiet" ]
427 if (!prebuilt_dart_exe_works) {
428 dart_out_dir = get_label_info("../bin:dart_bootstrap($host_toolchain)",
429 "root_out_dir")
430 dart_bootstrap =
431 rebase_path("$dart_out_dir/dart_bootstrap$executable_suffix")
432 args += [
433 "--dart-executable",
434 dart_bootstrap,
435 ]
436 }
437 args += [
438 "vm",
439 rebase_path("../../sdk"),
440 rebase_path(patches_dir, root_build_dir),
441 rebase_path(patched_sdk_dir, root_build_dir),
442 rebase_path("../../.packages"),
443 ]
444 } 409 }
445 } 410 }
446 411
447 generate_patched_sdk("patched_sdk") { 412 generate_vm_patched_sdk("patched_sdk") {
448 libraries = [ 413 libraries = [
449 [ 414 [
450 "async", 415 "async",
451 processed_gypis.async_runtime_sources, 416 processed_gypis.async_runtime_sources,
452 "../lib", 417 "../lib",
453 ], 418 ],
454 [ 419 [
455 "collection", 420 "collection",
456 processed_gypis.collection_runtime_sources, 421 processed_gypis.collection_runtime_sources,
457 "../lib", 422 "../lib",
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
506 processed_gypis.vmservice_runtime_sources, 471 processed_gypis.vmservice_runtime_sources,
507 "../lib", 472 "../lib",
508 ], 473 ],
509 [ 474 [
510 "io", 475 "io",
511 processed_gypis.bin_io_sources, 476 processed_gypis.bin_io_sources,
512 "../bin", 477 "../bin",
513 ], 478 ],
514 ] 479 ]
515 } 480 }
OLDNEW
« no previous file with comments | « pkg/front_end/tool/fasta_perf.dart ('k') | tools/patch_sdk.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698