From b35de00e5c89fac3f6575d5ed109b7ed58d058ad Mon Sep 17 00:00:00 2001 From: Davide Basso <davide.basso@skywarder.eu> Date: Fri, 17 Jan 2025 20:35:14 +0100 Subject: [PATCH] [SBS] Fix nproc making it crossplatform --- sbs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/sbs b/sbs index ac46dcad5..65c57c392 100755 --- a/sbs +++ b/sbs @@ -58,6 +58,13 @@ VERBOSE_FILENAME=".sbs_verbose" BUILD_DEFAULT_DIRNAME="build" BUILD_HOST_DIRNAME="build-host" +# Logical cores count, cross platform +N_PROC=$( + nproc 2>/dev/null || # Linux + sysctl -n hw.logicalcpu 2>/dev/null || # macOS + getconf _NPROCESSORS_ONLN 2>/dev/null # POSIX +) + ################################################################################ ############################## Global States ############################## ################################################################################ @@ -465,7 +472,7 @@ lint_clangformat() { # count files and spread them evenly across cores: files / nproc + 1 declare files_per_proc=$( echo "$files" | wc -l | \ - xargs -I {} bash -c "expr \( {} / $(nproc) \) + 1" + xargs -I {} bash -c "expr \( {} / $N_PROC \) + 1" ) echo "$files" | xargs -n $files_per_proc -P 0 clang-format "${opts[@]}" @@ -750,7 +757,7 @@ format() { # count files and spread them evenly across cores: files / nproc + 1 declare files_per_proc=$( echo "$files" | wc -l | \ - xargs -I {} bash -c "expr \( {} / $(nproc) \) + 1" + xargs -I {} bash -c "expr \( {} / $N_PROC \) + 1" ) echo "$files" | xargs -n $files_per_proc -P 0 clang-format "${opts[@]}" -- GitLab