From e6039b9c70c658d648723a2d331f1c9637b49126 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 22 Nov 2014 12:32:32 +0100 Subject: utils: Export 'parallel-job-count'. * guix/build/utils.scm (parallel-job-count): New procedure. * guix/build/gnu-build-system.scm (%parallel-job-count): Remove. (build, check): Use 'parallel-job-count' instead. --- guix/build/gnu-build-system.scm | 11 ++--------- guix/build/utils.scm | 10 ++++++++++ 2 files changed, 12 insertions(+), 9 deletions(-) (limited to 'guix') diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm index 17fa7afd8d..afed601798 100644 --- a/guix/build/gnu-build-system.scm +++ b/guix/build/gnu-build-system.scm @@ -236,18 +236,11 @@ (define (package-name) (string-append srcdir "/configure") flags)))) -(define %parallel-job-count - ;; String to be passed next to GNU Make's `-j' argument. - (match (getenv "NIX_BUILD_CORES") - (#f "1") - ("0" (number->string (current-processor-count))) - (x x))) - (define* (build #:key (make-flags '()) (parallel-build? #t) #:allow-other-keys) (zero? (apply system* "make" `(,@(if parallel-build? - `("-j" ,%parallel-job-count) + `("-j" ,(number->string (parallel-job-count))) '()) ,@make-flags)))) @@ -257,7 +250,7 @@ (define* (check #:key target (make-flags '()) (tests? (not target)) (if tests? (zero? (apply system* "make" test-target `(,@(if parallel-tests? - `("-j" ,%parallel-job-count) + `("-j" ,(number->string (parallel-job-count))) '()) ,@make-flags))) (begin diff --git a/guix/build/utils.scm b/guix/build/utils.scm index cda4fb12ef..bfbc4dd43e 100644 --- a/guix/build/utils.scm +++ b/guix/build/utils.scm @@ -31,6 +31,8 @@ (define-module (guix build utils) #:re-export (alist-cons alist-delete) #:export (%store-directory + parallel-job-count + directory-exists? executable-file? call-with-ascii-input-file @@ -69,6 +71,14 @@ (define (%store-directory) (or (getenv "NIX_STORE") "/gnu/store")) +(define (parallel-job-count) + "Return the number of processes to be passed next to GNU Make's `-j' +argument." + (match (getenv "NIX_BUILD_CORES") ;set by the daemon + (#f 1) + ("0" (current-processor-count)) + (x (or (string->number x) 1)))) + (define (directory-exists? dir) "Return #t if DIR exists and is a directory." (let ((s (stat dir #f))) -- cgit v1.2.3