gnu: gnumach: Update to 1.8-0.2556fde.

* gnu/packages/hurd.scm (gnumach-headers): Update to latest master,
2556fdece900d67529d5eda01f1bdaae4ffe96b0.
* gnu/packages/patches/gnumach-fix-i686-linux-build.patch,
gnu/packages/patches/gnumach-fix-task_info.patch,
gnu/packages/patches/gnumach-support-noide.patch: Remove files.
* gnu/local.mk (dist_patch_DATA): Remove them.
(gnumach)[source]: Do not use them.

Change-Id: Ifc6d15f7889854cd85698f4133f70d2046ca4bc8
This commit is contained in:
Janneke Nieuwenhuizen 2024-01-21 18:16:16 +01:00 committed by Ludovic Courtès
parent 58ccd11857
commit 30cacb63f8
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
5 changed files with 32 additions and 175 deletions

View file

@ -1431,9 +1431,6 @@ dist_patch_DATA = \
%D%/packages/patches/gnome-session-support-elogind.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnulib-bootstrap.patch \
%D%/packages/patches/gnumach-fix-i686-linux-build.patch \
%D%/packages/patches/gnumach-fix-task_info.patch \
%D%/packages/patches/gnumach-support-noide.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \
%D%/packages/patches/gnutls-skip-trust-store-test.patch \

View file

