OLD | NEW |
1 # Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 # Copyright (c) 2016, 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("../utils/create_timestamp.gni") | 5 import("../utils/create_timestamp.gni") |
6 | 6 |
7 template("make_third_party_pkg_files_stamp") { | 7 template("make_third_party_pkg_files_stamp") { |
8 assert(defined(invoker.pattern), "Must define the file pattern") | |
9 assert(defined(invoker.id), "Must define the stamp file id") | 8 assert(defined(invoker.id), "Must define the stamp file id") |
10 path = rebase_path("../third_party/pkg") | 9 path = rebase_path("../third_party/pkg") |
11 if (defined(invoker.path)) { | 10 if (defined(invoker.path)) { |
12 path = invoker.path | 11 path = invoker.path |
13 } | 12 } |
14 id = invoker.id | 13 id = invoker.id |
15 create_timestamp_file(target_name) { | 14 create_timestamp_file(target_name) { |
16 pattern = invoker.pattern | 15 if (defined(invoker.pattern)) { |
| 16 pattern = invoker.pattern |
| 17 } |
17 path = path | 18 path = path |
18 new_base = "//" | 19 new_base = "//" |
19 output = "$target_gen_dir/third_party_pkg_files_$id.stamp" | 20 output = "$target_gen_dir/third_party_pkg_files_$id.stamp" |
20 } | 21 } |
21 } | 22 } |
22 | 23 |
23 make_third_party_pkg_files_stamp("make_third_party_pkg_files_0_stamp") { | 24 make_third_party_pkg_files_stamp("make_third_party_pkg_files_0_stamp") { |
24 pattern = "^(?!.*/test/).*(?<!_test)[.]dart\$" | |
25 path = rebase_path(".") | 25 path = rebase_path(".") |
26 id = "0" | 26 id = "0" |
27 } | 27 } |
28 | 28 |
29 make_third_party_pkg_files_stamp("make_third_party_pkg_files_1_stamp") { | 29 make_third_party_pkg_files_stamp("make_third_party_pkg_files_1_stamp") { |
30 pattern = "^(?!.*_test\.dart).*[a-k]\.dart\$" | 30 pattern = "[a-k].*" |
31 id = "1" | 31 id = "1" |
32 } | 32 } |
33 | 33 |
34 make_third_party_pkg_files_stamp("make_third_party_pkg_files_2_stamp") { | 34 make_third_party_pkg_files_stamp("make_third_party_pkg_files_2_stamp") { |
35 pattern = "^(?!.*_test\.dart).*[l-r]\.dart\$" | 35 pattern = "[l-r].*" |
36 id = "2" | 36 id = "2" |
37 } | 37 } |
38 | 38 |
39 make_third_party_pkg_files_stamp("make_third_party_pkg_files_3_stamp") { | 39 make_third_party_pkg_files_stamp("make_third_party_pkg_files_3_stamp") { |
40 pattern = "^(?!.*_test\.dart).*[^a-r]\.dart\$" | 40 pattern = "[s-z].*" |
41 id = "3" | 41 id = "3" |
42 } | 42 } |
43 | 43 |
44 action("pkg_files_stamp") { | 44 action("pkg_files_stamp") { |
45 deps = [ | 45 deps = [ |
46 ":make_third_party_pkg_files_0_stamp", | 46 ":make_third_party_pkg_files_0_stamp", |
47 ":make_third_party_pkg_files_1_stamp", | 47 ":make_third_party_pkg_files_1_stamp", |
48 ":make_third_party_pkg_files_2_stamp", | 48 ":make_third_party_pkg_files_2_stamp", |
49 ":make_third_party_pkg_files_3_stamp", | 49 ":make_third_party_pkg_files_3_stamp", |
50 ] | 50 ] |
51 | 51 |
52 stamp0_outputs = get_target_outputs(":make_third_party_pkg_files_0_stamp") | 52 stamp0_outputs = get_target_outputs(":make_third_party_pkg_files_0_stamp") |
53 stamp1_outputs = get_target_outputs(":make_third_party_pkg_files_1_stamp") | 53 stamp1_outputs = get_target_outputs(":make_third_party_pkg_files_1_stamp") |
54 stamp2_outputs = get_target_outputs(":make_third_party_pkg_files_2_stamp") | 54 stamp2_outputs = get_target_outputs(":make_third_party_pkg_files_2_stamp") |
55 stamp3_outputs = get_target_outputs(":make_third_party_pkg_files_3_stamp") | 55 stamp3_outputs = get_target_outputs(":make_third_party_pkg_files_3_stamp") |
56 | 56 |
57 inputs = ["../tools/list_files.py"] + | 57 inputs = stamp0_outputs + |
58 stamp0_outputs + | 58 stamp1_outputs + |
59 stamp1_outputs + | 59 stamp2_outputs + |
60 stamp2_outputs + | 60 stamp3_outputs |
61 stamp3_outputs | |
62 | 61 |
63 outputs = [ | 62 outputs = [ |
64 "$root_gen_dir/pkg_files.stamp" | 63 "$root_gen_dir/pkg_files.stamp" |
65 ] | 64 ] |
66 | 65 |
67 script = "../tools/create_timestamp_file.py" | 66 script = "../tools/create_timestamp_file.py" |
68 args = [ | 67 args = [ |
69 rebase_path("$root_gen_dir/pkg_files.stamp"), | 68 rebase_path("$root_gen_dir/pkg_files.stamp"), |
70 ] | 69 ] |
71 } | 70 } |
OLD | NEW |