From d8b2894007dc0e92ec01000f84368ef3afcc76bc Mon Sep 17 00:00:00 2001 From: Florian Albrechtskirchinger Date: Wed, 5 Feb 2025 19:29:43 +0100 Subject: [PATCH] Add base directory option to split.py Overrides the directory to look for libraries. --- split.py | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/split.py b/split.py index 476f48c..a417472 100755 --- a/split.py +++ b/split.py @@ -20,8 +20,8 @@ def walk_dir(file_name, directory): return walk_dir(file_name, os.path.join(root, subdir)) -def locate_file(file_name, search_dirs): - cur_dir = os.path.dirname(sys.argv[0]) +def locate_file(file_name, search_dirs, base_directory=None): + cur_dir = base_directory or os.path.dirname(sys.argv[0]) initial_path = os.path.join(cur_dir, file_name) if os.path.isfile(initial_path): @@ -35,10 +35,10 @@ def locate_file(file_name, search_dirs): return None -def split(lib_name, search_dirs=[], extension="cc", out="out"): +def split(lib_name, search_dirs=[], extension="cc", out="out", base_directory=None): header_name = lib_name + ".h" source_name = lib_name + "." + extension - in_file = locate_file(header_name, search_dirs) + in_file = locate_file(header_name, search_dirs, base_directory) if not in_file: print("File not found: {}".format(header_name)) return @@ -104,13 +104,24 @@ def main(): dest="libraries", help="the libraries to split (default: [httplib])", ) + args_parser.add_argument( + "-b", + "--base-directory", + help="where to look for files (default: