diff --git a/scripts/projects.py b/scripts/projects.py index c909e96a..4409c847 100644 --- a/scripts/projects.py +++ b/scripts/projects.py @@ -112,8 +112,22 @@ def get_libname(names): scope = 1, add_self=False, names_only=True) if not vals: return ' '.join(names) + if 'none' in vals: + vals.remove('none') return ' '.join(reversed(vals)) +def get_ldflags(names): + deps = get_modules_from_project_txt(names, 'pkg.required', 'build', + scope = 1, add_self=True, names_only=True) + r = '' + for m in reversed(deps): + libname = get_libname([m]) + if len(libname): + r = r + ' -L' + proj_dir(m) + '/lib -l' + libname + if len(r): + return r[1::] + return '' + # --------------------------------------------------------------------- commands def cmd_test(args_): @@ -143,12 +157,7 @@ def cmd_ldflags(args_): parser = argparse.ArgumentParser(description='ldlibpath') parser.add_argument('module', nargs='*', help='Modules') args=parser.parse_args(args_) - deps = get_modules_from_project_txt(args.module, 'pkg.required', 'build', - scope = 1, add_self=True, names_only=True) - r = '' - for m in reversed(deps): - r = r + ' -L' + proj_dir(m) + '/lib -l' + get_libname([m]) - print r[1:] + print get_ldflags(args.module) def cmd_cflags(args_): parser = argparse.ArgumentParser(description='ldlibpath')