Commit graph

662 commits

Author SHA1 Message Date
7fb117a4c4 python-tools.sh: Make __init__py recognize multiple package modules
import my.mod.thing, my.mod.thang wouldn't work, if the modules where not in
the same directory hierarchy, e.g. in $(HOME)/blah/my/mod/thing.py and
$(HOME)/blub/my/mod/thang.py, not even with PYTHONPATH=$(HOME)/blah:$(HOME)/blub.

This commit fixes that.

See https://stackoverflow.com/questions/1675734

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-04-05 12:51:11 +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
17244e9a3f pgit.sh: Add support for target refspec to PGIT_CLONE_FROM_USER
PGIT_CLONE_CLONE_FROM_USER now supports optional suffixes of the form
[:src-ref[:dst-ref]]. If present, src-ref specifies the remote branch pgit.sh
tries to fetch, and dst-ref the local branch it tries to fetch into. src-ref
defaults to "master" (as it was before) and dst-ref to nothing, i.e. no
head-update of any local branch.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-02-24 14:35:26 +00:00
3a0d85ff89 git-srv-admin.sh: Fix group ownership
Fix group ownership of newly created git directories.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-01-21 15:35:06 +00:00
d4a9bad14e jw-pkg compile-templates: Fix slashes in passwords
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-12-27 18:27:12 +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
785b1929be cvs-admin.sh: Remove trailing empty lines
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-11-13 20:14:25 +00:00
86d95a97f6 create-mkdebian.sh: Fix staging path
Staging path by default is debian/tmp, and the packager (dh_install) looks
there and in . for staged files, e.g. ./dist/src/jw-build-1.0.0-93/debian/tmp.
This doesn't match the file system layout as created by jw-build's make
install, which installs to ./dist/src/jw-build-1.0.0-93/debian/tmp/inst-root.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-11-13 12:49:28 +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
a935715036 python-tools.sh: Code beautification
This commit beautifies module import path deduction a little. It also adds
(disabled) code for importing submodules, which may or may not be enabled by a
command-line option in the future.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-10-28 12:20:52 +00:00
e3469d0ac0 pgit.sh: Rename clone remote user-xxx to jw-xxx
This looks more understandable for non-janware user cases

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-10-11 15:28:05 +00:00
db6bdc454e scm.sh + pgit.sh: Add on-demand to recurse-submodules
git pull, push, fetch use --recurse-submodules, which is non-optional for push.
Added --recurse-submodules=on-demand to all for consistency.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-10-09 15:16:25 +00:00
0023d7fdfb qemu-boot.sh: Come code cleanup
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-09-15 10:05:03 +00:00
dc7962dde9 jw-build-create-project.sh: Add more patterns to .gitignore
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-07-06 14:53:51 +00:00
8522aa73fa purge-stale-projects.sh: Purge dspc/src/dspcd
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-07-05 12:44:22 +00:00
bdd66dbc26 Everywhere: Rename MOD_SCRIPT_DIR -> JWB_SCRIPT_DIR
Follow name change of MODDIR -> JWBDIR.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-29 21:45:24 +00:00
b2d6e6f554 Everywhere: Rename MODDIR -> JWBDIR
Rename the omnipresent MODDIR variable to JWBDIR, since that's more to the
point.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-29 21:34:18 +00:00
a7edaa4a01 jw-build-create-project.sh: Follow changes in variable names
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-29 19:08:20 +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
c84f7b3f84 create-mksspec.sh: Add support for OS-cascade
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-19 09:33:12 +00:00
005eafcf1b purge-stale-projects.sh: Handle btools and dspider shared
btools and dspider shared have been moved to git. This commit makes
purge-stale-projects.sh remove the CVS debris and links. Needs to be fetched
before it can work, so make pull will have to run twice in the projects dir. To
be removed after all work trees are in sync.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-19 07:39:08 +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
305cc0a1a7 pkg.sh: Remove some (not all) unnecessarily forked processes
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-16 11:19:31 +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
458fe33260 conf/profile, make, scripts: Search-and-replace cvs.jannet.de -> cvs.janware.com
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-15 08:15:28 +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
fbdca1e418 jw-build-create-project.sh: Add mkspec.sh to .gitignore
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-03 08:31:46 +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
022d78c98d jw-pkg fix: List-template-tables output templates
This patch fixes jw-pkg. It output templates, not template-tables.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-05-16 16:00:34 +00:00
d3c5b11923 jw-build-create-project.sh: Add .cache.mk to template .gitignore
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-04-08 13:58:09 +00:00
18e0fe0d28 pkg.sh: Default wrappers installed with log-install -L to Python 3
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-15 19:05:47 +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
aa85417a17 Everywhere: Purge spaces in text files
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-03-06 12:38:20 +00:00
51e1d2a246 get-os.sh: Add support for command tuple
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-02-27 11:56:54 +00:00