#!/usr/bin/env python # Copyright 2015 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import argparse import os import subprocess import sys import webbrowser SKY_TOOLS_DIR = os.path.dirname(os.path.abspath(__file__)) SKY_ROOT = os.path.dirname(SKY_TOOLS_DIR) SRC_ROOT = os.path.dirname(SKY_ROOT) WORKBENCH_DIR = os.path.join(SRC_ROOT, 'sky', 'packages', 'workbench') SKY_PACKAGE = os.path.join(SRC_ROOT, 'sky', 'packages', 'sky') DART_SDK = os.path.join(SRC_ROOT, 'third_party', 'dart-sdk', 'dart-sdk', 'bin') DARTDOC = os.path.join(DART_SDK, 'dartdoc') def main(): parser = argparse.ArgumentParser(description='Sky Documentation Generator') parser.add_argument('--open', action='store_true', help='Open docs after building.') args = parser.parse_args() doc_dir = os.path.join(SKY_PACKAGE, 'doc', 'api') cmd = [ DARTDOC, '--header', os.path.join(SKY_PACKAGE, 'doc', 'styles.html'), '--input', SKY_PACKAGE, '--output', doc_dir ] subprocess.check_call(cmd, cwd=WORKBENCH_DIR) if args.open: webbrowser.open(os.path.join(doc_dir, 'index.html')) if __name__ == '__main__': sys.exit(main())