guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch master updated: gnu: make-linux-libre*: Remove input labels.


From: guix-commits
Subject: branch master updated: gnu: make-linux-libre*: Remove input labels.
Date: Wed, 07 Dec 2022 10:41:01 -0500

This is an automated email from the git hooks/post-receive script.

apteryx pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new dfc6957a5a gnu: make-linux-libre*: Remove input labels.
dfc6957a5a is described below

commit dfc6957a5af7d179d4618eb19d4f555c519bc6f2
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Tue Dec 6 20:18:21 2022 -0500

    gnu: make-linux-libre*: Remove input labels.
    
    * gnu/packages/linux.scm (kernel-config): Make the return value a gexp, 
using
    local-file.  Adjust doc.
    (make-linux-libre*): Adjust doc.
    [native-inputs]: Remove input labels.  Rewrite config input to be directly
    expanded...
    [phases] <configure>: ... here.  Re-flow comments.  Remove extraneous INPUTS
    argument.
    <install>: Likewise.
---
 gnu/packages/linux.scm | 82 +++++++++++++++++++++++++-------------------------
 1 file changed, 41 insertions(+), 41 deletions(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 5ae9d82530..c9a21f590f 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -777,12 +777,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the 
given DEBLOB-SCRIPTS."
 ;;;
 
 (define* (kernel-config arch #:key variant)
-  "Return the absolute file name of the Linux-Libre build configuration file
-for ARCH and optionally VARIANT, or #f if there is no such configuration."
+  "Return a file-like object of the Linux-Libre build configuration file for
+ARCH and optionally VARIANT, or #f if there is no such configuration."
   (let* ((name (string-append (if variant (string-append variant "-") "")
                               (if (string=? "i386" arch) "i686" arch) ".conf"))
          (file (string-append "linux-libre/" name)))
-    (search-auxiliary-file file)))
+    (local-file (search-auxiliary-file file))))
 
 (define %default-extra-linux-options
   `(;; Make the kernel config available at /proc/config.gz
@@ -890,8 +890,9 @@ for ARCH and optionally VARIANT, or #f if there is no such 
configuration."
 (define* (make-linux-libre version gnu-revision hash-string supported-systems
                            #:key
                            (extra-version #f)
-                           ;; A function that takes an arch and a variant.
-                           ;; See kernel-config for an example.
+                           ;; A function that takes an arch and a variant, and
+                           ;; return a file-like object.  See kernel-config
+                           ;; for an example.
                            (configuration-file #f)
                            (defconfig "defconfig")
                            (extra-options %default-extra-linux-options)
@@ -975,8 +976,20 @@ for ARCH and optionally VARIANT, or #f if there is no such 
configuration."
                       #$(and extra-version
                              (string-append "-" extra-version)))))
           (replace 'configure
-            (lambda* (#:key inputs #:allow-other-keys)
-              (let ((config (assoc-ref inputs "kconfig")))
+            (lambda _
+              (let ((config
+                     #$(match (let ((arch (platform-linux-architecture
+                                           (lookup-platform-by-target-or-system
+                                            (or (%current-target-system)
+                                                (%current-system))))))
+                                (and configuration-file arch
+                                     (configuration-file
+                                      arch
+                                      #:variant (version-major+minor 
version))))
+                         (#f            ;no config for this platform
+                          #f)
+                         ((? file-like? config)
+                          config))))
                 ;; Use a custom kernel configuration file or a default
                 ;; configuration file.
                 (if config
@@ -984,15 +997,15 @@ for ARCH and optionally VARIANT, or #f if there is no 
such configuration."
                       (copy-file config ".config")
                       (chmod ".config" #o666))
                     (invoke "make" #$defconfig))
-                ;; Appending works even when the option wasn't in the
-                ;; file.  The last one prevails if duplicated.
+                ;; Appending works even when the option wasn't in the file.
+                ;; The last one prevails if duplicated.
                 (let ((port (open-file ".config" "a"))
                       (extra-configuration #$(config->string extra-options)))
                   (display extra-configuration port)
                   (close-port port))
                 (invoke "make" "oldconfig"))))
           (replace 'install
-            (lambda* (#:key inputs #:allow-other-keys)
+            (lambda _
               (let ((moddir (string-append #$output "/lib/modules"))
                     (dtbdir (string-append #$output "/lib/dtbs")))
                 ;; Install kernel image, kernel configuration and link map.
@@ -1007,11 +1020,11 @@ for ARCH and optionally VARIANT, or #f if there is no 
such configuration."
                 ;; Install kernel modules
                 (mkdir-p moddir)
                 (invoke "make"
-                        ;; Disable depmod because the Guix system's
-                        ;; module directory is an union of potentially
-                        ;; multiple packages.  It is not possible to use
-                        ;; depmod to usefully calculate a dependency
-                        ;; graph while building only one of them.
+                        ;; Disable depmod because the Guix system's module
+                        ;; directory is an union of potentially multiple
+                        ;; packages.  It is not possible to use depmod to
+                        ;; usefully calculate a dependency graph while
+                        ;; building only one of them.
                         "DEPMOD=true"
                         (string-append "MODULE_DIR=" moddir)
                         (string-append "INSTALL_PATH=" #$output)
@@ -1024,8 +1037,8 @@ for ARCH and optionally VARIANT, or #f if there is no 
such configuration."
                        (version (match versions
                                   ((x) x))))
                   ;; There are symlinks to the build and source directory.
-                  ;; Both will point to target /tmp/guix-build* and thus
-                  ;; not be useful in a profile.  Delete the symlinks.
+                  ;; Both will point to target /tmp/guix-build* and thus not
+                  ;; be useful in a profile.  Delete the symlinks.
                   (false-if-file-not-found
                    (delete-file
                     (string-append moddir "/" version "/build")))
@@ -1033,35 +1046,22 @@ for ARCH and optionally VARIANT, or #f if there is no 
such configuration."
                    (delete-file
                     (string-append moddir "/" version "/source"))))))))))
     (native-inputs
-     `(("perl" ,perl)
-       ("bc" ,bc)
-       ("openssl" ,openssl)
-       ("elfutils" ,elfutils)        ;needed to enable CONFIG_STACK_VALIDATION
-       ("flex" ,flex)
-       ("bison" ,bison)
-
-       ;; These are needed to compile the GCC plugins.
-       ("gmp" ,gmp)
-       ("mpfr" ,mpfr)
-       ("mpc" ,mpc)
-       ,@(match (let ((arch (platform-linux-architecture
-                             (lookup-platform-by-target-or-system
-                              (or (%current-target-system)
-                                  (%current-system))))))
-                  (and configuration-file arch
-                       (configuration-file
-                        arch
-                        #:variant (version-major+minor version))))
-           (#f                          ;no config for this platform
-            '())
-           ((? string? config)
-            `(("kconfig" ,config))))))
+     (list perl
+           bc
+           openssl
+           elfutils                  ;needed to enable CONFIG_STACK_VALIDATION
+           flex
+           bison
+           ;; These are needed to compile the GCC plugins.
+           gmp
+           mpfr
+           mpc))
     (home-page "https://www.gnu.org/software/linux-libre/";)
     (synopsis "100% free redistribution of a cleaned Linux kernel")
     (description "GNU Linux-Libre is a free (as in freedom) variant of the
 Linux kernel.  It has been modified to remove all non-free binary blobs.")
     (license license:gpl2)
-    (properties '((max-silent-time . 3600))))) ;don't timeout on blob scan.
+    (properties '((max-silent-time . 3600))))) ;don't timeout on blob scan
 
 
 ;;;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]