Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / trace-viewer / trace_viewer / build / generate_about_tracing_contents.py
1 # Copyright (c) 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 import optparse
6 import os
7 import sys
8
9 import tvcm
10 from trace_viewer import trace_viewer_project
11
12 def main(args):
13   parser = optparse.OptionParser(usage="%prog --outdir=<directory>")
14   parser.add_option("--outdir", dest="out_dir",
15                     help="Where to place generated content")
16   options, args = parser.parse_args(args)
17
18   if not options.out_dir:
19     sys.stderr.write("ERROR: Must specify --outdir=<directory>")
20     parser.print_help()
21     return 1
22
23   filenames = ["about_tracing.html"]
24   project = trace_viewer_project.TraceViewerProject()
25   load_sequence = project.CalcLoadSequenceForModuleFilenames(filenames)
26
27   olddir = os.getcwd()
28   try:
29     o = open(os.path.join(options.out_dir, "about_tracing.html"), 'w')
30     try:
31       tvcm.GenerateStandaloneHTMLToFile(
32           o,
33           load_sequence,
34           title='chrome://tracing',
35           flattened_js_url='tracing.js')
36     except tvcm.module.DepsException, ex:
37       sys.stderr.write("Error: %s\n\n" % str(ex))
38       return 255
39     o.close()
40
41
42     o = open(os.path.join(options.out_dir, "about_tracing.js"), 'w')
43     tvcm.GenerateJSToFile(
44         o,
45       load_sequence,
46       use_include_tags_for_scripts=True,
47       dir_for_include_tag_root=options.out_dir)
48     o.close()
49
50   finally:
51     os.chdir(olddir)
52
53   return 0