projects.py modules shows either all modules, or modules which have one of the
key-value pairs requested for filtering via the -F option.
Signed-off-by: Jan Lindemann <jan@janware.com>
If P1 build-needs P2, make it run-need P2, too, since with the current
dependency resolution algorithm, this also adds everything needed to _run_ P2.
Which is the only thing this commit is after. It actually does too much, and
enables P1 to run, too, at least WRT P2. But that's the easiest way to resolve
the problem for now.
Signed-off-by: Jan Lindemann <jan@janware.com>
Packages that should be ignored altogether with their dependencies can now be
specified with --ignore to various commands using pkg_relations().
Signed-off-by: Jan Lindemann <jan@janware.com>
print_pkg_relations() does what pkg_relations() did before: print
the relations. pkg_relations() now only returns them, to be used
by a derived class, for instance
Signed-off-by: Jan Lindemann <jan@janware.com>
--prefix was ignored because the default was set after the commandline options
were evaluated. This commit fixes that.
Signed-off-by: Jan Lindemann <jan@janware.com>
The Projects class wraps all global variables. This is mostly a
text-replace job and results in horrible class design.
Signed-off-by: Jan Lindemann <jan@janware.com>
Rename command requires-pkg to required-os-pkg to avoid confusion with
pkg-reqires. The command could be merged into pkg-requires at a later time.
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit flips some more switches from Python 2 to Python 3 in makefiles and
Python code. Build runs through, but it's still likely to break things.
Signed-off-by: Jan Lindemann <jan@janware.com>
The append() shell function was unable to cope with special
characters, notably with () in RPM provides libnnz12.so()(64bit),
this commit fixes that. And introduces some (disabled) debug code
into projects.py.
Signed-off-by: Jan Lindemann <jan@janware.com>
A dependency of the form run = a, b, (trailing comma) led to the attempt
to build an empty project and, hence, infinite recursion
Signed-off-by: Jan Lindemann <jan@janware.com>
Also disable recent switch to in-memory dependency detection, because
it is buggy and messes up the order
Signed-off-by: Jan Lindemann <jan@janware.com>
Add a generic cache for function calls, and use it on functions doing file I/O.
This speeds the build process up considerably.
Signed-off-by: Jan Lindemann <jan@janware.com>