diff --git a/scripts/projects.py b/scripts/projects.py index 880da558..3eff1247 100644 --- a/scripts/projects.py +++ b/scripts/projects.py @@ -56,7 +56,7 @@ class ResultCache(object): class Build(object): def __init__(self): - self.__os_cascade = os_cascade() + pass def find_proj_path(self, name): name=name.replace("dspider-", "") @@ -156,8 +156,9 @@ class Build(object): # -- check exclude exclude = get_modules_from_project_txt([ module ], 'build', 'exclude', scope = 1, add_self=False, names_only=True) + cascade = os_cascade() + [ 'all' ] for p1 in exclude: - for p2 in self.__os_cascade + [ 'all' ]: + for p2 in cascade: if p1 == p2: print('| Configured to skip build on platform >' + p1 + '<') print('`' + delim + ' <') @@ -304,6 +305,9 @@ def htdocs_dir(name): return None def os_cascade(): + global glob_os_cascade + if glob_os_cascade is not None: + return glob_os_cascade r = [ 'os', platform.system().lower() ] os = res_cache.run(get_os, []) name = re.sub('-.*', '', os) @@ -320,6 +324,7 @@ def os_cascade(): r.append(os) # e.g. os, linux, suse, suse-tumbleweed #return [ 'os', platform.system().lower(), name, os ] + glob_os_cascade = r return r def strip_module_from_spec(mod): @@ -819,6 +824,9 @@ res_cache = ResultCache() dep_cache = {} my_dir = os.path.dirname(os.path.realpath(__file__)) do_debug = False +topdir = None +top_name = None +glob_os_cascade = None skip = 0 for a in sys.argv[1::]: @@ -832,9 +840,6 @@ for a in sys.argv[1::]: if a[0] != '-': break -topdir = None -top_name = None - parser = argparse.ArgumentParser(description='Project metadata evaluation') parser.add_argument('cmd', default='', help='Command') parser.add_argument('--debug', '-d', action='store_true',