1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 21:47:46 +00:00

Meta: Read MAKEJOBS to limit jobs for ninja in serenity.sh

The default behavior of using all cores will still apply if no
MAKEJOBS variable is supplied.
This commit is contained in:
davidot 2022-02-28 23:56:38 +01:00 committed by Linus Groh
parent 7036f8c89c
commit 3192cabc0e
2 changed files with 9 additions and 2 deletions

View file

@ -0,0 +1,3 @@
include(ProcessorCount)
ProcessorCount(N)
message("${N}")

View file

@ -218,12 +218,16 @@ build_target() {
# invoked superbuild for serenity target that doesn't set -DBUILD_LAGOM=ON
cmake -S "$SERENITY_SOURCE_DIR/Meta/Lagom" -B "$BUILD_DIR" -DBUILD_LAGOM=ON
fi
# Get either the environement MAKEJOBS or all processors via CMake
[ -z "$MAKEJOBS" ] && MAKEJOBS=$(cmake -P "$SERENITY_SOURCE_DIR/Meta/CMake/processor-count.cmake")
# With zero args, we are doing a standard "build"
# With multiple args, we are doing an install/image/run
if [ $# -eq 0 ]; then
cmake --build "$SUPER_BUILD_DIR"
CMAKE_BUILD_PARALLEL_LEVEL="$MAKEJOBS" cmake --build "$SUPER_BUILD_DIR"
else
ninja -C "$BUILD_DIR" -- "$@"
ninja -j "$MAKEJOBS" -C "$BUILD_DIR" -- "$@"
fi
}