@ -57,36 +57,38 @@ (define (hurd-source-url version)
version ".tar.gz"))
(define-public gnumach-headers
(package
(name "gnumach-headers")
(version "1.8+git20230410") ;; This is an upstream tag
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/hurd/gnumach.git")
(commit (string-append "v" version))))
(file-name (git-file-name "gnumach" version))
(sha256
(base32
"1s09256g2ny46idrn8frzs7r51la9ni45bmglmswlsmz9ii7dpi4"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'install
(lambda _
(invoke "make" "install-data" "install-data-hook")))
(delete 'build))
#:tests? #f))
(native-inputs
(list autoconf automake texinfo-4))
(supported-systems %hurd-systems)
(home-page "https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html")
(synopsis "GNU Mach kernel headers")
(description
"Headers of the GNU Mach kernel.")
(license gpl2+)))
(let ((revision "0")
(commit "2556fdece900d67529d5eda01f1bdaae4ffe96b0"))
(package
(name "gnumach-headers")
(version (git-version "1.8" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/hurd/gnumach.git")
(commit commit)))
(file-name (git-file-name "gnumach" version))
(sha256
(base32
"1lzsbix0l4jhab38pvwnmk7ip1lsn7m5smhnrciqajsqnadsnlzs"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'install
(lambda _
(invoke "make" "install-data" "install-data-hook")))
(delete 'build))
#:tests? #f))
(native-inputs
(list autoconf automake texinfo-4))
(supported-systems %hurd-systems)
(home-page "https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html")
(synopsis "GNU Mach kernel headers")
(description
"Headers of the GNU Mach kernel.")
(license gpl2+))))
(define-public mig
(package
@ -251,14 +253,6 @@ (define-public gnumach
(package
(inherit gnumach-headers)
(name "gnumach")
(source (origin
(inherit (package-source gnumach-headers))
(patches
(append
(search-patches "gnumach-support-noide.patch"
"gnumach-fix-i686-linux-build.patch"
"gnumach-fix-task_info.patch")
(origin-patches (package-source gnumach-headers))))))
(arguments
(substitute-keyword-arguments (package-arguments gnumach-headers)
((#:configure-flags flags ''())

View file

@ -1,50 +0,0 @@
Upstream status: presented upstream.
https://lists.gnu.org/archive/html/bug-hurd/2024-01/msg00198.html
From af5ec3c82ae6a9077ce7d814dda773562ef6757f Mon Sep 17 00:00:00 2001
From: Janneke Nieuwenhuizen <janneke@gnu.org>
Date: Mon, 22 Jan 2024 08:41:02 +0100
Subject: [PATCH] Resurrect x86-linux build.
This avoids using system headers, which may result in
kern/strings.c: In function 'strchr':
kern/strings.c:188:32: error: 'NULL' undeclared (first use in this function)
In file included from util/atoi.c:77:
./util/atoi.h:65:29: error: unknown type name 'u_char'
device/net_io.c: In function 'bpf_do_filter':
device/net_io.c:1636:34: error: 'u_int' undeclared (first use in this function); did you mean 'int'?
In file included from device/subrs.c:36:
./device/if_ether.h:43:9: error: unknown type name 'u_char'
43 | u_char ether_dhost[6];
./linux/dev/include/linux/fs.h:304:5: error: unknown type name 'loff_t'
304 | loff_t f_pos;
This is a follow-up to commit
d5e5dd3401ea0d0475aa830c2171be5b8a72f4fa
Update configure.ac so that we don't need glibc when running ./configure.
---
Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.am b/Makefile.am
index e31a875d..ad38249b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -43,7 +43,7 @@ AM_LDFLAGS =
GCC_INSTALL = $(shell LANG=C $(CC) -print-search-dirs | sed -n -e 's/install: \(.*\)/\1/p')
AM_CPPFLAGS += \
- -imacros config.h -I $(GCC_INSTALL)/include
+ -nostdinc -imacros config.h -I $(GCC_INSTALL)/include
AM_CPPFLAGS += \
-I$(systype) \
--
2.41.0

View file

@ -1,59 +0,0 @@
Upstream status: Taken from upstream.
From 9949068745e2b0ca91e17125d037f332d20a0213 Mon Sep 17 00:00:00 2001
From: Flavio Cruz <flaviocruz@gmail.com>
Date: Tue, 16 May 2023 23:01:01 -0400
Subject: [PATCH] Fix task_info for TASK_THREAD_TIMES_INFO.
We are checking for the existence of time_value64_t but we didn't add
that to the task_thread_times_info structure.
Message-Id: <ZGRDbS0XIm1fJwkG@jupiter.tail36e24.ts.net>
---
include/mach/task_info.h | 6 ++++++
kern/task.c | 8 +++++++-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/include/mach/task_info.h b/include/mach/task_info.h
index f448ee04..39659ee6 100644
--- a/include/mach/task_info.h
+++ b/include/mach/task_info.h
@@ -89,10 +89,16 @@ typedef struct task_events_info *task_events_info_t;
only accurate if suspended */
struct task_thread_times_info {
+ /* Deprecated, please use user_time64 */
rpc_time_value_t user_time; /* total user run time for
live threads */
+ /* Deprecated, please use system_time64 */
rpc_time_value_t system_time; /* total system run time for
live threads */
+ time_value64_t user_time64; /* total user run time for
+ live threads */
+ time_value64_t system_time64; /* total system run time for
+ live threads */
};
typedef struct task_thread_times_info task_thread_times_info_data_t;
diff --git a/kern/task.c b/kern/task.c
index 65191f5d..81817083 100644
--- a/kern/task.c
+++ b/kern/task.c
@@ -881,8 +881,14 @@ kern_return_t task_info(
task_unlock(task);
TIME_VALUE64_TO_TIME_VALUE(&acc_user_time, &times_info->user_time);
TIME_VALUE64_TO_TIME_VALUE(&acc_system_time, &times_info->system_time);
+ if (*task_info_count >= TASK_THREAD_TIMES_INFO_COUNT) {
+ /* Copy new time_value64_t fields */
+ times_info->user_time64 = acc_user_time;
+ times_info->system_time64 = acc_system_time;
+ }
- *task_info_count = TASK_THREAD_TIMES_INFO_COUNT;
+ if (*task_info_count > TASK_THREAD_TIMES_INFO_COUNT)
+ *task_info_count = TASK_THREAD_TIMES_INFO_COUNT;
break;
}
--
2.41.0

View file

@ -1,25 +0,0 @@
Upstream status: Taken from Debian/upsream.
https://salsa.debian.org/hurd-team/gnumach/-/blob/master/debian/patches/90_noide.patch
This supports using `noide' on the gnumach command line, disabling
gnumach IDE support and thus forcing use of rumdisk.
---
linux/dev/glue/block.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
--- a/linux/dev/glue/block.c
+++ b/linux/dev/glue/block.c
@@ -207,7 +207,10 @@ int
blk_dev_init ()
{
#ifdef CONFIG_BLK_DEV_IDE
- ide_init ();
+ extern char *kernel_cmdline;
+ if (strncmp(kernel_cmdline, "noide", 5) &&
+ !strstr(kernel_cmdline, " noide"))
+ ide_init ();
#endif
#ifdef CONFIG_BLK_DEV_FD
floppy_init ();