diff options
Diffstat (limited to 'chromium/tools/cr/main.py')
-rw-r--r-- | chromium/tools/cr/main.py | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/chromium/tools/cr/main.py b/chromium/tools/cr/main.py deleted file mode 100644 index dced8cd4069..00000000000 --- a/chromium/tools/cr/main.py +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2013 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. - -"""Chromium cr tool main module. - -Holds the main function and all it's support code. -""" - -import os -import sys -import cr -import cr.auto.user -import cr.autocomplete -import cr.loader - -_CONTACT = 'iancottrell@chromium.org' - - -def Main(): - """Chromium cr tool main function. - - This is the main entry point of the cr tool, it finds and loads all the - plugins, creates the context and then activates and runs the specified - command. - """ - - # Add the users plugin dir to the cr.auto.user package scan - user_path = os.path.expanduser(os.path.join('~', '.config', 'cr')) - cr.auto.user.__path__.append(user_path) - - cr.loader.Scan() - - # Build the command context - context = cr.Context( - description='The chrome dev build tool.', - epilog='Contact ' + _CONTACT + ' if you have issues with this tool.', - ) - # Install the sub-commands - for command in cr.Command.Plugins(): - context.AddSubParser(command) - - # test for the special autocomplete command - if context.autocompleting: - # After plugins are loaded so pylint: disable=g-import-not-at-top - cr.autocomplete.Complete(context) - return - # Speculative argument processing to add config specific args - context.ParseArgs(True) - cr.plugin.Activate(context) - # At this point we should know what command we are going to use - command = cr.Command.GetActivePlugin(context) - # Do some early processing, in case it changes the build dir - if command: - command.EarlyArgProcessing(context) - # Update the activated set again, in case the early processing changed it - cr.plugin.Activate(context) - # Load the build specific configuration - found_build_dir = cr.base.client.LoadConfig(context) - # Final processing or arguments - context.ParseArgs() - cr.plugin.Activate(context) - # If we did not get a command before, it might have been fixed. - if command is None: - command = cr.Command.GetActivePlugin(context) - # If the verbosity level is 3 or greater, then print the environment here - if context.verbose >= 3: - context.DumpValues(context.verbose > 3) - if command is None: - print context.Substitute('No command specified.') - exit(1) - if command.requires_build_dir: - if not found_build_dir: - if not context.Find('CR_OUT_FULL'): - print context.Substitute( - 'No build directory specified. Please use cr init to make one.') - else: - print context.Substitute( - 'Build {CR_BUILD_DIR} not a valid build directory') - exit(1) - if context.Find('CR_VERSION') != cr.base.client.VERSION: - print context.Substitute( - 'Build {CR_BUILD_DIR} is for the wrong version of cr') - print 'Please run cr init to reset it' - exit(1) - cr.Platform.Prepare(context) - if context.verbose >= 1: - print context.Substitute( - 'Running cr ' + command.name + ' for {CR_BUILD_DIR}') - # Invoke the given command - command.Run(context) - -if __name__ == '__main__': - sys.exit(Main()) |