emacs-bug-tracker
[Top][All Lists]
Advanced

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

bug#62307: closed ([PATCH core-updates 00/15] Update Hurd and fix build


From: GNU bug Tracking System
Subject: bug#62307: closed ([PATCH core-updates 00/15] Update Hurd and fix build failures)
Date: Thu, 30 Mar 2023 10:49:02 +0000

Your message dated Thu, 30 Mar 2023 12:48:06 +0200
with message-id <87h6u2o6qh.fsf@gnu.org>
and subject line Re: [bug#62307] [PATCH core-updates v2 00/20] Update Hurd and 
fix build failures
has caused the debbugs.gnu.org bug report #62307,
regarding [PATCH core-updates 00/15] Update Hurd and fix build failures
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
62307: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62307
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: [PATCH core-updates 00/15] Update Hurd and fix build failures Date: Mon, 20 Mar 2023 23:07:26 +0100
Hello everyone,

Someone convinced me to have a look at Hurd on core-updates, since it was not
building.  The reason was a newer libc, as well as a newer gcc which turned
warnings into errors.  I figured the best way to resolve this would be to update
our Hurd packages, but it's not as simple as it sounds!

gnumach, mig, hurd and glibc are quite coupled, and even though they have git
tags now, it doesn't mean those tags actually build!  I had to pick some tag
from August for Hurd, since anything newer would require some patches for glibc,
and also pick gnumach and mig versions around that time.  We also need some
patches for glibc (only when cross-building) and gcc (for cross and native).
For the latter, I added some kludge to only modify the derivation if we're
building for the Hurd, so that it doesn't cause rebuilds.  I think it works
fine, but please do tell me if it still causes rebuilds elsewhere.

I've also tried cleaning up the packages, so that building Hurd could be
possible on non-x86 architectures.  We had quite a lot of hacks, like building a
32-bit mig that we would then run to generate headers.  Now, we should be using
proper cross tools everywhere, even mig.

I've fixed a couple of things as well so that I could build the basic disk image
using `guix system image -t hurd-raw gnu/system/examples/bare-hurd.tmpl` (fixes
to u-boot and opensbi will be sent separately, needed for qemu-minimal).  It
boots up to early userspace, but then the image is unable to set the passive
translators for /servers/exec and /servers/socket/1, the setxattr call fails
with ENOTSUP.  I guess this will be left as an exercise for the reader...

Best,

Josselin Poiret (15):
  gnu: glibc/fix-for-hurd-cross: Add new variant.
  gnu-build-system: Sneak fixed glibc when cross-building for Hurd.
  gcc-11: Patch libstdc++ libpthread issue for Hurd only.
  cross-base: Factor out cross-mig.
  cross-base: Add cross arguments to hurd derivatives.
  cross-base: Removed useless inputs to xhurd-core-headers.
  mig: Update to 1.8+git20220827.
  gnumach: Update to 1.8+git20220827.
  hurd: Update to 91a51672ff4cfe1f1a0712b4c542ded3081c825b.
  hurd: Remove useless glibc/hurd-headers input.
  gnumach, hurd-headers, hurd: Switch to using cross-mig.
  hurd: Update DDE and use libdde_linux26.
  mig/32-bit: Remove.
  system: hurd: Use shepherd-0.8 in the package list.
  system: pam: Only add linux-pam reference if on Linux.

 gnu/local.mk                                  |  10 +-
 gnu/packages/base.scm                         |  13 +-
 gnu/packages/commencement.scm                 |  10 +-
 gnu/packages/cross-base.scm                   | 128 ++-
 gnu/packages/gcc.scm                          |  32 +
 gnu/packages/hurd.scm                         | 294 +++---
 .../gcc-11-libstdc++-hurd-libpthread.patch    |  62 ++
 ...-hurd-add-freestanding-for-configure.patch |  87 ++
 ...bc-hurd-add-freestanding-to-cppflags.patch |  72 ++
 ...ng-const_mach_port_name_array_t-type.patch |  32 +
 ...rd-add-without-rump-configure-option.patch |  82 ++
 gnu/packages/patches/hurd-cross.patch         |  33 -
 ...f-read-write-and-readables-methods-2.patch | 155 +++
 ...-of-read-write-and-readables-methods.patch | 891 ++++++++++++++++++
 gnu/packages/patches/hurd-xattr.patch         |  53 --
 ...ig-generate-cpu.h-with-ffreestanding.patch |  37 +
 gnu/system/hurd.scm                           |   2 +-
 gnu/system/pam.scm                            |  16 +-
 guix/build-system/gnu.scm                     |  48 +-
 19 files changed, 1760 insertions(+), 297 deletions(-)
 create mode 100644 gnu/packages/patches/gcc-11-libstdc++-hurd-libpthread.patch
 create mode 100644 
gnu/packages/patches/glibc-hurd-add-freestanding-for-configure.patch
 create mode 100644 
gnu/packages/patches/glibc-hurd-add-freestanding-to-cppflags.patch
 create mode 100644 
gnu/packages/patches/gnumach-add-missing-const_mach_port_name_array_t-type.patch
 create mode 100644 
gnu/packages/patches/hurd-add-without-rump-configure-option.patch
 delete mode 100644 gnu/packages/patches/hurd-cross.patch
 create mode 100644 
gnu/packages/patches/hurd-fix-types-of-read-write-and-readables-methods-2.patch
 create mode 100644 
gnu/packages/patches/hurd-fix-types-of-read-write-and-readables-methods.patch
 delete mode 100644 gnu/packages/patches/hurd-xattr.patch
 create mode 100644 
gnu/packages/patches/mig-generate-cpu.h-with-ffreestanding.patch


base-commit: bfe569e84b539c505e1e432d8ceea91e1481e904
-- 
2.39.2




--- End Message ---
--- Begin Message --- Subject: Re: [bug#62307] [PATCH core-updates v2 00/20] Update Hurd and fix build failures Date: Thu, 30 Mar 2023 12:48:06 +0200 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
Hi Josselin,

Josselin Poiret <dev@jpoiret.xyz> skribis:

> Just had a look and built locally.  LGTM!  Great work (even though it's
> still unfinished, but that's for another day).

Thanks for testing!  Pushed as 14cd517e0cb8829b06b5a49f91c762c4a0e52eb5.
I uploaded the MiG tarball to ftp.gnu.org/gnu/guix and adjusted the URL
accordingly.

Ludo’.


--- End Message ---

reply via email to

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