python38.pc doesn't exist on OpenSUSE Tumbleweed, python-38.pc does, so use
that naming scheme. Also allow installation with DEVELOPMENT=true, failed with
the attempt to install as root user before.
Signed-off-by: Jan Lindemann <jan@janware.com>
This adds support for the variable OFFLINE_PROJECTS in projects-dir.mk and the
PGIT_IGNORE environment variable. Both go hand in hand and do what their names
insinuate. OFFLINE_PROJECTS is initialized from EXCLUDE_FROM_BUILD, which in
turn is initialized from exclude.txt and friends.
Signed-off-by: Jan Lindemann <jan@janware.com>
echo-requires doesn\'t work because all non-pkg-% targets are disabled
in rpmdist.mk, so rename it to pkg-requires. Also add support for build
deps.
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit adds support for static typechecking with mypy.
Notable additions:
- A new target "check" which does the type checking
- Py-mods.mk, meant to be included from a directory containing python modules
in subdirectories, but not being a python module itself. It makes the all
target depend on check only if PY_RUN_CHECK_AFTER_BUILD is defined and
true. That's because pypy is under heavy development, and the Ubuntu 18.04
version is too old to work for lots of the code.
Signed-off-by: Jan Lindemann <jan@janware.com>
make rpm-build sometimes fails because RPM_VERSION is taken from .cache.mk. Not
sure if this commit always resolves that entirely, but it mitigates the
problem.
Signed-off-by: Jan Lindemann <jan@janware.com>
This allows to specify modules in a test directory which a given module does
_not_ depend on and doesn't want to depend on.
Signed-off-by: Jan Lindemann <jan@janware.com>
Use cvs-update.done instead of git-pull.done as prerequisite
of git-pull-%, because otherwise broken remote own repos
might not be recoverable
Signed-off-by: Jan Lindemann <jan@janware.com>
Add checks to the git-init-submod-remote target, to keep it from
starting a job which fails halfway through
Signed-off-by: Jan Lindemann <jan@janware.com>
make carries MAKEFLAGS, PATH, LD_LIBRARY_PATH and umask from the environment to
sub-makes, which sometimes is undesirable. So, instead of make -C,
$(PRISTINE_MAKE) -C will start a sub-make with a minimal environment consisting
of MINIMAL_UMASK, MINIMAL_PATH, MINIMAL_LD_LIBRARY_PATH and MINIMAL_MAKEFLAGS
Signed-off-by: Jan Lindemann <jan@janware.com>
PY_SITE_PACKAGES_PATH is set to the first element site.getsitepackages(), which
(correctly, but in this case undesirably) is below /usr/local. Use the first
path which is not.
Signed-off-by: Jan Lindemann <jan@janware.com>
gdb --core=vgcore.123 doesn't output a usable executable path with "was
generated by ...". This commit make make gdb fall back to using $(EXE_PATH) as
the executable with valgrind core files.
Signed-off-by: Jan Lindemann <jan@janware.com>
Subdirectories are now always rebuilt with FORCE_REBUILD_SUBDIRS=true.
Otherwise the above check fails to even reach the source code.
Signed-off-by: Jan Lindemann <jan@janware.com>
CC, LD and CXX are builtin, and they also override ?=, so ?= is pointless.
This solution disallows specifying a compiler from the environment. There
should be some solution with $(origin CC), but this seems too clunky for now.
Signed-off-by: Jan Lindemann <jan@janware.com>