diff options
author | Mattias Backman <mattias.backman@linaro.org> | 2011-10-20 08:58:39 +0200 |
---|---|---|
committer | Mattias Backman <mattias.backman@linaro.org> | 2011-10-20 08:58:39 +0200 |
commit | 6a992bd0015548d84c9c622b9929875dd9c1ff15 (patch) | |
tree | f61ed92dba7273458866e8a7db058709c2775fc3 | |
parent | 5b590351b5dfbe0c7a3892cc9d7c7616d724354c (diff) | |
parent | 0c157ce2a341b9befca25bf5456de570a7b855b6 (diff) |
Display qemu version in l-m-c and l-a-m-c --version output.
-rw-r--r-- | linaro_image_tools/media_create/__init__.py | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/linaro_image_tools/media_create/__init__.py b/linaro_image_tools/media_create/__init__.py index 6a9ea2c..b6759bb 100644 --- a/linaro_image_tools/media_create/__init__.py +++ b/linaro_image_tools/media_create/__init__.py @@ -18,7 +18,10 @@ # along with Linaro Image Tools. If not, see <http://www.gnu.org/licenses/>. import argparse +import subprocess +import os +from linaro_image_tools import cmd_runner from linaro_image_tools.media_create.boards import board_configs from linaro_image_tools.media_create.android_boards import android_board_configs from linaro_image_tools.__version__ import __version__ @@ -46,9 +49,26 @@ class Live256MegsAction(argparse.Action): setattr(namespace, 'is_live', True) +def get_version(): + qemu_path = '/usr/bin/qemu-arm-static' + p = cmd_runner.run(["head", "-n", "1"], + stdin=subprocess.PIPE, stdout=subprocess.PIPE) + if os.path.exists(qemu_path): + try: + # qemu-arm-static has no --version option so it fails, + # but still prints its version plus usage + cmd_runner.run(["/usr/bin/qemu-arm-static", "--version"], + stdout=p.stdin).communicate() + p.communicate() + except: + qemu_version = p.stdout.read() + else: + qemu_version = "Cannot find %s." % qemu_path + return "%s\n: %s" % (__version__, qemu_version) + def get_args_parser(): """Get the ArgumentParser for the arguments given on the command line.""" - parser = argparse.ArgumentParser(version='%(prog)s ' + __version__) + parser = argparse.ArgumentParser(version='%(prog)s ' + get_version()) group = parser.add_mutually_exclusive_group(required=True) group.add_argument( '--mmc', dest='device', help='The storage device to use.') @@ -129,7 +149,7 @@ def get_args_parser(): def get_android_args_parser(): """Get the ArgumentParser for the arguments given on the command line.""" - parser = argparse.ArgumentParser(version='%(prog)s ' + __version__) + parser = argparse.ArgumentParser(version='%(prog)s ' + get_version()) group = parser.add_mutually_exclusive_group(required=True) group.add_argument( '--mmc', dest='device', help='The storage device to use.') |