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>
projects.conf is only installed with devel packages. If no such
thing is created or installed, depending packages assume that
libname = packagename, which is wrong. This patch fixes that.
Signed-off-by: Jan Lindemann <jan@janware.com>
Since the packaging machinery is pretty complicated, the information about
conflicting packages had to be passed through many APIs. The last commit
contained a patch which is left in the tree to have it in one file, it actually
is identical to this commit's diff, though. Git would save me that quirk.
Signed-off-by: Jan Lindemann <jan@janware.com>
This opens up a more concise handling of pkg.conflicts.xxx in the future, and
prepares some code simplification in projects.py.
Signed-off-by: Jan Lindemann <jan@janware.com>