diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2020-04-12 23:06:30 +0200 |
---|---|---|
committer | Jan Nieuwenhuizen <janneke@gnu.org> | 2020-05-01 08:10:47 +0200 |
commit | 2e463d6e2cb2bc468926e8ed1a6ed77d9ca01441 (patch) | |
tree | b257025e2164158b1f41dc87e1682f39a2f023a7 | |
parent | 9a554a7082b69eaf474e2d19998a482d29035db0 (diff) | |
download | guix-2e463d6e2cb2bc468926e8ed1a6ed77d9ca01441.tar guix-2e463d6e2cb2bc468926e8ed1a6ed77d9ca01441.tar.gz |
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.
-rw-r--r-- | gnu/packages/hurd.scm | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index afb9cf5496..55c40710fa 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? @@ -393,6 +394,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. @@ -496,7 +521,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) @@ -507,6 +536,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) |