From fc7c3879276543a99ebde0df43e0412461da1843 Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Thu, 30 May 2019 16:25:51 -0400 Subject: build: Base jobs on number of CPUs This is how BusyBox's `nproc --all` works. It's Linux-specific, but the alternatives are the (BusyBox) nproc utility (non-standard and currently disabled in ProteanOS) and the getconf utility (standard but provided by glibc and not in musl) with the _NPROCESSORS_ONLN operand (non-standard but common in standard C libraries). --- diff --git a/build b/build index 299b291..ff2d7dd 100755 --- a/build +++ b/build @@ -96,7 +96,7 @@ dir_macros = \ extra_opts = native_target = bootstrap-lean cross_target = all-gcc -jobs = 4 +jobs = $$(printf '%s\n' /sys/devices/system/cpu/cpu[0-9]* | wc -l) include ../local.mk # For example, to disable bootstrapping, set these in local.mk: # extra_opts = --disable-bootstrap diff --git a/changelog b/changelog index 53683a2..0ecf65c 100644 --- a/changelog +++ b/changelog @@ -29,7 +29,7 @@ gcc-8 (8.3.0+sip1-1) trunk * Replace "/gcc-/" and "/c++-/" with "/gcc//" and "/c++//" respectively in directory paths. * Use automatic shared library dependencies. - * Build with 4 parallel jobs by default. + * By default, build with as many parallel jobs as there are online CPUs. -- Patrick McDermott Thu, 02 May 2019 16:20:43 -0400 -- cgit v0.9.1