blob: d39335449193dd8c5ec518401e771b7c94db16f7 [file] [log] [blame]
# Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
'variables' : {
'script_suffix%': '',
'conditions' : [
['OS=="win"', {
'variables' : {
'script_suffix': '.bat',
'targets': [
'target_name': 'api_docs',
'type': 'none',
'dependencies': [
'includes': [
'actions': [
'action_name': 'run_apidoc',
# The 'inputs' list records the files whose timestamps are
# compared to the files listed in 'outputs'. If a file
# 'outputs' doesn't exist or if a file in 'inputs' is newer
# than a file in 'outputs', this action is executed. Notice
# that the dependencies listed above has nothing to do with
# when this action is executed. You must list a file in
# 'inputs' to make sure that it exists before the action is
# executed, or to make sure this action is re-run.
# We want to build the platform documentation whenever
# dartdoc, apidoc, or its dependency changes. This prevents
# people from accidentally breaking apidoc when making
# changes to the platform libraries and or when modifying
# dart2js or the VM.
# In addition, we want to make sure that the platform
# documentation is regenerated when the platform sources
# changes.
# So we want this action to be re-run when a dart file
# changes in this directory, or in the SDK library (we may
# no longer need to list the files in ../../runtime/lib and
# ../../runtime/bin, as most of them has moved to
# ../../sdk/lib).
# In addition, we want to make sure the documentation is
# regenerated when a resource file (CSS, PNG, etc) is
# updated. This is because these files are also copied to
# the output directory.
'inputs': [
'<!@(["python", "../../tools/", "\\.(css|ico|js|json|png|sh|txt|yaml|py)$", ".", "../../sdk/lib/_internal/dartdoc"])',
'<!@(["python", "../../tools/", "\\.dart$", ".", "../../sdk/lib", "../../runtime/lib", "../../runtime/bin"])',
'outputs': [
'action': [
'--version=<!@(["python", "../../tools/"])',
'message': 'Running apidoc: <(_action)',