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>
The following BUILD_XXX variables are renamed to their respective FINAL_XXX
counterparts, as that name is more expressive:
BUILD_CFLAGS, BUILD_CPPFLAGS, BUILD_CXXFLAGS, BUILD_EXTRA_DEBUG_FLAGS,
BUILD_INCLUDE, BUILD_LDFLAGS, BUILD_LIBFLAGS, BUILD_LPPFLAGS
Signed-off-by: Jan Lindemann <jan@janware.com>
- Remove temporary variable PRJS_DIR
- Add defaults for BUILD_LIBS_PREFIX and BUILD_TOOLS_PREFIX
- Move definitions of varables needed early on from defs.mk
into projects.mk, such as PYTHON and PYTHON_VERSION
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit fixes multiple issues with locating Perl and Python directories and
files. It was driven by the need to have it work on Yocto, and isn't tested
anywhere else. It also fixes __pycache__/%.pyc issues from the Python 2 -> 3
transition.
Signed-off-by: Jan Lindemann <jan@janware.com>
py-rules.mk is meant to be usable outside of a jw Python module
context, just for generating .pyc, for example
Signed-off-by: Jan Lindemann <jan@janware.com>
Remove CVS macros, because that breaks using it as a symlink from projects-dir,
and add SPDX-License-Identifier GPL2.0+.
Signed-off-by: Jan Lindemann <jan@janware.com>
Remove legacy links.done, since dspider-shared and dspider-btools are now
converted to git projects below the toplevel directory.
Signed-off-by: Jan Lindemann <jan@janware.com>
CXX is used for linking instead of LD now, since LD might point to the real
linker, which doesn't understand -Wl,--blah options, of course.
Signed-off-by: Jan Lindemann <jan@janware.com>