diff options
Diffstat (limited to 'Source/WebKit/chromium/scripts/generate_devtools_html.py')
-rw-r--r-- | Source/WebKit/chromium/scripts/generate_devtools_html.py | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/Source/WebKit/chromium/scripts/generate_devtools_html.py b/Source/WebKit/chromium/scripts/generate_devtools_html.py new file mode 100644 index 0000000..b9b5fff --- /dev/null +++ b/Source/WebKit/chromium/scripts/generate_devtools_html.py @@ -0,0 +1,86 @@ +#!/usr/bin/env python +# +# Copyright (C) 2010 Google Inc. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +import os.path +import sys + + +def GenerateIncludeTag(resource_path): + (dir_name, file_name) = os.path.split(resource_path) + if (file_name.endswith('.js')): + return ' <script type="text/javascript" src="%s"></script>\n' % file_name + elif (file_name.endswith('.css')): + return ' <link rel="stylesheet" type="text/css" href="%s">\n' % file_name + else: + assert resource_path + + +def main(argv): + + if len(argv) < 5: + print('usage: %s ignored inspector_html devtools_html debug' + ' css_and_js_files_list' % argv[0]) + return 1 + + # The first argument is ignored. We put 'webkit.gyp' in the inputs list + # for this script, so every time the list of script gets changed, our html + # file is rebuilt. + inspector_html_name = argv[2] + devtools_html_name = argv[3] + debug = argv[4] != '0' + inspector_html = open(inspector_html_name, 'r') + devtools_html = open(devtools_html_name, 'w') + + for line in inspector_html: + if not debug and '<script ' in line: + continue + if not debug and '<link ' in line: + continue + if '</head>' in line: + if debug: + for resource in argv[5:]: + devtools_html.write(GenerateIncludeTag(resource)) + else: + devtools_html.write(GenerateIncludeTag("devTools.css")) + devtools_html.write(GenerateIncludeTag("DevTools.js")) + devtools_html.write(line) + + devtools_html.close() + inspector_html.close() + + # Touch output file directory to make sure that Xcode will copy + # modified resource files. + if sys.platform == 'darwin': + output_dir_name = os.path.dirname(devtools_html_name) + os.utime(output_dir_name, None) + +if __name__ == '__main__': + sys.exit(main(sys.argv)) |