OLD | NEW |
| (Empty) |
1 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | |
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. | |
4 | |
5 { | |
6 'variables' : { | |
7 'script_suffix%': '', | |
8 }, | |
9 'conditions' : [ | |
10 ['OS=="win"', { | |
11 'variables' : { | |
12 'script_suffix': '.bat', | |
13 }, | |
14 }], | |
15 ], | |
16 'targets': [ | |
17 { | |
18 'target_name': 'dartdocgen', | |
19 'type': 'none', | |
20 'dependencies': [ | |
21 '../../create_sdk.gyp:create_sdk_internal', | |
22 '../../pkg/pkg.gyp:pkg_packages', | |
23 '../../pkg/pkg_files.gyp:pkg_files_stamp', | |
24 ], | |
25 'includes': [ | |
26 '../../sdk/lib/core/core_sources.gypi', | |
27 ], | |
28 'actions': [ | |
29 { | |
30 'action_name': 'run_docgen', | |
31 # The 'inputs' list records the files whose timestamps are | |
32 # compared to the files listed in 'outputs'. If a file | |
33 # 'outputs' doesn't exist or if a file in 'inputs' is newer | |
34 # than a file in 'outputs', this action is executed. Notice | |
35 # that the dependencies listed above has nothing to do with | |
36 # when this action is executed. You must list a file in | |
37 # 'inputs' to make sure that it exists before the action is | |
38 # executed, or to make sure this action is re-run. | |
39 # | |
40 # We want to build the platform documentation whenever | |
41 # dartdoc, apidoc, or its dependency changes. This prevents | |
42 # people from accidentally breaking apidoc when making | |
43 # changes to the platform libraries and or when modifying | |
44 # dart2js or the VM. | |
45 # | |
46 # In addition, we want to make sure that the platform | |
47 # documentation is regenerated when the platform sources | |
48 # changes. | |
49 # | |
50 # So we want this action to be re-run when a dart file | |
51 # changes in this directory, or in the SDK library (we may | |
52 # no longer need to list the files in ../../runtime/lib and | |
53 # ../../runtime/bin, as most of them has moved to | |
54 # ../../sdk/lib). | |
55 # | |
56 'inputs': [ | |
57 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)dart<(EXECUTABLE_SUFFIX)', | |
58 '<(SHARED_INTERMEDIATE_DIR)/utils_wrapper.dart.snapshot', | |
59 '<!@(["python", "../../tools/list_files.py", "\\.(css|ico|js|json|pn
g|sh|txt|yaml|py)$", ".", "../../sdk/lib/_internal/dartdoc"])', | |
60 # We implicitly depend on the sdk/lib and vm runtime files by depend
ing on the dart binary above. | |
61 '<!@(["python", "../../tools/list_files.py", "\\.dart$", "."])', | |
62 '../../sdk/bin/dart', | |
63 '../../sdk/bin/dart.bat', | |
64 '../../sdk/bin/dart2js', | |
65 '../../sdk/bin/dart2js.bat', | |
66 # TODO(alanknight): The docgen name is deprecated in favour of | |
67 # dartdocgen, and should be removed eventually. | |
68 '../../sdk/bin/docgen', | |
69 '../../sdk/bin/dartdocgen', | |
70 '../../sdk/bin/docgen.bat', | |
71 '../../sdk/bin/dartdocgen.bat', | |
72 '../../tools/only_in_release_mode.py', | |
73 '<(PRODUCT_DIR)/dart-sdk/README', | |
74 '<(SHARED_INTERMEDIATE_DIR)/pkg_files.stamp', | |
75 ], | |
76 'outputs': [ | |
77 '<(PRODUCT_DIR)/api_docs/docgen/index.json', | |
78 ], | |
79 'action': [ | |
80 'python', | |
81 '../../tools/only_in_release_mode.py', | |
82 '<@(_outputs)', | |
83 '--', | |
84 '<(PRODUCT_DIR)/dart-sdk/bin/dartdocgen<(script_suffix)', | |
85 '--out=<(PRODUCT_DIR)/api_docs/docgen', | |
86 '--include-sdk', | |
87 '--no-include-dependent-packages', | |
88 '--package-root=<(PRODUCT_DIR)/packages', | |
89 '--exclude-lib=async_helper', | |
90 '--exclude-lib=compiler', | |
91 '--exclude-lib=dart2js_incremental', | |
92 '--exclude-lib=docgen', | |
93 '--exclude-lib=expect', | |
94 '--exclude-lib=try', | |
95 '../../pkg' | |
96 ], | |
97 'message': 'Running dartdocgen: <(_action)', | |
98 }, | |
99 ], | |
100 } | |
101 ], | |
102 } | |
OLD | NEW |