make, scripts: Add support for release dependencies

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2017-03-26 17:56:33 +00:00
commit 562ee5fc49
3 changed files with 9 additions and 3 deletions

View file

@ -23,6 +23,7 @@ build = cvs, make, gcc, automake, autoconf, inkscape
[pkg.required.suse]
build = glib2-devel, boost-devel
release = rpmbuild
[pkg.required.debian]
build = libglib2.0-dev, libboost-dev

View file

@ -67,10 +67,14 @@ clean: done.clean
clean-dirs:
ls */dirs-all.done 2>/dev/null | sed 's%/.*%%' | xargs -r $(BUILD_PY) clean
echo-required-pkg:
echo-prereq-build:
@make pull.done >/dev/null 2>&1
@python $(MOD_SCRIPT_DIR)/projects.py $(PROJECTS_PY_EXTRA_ARGS) required-pkg $(BUILD_PROJECTS)
echo-prereq-release:
@make pull.done >/dev/null 2>&1
@python $(MOD_SCRIPT_DIR)/projects.py $(PROJECTS_PY_EXTRA_ARGS) required-pkg --flavour release $(BUILD_PROJECTS)
doc-project doc-module:
$(BROWSER) https://janware.com/wiki/pub/sw:build:

View file

@ -266,14 +266,15 @@ def cmd_test(args_):
def cmd_required_pkg(args_):
parser = argparse.ArgumentParser(description='required-pkg')
parser.add_argument('module', nargs='*', help='Modules')
parser.add_argument('--flavours', help='Dependency flavours', default='build')
args=parser.parse_args(args_)
deps = get_modules_from_project_txt(args.module, 'pkg.required.jw', [ 'build' ],
deps = get_modules_from_project_txt(args.module, 'pkg.required.jw', args.flavours.split(),
scope = 2, add_self=True, names_only=True)
subsecs = pkg_required_os_cascade()
debug("subsecs = ", subsecs)
required = []
for s in subsecs:
vals = collect_values(deps, 'pkg.required.' + s, 'build')
vals = collect_values(deps, 'pkg.required.' + s, args.flavours)
if vals:
required = required + vals
# TODO: add all not in build tree as -devel