author Mihai Sucan <>
Mon, 17 Dec 2012 22:06:13 +0200
changeset 125538 8ba98799b6bbf1a6aa20470d7f22780fc72ad300
parent 124202 051613fd8775ca08852db74e244aff2324ae2146
child 128920 ec072cee05025335f0637de7e1dab95623fe8a56
permissions -rwxr-xr-x
Bug 792062 - Make the tabNavigated notification reusable by the Web Console; r=past

#!/usr/bin/env python
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at

from __future__ import print_function, unicode_literals

import os
import platform
import sys

# Ensure we are running Python 2.7+. We put this check here so we generate a
# user-friendly error message rather than a cryptic stack trace on module
# import.
if sys.version_info[0] == 2 and sys.version_info[1] < 7:
    print('Python 2.7 or above is required to run mach.')
    print('You are running', platform.python_version())

# TODO Bug 794506 Integrate with the in-tree virtualenv configuration.

# Individual files providing mach commands.

our_dir = os.path.dirname(os.path.abspath(__file__))

    import mach.main
except ImportError:
    sys.path[0:0] = [os.path.join(our_dir, path) for path in SEARCH_PATHS]

    import mach.main

# All of the code is in a module because EVERYTHING IS A LIBRARY.
mach = mach.main.Mach(our_dir)

for path in MACH_MODULES:
    mach.load_commands_from_file(os.path.join(our_dir, path))