poky/scripts/oe-build-perf-test
Markus Lehtonen c855cb807d oe-build-perf-test: add pre-run sanity check
The script will be required to be run in an initialized bitbake build
environment.

(From OE-Core rev: 1bce7b10283255a4498d11ead920c1f3b1dec4de)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-01 16:22:46 +01:00

2.0 KiB
Executable File

#!/usr/bin/python3

Build performance test script

Copyright (c) 2016, Intel Corporation.

This program is free software; you can redistribute it and/or modify it

under the terms and conditions of the GNU General Public License,

version 2, as published by the Free Software Foundation.

This program is distributed in the hope it will be useful, but WITHOUT

ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or

FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for

more details.

"""Build performance test script""" import argparse import logging import os import sys

sys.path.insert(0, os.path.dirname(os.path.realpath(file)) + '/lib') import scriptpath scriptpath.add_oe_lib_path() from oeqa.utils.commands import runCmd

Set-up logging

LOG_FORMAT = '[%(asctime)s] %(levelname)s: %(message)s' logging.basicConfig(level=logging.INFO, format=LOG_FORMAT) log = logging.getLogger()

def pre_run_sanity_check(): """Sanity check of build environment""" build_dir = os.environ.get("BUILDDIR") if not build_dir: log.error("BUILDDIR not set. Please run the build environmnent setup " "script.") return False if os.getcwd() != build_dir: log.error("Please run this script under BUILDDIR (%s)", build_dir) return False

ret = runCmd('which bitbake', ignore_status=True)
if ret.status:
    log.error("bitbake command not found")
    return False

return True

def parse_args(argv): """Parse command line arguments""" parser = argparse.ArgumentParser( formatter_class=argparse.ArgumentDefaultsHelpFormatter)

parser.add_argument('-D', '--debug', action='store_true',
                    help='Enable debug level logging')

return parser.parse_args(argv)

def main(argv=None): """Script entry point""" args = parse_args(argv)

if args.debug:
    log.setLevel(logging.DEBUG)

if not pre_run_sanity_check():
    return 1

return 0

if name == 'main': sys.exit(main())