diff options
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/hurd.scm | 40 | ||||
-rw-r--r-- | gnu/packages/patches/netdde-build-fix.patch | 28 |
3 files changed, 51 insertions, 18 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 30dd32fdce..53f59a830d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1618,6 +1618,7 @@ dist_patch_DATA = \ %D%/packages/patches/ncompress-fix-softlinks.patch \ %D%/packages/patches/ncftp-reproducible.patch \ %D%/packages/patches/netcdf-date-time.patch \ + %D%/packages/patches/netdde-build-fix.patch \ %D%/packages/patches/netpbm-CVE-2017-2586.patch \ %D%/packages/patches/netpbm-CVE-2017-2587.patch \ %D%/packages/patches/netsurf-message-timestamp.patch \ diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index 3a9797009b..5072b7de2b 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -553,8 +553,8 @@ implementing them.") (license gpl2+))) (define-public netdde - (let ((commit "4a1016f130b6f2065d3f088325e5fb0b2997ae12") - (revision "1")) + (let ((commit "e67c284ac113d939b10b4578334f27dab29d5b08") + (revision "2")) (package (name "netdde") ;; The version prefix corresponds to the version of Linux from which the @@ -565,20 +565,19 @@ implementing them.") (uri (git-reference (url "https://git.savannah.gnu.org/git/hurd/incubator.git") (commit commit))) + (patches (list (search-patch "netdde-build-fix.patch"))) (sha256 (base32 - "1njv9dszq4lj05yq4v9j5v247hfghpzvvz4hzy0khjjr35mw7hr8")) + "0vnkls7sr7srzib5mnw6gybzl5qa8c5a4zf3h08w6gdr7zqbndh0")) (file-name (git-file-name name commit)))) (build-system gnu-build-system) (arguments - `(#:make-flags + `(#:tests? #f ;no "check" target + #:make-flags (list (string-append "SHELL=" (search-input-file %build-inputs "/bin/bash")) "PKGDIR=libdde_linux26" - ,@(if (%current-target-system) - (list "CC=i586-pc-gnu-gcc" - "LINK_PROGRAM=i586-pc-gnu-gcc") - (list "CC=gcc"))) + (string-append "CC=" ,(cc-for-target))) #:configure-flags ,#~(list (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib")) #:phases @@ -594,8 +593,7 @@ implementing them.") (string-append dde "/" dir ) dir)) '("libdde_linux26" "libddekit"))) (substitute* "libdde_linux26/mk/rel2abs.sh" - (("/bin/bash") (which "bash"))) - #t)) + (("/bin/bash") (which "bash"))))) (add-after 'patch-generated-file-shebangs 'build-libdde-linux26 (lambda* (#:key make-flags #:allow-other-keys) (with-directory-excursion "libdde_linux26" @@ -606,17 +604,23 @@ implementing them.") (apply invoke "make" "convert" make-flags))) (replace 'build (lambda* (#:key make-flags #:allow-other-keys) - ;; no-common can be dropped with GCC 10+ where this is the - ;; default. - (apply invoke "make" "CFLAGS=-fno-common" make-flags))) + (apply invoke "make" + ,(string-append "LINK_PROGRAM=" (cc-for-target)) + make-flags) + ;; This hack to build netdde.static was found in + ;; https://salsa.debian.org/hurd-team/netdde/-/blob/b539b2ad7a171371f140c3da58cce33f1a91ac12/debian/rules + (delete-file "Makefile.inc") + (apply invoke "make" + ,(string-append "LINK_PROGRAM=" (cc-for-target) " -static") + "TARGET=netdde.static" + make-flags))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (install-file "netdde" - (string-append (assoc-ref outputs "out") - "/bin")) - #t))))) + (let ((hurd (string-append (assoc-ref outputs "out") "/hurd"))) + (install-file "netdde" hurd) + (install-file "netdde.static" hurd))))))) (inputs - (list hurd libpciaccess-0.17 zlib)) + (list hurd libpciaccess-0.17 zlib `(,zlib "static"))) (native-inputs `(("coreutils" ,coreutils) ("gawk" ,gawk) diff --git a/gnu/packages/patches/netdde-build-fix.patch b/gnu/packages/patches/netdde-build-fix.patch new file mode 100644 index 0000000000..f7f0fc35a9 --- /dev/null +++ b/gnu/packages/patches/netdde-build-fix.patch @@ -0,0 +1,28 @@ +Upstream status: Presented upstream. + + https://lists.gnu.org/archive/html/bug-hurd/2023-05//msg00449.html + +From b0a7e4f2706bea8d1c80d5af7a095941f9635033 Mon Sep 17 00:00:00 2001 +From: Janneke Nieuwenhuizen <janneke@gnu.org> +Date: Fri, 26 May 2023 17:39:17 +0200 +Subject: [PATCH] Update for .../rumpdisk: Fix race condition in bootstrap + +--- + machdev.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/machdev.c b/machdev.c +index dda5eb8ba..1a6811072 100644 +--- a/machdev.c ++++ b/machdev.c +@@ -18,5 +18,6 @@ void machdev_run1 (void *arg) + + void machdev_run2(void) + { +- machdev_trivfs_server(bootstrap); ++ machdev_trivfs_server_startup(bootstrap); ++ machdev_trivfs_server_loop(NULL); + } +-- +2.40.1 + |