guix-commits
[Top][All Lists]
Advanced

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

03/03: gnu: hurd: Add NFS support.


From: guix-commits
Subject: 03/03: gnu: hurd: Add NFS support.
Date: Tue, 14 Apr 2020 06:49:35 -0400 (EDT)

rekado pushed a commit to branch wip-hurd-vm
in repository guix.

commit 640ec8ac3823dd2d2e0565497f8a362f88b43274
Author: Ricardo Wurmus <address@hidden>
AuthorDate: Sun Apr 12 23:06:30 2020 +0200

    gnu: hurd: Add NFS support.
    
    * gnu/packages/hurd.scm (hurd)[inputs]: Add libtirpc/hurd.
    [arguments]: Add configure flags to use libtirpc; add phase "find-tirpc" to
    find the RPC headers; add phase "fix-rpc-headers" to include missing 
headers.
---
 gnu/packages/hurd.scm | 34 +++++++++++++++++++++++++++++++++-
 1 file changed, 33 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index e84db83..e6f2881 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -44,6 +44,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages texinfo)
+  #:use-module (gnu packages onc-rpc)
   #:use-module (gnu packages xorg) ; libpciaccess
   #:use-module (guix git-download)
   #:export (hurd-system?
@@ -395,6 +396,30 @@ boot, since this cannot be done from GNU/Linux."
                             (string-append dde "/" dir ) dir))
                          '("libmachdev" "libmachdevdde" "libddekit")))
              #t))
+         (add-after 'unpack 'find-tirpc
+           (lambda* (#:key inputs #:allow-other-keys)
+             (for-each (lambda (var)
+                         (setenv var
+                                 (string-append (assoc-ref inputs "libtirpc")
+                                                "/include/tirpc:"
+                                                (or (getenv var) ""))))
+                       '("CROSS_C_INCLUDE_PATH" "C_INCLUDE_PATH"
+                         "CROSS_CPATH" "CPATH"))
+             #t))
+         (add-after 'unpack 'fix-rpc-headers
+           (lambda _
+             (substitute* "nfs/mount.c"
+               (("#undef (TRUE|FALSE)") "")
+               (("#include <rpc/pmap_prot.h>" m)
+                (string-append  "#include <rpc/xdr.h>\n" m)))
+             (substitute* '("nfsd/cache.c")
+               (("#undef (TRUE|FALSE)") ""))
+             (substitute* '("nfsd/loop.c"
+                            "nfsd/main.c"
+                            "nfsd/ops.c")
+               (("#include <rpc/pmap_prot.h>" m)
+                (string-append "#include <rpc/types.h>\n#include 
<rpc/xdr.h>\n" m)))
+             #t))
          (add-before 'build 'pre-build
            (lambda _
              ;; Don't change the ownership of any file at this time.
@@ -499,7 +524,11 @@ fsysopts / --writable\n"))
                           "--disable-ncursesw"
                           "--without-libbz2"
                           "--without-libz"
-                          "--without-parted")))
+                          "--without-parted"
+                          ;; This is needed to pass the configure check for
+                          ;; clnt_create
+                          "ac_func_search_save_LIBS=-ltirpc"
+                          "ac_cv_search_clnt_create=false")))
     (build-system gnu-build-system)
     (inputs
      `(("glibc-hurd-headers" ,glibc/hurd-headers)
@@ -510,6 +539,9 @@ fsysopts / --writable\n"))
        ("unifont" ,unifont)
        ("libpciaccess" ,libpciaccess)
 
+       ;; For NFS support
+       ("libtirpc" ,libtirpc/hurd)
+
        ;; Tools for the /libexec/* scripts.
        ("bash-minimal" ,bash-minimal)
        ("coreutils" ,coreutils)



reply via email to

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