[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
17/92: gnu: hurd-minimal: Include libshouldbeinlibc and libstore.
From: |
guix-commits |
Subject: |
17/92: gnu: hurd-minimal: Include libshouldbeinlibc and libstore. |
Date: |
Fri, 23 Jun 2023 12:45:38 -0400 (EDT) |
janneke pushed a commit to branch hurd-team
in repository guix.
commit 4046c8a2e19beb46ad29723834c567bec33b4a60
Author: Janneke Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Tue May 23 15:31:53 2023 +0200
gnu: hurd-minimal: Include libshouldbeinlibc and libstore.
* gnu/packages/hurd.scm (hurd-minimal)[inputs]: Add gnumach-headers.
[arguments]: Rewrite to include libshouldbeinlibc and libstore.
* gnu/packages/cross-base.scm (cross-kernel-headers*): Update xhurd-minimal
accordingly: Add xgnumach-headers, add them to cpath, use gexps for
modify-phases, add delete-shared-target phase.
---
gnu/packages/cross-base.scm | 26 ++++++++++++++++++++------
gnu/packages/hurd.scm | 36 ++++++++++++------------------------
2 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index b2823c73c5..08d184cbbb 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2018, 2020, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2016, 2019, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
@@ -540,21 +540,35 @@ the base compiler. Use XBINUTILS as the associated
cross-Binutils."
,(string-append "--host=" target)
,flags))
((#:phases phases)
- `(modify-phases ,phases
+ #~(modify-phases #$phases
+ (add-after 'unpack 'delete-shared-target
+ ;; Cannot create shared libraries due to missing crt1.o
+ (lambda _
+ (substitute* "Makeconf"
+ (("(targets := \\$\\(libname\\)\\.a)
\\$\\(libname\\)\\.so" all static)
+ static)
+
(("\\$\\(DESTDIR\\)\\$\\(libdir\\)/\\$\\(libname\\)\\.so\\.\\$\\(hurd-version\\)")
+ "")
+ (("^libs: .*\\.so\\..*" all)
+ (string-append "# " all)))))
(add-before 'configure 'set-cross-headers-path
(lambda* (#:key inputs #:allow-other-keys)
(let* ((glibc-headers (assoc-ref inputs
"cross-glibc-hurd-headers"))
- (cpath (string-append glibc-headers "/include")))
+ (mach-headers (assoc-ref inputs
"cross-gnumach-headers"))
+ (cpath (string-append glibc-headers "/include"
+ ":" mach-headers "/include")))
(for-each (cut setenv <> cpath)
- ',%gcc-cross-include-paths)
+ '#$%gcc-cross-include-paths)
#t)))))))
- (inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers)))
+ (inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers)
+ ("cross-gnumach-headers" ,xgnumach-headers)))
(native-inputs `(("cross-gcc" ,xgcc)
("cross-binutils" ,xbinutils)
("cross-mig" ,xmig)
- ,@(alist-delete "mig"(package-native-inputs
hurd-minimal))))))
+ ,@(alist-delete "mig"
+ (package-native-inputs
hurd-minimal))))))
(define xhurd-core-headers
(package
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index 0df7280b1e..7ff4a61a00 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -192,37 +192,25 @@ Library and other user programs.")
(define-public hurd-minimal
(package (inherit hurd-headers)
(name "hurd-minimal")
- (inputs (list glibc/hurd-headers))
+ (inputs (list glibc/hurd-headers gnumach-headers))
(arguments
(substitute-keyword-arguments (package-arguments hurd-headers)
+ ((#:make-flags flags '())
+ #~'(#$(string-append "lib-subdirs=libshouldbeinlibc libihash libstore")
+ "prog-subdirs="
+ "other-subdirs="
+ #$@flags))
((#:phases _)
- '(modify-phases %standard-phases
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; We need to copy libihash.a to the output directory
manually,
- ;; since there is no target for that in the makefile.
- (mkdir-p (string-append out "/include"))
- (copy-file "libihash/ihash.h"
- (string-append out "/include/ihash.h"))
- (mkdir-p (string-append out "/lib"))
- (copy-file "libihash/libihash.a"
- (string-append out "/lib/libihash.a"))
- #t)))
- (replace 'build
- (lambda _
- ;; Install <assert-backtrace.h> & co.
- (invoke "make" "-Clibshouldbeinlibc"
- "../include/assert-backtrace.h")
-
- ;; Build libihash.
- (invoke "make" "-Clibihash" "libihash.a")))))))
+ #~%standard-phases)
+ ((#:validate-runpath? validate-runpath? #f)
+ #f)))
(supported-systems %hurd-systems)
(home-page "https://www.gnu.org/software/hurd/hurd.html")
(synopsis "GNU Hurd libraries")
(description
- "This package provides libihash, needed to build the GNU C
-Library for GNU/Hurd.")
+ "This package provides libshouldbeinlibc, libihash, libstore, libports,
+libiohelp, libfshelp, libtrivfs, and libmachdev, needed to build the GNU C
+Library, Parted and netdde for GNU/Hurd.")
(license gpl2+)))
(define-public hurd-core-headers
- 10/92: gnu: mig: Update to 04bfe7a91223ba15d868f7165e49328b1c6e86c3., (continued)
- 10/92: gnu: mig: Update to 04bfe7a91223ba15d868f7165e49328b1c6e86c3., guix-commits, 2023/06/23
- 14/92: gnu: Add libpciaccess-0.17., guix-commits, 2023/06/23
- 16/92: gnu: Add rumpkernel., guix-commits, 2023/06/23
- 19/92: gnu: hurd: Add rumpkernel., guix-commits, 2023/06/23
- 08/92: gnu: gnumach: Update to 1.8+git20221224., guix-commits, 2023/06/23
- 12/92: gnu: hurd: Update to v0.9.git20230216., guix-commits, 2023/06/23
- 13/92: Revert "hurd-boot: Add urandom and default-pager translators.", guix-commits, 2023/06/23
- 15/92: gnu: hurd: Update libpciaccess to 0.17., guix-commits, 2023/06/23
- 09/92: gnu: Add libc-locales-for-target and glibc-locales/hurd., guix-commits, 2023/06/23
- 11/92: squash! gnu: mig: Update to 04bfe7a91223ba15d868f7165e49328b1c6e86c3., guix-commits, 2023/06/23
- 17/92: gnu: hurd-minimal: Include libshouldbeinlibc and libstore.,
guix-commits <=
- 18/92: gnu: parted: Support building for the Hurd., guix-commits, 2023/06/23
- 21/92: services: childhurd: Bump default qemu memory to 2048MB., guix-commits, 2023/06/23
- 20/92: hurd-boot: Setup pci-arbiter and rumpdisk translators., guix-commits, 2023/06/23
- 23/92: bootloader: grub: Use rumpdisk-style root when booting with "noide"., guix-commits, 2023/06/23
- 25/92: gnu: netdde: Resurrect and update to 2.6.32.65-2-e67c284ac1., guix-commits, 2023/06/23
- 26/92: hurd-boot: Cater for netdde., guix-commits, 2023/06/23
- 28/92: services: static-networking: Support netdde for the Hurd., guix-commits, 2023/06/23
- 31/92: gnu: commencement: Add automake-boot0., guix-commits, 2023/06/23
- 32/92: gnu: commencement: gnumach-headers-boot0: Update to 1.8+git20221224., guix-commits, 2023/06/23
- 33/92: gnu: commencement: mig-boot0: Update to 1.8+git20230520., guix-commits, 2023/06/23