diff mbox series

[bug#64421,v2] gnu: efivar: Fix cross-compilation.

Message ID 20230702134437.768-1-i@dan.games
State New
Headers show
Series [bug#64421,v2] gnu: efivar: Fix cross-compilation. | expand

Commit Message

dan July 2, 2023, 1:44 p.m. UTC
[version]: Temporarily change the version to a git-version.
[source]: Fetch source from git, use newer commit to fix cross-build.
[arguments]<#:make-flags>: Set HOSTCC to gcc.
---
 gnu/packages/linux.scm | 85 ++++++++++++++++++++++--------------------
 1 file changed, 44 insertions(+), 41 deletions(-)


base-commit: a919a16898e7219fdd26bdfe33a9959e7156d59d

Comments

Maxim Cournoyer Sept. 6, 2023, 12:42 a.m. UTC | #1
Hi Dan!

dan <i@dan.games> writes:

> [version]: Temporarily change the version to a git-version.
> [source]: Fetch source from git, use newer commit to fix cross-build.
> [arguments]<#:make-flags>: Set HOSTCC to gcc.

Looks good, installed!
diff mbox series

Patch

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index ffb736f447..a8aacdffac 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -74,6 +74,7 @@ 
 ;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
 ;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
 ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2023 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -7223,48 +7224,50 @@  (define-public radeontop
     (license license:gpl3)))
 
 (define-public efivar
-  (package
-    (name "efivar")
-    (version "38")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/rhboot/" name
-                                  "/releases/download/" version "/" name
-                                  "-" version ".tar.bz2"))
-              (sha256
-               (base32
-                "0jaka7b4lccswjqiv4liclkj6w78gildg7vd6dnw3wf595pfs67h"))
-              (patches
-               (search-patches "efivar-211.patch"))))
-
-    (build-system gnu-build-system)
-    (arguments
-     (list
-      ;; Tests require a UEFI system and is not detected in the chroot.
-       #:tests? #f
-       #:make-flags
-       #~(list (string-append "prefix=" #$output)
-               (string-append "libdir=" #$output "/lib")
-               (string-append "CC=" #$(cc-for-target))
-               (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib"))
-       #:phases
-       #~(modify-phases %standard-phases
-           (add-after 'unpack 'build-deterministically
-             (lambda _
-               (substitute* "src/include/defaults.mk"
-                 ;; Don't use -march=native.
-                 (("-march=native")
-                  ""))))
-           (delete 'configure))))
-    (native-inputs
-     (list mandoc pkg-config))
-    (inputs
-     (list popt))
-    (home-page "https://github.com/rhboot/efivar")
-    (synopsis "Tool and library to manipulate EFI variables")
-    (description "This package provides a library and a command line
+  ;; XXX: 15622b7e5761f3dde3f0e42081380b2b41639a48 fixes compilation on i686.
+  ;; ca48d3964d26f5e3b38d73655f19b1836b16bd2d fixes cross-compilation.
+  (let ((commit "ca48d3964d26f5e3b38d73655f19b1836b16bd2d")
+        (revision "0"))
+    (package
+      (name "efivar")
+      (version (git-version "38" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/rhboot/efivar")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0zsab3hcv1v53cxwkvsk09ifnwhs48a6xa3kxlwvs87yxswspvi8"))))
+      (build-system gnu-build-system)
+      (arguments
+       (list
+        ;; Tests require a UEFI system and is not detected in the chroot.
+        #:tests? #f
+        #:make-flags #~(list (string-append "prefix="
+                                            #$output)
+                             (string-append "libdir="
+                                            #$output "/lib")
+                             (string-append "CC="
+                                            #$(cc-for-target)) "HOSTCC=gcc"
+                             (string-append "LDFLAGS=-Wl,-rpath="
+                                            #$output "/lib"))
+        #:phases #~(modify-phases %standard-phases
+                     (add-after 'unpack 'build-deterministically
+                       (lambda _
+                         (substitute* "src/include/defaults.mk"
+                           ;; Don't use -march=native.
+                           (("-march=native")
+                            ""))))
+                     (delete 'configure))))
+      (native-inputs (list mandoc pkg-config))
+      (inputs (list popt))
+      (home-page "https://github.com/rhboot/efivar")
+      (synopsis "Tool and library to manipulate EFI variables")
+      (description "This package provides a library and a command line
 interface to the variable facility of UEFI boot firmware.")
-    (license license:lgpl2.1+)))
+      (license license:lgpl2.1+))))
 
 (define-public efibootmgr
   (package