From 9a4592d5c185aa1044b9021c437eedd0c0e5279d Mon Sep 17 00:00:00 2001 From: Ryan Pessa Date: Fri, 8 Jan 2016 09:41:40 -0600 Subject: [PATCH] add custom blacklist/whitelist support to sdl2 bootstrap --- .../bootstraps/sdl2/build/build.py | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pythonforandroid/bootstraps/sdl2/build/build.py b/pythonforandroid/bootstraps/sdl2/build/build.py index 8192606565..526e2ef72d 100755 --- a/pythonforandroid/bootstraps/sdl2/build/build.py +++ b/pythonforandroid/bootstraps/sdl2/build/build.py @@ -292,6 +292,7 @@ def make_package(args): def parse_args(args=None): + global BLACKLIST_PATTERNS, WHITELIST_PATTERNS import argparse ap = argparse.ArgumentParser(description='''\ Package a Python application for Android. @@ -336,6 +337,14 @@ def parse_args(args=None): ap.add_argument('--wakelock', dest='wakelock', action='store_true', help=('Indicate if the application needs the device ' 'to stay on')) + ap.add_argument('--blacklist', dest='blacklist', + default=join(curdir, 'blacklist.txt'), + help=('Use a blacklist file to match unwanted file in ' + 'the final APK')) + ap.add_argument('--whitelist', dest='whitelist', + default=join(curdir, 'whitelist.txt'), + help=('Use a whitelist file to prevent blacklisting of ' + 'file in the final APK')) if args is None: args = sys.argv[1:] @@ -348,6 +357,18 @@ def parse_args(args=None): if args.meta_data is None: args.meta_data = [] + if args.blacklist: + with open(args.blacklist) as fd: + patterns = [x.strip() for x in fd.read().splitlines() + if x.strip() and not x.strip().startswith('#')] + BLACKLIST_PATTERNS += patterns + + if args.whitelist: + with open(args.whitelist) as fd: + patterns = [x.strip() for x in fd.read().splitlines() + if x.strip() and not x.strip().startswith('#')] + WHITELIST_PATTERNS += patterns + make_package(args) if __name__ == "__main__":