From 03beb4e96be87eabac863629fbbec40730458dfb Mon Sep 17 00:00:00 2001 From: Thomas Debesse Date: Sat, 12 Dec 2020 06:28:46 +0100 Subject: [PATCH] build.sh: read job_count when possible --- build.sh | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/build.sh b/build.sh index fe89e35a70..b05c3668fd 100755 --- a/build.sh +++ b/build.sh @@ -88,9 +88,44 @@ package_linux() { postbuild='' debug_opts='' build_cflags='-O3' -job_count='12' +default_job_count='12' sys_ldflags='' +get_job_count () { + if command -v 'nproc' >/dev/null + then + nproc + else + case "$(uname -s)" in + 'Linux') + egrep "^processor" /proc/cpuinfo | wc -l + ;; + 'FreeBSD') + sysctl -n hw.ncpu + ;; + 'Darwin') + sysctl -n hw.logicalcpu 2>/dev/null \ + || sysctl -n hw.ncpu + ;; + 'MSYS_NT-'*|'CYGWIN_NT-'*|'MINGW'*'_NT-'*) + if command -v 'wmic' >/dev/null + then + wmic cpu get NumberOfLogicalProcessors/Format:List \ + | grep -m1 '=' | cut -f2 -d'=' + else + echo "${NUMBER_OF_PROCESSORS:-${default_job_count}}" + fi + ;; + *) + echo "${default_job_count}" + ;; + esac + fi +} + +job_count="$(get_job_count)" 2>/dev/null +job_count="${job_count:-${default_job_count}}" + while [ ! -z "${1}" ] do case "${1}" in