1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-07 14:21:48 +02:00

Added support for passing an (impure) NIX_BUILD_CORES variable to build expressions.

This patch adds the configuration file variable "build-cores" and the
command line argument "--cores". These settings specify the number of
CPU cores to utilize for parallel building within a job, i.e. by passing
an appropriate "-j" flag to GNU Make. The default value is 1, which
means that parallel building is *disabled*. If the number of build cores
is specified as 0 (synonymously: "guess" or "auto"), then the actual
value is supposed to be auto-detected by builders at run-time, i.e by
calling the nproc(1) utility from coreutils.

The environment variable $NIX_BUILD_CORES is available to builders, but
the contents of that variable does *not* influence the hash that goes
into the $out store path, i.e. the number of build cores to be utilized
can be changed at will without requiring any re-builds.
This commit is contained in:
Peter Simons 2010-06-23 14:34:08 +00:00
parent 819548d92f
commit 8b7f8b56f1
5 changed files with 35 additions and 0 deletions

View file

@ -59,6 +59,18 @@
#build-max-jobs = 1
### Option `build-cores'
#
# This option defines the number of CPU cores to utilize in parallel
# within a build job, i.e. by passing an appropriate `-jN' flag to
# GNU make. The default is 1, meaning that parallel building within
# jobs is disabled. Passing the special values `0', `auto', or
# `guess' causes Nix to try and auto-detect the number of available
# cores on the local host. This setting can be overridden using the
# `--cores' command line switch.
#build-cores = 1
### Option `build-max-silent-time'
#
# This option defines the maximum number of seconds that a builder can