From 6ec57849c34cf613f539e8e35efcc6c1384e8e8a Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Tue, 6 Mar 2018 16:35:16 +0000 Subject: [PATCH] projects.py: Make OS-cascade support distro version families Now ubuntu-14.04 is also caught by ubuntu-14 Signed-off-by: Jan Lindemann --- scripts/projects.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/scripts/projects.py b/scripts/projects.py index 121eb943..75028d4d 100644 --- a/scripts/projects.py +++ b/scripts/projects.py @@ -99,10 +99,23 @@ def htdocs_dir(name): return None def os_cascade(): + r = [ 'os', platform.system().lower() ] os = cache.run(get_os, []) name = re.sub('-.*', '', os) + series = os + while True: + n = re.sub('\.[0-9]+$', '', series) + if n == series: + break + r.append(n) + series = n + if not name in r: + r.append(name) + if not os in r: + r.append(os) # e.g. os, linux, suse, suse-tumbleweed - return [ 'os', platform.system().lower(), name, os ] + #return [ 'os', platform.system().lower(), name, os ] + return r def strip_module_from_spec(mod): return re.sub(r'-devel$|-run$', '', re.split('([=><]+)', mod)[0].strip()) @@ -625,7 +638,7 @@ debug("----------------------------------------- running ", ' '.join(sys.argv)) projs_root = args.prefix if args.topdir: topdir = args.topdir - top_name = cache.run(read_value, [topdir + '/make/project.conf', 'build', 'name']) + top_name = res_cache.run(read_value, [topdir + '/make/project.conf', 'build', 'name']) if not top_name: top_name = re.sub('-[0-9.-]*$', '', basename(realpath(topdir)))