a4c3ca6f2b
projects.py: Add some comments to dependency ordering code
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2023-12-18 13:00:45 +00:00
1239fb9f34
projects.py: Support line continuation in project.conf
...
This commit makes lines with backslashes at the end behave as
if the next line was appended
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-03-19 17:36:58 +00:00
e71661425c
projects.py: Fix integer comparison
...
Python 3.8 complains about integers compared with 'is not'
instead of '!=', fix that
Signed-off-by: Jan Lindemann <jan@janware.com>
2020-03-19 17:34:35 +00:00
f8df5c6825
projects.py: Make dep flavour "build" a superset of "run"
...
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>
2019-12-27 14:43:29 +00:00
3ce6eac53f
projects.py: Add -dev as a possible package suffix
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-12-08 10:39:55 +00:00
8b965f16ac
projects.py: Add missing import time
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-11-11 21:32:36 +00:00
a5306bfc80
projects.py: Fix broken error message on failed build
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-11-11 21:25:23 +00:00
6eee41ac08
projects.py: Add argument --ignore to pkg_relations()
...
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>
2019-06-21 12:52:53 +00:00
3a180033d4
projects.py fix: Read_value() does not return entire section
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-18 07:37:15 +00:00
405a61b9be
projects.py: Add print_pkg_relations()
...
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>
2019-06-15 15:20:01 +00:00
d173f91eda
projects.py: Fix ignored --prefix option
...
--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>
2019-06-15 10:01:33 +00:00
430a2173b2
projects.py: Ongoing code beautification
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-12 13:11:19 +00:00
fbf75b1220
projects.py: Ongoing code beautification
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-12 13:04:07 +00:00
298398af2b
projects.py: Remove dead code
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-12 11:28:20 +00:00
a629faab93
projects.py: Dissolve class Build into class Projects
...
This commit is the next code cleanup step. Needs more testing and more fixing.
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-12 11:26:15 +00:00
7d12ad7f8c
projects.py: Introduce class Projects
...
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>
2019-06-11 19:03:43 +00:00
187a3343c3
projects.py/get_modules_from_project_txt(): Support multiple sections
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-11 15:42:20 +00:00
a85640e58c
projects.py / pkg-relations(): Add option --recursive
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-11 11:45:20 +00:00
7abbf1d044
projects.py: Rename command requires-pkg to required-os-pkg
...
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>
2019-06-11 10:46:23 +00:00
2e3f046477
projects.py: Add option --os
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-11 10:20:16 +00:00
263820370c
projects.py: Allow import of projects.py
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-10 13:55:55 +00:00
13fa28e23f
make, scripts: Flip some more switches from pathon 2 to 3 (untested!)
...
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>
2019-06-02 12:28:13 +00:00
367dfb90c2
Fix: Basestring missing from python 3
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-10 15:34:08 +00:00
1e3d0f2c60
projects.py: Fix python3 glitches
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-10 15:23:23 +00:00
6c0c3af50f
projects.py: Remove reference to deprecated sets module
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-10 14:58:16 +00:00
e0adaa815d
projects.py: Remove bogus tabs
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-10 14:53:32 +00:00
d7da4f1cb8
mkspec-wrapper.sh: Fix append() for special characters
...
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>
2019-01-30 16:23:03 +00:00
f28afc777c
make, scripts: Add support for [pkg.provides.xxx]
...
Add Support for manually specifying arbitrary package capabilities in
project.conf.
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-01-07 14:34:58 +00:00
82a3f4dc92
projects.py: Read /usr/share/doc/packages/<name>/VERSION, too
...
Add support for searching VERSION below the project root
_and_ below /usr/share/doc/packages/
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-11-18 12:32:31 +00:00
8f196287af
projects.py: Fix bogus interpretation of os dep package version
...
requires.os.run = java-headless = 1.8.0 led to an attempt to
look up ../java-headless/VERSION
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-24 11:00:22 +00:00
4e6a237865
projects.py: Beautify logging ([] around iteration count)
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-23 13:09:58 +00:00
6224f48900
projects.py: Remove messages for build-order output
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-23 09:48:33 +00:00
83631eafc5
projects.py: Add support for --build-order
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-22 21:13:59 +00:00
f7db38275f
projects.py: Protect against null-string dependencies
...
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>
2018-10-22 20:02:48 +00:00
d8115e6b22
projects.py, pkg_relations(): Fix --no-subpackages, support multiple flavours
...
- --no-subpackages sometimes doesn\'t strip off -devel -run
- Flavours can now be comma-separated
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-15 10:13:17 +00:00
9d2e192256
projects.py: Add support for --skip-excluded to command requires-pkg
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 17:28:20 +00:00
8ef3c06234
projects.py: Optimize os_cascade()
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 16:58:32 +00:00
3b77b5ae55
projects.py: Fix and re-enable reading dependencies in-memory
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 15:59:36 +00:00
775795c8fa
projects.py: Add support for [build.exclude]
...
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>
2018-03-07 14:26:21 +00:00
fd2ca4f6ff
projects.py: Disable superfluous invocations of projects.py
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 11:40:58 +00:00
4d016534d9
projects.py: Merge build.py
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 10:51:50 +00:00
dbe88a7bfa
projects.py: Merge build.py
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 10:51:23 +00:00
f7db567bff
build.py, projects.py: Streamline both scripts
...
Make build.py and projects.py even more similar in preparation for
merging them.
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 10:17:14 +00:00
f996726bae
build.py: Eliminate another global variable
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-07 09:56:48 +00:00
6ec57849c3
projects.py: Make OS-cascade support distro version families
...
Now ubuntu-14.04 is also caught by ubuntu-14
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-06 16:35:16 +00:00
e68d4eb83b
make, scripts: Now excplicitly calling python2 executable instead of python
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-01-02 13:12:00 +00:00
378feb60ec
build.py and projects.py: Cache results queried from file system
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-08-31 18:57:13 +00:00
42e8e6522d
projects.py: Fix cache_func(), evaluated one key short of what it should have
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-08-09 14:25:15 +00:00
da3089e5b7
projects.py: Add cache_func()
...
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>
2017-08-09 13:06:18 +00:00
55862e4bd7
projects.py ldflags: Also consider devel packages
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-08-01 21:57:13 +00:00