From d4fe8f639d87d5ff35e50d07d41d0c1e9f12c4e3 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 16 Feb 2015 17:57:03 +0000 Subject: lib/oe/package_manager: support exclusion from complementary glob process by regex Sometimes you do not want certain packages to be installed when installing complementary packages, e.g. when using dev-pkgs in IMAGE_FEATURES you may not want to install all packages from a particular multilib. This introduces a new PACKAGE_EXCLUDE_COMPLEMENTARY variable to allow specifying regexes to match packages to exclude. Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- scripts/oe-pkgdata-util | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'scripts/oe-pkgdata-util') diff --git a/scripts/oe-pkgdata-util b/scripts/oe-pkgdata-util index 5a9f89b31b..b075775b8f 100755 --- a/scripts/oe-pkgdata-util +++ b/scripts/oe-pkgdata-util @@ -55,7 +55,10 @@ def glob(args): logger.error('Unable to find package list file %s' % args.pkglistfile) sys.exit(1) - skipregex = re.compile("-locale-|^locale-base-|-dev$|-doc$|-dbg$|-staticdev$|^kernel-module-") + skipval = "-locale-|^locale-base-|-dev$|-doc$|-dbg$|-staticdev$|^kernel-module-" + if args.exclude: + skipval += "|" + args.exclude + skipregex = re.compile(skipval) mappedpkgs = set() with open(args.pkglistfile, 'r') as f: @@ -466,6 +469,7 @@ def main(): description='Expands one or more glob expressions over the packages listed in pkglistfile') parser_glob.add_argument('pkglistfile', help='File listing packages (one package name per line)') parser_glob.add_argument('glob', nargs="+", help='Glob expression for package names, e.g. *-dev') + parser_glob.add_argument('-x', '--exclude', help='Exclude packages matching specified regex from the glob operation') parser_glob.set_defaults(func=glob) -- cgit 1.2.3-korg