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
6ddbcfc932
projects.py: Assume build.libname = none for missing projects.conf
...
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>
2017-07-25 16:01:29 +00:00
3ec49304a1
projects.py: Add support for command pythonpath
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-24 10:56:51 +00:00
4827389e26
projects.py pkg-requires: Add options to query naked projects list
...
- Remove --vendor (-V), was dysfunctional, anyway
- Add options to strip the results:
--subsections (-S)
--delimiter (-d)
--no-subpackages (-p)
--no-version
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-22 18:12:36 +00:00
11770d4cc3
projects.py: Check flavours build + devel in exepath command
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-09 23:17:23 +00:00
657d306bed
projects.py: Add command getval
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-07-04 17:58:14 +00:00
79278ea8bd
defs.mk, projects.py: Fix PREREQ_BUILD ignored in LIBFLAGS
...
PREREQ_BUILD doesn\'t make it into linker flags. This patch hopefully
fixes that.
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-29 19:46:07 +00:00
c42e386c76
doc, make, scripts: Add support for [pkg.conflicts.xxx]
...
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>
2017-06-26 10:34:22 +00:00
b35a50944c
project.conf, topdir.mk, projects.py: Replace pkg.required.xxx by pkg.requires.xxx
...
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>
2017-06-26 09:33:53 +00:00
a5e00ecaa4
projects.py: Add command os-cascade
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-23 18:09:59 +00:00
3fbb704dae
projects.py fix: --flavours arguments mutilated
...
The argument to --flavours isn't correctly evaluated. It allows only one value
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-17 09:08:15 +00:00
3961d47f07
conf/jcs, make, scripts: Rename jw-build's get_os.sh to get-os.sh
...
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-12 09:35:57 +00:00