project.conf: Renamed pkg.required to pkg.required.jw

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2016-09-17 10:14:08 +00:00
commit e82a0481b5
2 changed files with 20 additions and 16 deletions

View file

@ -79,7 +79,7 @@ cat_make_project_conf()
group = System/Libraries group = System/Libraries
subpackages = $subpackages subpackages = $subpackages
[pkg.required] [pkg.required.jw]
run = ytools-run = VERSION run = ytools-run = VERSION
devel = $name-run = VERSION-REVISION, ytools-devel = VERSION devel = $name-run = VERSION-REVISION, ytools-devel = VERSION
build = ytools-devel build = ytools-devel

View file

@ -10,16 +10,11 @@ from os.path import basename
from os.path import realpath from os.path import realpath
import re import re
# meaning of pkg.required variables # meaning of pkg.required.xxx variables
# build: needs to be built and installed before this can be built # build: needs to be built and installed before this can be built
# devel: needs to be installed before this-devel can be installed, i.e. before _other_ packages can be built against this # devel: needs to be installed before this-devel can be installed, i.e. before _other_ packages can be built against this
# run: needs to be installed before this-run can be installed, i.e. before this and other packages can run with this # run: needs to be installed before this-run can be installed, i.e. before this and other packages can run with this
def re_section(name):
return re.compile('[' + name + ']'
'.*?'
'(?=[)',
re.DOTALL)
# --------------------------------------------------------------------- helpers # --------------------------------------------------------------------- helpers
def debug(*objs): def debug(*objs):
@ -29,6 +24,12 @@ def debug(*objs):
def proj_dir(name): def proj_dir(name):
return projs_root + '/' + name return projs_root + '/' + name
def re_section(name):
return re.compile('[' + name + ']'
'.*?'
'(?=[)',
re.DOTALL)
# TODO: add support for customizing this in project.conf # TODO: add support for customizing this in project.conf
def htdocs_dir(name): def htdocs_dir(name):
pd = proj_dir(name) pd = proj_dir(name)
@ -38,6 +39,9 @@ def htdocs_dir(name):
return r return r
return None return None
def required_cascade():
return []
def strip_module_from_spec(mod): def strip_module_from_spec(mod):
return re.sub(r'-devel$|-run$', '', re.split('([=><]+)', mod)[0].strip()) return re.sub(r'-devel$|-run$', '', re.split('([=><]+)', mod)[0].strip())
@ -168,7 +172,7 @@ def get_libname(names):
# -L needs to contain more paths than libs linked with -l would require # -L needs to contain more paths than libs linked with -l would require
def get_ldpathflags(names): def get_ldpathflags(names):
deps = get_modules_from_project_txt(names, 'pkg.required', 'build', deps = get_modules_from_project_txt(names, 'pkg.required.jw', 'build',
scope = 2, add_self=True, names_only=True) scope = 2, add_self=True, names_only=True)
r = '' r = ''
for m in deps: for m in deps:
@ -179,7 +183,7 @@ def get_ldpathflags(names):
def get_ldflags(names): def get_ldflags(names):
#print(names) #print(names)
deps = get_modules_from_project_txt(names, 'pkg.required', 'build', deps = get_modules_from_project_txt(names, 'pkg.required.jw', 'build',
scope = 1, add_self=False, names_only=True) scope = 1, add_self=False, names_only=True)
#print(deps) #print(deps)
r = '' r = ''
@ -221,7 +225,7 @@ def cmd_ldlibpath(args_):
parser = argparse.ArgumentParser(description='ldlibpath') parser = argparse.ArgumentParser(description='ldlibpath')
parser.add_argument('module', nargs='*', help='Modules') parser.add_argument('module', nargs='*', help='Modules')
args=parser.parse_args(args_) args=parser.parse_args(args_)
deps = get_modules_from_project_txt(args.module, 'pkg.required', [ 'run', 'build' ], deps = get_modules_from_project_txt(args.module, 'pkg.required.jw', [ 'run', 'build' ],
scope = 2, add_self=True, names_only=True) scope = 2, add_self=True, names_only=True)
r = '' r = ''
for m in deps: for m in deps:
@ -232,7 +236,7 @@ def cmd_exepath(args_):
parser = argparse.ArgumentParser(description='exepath') parser = argparse.ArgumentParser(description='exepath')
parser.add_argument('module', nargs='*', help='Modules') parser.add_argument('module', nargs='*', help='Modules')
args=parser.parse_args(args_) args=parser.parse_args(args_)
deps = get_modules_from_project_txt(args.module, 'pkg.required', 'run', deps = get_modules_from_project_txt(args.module, 'pkg.required.jw', 'run',
scope = 2, add_self=True, names_only=True) scope = 2, add_self=True, names_only=True)
r = '' r = ''
for m in deps: for m in deps:
@ -255,7 +259,7 @@ def cmd_cflags(args_):
parser = argparse.ArgumentParser(description='ldlibpath') parser = argparse.ArgumentParser(description='ldlibpath')
parser.add_argument('module', nargs='*', help='Modules') parser.add_argument('module', nargs='*', help='Modules')
args=parser.parse_args(args_) args=parser.parse_args(args_)
deps = get_modules_from_project_txt(args.module, 'pkg.required', 'build', deps = get_modules_from_project_txt(args.module, 'pkg.required.jw', 'build',
scope = 1, add_self=True, names_only=True) scope = 1, add_self=True, names_only=True)
r = '' r = ''
for m in reversed(deps): for m in reversed(deps):
@ -266,7 +270,7 @@ def cmd_path(args_):
parser = argparse.ArgumentParser(description='path') parser = argparse.ArgumentParser(description='path')
parser.add_argument('module', nargs='*', help='Modules') parser.add_argument('module', nargs='*', help='Modules')
args=parser.parse_args(args_) args=parser.parse_args(args_)
deps = get_modules_from_project_txt(args.module, 'pkg.required', 'run', deps = get_modules_from_project_txt(args.module, 'pkg.required.jw', 'run',
scope = 2, add_self=True, names_only=True) scope = 2, add_self=True, names_only=True)
r = '' r = ''
for m in deps: for m in deps:
@ -278,7 +282,7 @@ def cmd_prereq(args_):
parser.add_argument('flavour', help='Flavour') parser.add_argument('flavour', help='Flavour')
parser.add_argument('module', nargs='*', help='Modules') parser.add_argument('module', nargs='*', help='Modules')
args=parser.parse_args(args_) args=parser.parse_args(args_)
deps = get_modules_from_project_txt(args.module, 'pkg.required', deps = get_modules_from_project_txt(args.module, 'pkg.required.jw',
args.flavour, scope = 2, add_self=False, names_only=True) args.flavour, scope = 2, add_self=False, names_only=True)
print(' '.join(deps)) print(' '.join(deps))
@ -289,7 +293,7 @@ def cmd_pkg_requires(args_):
args=parser.parse_args(args_) args=parser.parse_args(args_)
r = [] r = []
for m in args.module: for m in args.module:
value = get_value(m, 'pkg.required', args.flavour) value = get_value(m, 'pkg.required.jw', args.flavour)
if not value: if not value:
continue continue
deps = value.split(',') deps = value.split(',')
@ -355,7 +359,7 @@ def read_dep_graph(modules, section, graph):
for m in modules: for m in modules:
if m in graph: if m in graph:
continue continue
deps = get_modules_from_project_txt([ m ], 'pkg.required', section, deps = get_modules_from_project_txt([ m ], 'pkg.required.jw', section,
scope = 1, add_self=False, names_only=True) scope = 1, add_self=False, names_only=True)
if not deps is None: if not deps is None:
graph[m] = deps graph[m] = deps