Limit make parallelism to the number of CPUs
Don't default to unbridled -j, which causes a load spike and isn't really faster. "Number of CPUs" is implemented here as a reasonable compromise between portability, correctness and simplicity. This is just a default that can be overridden by setting MAKEFLAGS in the environment. Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
parent
cd51e76583
commit
050d2fc201
@ -175,7 +175,7 @@ pre_initialize_variables () {
|
||||
|
||||
# if MAKEFLAGS is not set add the -j option to speed up invocations of make
|
||||
if [ -z "${MAKEFLAGS+set}" ]; then
|
||||
export MAKEFLAGS="-j"
|
||||
export MAKEFLAGS="-j$(all_sh_nproc)"
|
||||
fi
|
||||
|
||||
# Include more verbose output for failing tests run by CMake
|
||||
@ -343,6 +343,18 @@ trap 'fatal_signal HUP' HUP
|
||||
trap 'fatal_signal INT' INT
|
||||
trap 'fatal_signal TERM' TERM
|
||||
|
||||
# Number of processors on this machine. Used as the default setting
|
||||
# for parallel make.
|
||||
all_sh_nproc ()
|
||||
{
|
||||
{
|
||||
nproc || # Linux
|
||||
sysctl -n hw.ncpuonline || # NetBSD, OpenBSD
|
||||
sysctl -n hw.ncpu || # FreeBSD
|
||||
echo 1
|
||||
} 2>/dev/null
|
||||
}
|
||||
|
||||
msg()
|
||||
{
|
||||
if [ -n "${current_component:-}" ]; then
|
||||
|
Loading…
Reference in New Issue
Block a user