BUILD_ENV = \
export CCACHE_DIR=$(CCACHE_DIR) ; \
- export PATH=$(TOOL_INSTALL_DIR)/ccache-bin:$(TOOL_INSTALL_DIR)/bin:$${PATH} ; \
+ export PATH=$(wildcard /usr/lib*/ccache):$(TOOL_INSTALL_DIR)/bin:$${PATH} ; \
+ $(if $(call configure_var_fn,PATH), export PATH=$${PATH}:$(call configure_var_fn,PATH);,) \
export PATH="`echo $${PATH} | sed -e s/[.]://`" ; \
$(if $(not_native),export CONFIG_SITE=$(MU_BUILD_ROOT_DIR)/config.site ;,) \
set -eu$(BUILD_DEBUG) ; \
mkdir -p $(PACKAGE_INSTALL_DIR) ; \
conf="$(TIMESTAMP_DIR)/$(CONFIGURE_TIMESTAMP)" ; \
dirs="$(call package_mk_fn,$(PACKAGE)) \
+ $(SOURCE_PATH_BUILD_DATA_DIRS)/platforms/$(PLATFORM).mk \
+ $(wildcard $(call find_source_fn,$(PACKAGE_SOURCE))/cmake) \
+ $(shell find $(call find_source_fn,$(PACKAGE_SOURCE)) \
+ -name CMakeLists.txt) \
$(wildcard $(call find_source_fn, \
$(PACKAGE_SOURCE))$(PACKAGE_SUBDIR)/configure) \
$(MU_BUILD_ROOT_DIR)/config.site" ; \
# we assume there's 1 processor; we use 2*ncpu for the -j option.
# NB: GNU Make 4.2 will let us use '$(file </proc/cpuinfo)' to both test
# for file presence and content; for now this will have to do.
-MAKE_PARALLEL_JOBS = -j $(if $(shell [ -f /proc/cpuinfo ] && head /proc/cpuinfo), \
+ifndef MAKE_PARALLEL_JOBS
+MAKE_PARALLEL_JOBS = $(if $(shell [ -f /proc/cpuinfo ] && head /proc/cpuinfo), \
$(shell grep -c ^processor /proc/cpuinfo), 2)
-MAKE_PARALLEL_FLAGS ?= $(if $($(PACKAGE)_make_parallel_fails),,$(MAKE_PARALLEL_JOBS))
+endif
+MAKE_PARALLEL_FLAGS ?= $(if $($(PACKAGE)_make_parallel_fails),,-j $(MAKE_PARALLEL_JOBS))
# Make command shorthand for packages & tools.
PACKAGE_MAKE = \
basic_system \
$(ROOT_PACKAGES)) || exit 1; \
$(call build_msg_fn, Relocating ELF executables to run in $${d}) ; \
- find $${d} -type f \
- -exec elftool quiet in '{}' out '{}' \
- set-interpreter \
- $${d}/$(arch_lib_dir)/$(DYNAMIC_LINKER) \
- set-rpath $${d}/$(arch_lib_dir):$${d}/lib ';' ; \
+ scripts/set-rpath $${d} $${d}/$(arch_lib_dir) ; \
: strip symbols from files ; \
if [ $${strip_symbols:-no} = 'yes' ] ; then \
$(call build_msg_fn, Stripping symbols from files) ; \
: make dev directory ; \
$(linuxrc_makedev) ; \
echo @@@@ Relocating ELF executables to run in / @@@@ ; \
- find $${d} -type f \
- -exec elftool quiet in '{}' out '{}' \
- set-interpreter \
- /$(arch_lib_dir)/$(DYNAMIC_LINKER) \
- set-rpath /$(arch_lib_dir):/lib ';' ; \
+ scripts/set-rpath /$(arch_lib_dir):/lib ; \
: strip symbols from files ; \
if [ '$${strip_symbols:-yes}' = 'yes' ] ; then \
echo @@@@ Stripping symbols from files @@@@ ; \