diff options
Diffstat (limited to 'scripts/lib/devtool/standard.py')
-rw-r--r-- | scripts/lib/devtool/standard.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index a9dd3b2c2f..2f8b194c5f 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py @@ -14,6 +14,7 @@ # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +"""Devtool standard plugins""" import os import sys @@ -28,10 +29,12 @@ from devtool import exec_build_env_command, setup_tinfoil logger = logging.getLogger('devtool') def plugin_init(pluginlist): + """Plugin initialization""" pass def add(args, config, basepath, workspace): + """Entry point for the devtool 'add' subcommand""" import bb import oe.recipeutils @@ -119,6 +122,7 @@ def add(args, config, basepath, workspace): def _check_compatible_recipe(pn, d): + """Check if the recipe is supported by devtool""" if pn == 'perf': logger.error("The perf recipe does not actually check out source and thus cannot be supported by this tool") return False @@ -151,6 +155,7 @@ def _check_compatible_recipe(pn, d): def _get_recipe_file(cooker, pn): + """Find recipe file corresponding a package name""" import oe.recipeutils recipefile = oe.recipeutils.pn_to_recipe(cooker, pn) if not recipefile: @@ -187,6 +192,7 @@ def _ls_tree(directory): def extract(args, config, basepath, workspace): + """Entry point for the devtool 'extract' subcommand""" import bb tinfoil = setup_tinfoil() @@ -204,10 +210,12 @@ def extract(args, config, basepath, workspace): def _extract_source(srctree, keep_temp, devbranch, d): + """Extract sources of a recipe""" import bb.event import oe.recipeutils def eventfilter(name, handler, event, d): + """Bitbake event filter for devtool extract operation""" if name == 'base_eventhandler': return True else: @@ -257,6 +265,7 @@ def _extract_source(srctree, keep_temp, devbranch, d): # are to handle e.g. linux-yocto's extra tasks executed = [] def exec_task_func(func, report): + """Run specific bitbake task for a recipe""" if not func in executed: deps = crd.getVarFlag(func, 'deps') if deps: @@ -343,12 +352,15 @@ def _extract_source(srctree, keep_temp, devbranch, d): return initial_rev def _add_md5(config, recipename, filename): + """Record checksum of a recipe to the md5-file of the workspace""" import bb.utils md5 = bb.utils.md5_file(filename) with open(os.path.join(config.workspace_path, '.devtool_md5'), 'a') as f: f.write('%s|%s|%s\n' % (recipename, os.path.relpath(filename, config.workspace_path), md5)) def _check_preserve(config, recipename): + """Check if a recipe was manually changed and needs to be saved in 'attic' + directory""" import bb.utils origfile = os.path.join(config.workspace_path, '.devtool_md5') newfile = os.path.join(config.workspace_path, '.devtool_md5_new') @@ -382,6 +394,7 @@ def _check_preserve(config, recipename): def modify(args, config, basepath, workspace): + """Entry point for the devtool 'modify' subcommand""" import bb import oe.recipeutils @@ -481,6 +494,7 @@ def modify(args, config, basepath, workspace): def update_recipe(args, config, basepath, workspace): + """Entry point for the devtool 'update-recipe' subcommand""" if not args.recipename in workspace: logger.error("no recipe named %s in your workspace" % args.recipename) return -1 @@ -511,7 +525,7 @@ def update_recipe(args, config, basepath, workspace): mode = args.mode def remove_patches(srcuri, patchlist): - # Remove any patches that we don't need + """Remove patches""" updated = False for patch in patchlist: patchfile = os.path.basename(patch) @@ -663,6 +677,7 @@ def update_recipe(args, config, basepath, workspace): def status(args, config, basepath, workspace): + """Entry point for the devtool 'status' subcommand""" if workspace: for recipe, value in workspace.iteritems(): print("%s: %s" % (recipe, value)) @@ -672,6 +687,7 @@ def status(args, config, basepath, workspace): def reset(args, config, basepath, workspace): + """Entry point for the devtool 'reset' subcommand""" import bb.utils if args.recipename: if args.all: @@ -713,6 +729,7 @@ def reset(args, config, basepath, workspace): def build(args, config, basepath, workspace): + """Entry point for the devtool 'build' subcommand""" import bb if not args.recipename in workspace: logger.error("no recipe named %s in your workspace" % args.recipename) @@ -724,6 +741,7 @@ def build(args, config, basepath, workspace): def register_commands(subparsers, context): + """Register devtool subcommands from this plugin""" parser_add = subparsers.add_parser('add', help='Add a new recipe', description='Adds a new recipe') parser_add.add_argument('recipename', help='Name for new recipe to add') |