From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Othacehe Subject: bug#26987: [PATCH 2/2] build: pull: Fix compilation list construction. Date: Fri, 19 May 2017 09:56:23 +0200 Message-ID: <20170519075623.13836-3-m.othacehe@gmail.com> References: <20170519075623.13836-1-m.othacehe@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:53021) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dBcmZ-0006E5-98 for bug-guix@gnu.org; Fri, 19 May 2017 03:57:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dBcmW-0002jB-4z for bug-guix@gnu.org; Fri, 19 May 2017 03:57:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:51653) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dBcmW-0002j3-1H for bug-guix@gnu.org; Fri, 19 May 2017 03:57:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dBcmV-0007HJ-RJ for bug-guix@gnu.org; Fri, 19 May 2017 03:57:03 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <20170519075623.13836-1-m.othacehe@gmail.com> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: 26987@debbugs.gnu.org * guix/build/pull.scm (depends-on-guile-ssh?): Remove. (all-scheme-files): Use "scheme-modules" to detect all loadable modules in given directory and rebuild a file list from those modules. --- guix/build/pull.scm | 31 ++++++++----------------------- 1 file changed, 8 insertions(+), 23 deletions(-) diff --git a/guix/build/pull.scm b/guix/build/pull.scm index d2e0404b1..e6ec71a54 100644 --- a/guix/build/pull.scm +++ b/guix/build/pull.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2016, 2017 Ludovic Courtès ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer +;;; Copyright © 2017 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,26 +37,14 @@ ;;; ;;; Code: -(define (depends-on-guile-ssh? file) - "Return true if FILE is a Scheme source file that depends, directly or -indirectly, on Guile-SSH." - (find (match-lambda - (('ssh _ ...) #t) - (_ #f)) - (source-module-closure file #:select? (const #t)))) - (define (all-scheme-files directory) "Return a sorted list of Scheme files found in DIRECTORY." - ;; Load guix/ modules before gnu/ modules to get somewhat steadier - ;; progress reporting. - (sort (filter (cut string-suffix? ".scm" <>) - (find-files directory "\\.scm")) - (let ((guix (string-append directory "/guix")) - (gnu (string-append directory "/gnu"))) - (lambda (a b) - (or (and (string-prefix? guix a) - (string-prefix? gnu b)) - (stringfile-name module))) + modules))) (cond-expand (guile-2.2 (use-modules (language tree-il optimize) @@ -145,11 +134,7 @@ containing the source code. Write any debugging output to DEBUG-PORT." ;; Compile the .scm files. Load all the files before compiling them to ;; work around (FIXME). ;; Filter out files depending on Guile-SSH when Guile-SSH is missing. - (let* ((files (remove (if (false-if-exception - (resolve-interface '(ssh session))) - (const #f) - depends-on-guile-ssh?) - (all-scheme-files out))) + (let* ((files (all-scheme-files out)) (total (length files))) (let loop ((files files) (completed 0)) -- 2.13.0