mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
projects.py: Add --exclude support to ldflags
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
0acffa7b70
commit
db9cd2755f
1 changed files with 9 additions and 4 deletions
|
|
@ -209,29 +209,33 @@ def get_libname(names):
|
|||
return ' '.join(reversed(vals))
|
||||
|
||||
# -L needs to contain more paths than libs linked with -l would require
|
||||
def get_ldpathflags(names):
|
||||
def get_ldpathflags(names, exclude = []):
|
||||
deps = get_modules_from_project_txt(names, 'pkg.required.jw', 'build',
|
||||
scope = 2, add_self=True, names_only=True)
|
||||
r = ''
|
||||
for m in deps:
|
||||
if m in exclude:
|
||||
continue
|
||||
libname = get_libname([m])
|
||||
if len(libname):
|
||||
r = r + ' -L' + proj_dir(m) + '/lib'
|
||||
print(r[1:])
|
||||
|
||||
def get_ldflags(names):
|
||||
def get_ldflags(names, exclude = []):
|
||||
#print(names)
|
||||
deps = get_modules_from_project_txt(names, 'pkg.required.jw', 'build',
|
||||
scope = 1, add_self=False, names_only=True)
|
||||
#print(deps)
|
||||
r = ''
|
||||
for m in reversed(deps):
|
||||
if m in exclude:
|
||||
continue
|
||||
libname = get_libname([m])
|
||||
if len(libname):
|
||||
#r = r + ' -L' + proj_dir(m) + '/lib -l' + libname
|
||||
r = r + ' -l' + libname
|
||||
if len(r):
|
||||
ldpathflags = get_ldpathflags(names)
|
||||
ldpathflags = get_ldpathflags(names, exclude)
|
||||
if ldpathflags:
|
||||
r = ldpathflags + ' ' + r
|
||||
return r[1::]
|
||||
|
|
@ -309,8 +313,9 @@ def cmd_libname(args_):
|
|||
def cmd_ldflags(args_):
|
||||
parser = argparse.ArgumentParser(description='ldlibpath')
|
||||
parser.add_argument('module', nargs='*', help='Modules')
|
||||
parser.add_argument('--exclude', action='append', help='Exclude Modules', default=[])
|
||||
args=parser.parse_args(args_)
|
||||
print(get_ldflags(args.module))
|
||||
print(get_ldflags(args.module, args.exclude))
|
||||
|
||||
def cmd_cflags(args_):
|
||||
parser = argparse.ArgumentParser(description='cflags')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue