Package: guix-patches;
Reported by: Janneke Nieuwenhuizen <janneke <at> gnu.org>
Date: Tue, 18 Jul 2023 14:39:02 UTC
Severity: normal
Tags: patch
Done: Janneke Nieuwenhuizen <janneke <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 64711 in the body.
You can then email your comments to 64711 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:39:02 GMT) Full text and rfc822 format available.Janneke Nieuwenhuizen <janneke <at> gnu.org>
:guix-patches <at> gnu.org
.
(Tue, 18 Jul 2023 14:39:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: guix-patches <at> gnu.org Subject: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 16:38:12 +0200
Hi! Now that native builds work again on the Hurd, we need builds to succeed and test suites to pass. Sadly, quite some packages have several problems with their test suite. Notably e2fsprogs (+62), c-ares (+37), coreutils (+21), python (+17), elfutils (+12), cmake (+11), curl (+9). And then there's a problem with gnulib's stack tests that we see some recurrences of. Some good news, previous commits that skipped tests for sed and libunistring can now be reverted, because their test suites pass. Also, most probably problematic tests in the guile test suite were fixed on guile master. As I understand, Josselin is working on this, so way may want to skip the patch for guile (or apply it anyway and revert it later). Because many patches are almost trivial and similar, you may want to give some specific comments to the non-trivial patches and possibly some general comments for the trivial ones instead of a LGTM on every individual patch? Greetings, Janneke Janneke Nieuwenhuizen (43): Revert "gnu: libunistring: Fix make check for the Hurd." gnu: guile: Skip hanging and failing pipe tests on the Hurd. gnu: coreutils: Skip hanging and failing test on the Hurd. gnu: grep: Update hanging and failing tests on the Hurd. Revert "gnu: sed: Skip failing test on GNU/Hurd." gnu: findutils: Move test-strerror_r from XFAIL to skip on the Hurd. gnu: diffutils: Remove test-perror2 from XFAIL_TESTS on the Hurd. gnu: gettext-minimal: Remove XFAIL_TESTS for the Hurd. gnu: m4: Skip gnulib stack-overflow tests for the Hurd. gnu: openssl: Build fix for the Hurd. gnu: python: Support native build on the Hurd. gnu: mpfr: Skip failing test on the Hurd. gnu: elfutils: Skip failing tests on the Hurd. gnu: libbsd: Skip failing test on the Hurd. gnu: c-ares: Skip failing tests on the Hurd. gnu: libgpg-error: Skip failing test on the Hurd. gnu: libgcrypt: Skip hanging benchmark tests on the Hurd. gnu: tcl: Remove failing tests on the Hurd.. gnu: curl: Skip failing test on the Hurd. gnu: git: Skip failing test on the Hurd. gnu: emacs: Depend on libc-for-target. gnu: procps: Skip linux-version test for the Hurd. gnu: e2fsprogs: Skip failing tests on the Hurd. gnu: parted: Disable tests for the Hurd. gnu: libpaper: Disable tests for the Hurd. gnu: cairo: Support building for the Hurd. gnu: openssl-1.1: Fix shared build for the Hurd. gnu: ruby-2.6: Skip test on the Hurd. gnu: tcsh: Skip substitution tests on the Hurd. gnu: swig: Skip tests when building for the Hurd. gnu: zstd: Skip tests when building for the Hurd. gnu: cmake-bootstrap: Fix build for the Hurd. gnu: cmake-minimal: Skip tests on the Hurd. gnu: doxygen: Fix build for the Hurd. gnu: graphite2: Skip test on the Hurd. gnu: guile-git: Skip http proxy test on the Hurd. gnu: glib: Disable tests for the Hurd. gnu: ghostscript: Fix build for the Hurd. gnu: harfbuzz: Support build for the Hurd. gnu: pango: Support build for the Hurd. gnu: fontforge: Support build on the Hurd. gnu: po4a: Skip failing test on the Hurd. gnu: guile-2.0: Skip failing tests on the Hurd. gnu/local.mk | 5 +- gnu/packages/adns.scm | 68 +++++++++-- gnu/packages/base.scm | 101 +++++++++------- gnu/packages/cmake.scm | 48 +++++--- gnu/packages/compression.scm | 5 +- gnu/packages/curl.scm | 19 ++- gnu/packages/disk.scm | 1 + gnu/packages/documentation.scm | 12 +- gnu/packages/elf.scm | 23 ++++ gnu/packages/emacs.scm | 4 +- gnu/packages/fontutils.scm | 108 +++++++++++++----- gnu/packages/gettext.scm | 14 ++- gnu/packages/ghostscript.scm | 20 +++- gnu/packages/glib.scm | 3 +- gnu/packages/gnupg.scm | 92 +++++++++------ gnu/packages/gtk.scm | 39 ++++--- gnu/packages/guile.scm | 40 ++++++- gnu/packages/libbsd.scm | 12 +- gnu/packages/libunistring.scm | 8 +- gnu/packages/linux.scm | 85 +++++++++++++- gnu/packages/m4.scm | 12 +- gnu/packages/multiprecision.scm | 12 ++ gnu/packages/patches/doxygen-hurd.patch | 30 +++++ gnu/packages/patches/fontforge-hurd.patch | 82 +++++++++++++ .../patches/ghostscript-leptonica-hurd.patch | 78 +++++++++++++ gnu/packages/python.scm | 27 ++++- gnu/packages/ruby.scm | 9 +- gnu/packages/shells.scm | 9 +- gnu/packages/swig.scm | 3 + gnu/packages/tcl.scm | 10 +- gnu/packages/tls.scm | 18 ++- gnu/packages/version-control.scm | 11 +- 32 files changed, 820 insertions(+), 188 deletions(-) create mode 100644 gnu/packages/patches/doxygen-hurd.patch create mode 100644 gnu/packages/patches/fontforge-hurd.patch create mode 100644 gnu/packages/patches/ghostscript-leptonica-hurd.patch base-commit: 61835f33c6fee35457c7277e3216c10c15d0a391 -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:41:01 GMT) Full text and rfc822 format available.Message #8 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 01/43] Revert "gnu: libunistring: Fix make check for the Hurd." Date: Tue, 18 Jul 2023 16:39:54 +0200
This reverts commit 12e6a5923812abf180f03bea9e07dd99244a3fcd, which used XFAIL_TESTS to have 'make check' pass with failing tests "test-perror2" "test-strerror_r" that now pass with glibc-2.37 and libc-for-target in commencement. --- gnu/packages/libunistring.scm | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/gnu/packages/libunistring.scm b/gnu/packages/libunistring.scm index e68b7d2378..eccd053a35 100644 --- a/gnu/packages/libunistring.scm +++ b/gnu/packages/libunistring.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo <at> gnu.org> ;;; Copyright © 2015 Mark H Weaver <mhw <at> netris.org> ;;; Copyright © 2016, 2018, 2022 Efraim Flashner <efraim <at> flashner.co.il> -;;; Copyright © 2016, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2016 Jan Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe <at> gmail.com> ;;; Copyright © 2017 Eric Bavier <bavier <at> member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr> @@ -28,7 +28,6 @@ (define-module (gnu packages libunistring) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix gexp) - #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages base)) @@ -61,10 +60,7 @@ (define-public libunistring (with-directory-excursion (string-append #$output "/lib") (install-file "libunistring.a" (string-append #$output:static "/lib")) - (delete-file "libunistring.a"))))) - #:make-flags (if (target-hurd?) - #~(list "XFAIL_TESTS=test-perror2 test-strerror_r") - #~'()))) + (delete-file "libunistring.a"))))))) (synopsis "C library for manipulating Unicode strings") (description "GNU libunistring is a library providing functions to manipulate -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:41:02 GMT) Full text and rfc822 format available.Message #11 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 02/43] gnu: guile: Skip hanging and failing pipe tests on the Hurd. Date: Tue, 18 Jul 2023 16:39:55 +0200
* gnu/packages/guile.scm (guile-3.0)[arguments]: When building on the Hurd, add stage 'disable-popen.test-open-pipe' to avoid running the open-input-pipe test (hangs) and open-output-pipe test (fails. --- gnu/packages/guile.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 48bee600a9..ed20c1dfbc 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -378,6 +378,15 @@ (define-public guile-3.0 (search-patch "guile-hurd-posix-spawn.patch"))) (invoke "patch" "--force" "-p1" "-i" patch)))) #~()) + #$@(if (system-hurd?) + #~((add-after 'unpack 'disable-popen.test-no-duplicate + ;; This test hangs on the Hurd. + (lambda _ + (substitute* "test-suite/tests/popen.test" + (("\\(pass-if \"no duplicate\".*" all) + (string-append all " (when (string-ci= \"GNU\" (vector-ref (uname) 0)) (throw 'unresolved)) +")))))) + #~()) #$@(if (target-ppc32?) #~((add-after 'unpack 'adjust-bootstrap-flags (lambda _ -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:41:02 GMT) Full text and rfc822 format available.Message #14 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 04/43] gnu: grep: Update hanging and failing tests on the Hurd. Date: Tue, 18 Jul 2023 16:39:57 +0200
* gnu/packages/base.scm (grep)[arguments]: When building natively on the Hurd, remove Rename phase 'skip-triple-backref-test' to 'skip-tests'. Remove "tests/triple-backref" as it now passes. Add the hanging "tests/hash-collision-perf" test, and the failing "tests/file" test. --- gnu/packages/base.scm | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index e941853d20..f1b027b0dc 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -134,21 +134,17 @@ (define-public grep (string-append bin "/fgrep")) (("^exec grep") (string-append "exec " bin "/grep")))))) - ,@(if (target-hurd?) - '((add-before 'check 'skip-triple-backref-test + ,@(if (system-hurd?) + '((add-before 'check 'skip-test (lambda _ - ;; This test is marked as malfunctioning on glibc systems - ;; due to - ;; <https://sourceware.org/bugzilla/show_bug.cgi?id=11053> - ;; and it triggers a segfault with glibc 2.33 on GNU/Hurd. - ;; Skip it. - (substitute* "tests/triple-backref" - (("^warn_" all) - (string-append "exit 77\n" all)))))) - '())) - #:make-flags ,(if (target-hurd?) - ''("XFAIL_TESTS=test-perror2 equiv-classes") ;XXX - ''()))) + (substitute* + ;; This test hangs + '("tests/hash-collision-perf" + ;; This test fails + "tests/file") + (("^#!.*" all) + (string-append all "exit 77;\n")))))) + '())))) (synopsis "Print lines matching a pattern") (description "grep is a tool for finding text inside files. Text is found by -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:41:03 GMT) Full text and rfc822 format available.Message #17 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 05/43] Revert "gnu: sed: Skip failing test on GNU/Hurd." Date: Tue, 18 Jul 2023 16:39:58 +0200
This reverts commit 779757047997d315d899b40c199be3709115cce4, as the gnulib "tests-perror2" test now passes. --- gnu/packages/base.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index f1b027b0dc..00e59e6f46 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -183,10 +183,6 @@ (define-public sed " CONFIG_HEADER='$(CONFIG_HEADER)'\t\t\\\n"))))) (modules '((guix build utils))))) (build-system gnu-build-system) - (arguments - `(#:make-flags ,(if (target-hurd?) - ''("XFAIL_TESTS=test-perror2") - ''()))) (synopsis "Stream editor") (native-inputs (list perl)) ;for tests (description -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:41:03 GMT) Full text and rfc822 format available.Message #20 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 03/43] gnu: coreutils: Skip hanging and failing test on the Hurd. Date: Tue, 18 Jul 2023 16:39:56 +0200
* gnu/packages/base.scm (coreutils)[arguments]: When building natively on the Hurd, remove "test/df/unreadable.sh" and "test-perror2" from #:make-flags's XFAIL_TESTS as they now pass. Move failing script tests from XFAIL_TESTS to 'remove-tests' phase. In phase 'remove-tests' rewrite substitute* to skip tests instead of removing them. Add hanging and failing tests. --- gnu/packages/base.scm | 47 ++++++++++++++++++++++++++++--------------- 1 file changed, 31 insertions(+), 16 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 55fe70309c..e941853d20 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -397,23 +397,13 @@ (define-public coreutils (outputs '("out" "debug")) (arguments `(#:parallel-build? #f ; help2man may be called too early - ,@(if (target-hurd?) + ,@(if (system-hurd?) '(#:make-flags ; these tests fail deterministically - (list (string-append "XFAIL_TESTS=tests/misc/env-S.pl" - " tests/misc/kill.sh" - " tests/misc/nice.sh" - " tests/misc/pwd-long.sh" - " tests/split/fail.sh" - - ;; /hurd/fifo issue: - ;; <https://issues.guix.gnu.org/58803>. - " tests/df/unreadable.sh" - + (list (string-append "XFAIL_TESTS=" ;; Gnulib tests. " test-fdutimensat" " test-futimens" " test-linkat" - " test-perror2" " test-renameat" " test-renameatu" " test-utimensat"))) @@ -435,10 +425,35 @@ (define-public coreutils (("#!/bin/sh") (string-append "#!" (which "sh")))))) (add-after 'unpack 'remove-tests (lambda _ - ,@(if (target-hurd?) - '((substitute* "Makefile.in" - ;; this test hangs - (("^ *tests/misc/timeout-group.sh.*") "")) + ,@(if (system-hurd?) + '((substitute* + ;; These tests hang + '("tests/cp/sparse-to-pipe.sh" + "tests/split/fail.sh" + ;; These tests error + "tests/dd/nocache.sh" + ;; These tests fail + "tests/cp/sparse.sh" + "tests/cp/special-f.sh" + "tests/dd/bytes.sh" + "tests/dd/stats.sh" + "tests/ls/dangle.sh" + "tests/ls/follow-slink.sh" + "tests/ls/hyperlink.sh" + "tests/ls/infloop.sh" + "tests/ls/inode.sh" + "tests/ls/selinux-segfault.sh" + "tests/misc/env-S.pl" + "tests/misc/factor-parallel.sh" + "tests/misc/ls-misc.pl" + "tests/misc/nice.sh" + "tests/misc/pwd-long.sh" + "tests/misc/shred-passes.sh" + "tests/misc/stat-slash.sh" + "tests/rm/fail-eperm.xpl" + "tests/split/filter.sh") + (("^#!.*" all) + (string-append all "exit 77;\n"))) (substitute* "gnulib-tests/Makefile.in" ;; This test sometimes fails and sometimes ;; passes, but it does this consistently, so -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:02 GMT) Full text and rfc822 format available.Message #23 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 06/43] gnu: findutils: Move test-strerror_r from XFAIL to skip on the Hurd. Date: Tue, 18 Jul 2023 16:39:59 +0200
* gnu/packages/base.scm (findutils)[arguments]: When building natively on the Hurd, remove #:make-flags as "test-strerror_r" fails non-deterministically. Instead, add 'skip-test' phase and skip it. --- gnu/packages/base.scm | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 00e59e6f46..14479c4951 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -340,10 +340,16 @@ (define-public findutils (substitute* '("tests/xargs/verbose-quote.sh" "tests/find/exec-plus-last-file.sh") (("#!/bin/sh") - (string-append "#!" (which "sh"))))))) - #:make-flags ,(if (target-hurd?) - ''("XFAIL_TESTS=test-strerror_r") - ''()))) + (string-append "#!" (which "sh")))))) + ,@(if (system-hurd?) + '((add-after 'unpack 'skip-tests + (lambda _ + (substitute* + ;; This test fails non-deterministically + "gnulib-tests/test-strerror_r.c" + (("(^| )main *\\(.*" all) + (string-append all "{\n exit (77);//")))))) + '())))) (synopsis "Operating on files matching given criteria") (description "Findutils supplies the basic file directory searching utilities of the -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:02 GMT) Full text and rfc822 format available.Message #26 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 07/43] gnu: diffutils: Remove test-perror2 from XFAIL_TESTS on the Hurd. Date: Tue, 18 Jul 2023 16:40:00 +0200
* gnu/packages/base.scm (diffutils)[arguments]: When building natively on the Hurd, Move "large-subopt" test from #:make-flags' XFAIL_TESTS to a new 'skip-tests' phase. Remove #:make-flags for the Hurd, as "test-perror2" now passes. --- gnu/packages/base.scm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 14479c4951..1fdfaf8a57 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -303,9 +303,15 @@ (define-public diffutils (patches (search-patches "diffutils-fix-signal-processing.patch")))) (build-system gnu-build-system) (arguments - `(#:make-flags ,(if (target-hurd?) - ''("XFAIL_TESTS=test-perror2 large-subopt") - ''()))) + (list + #:phases (if (system-hurd?) + #~(modify-phases %standard-phases + (add-after 'unpack 'skip-tests + (lambda _ + (substitute* "tests/large-subopt" + (("^#!.*" all) + (string-append all "exit 77;\n")))))) + #~%standard-phases))) (native-inputs (list perl)) (synopsis "Comparing and merging files") (description -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:02 GMT) Full text and rfc822 format available.Message #29 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 08/43] gnu: gettext-minimal: Remove XFAIL_TESTS for the Hurd. Date: Tue, 18 Jul 2023 16:40:01 +0200
* gnu/packages/gettext.scm (gettext-minimal)[arguments]: When building for the Hurd, remove XTESTS_FAIL from, as "test-perror2" now passes. --- gnu/packages/gettext.scm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index 114d8cf7af..0cb01154d3 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -133,10 +133,7 @@ (define-public gettext-minimal #t))))) ;; When tests fail, we want to know the details. - #:make-flags #~'("VERBOSE=yes" - #$@(if (target-hurd?) - '("XFAIL_TESTS=test-perror2") - '())))) + #:make-flags #~'("VERBOSE=yes"))) (home-page "https://www.gnu.org/software/gettext/") (synopsis "Tools and documentation for translation (used to build other packages)") -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:03 GMT) Full text and rfc822 format available.Message #32 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 09/43] gnu: m4: Skip gnulib stack-overflow tests for the Hurd. Date: Tue, 18 Jul 2023 16:40:02 +0200
* gnu/packages/m4.scm (m4)[arguments]: When building for the Hurd, add stage 'skip-stack-overflow-tests'. --- gnu/packages/m4.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/m4.scm b/gnu/packages/m4.scm index fbc075a2cb..39b50b6800 100644 --- a/gnu/packages/m4.scm +++ b/gnu/packages/m4.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo <at> gnu.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr> ;;; Copyright © 2022 Marius Bakke <marius <at> gnu.org> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,7 +24,8 @@ (define-module (gnu packages m4) #:use-module (gnu packages) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix build-system gnu)) + #:use-module (guix build-system gnu) + #:use-module (guix utils)) (define-public m4 (package @@ -54,6 +56,14 @@ (define-public m4 (substitute* "tests/test-execute.sh" (("4 5 6") "4 6")))) + ,@(if (target-hurd?) + '((add-after 'unpack 'skip-stack-overflow-tests + (lambda _ + (substitute* '("tests/test-sigsegv-catch-stackoverflow1.c" + "tests/test-sigsegv-catch-stackoverflow2.c") + (("(^| )main *\\(.*" all) + (string-append all "{\n exit (77);//")))))) + '()) (add-after 'unpack 'configure-shell (lambda* (#:key native-inputs inputs #:allow-other-keys) (let ((/bin/sh (search-input-file (or native-inputs inputs) -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:03 GMT) Full text and rfc822 format available.Message #35 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 10/43] gnu: openssl: Build fix for the Hurd. Date: Tue, 18 Jul 2023 16:40:03 +0200
* gnu/packages/tls.scm (openssl-3.0)[arguments]: When building on the Hurd, add "hurd-x86" to #:configure-flags. --- gnu/packages/tls.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index d94b7c27f5..e8ed0d61a4 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -585,7 +585,13 @@ (define-public openssl-3.0 (lambda* (#:key native-inputs inputs #:allow-other-keys) (setenv "HASHBANGPERL" (search-input-file (or native-inputs inputs) - "/bin/perl")))))))) + "/bin/perl")))))) + ((#:configure-flags flags #~'()) + (if (target-hurd? (%current-system)) + #~(append + #$flags + '("hurd-x86")) + flags)))) (license license:asl2.0))) (define-public openssl openssl-3.0) -- 2.40.1
lars <at> 6xq.net, jgart <at> dismail.de, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:03 GMT) Full text and rfc822 format available.Message #38 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 11/43] gnu: python: Support native build on the Hurd. Date: Tue, 18 Jul 2023 16:40:04 +0200
Running "test_concurrent_futures" and "test_venv" freeze the Hurd. Tests "test_multiprocessing_forkserver" and "test_multiprocessing_spawn" run over 10mins. Debian simply skips all tests on the Hurd. * gnu/packages/python.scm (python-3.10)[arguments]: When building for the Hurd, add hanging and failing to #:make-flags's --exclude flag. Also, add 'disable-multi-processing' phase to avoid compileall.py hang during install. --- gnu/packages/python.scm | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 302f995b0f..51d5f598d7 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -457,7 +457,7 @@ (define-public python-3.10 (format #f "TESTOPTS=-j~d" (parallel-job-count)) ;; test_mmap fails on low-memory systems " --exclude test_mmap test_socket" - ,@(if (target-hurd?) + ,@(if (system-hurd?) '(" test_posix" ;multiple errors " test_time" " test_pty" @@ -487,12 +487,33 @@ (define-public python-3.10 " test_open_unix_connection" " test_open_unix_connection_error" " test_read_pty_output" - " test_write_pty") + " test_write_pty" + " test_concurrent_futures" ;freeze + " test_venv" ;freeze + " test_multiprocessing_forkserver" ;runs over 10min + " test_multiprocessing_spawn" ;runs over 10min + " test_builtin" + " test_capi" + " test_dbm_ndbm" + " test_exceptions" + " test_faulthandler" + " test_getopt" + " test_importlib" + " test_json" + " test_multiprocessing_fork" + " test_multiprocessing_main_handling" + " test_pdb " + " test_regrtest" + " test_sqlite") '())))) ((#:phases phases) `(modify-phases ,phases ,@(if (system-hurd?) - `((delete 'patch-regen-for-hurd)) ;regen was removed after 3.5.9 + `((delete 'patch-regen-for-hurd) ;regen was removed after 3.5.9 + (add-after 'unpack 'disable-multi-processing + (lambda _ + (substitute* "Makefile.pre.in" + (("-j0") "-j1"))))) '()) (add-after 'unpack 'remove-windows-binaries (lambda _ -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:04 GMT) Full text and rfc822 format available.Message #41 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 12/43] gnu: mpfr: Skip failing test on the Hurd. Date: Tue, 18 Jul 2023 16:40:05 +0200
* gnu/packages/multiprecision.scm (mpfr)[arguments]: When building natively on the Hurd, add 'skip-tests' phase to skip "tsprintf". --- gnu/packages/multiprecision.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm index 51ba21162c..3aa5dccfab 100644 --- a/gnu/packages/multiprecision.scm +++ b/gnu/packages/multiprecision.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018, 2019, 2021, 2023 Efraim Flashner <efraim <at> flashner.co.il> ;;; Copyright © 2021 Vinicius Monego <monego <at> posteo.net> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer <at> gmail.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -126,6 +127,17 @@ (define-public mpfr ".tar.xz")) (sha256 (base32 "14yr4sf4mys64nzbgnd997l6l4n8l9vsjnnvnb0lh4jh2ggpi8q6")))) + (arguments + (list + #:phases (if (system-hurd?) + #~(modify-phases %standard-phases + (add-after 'unpack 'skip-tests + (lambda _ + (substitute* + "tests/tsprintf.c" + (("(^| )main *\\(.*" all) + (string-append all "{\n exit (77);//")))))) + #~%standard-phases))) (build-system gnu-build-system) (outputs '("out" "debug")) (propagated-inputs (list gmp)) ; <mpfr.h> refers to <gmp.h> -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:04 GMT) Full text and rfc822 format available.Message #44 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 14/43] gnu: libbsd: Skip failing test on the Hurd. Date: Tue, 18 Jul 2023 16:40:07 +0200
* gnu/packages/libbsd.scm (libbsd)[arguments]: When building natively on the Hurd, add stage 'skip-tests'. --- gnu/packages/libbsd.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/libbsd.scm b/gnu/packages/libbsd.scm index 79f1389081..46a11a61e2 100644 --- a/gnu/packages/libbsd.scm +++ b/gnu/packages/libbsd.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Leo Famulari <leo <at> famulari.name> ;;; Copyright © 2022 Marius Bakke <marius <at> gnu.org> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ (define-module (gnu packages libbsd) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix gexp) + #:use-module (guix utils) #:use-module (gnu packages crypto)) (define-public libbsd @@ -64,7 +66,15 @@ (define-public libbsd ;; build container. (substitute* "test/Makefile" (("pwcache\\$\\(EXEEXT\\) ") - ""))))))) + "")))) + #$@(if (system-hurd?) + #~((add-after 'unpack 'skip-tests + (lambda _ + (substitute* "test/explicit_bzero.c" + (("(^| )main *\\(.*" all) + (string-append all + "{\n exit (77);//")))))) + #~())))) (inputs (list libmd)) (synopsis "Utility functions from BSD systems") -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:05 GMT) Full text and rfc822 format available.Message #47 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 13/43] gnu: elfutils: Skip failing tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:06 +0200
* gnu/packages/elf.scm (elfutils)[arguments]: When building natively on the Hurd, add phase 'skip-tests'. --- gnu/packages/elf.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index d188099812..a100038f14 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2020 Michael Rohleder <mike <at> rohleder.de> ;;; Copyright © 2021 Leo Le Bouter <lle-bout <at> zaclys.net> ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -112,6 +113,28 @@ (define-public elfutils (("run-reverse-sections-self.sh") "") (("run-strip-strmerge.sh") "") (("run-elflint-self.sh") ""))))) + '()) + ,@(if (system-hurd?) + `((add-after 'unpack 'skip-tests + (lambda _ + (substitute* '("tests/elfstrtab.c" + "tests/emptyfile.c") + (("elf_version \\(EV_CURRENT\\);" all) + "exit (77);")) + (substitute* '("tests/run-all-dwarf-ranges.sh" + "tests/run-allfcts-multi.sh" + "tests/run-attr-integrate-skel.sh" + "tests/run-bug1-test.sh" + "tests/run-copyadd-sections.sh" + "tests/run-deleted.sh" + "tests/run-get-units-split.sh" + "tests/run-native-test.sh" + "tests/run-readelf-loc.sh" + "tests/run-readelf-ranges.sh" + "tests/run-unit-info.sh" + "tests/run-varlocs.sh") + (("^#!.*" all) + (string-append all "exit 77;\n")))))) '())))) (native-inputs (list m4)) -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:05 GMT) Full text and rfc822 format available.Message #50 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 15/43] gnu: c-ares: Skip failing tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:08 +0200
* gnu/packages/adns.scm (c-ares)[arguments: When building natively on the Hurd, add phases 'skip-tests' and 'filter-hurd-tests'. --- gnu/packages/adns.scm | 68 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 61 insertions(+), 7 deletions(-) diff --git a/gnu/packages/adns.scm b/gnu/packages/adns.scm index 913d885af4..ead40bce1b 100644 --- a/gnu/packages/adns.scm +++ b/gnu/packages/adns.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015, 2016, 2018, 2020 Efraim Flashner <efraim <at> flashner.co.il> ;;; Copyright © 2018 Ricardo Wurmus <rekado <at> elephly.net> ;;; Copyright © 2019, 2021 Marius Bakke <marius <at> gnu.org> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,9 +21,11 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages adns) + #:use-module (guix gexp) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (gnu packages m4) @@ -76,18 +79,69 @@ (define-public c-ares "1kxviskwsaa7dcgscvssxa8ps88pdq7kq4z93gxvz7sam2l54z8s")))) (build-system gnu-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (add-before 'check 'filter-live-tests - (lambda _ - ;; Filter tests that require internet access. - (setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*")))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'filter-live-tests + (lambda _ + ;; Filter tests that require internet access. + (setenv "GTEST_FILTER" "-*.Live*:*.FamilyV4*"))) + #$@(if (system-hurd?) + #~((add-after 'unpack 'skip-tests + (lambda _ + (substitute* "test/ares-test-main.cc" + (("(^| )main *\\(.*" all) + (string-append all " exit (77);\n"))))) + (add-after 'filter-live-tests 'filter-hurd-tests + (lambda _ + (setenv "GTEST_FILTER" + (string-append + (getenv "GTEST_FILTER") + ":.*Basic/2" + ":.*CancelImmediate/2" + ":.*CancelImmediateGetHostByAddr/2" + ":.*CancelLater/1" + ":.*FamilyUnspecified/2" + ":.*FamilyV6/2" + ":.*GetAddrInfoParallelLookups/1" + ":.*GetHostByAddrDestroy/2" + ":.*GetHostByNameCNAMENoData/2" + ":.*GetHostByNameDestroyAbsolute/2" + ":.*GetHostByNameDestroyRelative/2" + ":.*GetHostByNameParallelLookups/1" + ":.*HostAlias/2" + ":.*HostAliasMissing/2" + ":.*HostAliasMissingFile/2" + ":.*NotImplResponse/2" + ":.*RefusedResponse/2" + ":.*Resend/1" + ":.*RetryWithoutEDNS/2" + ":.*SearchDomains/2" + ":.*SearchDomainsBare/2" + ":.*SearchDomainsServFailOnAAAA/2" + ":.*SearchDomainsWithResentReply/1" + ":.*SearchHighNdots/2" + ":.*SearchNoDataThenFail/2" + ":.*SearchNoDataThenNoDataBare/2" + ":.*SearchNoDataThenSuccess/2" + ":.*ServFailResponse/2" + ":.*SimpleQuery/2" + ":.*SockCallback/2" + ":.*SockConfigureCallback/2" + ":.*SortListV4/2" + ":.*SortListV6/2" + ":.*ThirdServer/2" + ":.*TruncationRetry/1" + ":.*UnspecifiedFamilyCname6A4/2" + ":.*UnspecifiedFamilyV4/2" + ":.*UnspecifiedFamilyV6/2"))))) + #~())))) (native-inputs (list pkg-config)) (home-page "https://c-ares.haxx.se/") (synopsis "C library for asynchronous DNS requests") (description - "C-ares is a C library that performs DNS requests and name resolution + "C-ares is a C library that performs DNS requests and name resolution asynchronously. It is intended for applications which need to perform DNS queries without blocking, or need to perform multiple DNS queries in parallel. The primary examples of such applications are servers which communicate with -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:06 GMT) Full text and rfc822 format available.Message #53 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 16/43] gnu: libgpg-error: Skip failing test on the Hurd. Date: Tue, 18 Jul 2023 16:40:09 +0200
* gnu/packages/gnupg.scm (libgpg-error)[arguments]: When building natively on the Hurd, add phase 'skip-tests'. --- gnu/packages/gnupg.scm | 82 ++++++++++++++++++++++++------------------ 1 file changed, 48 insertions(+), 34 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 49d29ed9bd..4a9a8fbb57 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2021 Nikita Domnitskii <nikita <at> domnitskii.me> ;;; Copyright © 2021 Aleksandr Vityazev <avityazev <at> posteo.org> ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer <at> gmail.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -94,40 +95,42 @@ (define-public libgpg-error (version "1.45") (source (origin - (method url-fetch) - (uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-" - version ".tar.bz2")) - (sha256 - (base32 - "09haz1kk48b8q0hd58g98whylah0fp121yfgjms7pzsbzgj8w3sp")))) + (method url-fetch) + (uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-" + version ".tar.bz2")) + (sha256 + (base32 + "09haz1kk48b8q0hd58g98whylah0fp121yfgjms7pzsbzgj8w3sp")))) (build-system gnu-build-system) (arguments - (if (%current-target-system) - `(#:modules ((guix build gnu-build-system) - (guix build utils)) - #:phases - (modify-phases %standard-phases - ;; If this is left out, some generated header - ;; files will be sprinkled with ‘\c’, which - ;; the compiler won't like. - (add-after 'unpack 'fix-gen-lock-obj.sh - (lambda _ - (substitute* "src/gen-lock-obj.sh" - (("if test -n `echo -n`") "if ! test -n `echo -n`")))) - ;; When cross-compiling, some platform specific properties cannot - ;; be detected. Create a symlink to the appropriate platform - ;; file if required. Note that these platform files depend on - ;; both the operating system and architecture! - ;; - ;; See Cross-Compiling section at: - ;; https://github.com/gpg/libgpg-error/blob/master/README - (add-after 'unpack 'cross-symlinks - (lambda _ - (define (link triplet source) - (symlink (string-append "lock-obj-pub." triplet ".h") - (string-append "src/syscfg/lock-obj-pub." - source ".h"))) - ,(let* ((target (%current-target-system)) + (cond + ((%current-target-system) + (list + #:modules '((guix build gnu-build-system) + (guix build utils)) + #:phases + #~(modify-phases %standard-phases + ;; If this is left out, some generated header + ;; files will be sprinkled with ‘\c’, which + ;; the compiler won't like. + (add-after 'unpack 'fix-gen-lock-obj.sh + (lambda _ + (substitute* "src/gen-lock-obj.sh" + (("if test -n `echo -n`") "if ! test -n `echo -n`")))) + ;; When cross-compiling, some platform specific properties cannot + ;; be detected. Create a symlink to the appropriate platform + ;; file if required. Note that these platform files depend on + ;; both the operating system and architecture! + ;; + ;; See Cross-Compiling section at: + ;; https://github.com/gpg/libgpg-error/blob/master/README + (add-after 'unpack 'cross-symlinks + (lambda _ + (define (link triplet source) + (symlink (string-append "lock-obj-pub." triplet ".h") + (string-append "src/syscfg/lock-obj-pub." + source ".h"))) + #$(let* ((target (%current-target-system)) (architecture (string-take target (string-index target #\-)))) (cond ((target-linux? target) @@ -140,8 +143,19 @@ (define-public libgpg-error ;; configuration, as this is not correct for ;; all architectures. (_ #t))) - (#t #t))))))) - '())) + (#t #t)))))))) + ((system-hurd?) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'skip-tests + (lambda _ + (substitute* + "tests/t-syserror.c" + (("(^| )main *\\(.*" all) + (string-append all "{\n exit (77);//")))))))) + (else + '()))) (native-inputs (list gettext-minimal)) (home-page "https://gnupg.org") (synopsis "Library of error values for GnuPG components") -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:06 GMT) Full text and rfc822 format available.Message #56 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 17/43] gnu: libgcrypt: Skip hanging benchmark tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:10 +0200
* gnu/packages/gnupg.scm (libgcrypt)[arguments]: When building natively on the Hurd, add phase 'setenv' to set "GCRYPT_NO_BENCHMARKS". --- gnu/packages/gnupg.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 4a9a8fbb57..8d92c60bf2 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -204,7 +204,15 @@ (define-public libgcrypt ,@(if (%current-target-system) ;; When cross-compiling, _gcry_mpih_lshift etc are undefined. `("--disable-asm") - '())))) + '())) + ,@(if (system-hurd?) + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'setenv + (lambda _ + (setenv "GCRYPT_NO_BENCHMARKS" "t"))))) + '()))) (outputs '("out" "debug")) (home-page "https://gnupg.org/") (synopsis "Cryptographic function library") -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:07 GMT) Full text and rfc822 format available.Message #59 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 18/43] gnu: tcl: Remove failing tests on the Hurd.. Date: Tue, 18 Jul 2023 16:40:11 +0200
* gnu/packages/tcl.scm (tcl)[arguments]: When building natively on the Hurd, add phase 'delete-tests'. --- gnu/packages/tcl.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm index 2a5fbc6fe8..b69dba2254 100644 --- a/gnu/packages/tcl.scm +++ b/gnu/packages/tcl.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw <at> netris.org> ;;; Copyright © 2014 Eric Bavier <bavier <at> member.fsf.org> ;;; Copyright © 2016, 2018 Efraim Flashner <efraim <at> flashner.co.il> -;;; Copyright © 2016 Jan Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2016, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2017 Kei Kebreau <kkebreau <at> posteo.net> ;;; Copyright © 2018, 2022 Tobias Geerinckx-Rice <me <at> tobias.gr> ;;; Copyright © 2019 Julien Lepiller <julien <at> lepiller.eu> @@ -69,7 +69,13 @@ (define-public tcl ;; Programs such as Ghostscript rely on it. (with-directory-excursion bin (symlink (car (find-files "." "tclsh")) - "tclsh")))))) + "tclsh"))))) + ,@(if (system-hurd?) + '((add-after 'unpack 'delete-tests + (lambda _ + (delete-file "tests/chanio.test") + (delete-file "tests/socket.test")))) + '())) ;; By default, man pages are put in PREFIX/man, but we want them in ;; PREFIX/share/man. The 'validate-documentation-location' phase is -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:07 GMT) Full text and rfc822 format available.Message #62 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 19/43] gnu: curl: Skip failing test on the Hurd. Date: Tue, 18 Jul 2023 16:40:12 +0200
* gnu/packages/curl.scm (curl)[arguments]: When building natively on the Hurd, add phase 'skip-tests'. --- gnu/packages/curl.scm | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 76fcc115cf..4e3c563570 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2019, 2021 Ricardo Wurmus <rekado <at> elephly.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba <at> kadziolka.net> ;;; Copyright © 2020 Dale Mellor <guix-devel-0brg6b <at> rdmp.org> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2021 Jean-Baptiste Volatier <jbv <at> pm.me> ;;; Copyright © 2021 Felix Gruber <felgru <at> posteo.net> ;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus <at> gmail.com> @@ -125,7 +125,22 @@ (define-public curl ;; The top-level "make check" does "make -C tests quiet-test", which ;; is too quiet. Use the "test" target instead, which is more ;; verbose. - (invoke "make" "-C" "tests" "test"))))))) + (invoke "make" "-C" "tests" "test")))) + #$@(if (system-hurd?) + #~((add-after 'unpack 'skip-tests + (lambda _ + (let ((port (open-file "tests/data/DISABLED" "a"))) + (display "526\n" port) + (display "527\n" port) + (display "532\n" port) + (display "533\n" port) + (display "537\n" port) + (display "546\n" port) + (display "575\n" port) + (display "1021\n" port) + (display "1501\n" port) + (close port))))) + #~())))) (synopsis "Command line tool for transferring data with URL syntax") (description "curl is a command line tool for transferring data with URL syntax, -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:07 GMT) Full text and rfc822 format available.Message #65 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 20/43] gnu: git: Skip failing test on the Hurd. Date: Tue, 18 Jul 2023 16:40:13 +0200
* gnu/packages/version-control.scm (git)[arguments]: When building natively on the Hurd, add stage 'delete-tests/hurd'. --- gnu/packages/version-control.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index ecdb1d1781..2f70655ac1 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -28,7 +28,7 @@ ;;; Copyright © 2020 Roel Janssen <roel <at> gnu.org> ;;; Copyright © 2020, 2021 Brice Waegeneire <brice <at> waegenei.re> ;;; Copyright © 2020 John D. Boy <jboy <at> bius.moe> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2020, 2021, 2022, 2023 Vinicius Monego <monego <at> posteo.net> ;;; Copyright © 2020 Tanguy Le Carrour <tanguy <at> bioneland.org> ;;; Copyright © 2020, 2021, 2022 Michael Rohleder <mike <at> rohleder.de> @@ -570,7 +570,14 @@ (define-public git (manpages (assoc-ref inputs "git-manpages"))) (mkdir-p man) (with-directory-excursion man - (invoke "tar" "xvf" manpages)))))))) + (invoke "tar" "xvf" manpages))))) + ,@(if (system-hurd?) + '((add-after 'unpack 'delete-tests/hurd + (lambda _ + (delete-file "t/t0052-simple-ipc.sh") + (delete-file "t/t5562-http-backend-content-length.sh") + (delete-file "t/t9902-completion.sh")))) + '())))) (native-search-paths ;; For HTTPS access, Git needs a single-file certificate bundle, specified -- 2.40.1
andrew <at> trop.in, liliana.prikler <at> gmail.com, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:08 GMT) Full text and rfc822 format available.Message #68 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 21/43] gnu: emacs: Depend on libc-for-target. Date: Tue, 18 Jul 2023 16:40:14 +0200
* gnu/packages/emacs.scm (emacs)[inputs]: Change glibc to (libc-for-target). --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 437564f6f0..d3689c2474 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2017, 2019, 2020 Maxim Cournoyer <maxim.cournoyer <at> gmail.com> ;;; Copyright © 2017 Alex Vong <alexvong1995 <at> gmail.com> ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado <at> elephly.net> -;;; Copyright © 2017 Jan Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2017, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2018, 2023 Efraim Flashner <efraim <at> flashner.co.il> ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe <at> gmail.com> ;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me <at> tobias.gr> @@ -310,7 +310,7 @@ (define-public emacs ;; For native compilation binutils - glibc + (libc-for-target) libgccjit ;; Required for "core" functionality, such as dired and compression. -- 2.40.1
leo <at> famulari.name, me <at> tobias.gr, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:08 GMT) Full text and rfc822 format available.Message #71 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 22/43] gnu: procps: Skip linux-version test for the Hurd. Date: Tue, 18 Jul 2023 16:40:15 +0200
* gnu/packages/linux.scm (procps)[arguments]: When building natively on the Hurd, add stage 'skip-tests'. --- gnu/packages/linux.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 39503de6ff..190c28cb60 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -42,7 +42,7 @@ ;;; Copyright © 2020 Pierre Neidhardt <mail <at> ambrevar.xyz> ;;; Copyright © 2020 Chris Marusich <cmmarusich <at> gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll <at> gmail.com> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith <at> outlook.com> ;;; Copyright © 2020 John Soo <jsoo1 <at> asu.edu> ;;; Copyright © 2020, 2022 Michael Rohleder <mike <at> rohleder.de> @@ -2390,7 +2390,14 @@ (define-public procps (let* ((out #$output) (dup (append-map (cut find-files out <>) '("^kill" "^uptime")))) - (for-each delete-file dup))))))) + (for-each delete-file dup)))) + #$@(if (system-hurd?) + #~((add-after 'unpack 'skip-tests + (lambda _ + (substitute* "library/tests/test_version.c" + (("^int main\\(.*" all) + (string-append all "{\n exit (77);//")))))) + #~())))) (inputs (list ncurses)) (native-inputs (list pkg-config)) (home-page "https://gitlab.com/procps-ng/procps/") -- 2.40.1
leo <at> famulari.name, me <at> tobias.gr, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:09 GMT) Full text and rfc822 format available.Message #74 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 23/43] gnu: e2fsprogs: Skip failing tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:16 +0200
* gnu/packages/linux.scm (e2fsprogs)[arguments]: When building natively on the Hurd, add phase 'skip-tests'. --- gnu/packages/linux.scm | 74 ++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 190c28cb60..81658534b5 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2505,7 +2505,7 @@ (define-public e2fsprogs perl procps)) (arguments - '(;; util-linux is the preferred source for some of the libraries and + `(;; util-linux is the preferred source for some of the libraries and ;; commands, so disable them (see, e.g., ;; <http://git.buildroot.net/buildroot/commit/?id=e1ffc2f791b33633>.) #:configure-flags (list "--disable-libblkid" @@ -2552,7 +2552,77 @@ (define-public e2fsprogs (let ((archives (find-files lib "\\.a$"))) (for-each (lambda (file) (chmod file #o666)) - archives)))))))) + archives))))) + ,@(if (system-hurd?) + '((add-after 'unpack 'skip-tests + (lambda _ + (with-directory-excursion "tests" + (for-each + (lambda (directory) + (delete-file-recursively directory)) + '("d_bad_ostype" + "f_detect_junk" + "f_extent_oobounds" + "j_ext_long_revoke_trans" + "j_ext_long_trans" + "j_long_revoke_trans" + "j_long_revoke_trans_mcsum_32bit" + "j_long_revoke_trans_mcsum_64bit" + "j_long_trans" + "j_long_trans_mcsum_32bit" + "j_long_trans_mcsum_64bit" + "j_short_revoke_trans" + "j_short_revoke_trans_mcsum_64bit" + "j_short_trans_64bit" + "j_short_trans" + "j_short_trans_mcsum_64bit" + "j_short_trans_old_csum" + "j_short_trans_open_recover" + "j_short_trans_recover" + "j_short_trans_recover_mcsum_64bit" + "j_short_uncommitted_trans" + "j_short_uncommitted_trans_mcsum_64bit" + "m_error_behavior" + "m_minrootdir" + "m_rootdir" + "r_32to64bit_expand_full" + "r_expand_full" + "r_fixup_lastbg_big" + "t_change_uuid" + "t_change_uuid_mcsum" + "t_change_uuid_mcsum_mounted" + "t_change_uuid_mcsum_seed_mounted" + "t_change_uuid_mounted" + "t_disable_changed_csum_seed" + "t_disable_changed_csum_seed_mounted" + "t_disable_csum_seed" + "t_disable_meta_csum_and_seed" + "t_enable_csum_seed" + "t_format_csum_seed" + "t_replay_and_set" + "u_compound_rollback" + "u_corrupt_blk_csum" + "u_corrupt_blk_csum_force" + "u_corrupt_key_csum" + "u_debugfs_opt" + "u_dryrun" + "u_e2fsck_opt" + "u_errorout" + "u_force" + "u_force_dryrun" + "u_incomplete" + "u_mke2fs_opt" + "u_mke2fs_opt_oddsize" + "u_offset" + "u_onefile_bad" + "u_resize2fs_opt" + "u_revert_64bitmcsum_onefile" + "u_revert_all_onefile" + "u_revert_upgrade_to_64bitmcsum" + "u_tune2fs_opt" + "u_undo_undo" + "u_wrong_fs")))))) + '())))) (home-page "https://e2fsprogs.sourceforge.net/") (synopsis "Creating and checking ext2/ext3/ext4 file systems") (description -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:09 GMT) Full text and rfc822 format available.Message #77 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 24/43] gnu: parted: Disable tests for the Hurd. Date: Tue, 18 Jul 2023 16:40:17 +0200
* gnu/packages/disk.scm (parted)[argument]: Set #:tests? to #false when building for the Hurd. --- gnu/packages/disk.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 6306504503..35ffcf173e 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -259,6 +259,7 @@ (define-public parted #:configure-flags (if (target-hurd?) #~'("--disable-device-mapper") #~'()) + #:tests? (not (target-hurd?)) #:phases #~(modify-phases %standard-phases (add-after 'unpack 'fix-locales-and-python -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:09 GMT) Full text and rfc822 format available.Message #80 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 25/43] gnu: libpaper: Disable tests for the Hurd. Date: Tue, 18 Jul 2023 16:40:18 +0200
* gnu/packages/ghostscript.scm (libpaper)[arguments]: When building for the Hurd, set #:tests? to #false. --- gnu/packages/ghostscript.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 8d35f1195c..94807fdd94 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr> ;;; Copyright © 2018, 2020, 2022 Marius Bakke <mbakke <at> fastmail.com> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe <at> gmail.com> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -89,9 +89,11 @@ (define-public libpaper (native-inputs (list help2man)) (arguments - '(#:configure-flags '("--disable-static" - ;; Tests require a relocatable build. - "--enable-relocatable"))) + (list #:configure-flags ''("--disable-static" + ;; Tests require a relocatable build. + "--enable-relocatable") + ;; --enable-relocate is broken on the Hurd + #:tests? (not (target-hurd?)))) (outputs '("out" "debug")) (home-page "https://github.com/rrthomas/libpaper") (synopsis "Library for handling paper sizes") -- 2.40.1
liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:10 GMT) Full text and rfc822 format available.Message #83 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Tue, 18 Jul 2023 16:40:19 +0200
Gobject-introspection and libdrm does not build for the Hurd. Poppler depends on nss, which does not build for the Hurd. * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the Hurd, do not include gobject-introspection. [inputs]: Likewise, do not include libdrm, poppler. --- gnu/packages/gtk.scm | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 9621357b99..eb69a88221 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -35,6 +35,7 @@ ;;; Copyright © 2022 Petr Hodina <phodina <at> protonmail.com> ;;; Copyright © 2023 Sergiu Ivanov <sivanov <at> colimite.fr> ;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -194,15 +195,21 @@ (define-public cairo (assoc-ref %outputs "doc") "/share/gtk-doc/html")))) (native-inputs - `(("gobject-introspection" ,gobject-introspection) + `(,@(if (target-hurd?) + '() + `(("gobject-introspection" ,gobject-introspection))) ("pkg-config" ,pkg-config) ("python" ,python-wrapper))) (inputs `(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap - ("drm" ,libdrm) + ,@(if (target-hurd?) + '() + `(("drm" ,libdrm))) ("ghostscript" ,ghostscript) ("libspectre" ,libspectre) - ("poppler" ,poppler))) + ,@(if (target-hurd?) + '() + `(("poppler" ,poppler))))) (propagated-inputs `( ;; ("cogl" ,cogl) ;; ("directfb" ,directfb) -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:42:10 GMT) Full text and rfc822 format available.Message #86 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 27/43] gnu: openssl-1.1: Fix shared build for the Hurd. Date: Tue, 18 Jul 2023 16:40:20 +0200
* gnu/packages/tls.scm (openssl-1.1)[arguments]: When building for the Hurd, add phase 'patch-configure'. (openssl)[arguments]: And delete it again. --- gnu/packages/tls.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index e8ed0d61a4..021c125983 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -470,6 +470,13 @@ (define-public openssl-1.1 #$(target->openssl-target (%current-target-system)))))) #~()) + #$@(if (target-hurd?) + #~((add-after 'unpack 'patch-configure + (lambda _ + (substitute* "config" + (("case \"\\$GUESSOS\" in.*" all) + (string-append all "hurd-x86*) OUT=hurd-x86;;\n")))))) + #~()) (replace 'configure (lambda* (#:key configure-flags #:allow-other-keys) ;; It's not a shebang so patch-source-shebangs misses it. @@ -585,7 +592,10 @@ (define-public openssl-3.0 (lambda* (#:key native-inputs inputs #:allow-other-keys) (setenv "HASHBANGPERL" (search-input-file (or native-inputs inputs) - "/bin/perl")))))) + "/bin/perl")))) + #$@(if (target-hurd?) + #~((delete 'patch-configure)) + #~()))) ((#:configure-flags flags #~'()) (if (target-hurd? (%current-system)) #~(append -- 2.40.1
mail <at> cbaines.net, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:02 GMT) Full text and rfc822 format available.Message #89 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 28/43] gnu: ruby-2.6: Skip test on the Hurd. Date: Tue, 18 Jul 2023 16:40:21 +0200
* gnu/packages/ruby.scm (ruby-2.7)[arguments]: When building natively on the Hurd, add phase 'skip-tests'. --- gnu/packages/ruby.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index b96daad0ff..e0dca646ac 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -33,6 +33,7 @@ ;;; Copyright © 2022 Taiju HIGASHI <higashi <at> taiju.info> ;;; Copyright © 2023 Yovan Naumovski <yovan <at> gorski.stream> ;;; Copyright © 2023 gemmaro <gemmaro.dev <at> gmail.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -195,7 +196,13 @@ (define-public ruby-2.7 "test/ruby/test_system.rb" "tool/rbinstall.rb") (("/bin/sh") (which "sh"))) - #t))))) + #t)) + ,@(if (system-hurd?) + '((add-after 'unpack 'skip-tests + (lambda _ + (delete-file "bootstraptest/test_io.rb") + (delete-file "test/ruby/test_io.rb")))) + '())))) (native-inputs (list autoconf)))) -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:02 GMT) Full text and rfc822 format available.Message #92 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 29/43] gnu: tcsh: Skip substitution tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:22 +0200
* gnu/packages/shells.scm (tcsh)[arguments]: When building natively on the Hurd, add phase 'skip-tests'. --- gnu/packages/shells.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 0dae9ee954..aef22efd01 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2019 Meiyo Peng <meiyo.peng <at> gmail.com> ;;; Copyright © 2019 Timothy Sample <samplet <at> ngyro.com> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe <at> gmail.com> -;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2019, 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2020 Brice Waegeneire <brice <at> waegenei.re> ;;; Copyright © 2020 Ryan Prior <rprior <at> protonmail.com> ;;; Copyright © 2020, 2022 Efraim Flashner <efraim <at> flashner.co.il> @@ -416,6 +416,13 @@ (define-public tcsh (("CC_FOR_GETHOST=\"cc\"") "CC_FOR_GETHOST=\"gcc\""))))) #~()) + #$@(if (system-hurd?) + #~((add-after 'unpack 'skip-tests + (lambda _ + (substitute* "tests/testsuite.at" + (("m4_include\\(\\[subst.at\\]\\)" all) + (string-append "# " all)))))) + #~()) (add-before 'check 'patch-test-scripts (lambda _ ;; Take care of pwd -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:03 GMT) Full text and rfc822 format available.Message #95 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 30/43] gnu: swig: Skip tests when building for the Hurd. Date: Tue, 18 Jul 2023 16:40:23 +0200
* gnu/packages/swig.scm (swig)[arguments]: When building for the Hurd, set #:tests? to #false. --- gnu/packages/swig.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/swig.scm b/gnu/packages/swig.scm index 6e2fb8b4e9..42996fa812 100644 --- a/gnu/packages/swig.scm +++ b/gnu/packages/swig.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2018, 2021 Marius Bakke <marius <at> gnu.org> ;;; Copyright © 2019 Efraim Flashner <efraim <at> flashner.co.il> ;;; Copyright © 2020 Arun Isaac <arunisaac <at> systemreboot.net> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,6 +26,7 @@ (define-module (gnu packages swig) #:use-module (guix download) #:use-module (guix licenses) #:use-module (guix build-system gnu) + #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages boost) #:use-module (gnu packages guile) @@ -54,6 +56,7 @@ (define-public swig perl)) ;;("python" ,python-wrapper) (inputs (list pcre)) + (arguments (list #:tests? (not (target-hurd?)))) (home-page "https://swig.org/") (synopsis "Interface compiler that connects C/C++ code to higher-level languages") -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:03 GMT) Full text and rfc822 format available.Message #98 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 32/43] gnu: cmake-bootstrap: Fix build for the Hurd. Date: Tue, 18 Jul 2023 16:40:25 +0200
* gnu/packages/cmake.scm (%common-disabled-tests/hurd): New variable. (cmake-bootstrap) [inputs]: Include libuv for the Hurd too. [arguments]: Add %common-disabled-tests/hurd to #:make-flags for the Hurd. Also add a 'patch-hurd' phase to fix the build. --- gnu/packages/cmake.scm | 43 +++++++++++++++++++++++++++--------------- 1 file changed, 28 insertions(+), 15 deletions(-) diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index 821b8808f7..9064ca3822 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me <at> tobias.gr> ;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer <at> gmail.com> ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque <at> gmail.com> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2021 Ricardo Wurmus <rekado <at> elephly.net> ;;; ;;; This file is part of GNU Guix. @@ -136,6 +136,19 @@ (define %common-disabled-tests ;; This test fails for unknown reason. "RunCMake.file-GET_RUNTIME_DEPENDENCIES")) +(define %common-disabled-tests/hurd + '("CTestTestTimeout" + "CTestTestRerunFailed" + "RunCMake.CompilerChange" + "RunCMake.ctest_test" + "RunCMake.file" + "RunCMake.BundleUtilities" + "RunCMake.configure_file" + "RunCMake.CTestTimeout" + "RunCMake.CTestTimeoutAfterMatch" + "RunCMake.CommandLine" + "RunCMake.CTestCommandLine")) + (define %preserved-third-party-files '(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must ;; be available along with the required headers. @@ -190,7 +203,10 @@ (define-public cmake-bootstrap "CTestTestSubdir" ; This test fails to build 2 of the 3 tests. ;; This test fails when ARGS (below) is in use, see ;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>. - "CTestCoverageCollectGCOV"))) + "CTestCoverageCollectGCOV" + #$@(if (target-hurd?) + %common-disabled-tests/hurd + #~())))) (list (string-append ;; These arguments apply for the tests only. @@ -210,20 +226,17 @@ (define-public cmake-bootstrap ;; CMake uses its own configure script. (replace 'configure (lambda* (#:key (configure-flags '()) #:allow-other-keys) - (apply invoke "./configure" configure-flags)))))) + (apply invoke "./configure" configure-flags))) + #$@(if (target-hurd?) + #~((add-after 'unpack 'patch-hurd + (lambda _ + ;; Version 3.25.0 has a similar fix. + (substitute* "Utilities/cmlibuv/src/unix/udp.c" + (("!defined\\(__QNX__\\)") + "!defined(__GNU__)"))))) + #~())))) (inputs - (append - (if (target-hurd?) - '() - (list libuv)) ;not supported on the Hurd - (list bzip2 - curl - expat - file - jsoncpp - libarchive - rhash - zlib))) + (list libuv bzip2 curl expat file jsoncpp libarchive rhash zlib)) (native-search-paths (list (search-path-specification (variable "CMAKE_PREFIX_PATH") -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:04 GMT) Full text and rfc822 format available.Message #101 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 31/43] gnu: zstd: Skip tests when building for the Hurd. Date: Tue, 18 Jul 2023 16:40:24 +0200
* gnu/packages/compression.scm(zstd)[arguments]: When building for the Hurd, set #:tests? to #false. : --- gnu/packages/compression.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 09ac57668d..e4d3293f9d 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -24,7 +24,7 @@ ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua <at> nextjournal.com> ;;; Copyright © 2018, 2019 Pierre Neidhardt <mail <at> ambrevar.xyz> ;;; Copyright © 2019 Nicolas Goaziou <mail <at> nicolasgoaziou.fr> -;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2019, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de> ;;; Copyright © 2020 Arun Isaac <arunisaac <at> systemreboot.net> ;;; Copyright © 2020, 2021 Lars-Dominik Braun <lars <at> 6xq.net> @@ -1660,7 +1660,8 @@ (define-public zstd "HAVE_LZMA=0" ;; Not currently detected, but be explicit & avoid surprises later. "HAVE_LZ4=0" - "HAVE_ZLIB=0"))) + "HAVE_ZLIB=0") + #:tests? ,(not (target-hurd?)))) (home-page "https://facebook.github.io/zstd/") (synopsis "Zstandard real-time compression algorithm") (description "Zstandard (@command{zstd}) is a lossless compression algorithm -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:04 GMT) Full text and rfc822 format available.Message #104 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 33/43] gnu: cmake-minimal: Skip tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:26 +0200
* gnu/packages/cmake.scm (cmake-minimal)[arguments]: When building natively on the Hurd, add %common-disabled-tests/hurd to skipped tests in phase 'check'. --- gnu/packages/cmake.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index 9064ca3822..bc14286070 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -324,7 +324,10 @@ (define-public cmake-minimal (lambda* (#:key tests? parallel-tests? #:allow-other-keys) (let ((skipped-tests (list #$@%common-disabled-tests ;; This test requires the bundled libuv. - "BootstrapTest"))) + "BootstrapTest" + #$@(if (system-hurd?) + %common-disabled-tests/hurd + #~())))) (if tests? (begin (invoke "ctest" "-j" (if parallel-tests? -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:04 GMT) Full text and rfc822 format available.Message #107 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 34/43] gnu: doxygen: Fix build for the Hurd. Date: Tue, 18 Jul 2023 16:40:27 +0200
* gnu/packages/patches/doxygen-hurd.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/documentation.scm (doxygen)[arguments]: When building for the Hurd, add new phase 'apply-patch' and use it. --- gnu/local.mk | 1 + gnu/packages/documentation.scm | 12 +++++++++- gnu/packages/patches/doxygen-hurd.patch | 30 +++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/doxygen-hurd.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0d0f8c1937..84c4167723 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1066,6 +1066,7 @@ dist_patch_DATA = \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/dovecot-opensslv3.patch \ %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \ + %D%/packages/patches/doxygen-hurd.patch \ %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \ %D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dune-common-skip-failing-tests.patch \ diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index ec70ca4d8f..5d455431d3 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2020, 2021 Michael Rohleder <mike <at> rohleder.de> ;;; Copyright © 2021, 2022 Marius Bakke <marius <at> gnu.org> ;;; Copyright © 2022 Maxim Cournoyer <maxim.counoyer <at> gmail.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,6 +41,7 @@ (define-module (gnu packages documentation) #:use-module (guix build-system python) #:use-module (guix build-system qt) #:use-module (guix deprecation) + #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) @@ -224,7 +226,15 @@ (define-public doxygen (let ((/bin/sh (search-input-file inputs "/bin/sh"))) (substitute* "src/portable.cpp" (("/bin/sh") - /bin/sh)))))))) + /bin/sh))))) + #$@(if (target-hurd?) + #~((add-after 'unpack 'apply-patch + (lambda _ + (let ((patch-file + #$(local-file + (search-patch "doxygen-hurd.patch")))) + (invoke "patch" "--force" "-p1" "-i" patch-file))))) + #~())))) (synopsis "Generate documentation from annotated sources") (description "Doxygen is the de facto standard tool for generating documentation from annotated C++ sources, but it also supports other popular diff --git a/gnu/packages/patches/doxygen-hurd.patch b/gnu/packages/patches/doxygen-hurd.patch new file mode 100644 index 0000000000..a40923184b --- /dev/null +++ b/gnu/packages/patches/doxygen-hurd.patch @@ -0,0 +1,30 @@ +Upstream status: Adapted from upstream. + +From d3d968e5835f449d7ea715f45160db81ea906303 Mon Sep 17 00:00:00 2001 +From: Samuel Thibault <samuel.thibault <at> ens-lyon.org> +Date: Tue, 16 Aug 2022 20:29:54 +0200 +Subject: [PATCH] Fix build on GNU/Hurd + +There is no path length limitation there, even via pathconf. But glibc +provides a getcwd function that allocates the buffer dynamically so we can +just leverage that. +--- + include/ghc/filesystem.hpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +--- a/filesystem/filesystem.hpp.orig 2022-08-11 22:14:32.000000000 +0200 ++++ b/filesystem/filesystem.hpp 2023-06-13 07:26:25.310000000 +0200 +@@ -4081,6 +4081,13 @@ + return path(); + } + return path(std::wstring(buffer.get()), path::native_format); ++#elif defined(__GLIBC__) ++ std::unique_ptr<char, decltype(&std::free)> buffer { ::getcwd(NULL, 0), std::free }; ++ if (buffer == nullptr) { ++ ec = detail::make_system_error(); ++ return path(); ++ } ++ return path(buffer.get()); + #else + size_t pathlen = static_cast<size_t>(std::max(int(::pathconf(".", _PC_PATH_MAX)), int(PATH_MAX))); + std::unique_ptr<char[]> buffer(new char[pathlen + 1]); -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:05 GMT) Full text and rfc822 format available.Message #110 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 35/43] gnu: graphite2: Skip test on the Hurd. Date: Tue, 18 Jul 2023 16:40:28 +0200
* gnu/packages/fontutils.scm (graphite2)[arguments]: When building natively on the Hurd, replace phase 'check' to set make-flags to skip "awamicmp3" test. --- gnu/packages/fontutils.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index e5170b5ae3..64b15fbf05 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2022 Felipe Balbi <balbi <at> kernel.org> ;;; Copyright © 2023 gemmaro <gemmaro.dev <at> gmail.com> ;;; Copyright © 2023 John Kehayias <john.kehayias <at> protonmail.com> +;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1369,6 +1370,25 @@ (define-public graphite2 (list python python-fonttools-minimal)) (inputs (list freetype)) + (arguments + (if (system-hurd?) + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + ;; cmake-build-system ignores #:make-flags for make check + (lambda* (#:key test-target tests? parallel-tests? + #:allow-other-keys) + (if tests? + (let ((jobs (if parallel-tests? + (number->string (parallel-job-count)) + "1"))) + (invoke "make" + (string-append + "ARGS=-j " jobs " --exclude-regex ^awamicmp3$") + test-target)) + (format #t "test suite not run~%")))))) + '())) (synopsis "Reimplementation of the SIL Graphite text processing engine") (description "Graphite2 is a reimplementation of the SIL Graphite text processing -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:05 GMT) Full text and rfc822 format available.Message #113 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 36/43] gnu: guile-git: Skip http proxy test on the Hurd. Date: Tue, 18 Jul 2023 16:40:29 +0200
* gnu/packages/guile.scm (guile-git)[arguments]: When building natively on the Hurd, add phase 'skip-tests/hurd'. --- gnu/packages/guile.scm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index ed20c1dfbc..e9bed75fb1 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -838,7 +838,20 @@ (define-public guile-git (lambda _ (substitute* "Makefile.am" ((".*tests/blob\\.scm.*") "")))))) - '()))) + '()) + ,@(if (system-hurd?) + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'skip-tests/hurd + (lambda _ + (substitute* "tests/proxy.scm" + (("\\(test-begin.*" all) + (string-append + all + "(when (string-ci= \"GNU\" (vector-ref (uname) 0))\n" + " (test-skip 1))\n"))))))) + '()))) (native-inputs (list pkg-config autoconf automake texinfo guile-3.0 guile-bytestructures)) (inputs -- 2.40.1
liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:06 GMT) Full text and rfc822 format available.Message #116 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Tue, 18 Jul 2023 16:40:30 +0200
* gnu/packages/glib.scm (glib)[arguments]: When building for the Hurd, set #:tests? to #false. --- gnu/packages/glib.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index e988e8dc87..bcbc1f22b1 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius <at> gnu.org> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo <at> nixo.xyz> ;;; Copyright © 2020 Florian Pelz <pelzflorian <at> pelzflorian.de> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2020 Arthur Margerit <ruhtra.mar <at> gmail.com> ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be> ;;; Copyright © 2022 Petr Hodina <phodina <at> protonmail.com> @@ -241,6 +241,7 @@ (define glib "debug")) (arguments (list + #:tests? (not (target-hurd?)) #:disallowed-references (cons tzdata-for-tests ;; Verify glib-mkenums, gtester, ... use the cross-compiled -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:06 GMT) Full text and rfc822 format available.Message #119 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 38/43] gnu: ghostscript: Fix build for the Hurd. Date: Tue, 18 Jul 2023 16:40:31 +0200
* gnu/packages/patches/ghostscript-leptonica-hurd.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/ghostscript.scm (ghostscript)[arguments]: When building for the Hurd, add phase 'patch-leptonica' and use it. --- gnu/local.mk | 3 +- gnu/packages/ghostscript.scm | 10 +++ .../patches/ghostscript-leptonica-hurd.patch | 78 +++++++++++++++++++ 3 files changed, 89 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/ghostscript-leptonica-hurd.patch diff --git a/gnu/local.mk b/gnu/local.mk index 84c4167723..45b1c1356b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1238,8 +1238,7 @@ dist_patch_DATA = \ %D%/packages/patches/ghc-bloomfilter-ghc9.2.patch \ %D%/packages/patches/ghc-bytestring-handle-ghc9.patch \ %D%/packages/patches/ghc-language-haskell-extract-ghc-8.10.patch \ - %D%/packages/patches/ghostscript-CVE-2023-36664.patch \ - %D%/packages/patches/ghostscript-CVE-2023-36664-fixup.patch \ + %D%/packages/patches/ghostscript-leptonica-hurd.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \ diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 94807fdd94..2d7f07fb40 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -201,6 +201,16 @@ (define-public ghostscript '())) #:phases #~(modify-phases %standard-phases + #$@(if (target-hurd?) + #~((add-after 'unpack 'patch-leptonica + (lambda _ + (let ((patch-file + #$(local-file + (search-patch + "ghostscript-leptonica-hurd.patch")))) + (with-directory-excursion "leptonica" + (invoke "patch" "--force" "-p1" "-i" patch-file)))))) + #~()) (add-before 'configure 'create-output-directory (lambda _ ;; The configure script refuses to function if the directory diff --git a/gnu/packages/patches/ghostscript-leptonica-hurd.patch b/gnu/packages/patches/ghostscript-leptonica-hurd.patch new file mode 100644 index 0000000000..124365b3e6 --- /dev/null +++ b/gnu/packages/patches/ghostscript-leptonica-hurd.patch @@ -0,0 +1,78 @@ +Upstream status: This patch was taken from leptonica upstream. + +Backported to ghostscripts bundled leptonica. + +From f04da7c816feb1d5f689c34f3d0e7e3621edf1f5 Mon Sep 17 00:00:00 2001 +From: Samuel Thibault <samuel.thibault <at> ens-lyon.org> +Date: Wed, 1 Feb 2023 19:35:43 +0100 +Subject: [PATCH] Fix GNU/Hurd build + +There is no PATH_MAX limitation on GNU/Hurd, and realpath() can be +safely be used with its second parameter set to NULL (as required by +posix since its version 2001). +--- + src/sarray1.c | 29 +++++++++++++++++++++++------ + 1 file changed, 23 insertions(+), 6 deletions(-) + +--- a/src/sarray1.c 2023-06-13 12:31:13.393672916 +0200 ++++ a/src/sarray1.c 2023-06-13 12:34:13.574237149 +0200 +@@ -1953,7 +1953,11 @@ + SARRAY * + getFilenamesInDirectory(const char *dirname) + { ++#if _POSIX_VERSION >= 200112 || defined(__GLIBC__) ++char *dir; ++#else + char dir[PATH_MAX + 1]; ++#endif + char *realdir, *stat_path, *ignore; + size_t size; + SARRAY *safiles; +@@ -1976,17 +1980,28 @@ + * If the file or directory exists, realpath returns its path; + else it returns NULL. + * If the second arg to realpath is passed in, the canonical path +- is returned there. Use a buffer of sufficient size. If the +- second arg is NULL, the path is malloc'd and returned if the +- file or directory exists. +- We pass in a buffer for the second arg, and check that the canonical +- directory path was made. The existence of the directory is checked +- later, after its actual path is returned by genPathname(). */ ++ is returned there. Use a buffer of sufficient size. ++ We pass in a buffer for the second arg, and check that the ++ canonical directory path was made. The existence of the ++ directory is checked later, after its actual path is returned by ++ genPathname(). ++ With GNU libc or Posix 2001, if the second arg is NULL, the path ++ is malloc'd and returned if the file or directory exists. ++ */ ++#if _POSIX_VERSION >= 200112 || defined(__GLIBC__) ++ dir = realpath(dirname, NULL); ++ if (dir == NULL) ++ return (SARRAY *)ERROR_PTR("dir not made", __func__, NULL); ++#else + dir[0] = '\0'; /* init empty in case realpath() fails to write it */ + ignore = realpath(dirname, dir); + if (dir[0] == '\0') + return (SARRAY *)ERROR_PTR("dir not made", procName, NULL); ++#endif + realdir = genPathname(dir, NULL); ++#if _POSIX_VERSION >= 200112 || defined(__GLIBC__) ++ LEPT_FREE(dir); ++#endif + if ((pdir = opendir(realdir)) == NULL) { + LEPT_FREE(realdir); + return (SARRAY *)ERROR_PTR("pdir not opened", procName, NULL); +@@ -1998,10 +2013,12 @@ + stat_ret = fstatat(dfd, pdirentry->d_name, &st, 0); + #else + size = strlen(realdir) + strlen(pdirentry->d_name) + 2; ++#if _POSIX_VERSION < 200112 && !defined(__GLIBC__) + if (size > PATH_MAX) { + L_ERROR("size = %zu too large; skipping\n", procName, size); + continue; + } ++#endif + stat_path = (char *)LEPT_CALLOC(size, 1); + snprintf(stat_path, size, "%s/%s", realdir, pdirentry->d_name); + stat_ret = stat(stat_path, &st); -- 2.40.1
liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:06 GMT) Full text and rfc822 format available.Message #122 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 39/43] gnu: harfbuzz: Support build for the Hurd. Date: Tue, 18 Jul 2023 16:40:32 +0200
* gnu/packages/gtk.scm (harfbuzz)[native-inputs]: Do not include gobject-introspection when building for the Hurd. --- gnu/packages/gtk.scm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index eb69a88221..853696c7f5 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -276,11 +276,13 @@ (define-public harfbuzz ;; There are all in the Requires or Requires.private field of '.pc'. (list glib graphite2 icu4c)) (native-inputs - (list `(,glib "bin") ;for glib-mkenums - gobject-introspection - pkg-config - python-wrapper - which)) + `((,glib "bin") ;for glib-mkenums + ,@(if (target-hurd?) + '() + (list gobject-introspection)) + ,pkg-config + ,python-wrapper + ,which)) (arguments (list #:configure-flags #~(list "--with-graphite2" -- 2.40.1
liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:07 GMT) Full text and rfc822 format available.Message #125 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Tue, 18 Jul 2023 16:40:33 +0200
* gnu/packages/gtk.scm (pango)[native-inputs]: Do not include gobject-introspection when building for the Hurd. --- gnu/packages/gtk.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 853696c7f5..15dea2852b 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -401,12 +401,14 @@ (define-public pango (list bash-minimal zlib)) (native-inputs - (list `(,glib "bin") ;glib-mkenums, etc. - gobject-introspection ;g-ir-compiler, etc. - help2man - perl - pkg-config - python-wrapper)) + `((,glib "bin") ;glib-mkenums, etc. + ,@(if (target-hurd?) + '() + (list gobject-introspection)) ;g-ir-compiler, etc. + ,help2man + ,perl + ,pkg-config + ,python-wrapper)) (synopsis "Text and font handling library") (description "Pango is a library for laying out and rendering of text, with an emphasis on internationalization. Pango can be used anywhere that text -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:07 GMT) Full text and rfc822 format available.Message #128 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 41/43] gnu: fontforge: Support build on the Hurd. Date: Tue, 18 Jul 2023 16:40:34 +0200
* gnu/packages/patches/fontforge-hurd.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/fontutils.scm (fontforge)[arguments]: When building natively on the Hurd, add new phase 'apply-hurd-patch' and use it, and replace phase 'check' to skip two tests. --- gnu/local.mk | 1 + gnu/packages/fontutils.scm | 88 +++++++++++++++-------- gnu/packages/patches/fontforge-hurd.patch | 82 +++++++++++++++++++++ 3 files changed, 141 insertions(+), 30 deletions(-) create mode 100644 gnu/packages/patches/fontforge-hurd.patch diff --git a/gnu/local.mk b/gnu/local.mk index 45b1c1356b..5befa67e6e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1147,6 +1147,7 @@ dist_patch_DATA = \ %D%/packages/patches/flatpak-unset-gdk-pixbuf-for-sandbox.patch \ %D%/packages/patches/fluxbox-1.3.7-no-dynamic-cursor.patch \ %D%/packages/patches/fontconfig-cache-ignore-mtime.patch \ + %D%/packages/patches/fontforge-hurd.patch \ %D%/packages/patches/foobillard++-pkg-config.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \ diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 64b15fbf05..2cfaa45c37 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -1534,37 +1534,65 @@ (define-public fontforge ("python" ,python) ("zlib" ,zlib))) (arguments - '(#:configure-flags '(;; TODO: Provide GTK+ for the Wayland-friendly GDK - ;; backend, instead of the legacy X11 backend. - ;; Currently it introduces a circular dependency. - "-DENABLE_X11=ON") + (list + #:configure-flags #~'( ;; TODO: Provide GTK+ for the Wayland-friendly GDK + ;; backend, instead of the legacy X11 backend. + ;; Currently it introduces a circular dependency. + "-DENABLE_X11=ON") #:phases - (modify-phases %standard-phases - (add-after 'unpack 'do-not-override-RPATH - (lambda _ - ;; Do not attempt to set a default RPATH, as our ld-wrapper - ;; already does the right thing. - (substitute* "CMakeLists.txt" - (("^set_default_rpath\\(\\)") - "")) - #t)) - (add-after 'install 'set-library-path - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (potrace (dirname - (search-input-file inputs "bin/potrace")))) - (wrap-program (string-append out "/bin/fontforge") - ;; Fontforge dynamically opens libraries. - `("LD_LIBRARY_PATH" ":" prefix - ,(map (lambda (input) - (string-append (assoc-ref inputs input) - "/lib")) - '("libtiff" "libjpeg" "libpng" "libungif" - "libxml2" "zlib" "libspiro" "freetype" - "pango" "cairo" "fontconfig"))) - ;; Checks for potrace program at runtime - `("PATH" ":" prefix (,potrace))) - #t)))))) + #~(modify-phases %standard-phases + (add-after 'unpack 'do-not-override-RPATH + (lambda _ + ;; Do not attempt to set a default RPATH, as our ld-wrapper + ;; already does the right thing. + (substitute* "CMakeLists.txt" + (("^set_default_rpath\\(\\)") + "")) + #t)) + #$@(if (target-hurd?) + #~((add-after 'unpack 'apply-hurd-patch + (lambda _ + (let ((patch-file + #$(local-file + (search-patch "fontforge-hurd.patch")))) + (invoke "patch" "--force" "-p1" "-i" patch-file))))) + #~()) + #$@(if (system-hurd?) + #~((replace 'check + ;; cmake-build-system ignores #:make-flags for make check + (lambda* (#:key test-target tests? parallel-tests? + #:allow-other-keys) + (let ((skip '("test0001_py" "test0001_pyhook"))) + (if tests? + (let ((jobs + (if parallel-tests? + (number->string (parallel-job-count)) + "1"))) + (invoke "make" + (string-append "ARGS=-j " jobs + " --exclude-regex ^" + (string-join skip "\\|") + "$") + test-target)) + (format #t "test suite not run~%")))))) + #~()) + (add-after 'install 'set-library-path + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (potrace (dirname + (search-input-file inputs "bin/potrace")))) + (wrap-program (string-append out "/bin/fontforge") + ;; Fontforge dynamically opens libraries. + `("LD_LIBRARY_PATH" ":" prefix + ,(map (lambda (input) + (string-append (assoc-ref inputs input) + "/lib")) + '("libtiff" "libjpeg" "libpng" "libungif" + "libxml2" "zlib" "libspiro" "freetype" + "pango" "cairo" "fontconfig"))) + ;; Checks for potrace program at runtime + `("PATH" ":" prefix (,potrace))) + #t)))))) (synopsis "Outline font editor") (description "FontForge allows you to create and modify postscript, truetype and diff --git a/gnu/packages/patches/fontforge-hurd.patch b/gnu/packages/patches/fontforge-hurd.patch new file mode 100644 index 0000000000..20d62b8ce2 --- /dev/null +++ b/gnu/packages/patches/fontforge-hurd.patch @@ -0,0 +1,82 @@ +Upstream status: Taken from upstream. + +From dca87c025665f0f010f906a4eba96da9794a4d04 Mon Sep 17 00:00:00 2001 +From: Anthony Fok <foka <at> debian.org> +Date: Thu, 16 Jun 2022 02:40:23 -0600 +Subject: [PATCH] Define PATH_MAX and MAXPATHLEN for GNU/Hurd compatibility + +Special thanks to @henrich, @ucko and @kilobyte for reporting the issue +and offering suggestions on a fix. + +See also https://bugs.debian.org/877795 + +Fixes #3119 +--- + inc/basics.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/inc/basics.h b/inc/basics.h +index b8d65823b..14590c5b1 100644 +--- a/inc/basics.h ++++ b/inc/basics.h +@@ -123,5 +123,13 @@ static inline int imax(int a, int b) + last = newitem; \ + } + ++#ifdef __GNU__ ++# ifndef PATH_MAX ++# define PATH_MAX 4096 ++# endif ++# ifndef MAXPATHLEN ++# define MAXPATHLEN 4096 ++# endif ++#endif + + #endif /* FONTFORGE_BASICS_H */ +-- +2.40.1 + +From e0480f143f27f8f2686b5b14d7d302fe22f35002 Mon Sep 17 00:00:00 2001 +From: Anthony Fok <foka <at> debian.org> +Date: Thu, 16 Jun 2022 03:06:56 -0600 +Subject: [PATCH] Undefine "extended" macro temporarily on GNU Hurd + +GNU Mach microkernel header files (gnumach-dev 1.8+git20201129) added to +struct i386_xfp_save in /usr/include/i386-gnu/include/mach/i386/fp_reg.h +a new "extended" field which happens to collide with the macro definition +"#define extended double" in FontForge, leading to FTBFS on GNU Hurd. + +This issue may be circumvented by temporarily undefining the "extended" +macro before loading `<gio/gio.h>` and friends, and redefining the +"extended" macro right after. +--- + inc/ffglib.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/inc/ffglib.h b/inc/ffglib.h +index f3419f0ab..25fe9ebde 100644 +--- a/inc/ffglib.h ++++ b/inc/ffglib.h +@@ -26,11 +26,19 @@ + #define GMenuItem GMenuItem_GIO + #define GTimer GTimer_GTK + ++#ifdef __GNU__ ++# undef extended ++#endif ++ + #include <gio/gio.h> + #include <glib-object.h> + #include <glib.h> + #include <glib/gstdio.h> + ++#ifdef __GNU__ ++# define extended double ++#endif ++ + #undef GList + #undef GMenuItem + #undef GTimer +-- +2.40.1 + -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:08 GMT) Full text and rfc822 format available.Message #131 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 42/43] gnu: po4a: Skip failing test on the Hurd. Date: Tue, 18 Jul 2023 16:40:35 +0200
* gnu/packages/gettext.scm (po4a)[arguments]: When building natively on the Hurd, add phase 'skip-tests/hurd'. --- gnu/packages/gettext.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index 0cb01154d3..99a4d4edbc 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -279,7 +279,14 @@ (define-public po4a (add-before 'check 'disable-failing-tests (lambda _ ;; FIXME: fails despite of importing SGMLS - (delete-file "t/fmt-sgml.t")))))) + (delete-file "t/fmt-sgml.t"))) + #$@(if (system-hurd?) + #~((add-after 'unpack 'skip-tests/hurd + (lambda _ + (delete-file "t/cfg-multi.t") + (delete-file "t/cfg-single.t") + (delete-file "t/cfg-split.t")))) + #~())))) (native-inputs (list gettext-minimal perl-module-build -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:43:08 GMT) Full text and rfc822 format available.Message #134 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: [PATCH 43/43] gnu: guile-2.0: Skip failing tests on the Hurd. Date: Tue, 18 Jul 2023 16:40:36 +0200
* gnu/packages/guile.scm (guile-2.0)[arguments]: When building natively on the Hurd, add stage 'disable-threads.tests'... (guile-2.2): ...and when building natively on the Hurd, delete it again. --- gnu/packages/guile.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index e9bed75fb1..9aefead3b3 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -212,8 +212,13 @@ (define-public guile-2.0 (rename-file "test-suite/tests/srfi-18.test" "srfi-18.test") ;; failed to remove 't-guild-compile-7215.go.tdL7yC (substitute* "test-suite/standalone/Makefile.in" - (("test-guild-compile ") "")) - #t))) + (("test-guild-compile ") ""))))) + '()) + ,@(if (system-hurd?) + '((add-after 'unpack 'disable-threads.tests + (lambda _ + ;; Many tests hang, esp. (join-thread ..), also others. + (rename-file "test-suite/tests/threads.test" "threads.test")))) '()) (add-before 'configure 'pre-configure (lambda* (#:key inputs #:allow-other-keys) @@ -286,7 +291,12 @@ (define-public guile-2.2 (if (target-x86-32?) ;<https://issues.guix.gnu.org/49368> `(append '("--disable-static") '("CFLAGS=-g -O2 -fexcess-precision=standard")) - flags)))) + flags)) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + #$@(if (system-hurd?) + #~((delete 'disable-threads.tests)) + '()))))) (properties '((timeout . 72000) ;20 hours (max-silent-time . 36000))) ;10 hours (needed on ARM -- 2.40.1
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 14:49:01 GMT) Full text and rfc822 format available.Message #137 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: 64711 <at> debbugs.gnu.org Subject: Re: [bug#64711] [PATCH 00/43] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 16:48:14 +0200
Janneke Nieuwenhuizen writes: The 00/45 should really be 00/43: > Janneke Nieuwenhuizen (43): [..] as I decided to skip two non-build fix/test-skip patches for now. Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 15:55:02 GMT) Full text and rfc822 format available.Message #140 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Liliana Marie Prikler <liliana.prikler <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org>, 64711 <at> debbugs.gnu.org Cc: Andrew Tropin <andrew <at> trop.in> Subject: Re: [bug#64711] [PATCH 21/43] gnu: emacs: Depend on libc-for-target. Date: Tue, 18 Jul 2023 17:54:46 +0200
Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke Nieuwenhuizen: > * gnu/packages/emacs.scm (emacs)[inputs]: Change glibc to (libc-for- > target). > --- > gnu/packages/emacs.scm | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm > index 437564f6f0..d3689c2474 100644 > --- a/gnu/packages/emacs.scm > +++ b/gnu/packages/emacs.scm > @@ -12,7 +12,7 @@ > ;;; Copyright © 2017, 2019, 2020 Maxim Cournoyer > <maxim.cournoyer <at> gmail.com> > ;;; Copyright © 2017 Alex Vong <alexvong1995 <at> gmail.com> > ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado <at> elephly.net> > -;;; Copyright © 2017 Jan Nieuwenhuizen <janneke <at> gnu.org> > +;;; Copyright © 2017, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> > ;;; Copyright © 2018, 2023 Efraim Flashner <efraim <at> flashner.co.il> > ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe <at> gmail.com> > ;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice > <me <at> tobias.gr> > @@ -310,7 +310,7 @@ (define-public emacs > > ;; For native compilation > binutils > - glibc > + (libc-for-target) > libgccjit > > ;; Required for "core" functionality, such as dired and > compression. LGTM
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 15:57:01 GMT) Full text and rfc822 format available.Message #143 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Liliana Marie Prikler <liliana.prikler <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org>, 64711 <at> debbugs.gnu.org Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Subject: Re: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Tue, 18 Jul 2023 17:56:30 +0200
Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke Nieuwenhuizen: > * gnu/packages/glib.scm (glib)[arguments]: When building for the > Hurd, > set #:tests? to #false. > --- > gnu/packages/glib.scm | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm > index e988e8dc87..bcbc1f22b1 100644 > --- a/gnu/packages/glib.scm > +++ b/gnu/packages/glib.scm > @@ -14,7 +14,7 @@ > ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius <at> gnu.org> > ;;; Copyright © 2020 Nicolò Balzarotti <nicolo <at> nixo.xyz> > ;;; Copyright © 2020 Florian Pelz <pelzflorian <at> pelzflorian.de> > -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> > +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> > ;;; Copyright © 2020 Arthur Margerit <ruhtra.mar <at> gmail.com> > ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be> > ;;; Copyright © 2022 Petr Hodina <phodina <at> protonmail.com> > @@ -241,6 +241,7 @@ (define glib > "debug")) > (arguments > (list > + #:tests? (not (target-hurd?)) > #:disallowed-references > (cons tzdata-for-tests > ;; Verify glib-mkenums, gtester, ... use the cross- > compiled Instead of disabling tests altogether, can we just disable those that fail on the Hurd?
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 15:58:02 GMT) Full text and rfc822 format available.Message #146 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Liliana Marie Prikler <liliana.prikler <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org>, 64711 <at> debbugs.gnu.org Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Subject: Re: [bug#64711] [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Tue, 18 Jul 2023 17:57:28 +0200
Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke Nieuwenhuizen: > Gobject-introspection and libdrm does not build for the Hurd. > Poppler depends > on nss, which does not build for the Hurd. > > * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the > Hurd, do > not include gobject-introspection. > [inputs]: Likewise, do not include libdrm, poppler. Could we provide a minimal gobject-introspection that builds for the hurd? Cheers
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 16:33:01 GMT) Full text and rfc822 format available.Message #149 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Liliana Marie Prikler <liliana.prikler <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Subject: Re: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Tue, 18 Jul 2023 18:32:37 +0200
Liliana Marie Prikler writes: > Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke > Nieuwenhuizen: >> * gnu/packages/glib.scm (glib)[arguments]: When building for the >> Hurd, >> set #:tests? to #false. [..] >> + #:tests? (not (target-hurd?)) >> compiled > Instead of disabling tests altogether, can we just disable those that > fail on the Hurd? We probably can, and I have tried to do so in most cases. However, identifying those tests can be quite time consuming. I'm not sure how many tests failed here, and note that some tests will hang or crash the Hurd, so if we decide to do this, I would appreciate some help :-) Ludo on the other hand, argued against having more than ~20 (IIRC) test exceptions and using #:tests? #f instead. My idea was to get guix to build natively, and guix pull to work. Once we get those to work, we can possibly look forward to more contributors to this. Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 16:35:01 GMT) Full text and rfc822 format available.Message #152 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Liliana Marie Prikler <liliana.prikler <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Subject: Re: [bug#64711] [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Tue, 18 Jul 2023 18:33:56 +0200
Liliana Marie Prikler writes: > Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke > Nieuwenhuizen: >> Gobject-introspection and libdrm does not build for the Hurd. >> Poppler depends >> on nss, which does not build for the Hurd. >> >> * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the >> Hurd, do >> not include gobject-introspection. >> [inputs]: Likewise, do not include libdrm, poppler. > Could we provide a minimal gobject-introspection that builds for the > hurd? That would be nice. Note that Debian doesn't support gobject-introspection on the Hurd, unless I'm mistaken. Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 16:41:01 GMT) Full text and rfc822 format available.Message #155 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Liliana Marie Prikler <liliana.prikler <at> gmail.com> Cc: 64711 <at> debbugs.gnu.org, Andrew Tropin <andrew <at> trop.in> Subject: Re: [bug#64711] [PATCH 21/43] gnu: emacs: Depend on libc-for-target. Date: Tue, 18 Jul 2023 18:39:49 +0200
Liliana Marie Prikler writes: > Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke > Nieuwenhuizen: >> * gnu/packages/emacs.scm (emacs)[inputs]: Change glibc to (libc-for- >> target). [..] >> @@ -310,7 +310,7 @@ (define-public emacs >> >> ;; For native compilation >> binutils >> - glibc >> + (libc-for-target) >> libgccjit >> >> ;; Required for "core" functionality, such as dired and >> compression. > LGTM Thanks! Pushed to master as 772eaa69f31457aa19ca4dc4ce755c791d722054. Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 17:54:02 GMT) Full text and rfc822 format available.Message #158 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 19:53:05 +0200
Hi, Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > * gnu/packages/tls.scm (openssl-3.0)[arguments]: When building on the Hurd, > add "hurd-x86" to #:configure-flags. [...] > + ((#:configure-flags flags #~'()) > + (if (target-hurd? (%current-system)) Should it be (target-hurd?) with no arguments, so it also affects cross-compilation? If not, maybe add “;native builds” or similar as a margin comment to make it clear that it’s on purpose. > + #~(append > + #$flags > + '("hurd-x86")) On a single line please. :-) Ludo’.
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 17:58:02 GMT) Full text and rfc822 format available.Message #161 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 19:57:52 +0200
Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > * gnu/packages/multiprecision.scm (mpfr)[arguments]: When building natively on > the Hurd, add 'skip-tests' phase to skip "tsprintf". [...] > + #:phases (if (system-hurd?) A side note on this, which predates this patch series: there no other ‘system-’ predicate; I think it may have been clearer to use (target-hurd?) or (and (not (%current-target-system)) (target-hurd?)) or similar, as is done for other platforms. > + (substitute* > + "tests/tsprintf.c" On a single line please. :-) (I wonder why it’s failing; is it a problem of precision on 32-bit platforms, or just on i586?) Ludo’.
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 18:06:01 GMT) Full text and rfc822 format available.Message #164 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Ludovic Courtès <ludo <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 20:04:56 +0200
Ludovic Courtès writes: > Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > >> * gnu/packages/tls.scm (openssl-3.0)[arguments]: When building on the Hurd, >> add "hurd-x86" to #:configure-flags. > > [...] > >> + ((#:configure-flags flags #~'()) >> + (if (target-hurd? (%current-system)) > > Should it be (target-hurd?) with no arguments, so it also affects > cross-compilation? No, but I'll change it to "(system-hurd?)" (chronologically, I only decided to add system-hurd two weeks later). > If not, maybe add “;native builds” or similar as a > margin comment to make it clear that it’s on purpose. Using system-hurd? is probably indicative enough, but because it *must* not be used when cross building, I'll add a comment. > >> + #~(append >> + #$flags >> + '("hurd-x86")) > > On a single line please. :-) Changed to (if (system-hurd?) #~(append #$flags '("hurd-x86")) ;must not be used when ;cross-compiling! flags)))) Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:06:02 GMT) Full text and rfc822 format available.Message #167 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Tue, 18 Jul 2023 16:04:51 -0400
Hi Janneke, Thanks for your efforts on this. Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > * gnu/packages/gtk.scm (pango)[native-inputs]: Do not include > gobject-introspection when building for the Hurd. > --- > gnu/packages/gtk.scm | 14 ++++++++------ > 1 file changed, 8 insertions(+), 6 deletions(-) > > diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm > index 853696c7f5..15dea2852b 100644 > --- a/gnu/packages/gtk.scm > +++ b/gnu/packages/gtk.scm > @@ -401,12 +401,14 @@ (define-public pango > (list bash-minimal > zlib)) > (native-inputs > - (list `(,glib "bin") ;glib-mkenums, etc. > - gobject-introspection ;g-ir-compiler, etc. > - help2man > - perl > - pkg-config > - python-wrapper)) > + `((,glib "bin") ;glib-mkenums, etc. > + ,@(if (target-hurd?) > + '() > + (list gobject-introspection)) ;g-ir-compiler, etc. > + ,help2man > + ,perl > + ,pkg-config > + ,python-wrapper)) Stylistically, I think it'd be better to use append (and 'if') here than quasiquotes (to avoid having to unquote all inputs). Otherwise it LGTM. -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:06:02 GMT) Full text and rfc822 format available.Message #170 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Tue, 18 Jul 2023 16:05:45 -0400
Hello, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > Liliana Marie Prikler writes: > >> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >> Nieuwenhuizen: >>> * gnu/packages/glib.scm (glib)[arguments]: When building for the >>> Hurd, >>> set #:tests? to #false. > > [..] >>> + #:tests? (not (target-hurd?)) > >>> compiled > >> Instead of disabling tests altogether, can we just disable those that >> fail on the Hurd? > > We probably can, and I have tried to do so in most cases. However, > identifying those tests can be quite time consuming. I'm not sure how > many tests failed here, and note that some tests will hang or crash the > Hurd, so if we decide to do this, I would appreciate some help :-) > > Ludo on the other hand, argued against having more than ~20 (IIRC) test > exceptions and using #:tests? #f instead. > > My idea was to get guix to build natively, and guix pull to work. Once > we get those to work, we can possibly look forward to more contributors > to this. I agree with Liliana that it's nicer to disable just these tests that fail, but in light of what you wrote, your approach seems reasonable. -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:07:02 GMT) Full text and rfc822 format available.Message #173 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Tue, 18 Jul 2023 16:06:24 -0400
Hi, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > Liliana Marie Prikler writes: > >> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >> Nieuwenhuizen: >>> Gobject-introspection and libdrm does not build for the Hurd. >>> Poppler depends >>> on nss, which does not build for the Hurd. >>> >>> * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the >>> Hurd, do >>> not include gobject-introspection. >>> [inputs]: Likewise, do not include libdrm, poppler. > >> Could we provide a minimal gobject-introspection that builds for the >> hurd? > > That would be nice. Note that Debian doesn't support > gobject-introspection on the Hurd, unless I'm mistaken. I wonder what prevents gobject-introspection from running on the Hurd? -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:14:01 GMT) Full text and rfc822 format available.Message #176 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 22:13:28 +0200
Hello! Great work! A general comment: these changes to test suites were made based on feedback from non-chrooted builds, whose outcome is influenced by system state such as running translators. Until we have chroot builds, I think we should be cautious and not invest too much time. Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > * gnu/packages/base.scm (coreutils)[arguments]: When building natively on the > Hurd, remove "test/df/unreadable.sh" and "test-perror2" from #:make-flags's > XFAIL_TESTS as they now pass. Move failing script tests from XFAIL_TESTS to > 'remove-tests' phase. In phase 'remove-tests' rewrite substitute* to skip > tests instead of removing them. Add hanging and failing tests. [...] > + '((substitute* > + ;; These tests hang > + '("tests/cp/sparse-to-pipe.sh" > + "tests/split/fail.sh" > + ;; These tests error > + "tests/dd/nocache.sh" > + ;; These tests fail > + "tests/cp/sparse.sh" > + "tests/cp/special-f.sh" > + "tests/dd/bytes.sh" > + "tests/dd/stats.sh" > + "tests/ls/dangle.sh" > + "tests/ls/follow-slink.sh" > + "tests/ls/hyperlink.sh" > + "tests/ls/infloop.sh" > + "tests/ls/inode.sh" > + "tests/ls/selinux-segfault.sh" > + "tests/misc/env-S.pl" > + "tests/misc/factor-parallel.sh" > + "tests/misc/ls-misc.pl" > + "tests/misc/nice.sh" > + "tests/misc/pwd-long.sh" > + "tests/misc/shred-passes.sh" > + "tests/misc/stat-slash.sh" > + "tests/rm/fail-eperm.xpl" > + "tests/split/filter.sh") > + (("^#!.*" all) > + (string-append all "exit 77;\n"))) For example, I wonder how reliable this long list is. Some of these tests may fiddle with /proc, /etc/fstab, and other things not under control, which means some might suddenly pass for some reason. So I wonder if we should just #:tests? #f in this case. Thoughts? (With other, higher-level test suites with a couple of failures, it’s probably still a good idea to skip individual tests instead of the whole test suite.) Ludo’.
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:14:01 GMT) Full text and rfc822 format available.Message #179 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 39/43] gnu: harfbuzz: Support build for the Hurd. Date: Tue, 18 Jul 2023 16:13:37 -0400
Hi, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > * gnu/packages/gtk.scm (harfbuzz)[native-inputs]: Do not include > gobject-introspection when building for the Hurd. > --- > gnu/packages/gtk.scm | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm > index eb69a88221..853696c7f5 100644 > --- a/gnu/packages/gtk.scm > +++ b/gnu/packages/gtk.scm > @@ -276,11 +276,13 @@ (define-public harfbuzz > ;; There are all in the Requires or Requires.private field of '.pc'. > (list glib graphite2 icu4c)) > (native-inputs > - (list `(,glib "bin") ;for glib-mkenums > - gobject-introspection > - pkg-config > - python-wrapper > - which)) > + `((,glib "bin") ;for glib-mkenums > + ,@(if (target-hurd?) > + '() > + (list gobject-introspection)) > + ,pkg-config > + ,python-wrapper > + ,which)) Here also (basically when it's touching label-free inputs), I'd use append with a conditional to avoid the unquote noise. Otherwise LGTM. -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:16:02 GMT) Full text and rfc822 format available.Message #182 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Tue, 18 Jul 2023 22:15:01 +0200
Maxim Cournoyer writes: Hi Maxim, > Thanks for your efforts on this. Sure. It's been fun, but a lot of work (world rebuilds) indeed. Things will get a lot better once we have CI for these native Hurd builds. > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > >> * gnu/packages/gtk.scm (pango)[native-inputs]: Do not include >> gobject-introspection when building for the Hurd. >> --- >> gnu/packages/gtk.scm | 14 ++++++++------ >> 1 file changed, 8 insertions(+), 6 deletions(-) >> >> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm >> index 853696c7f5..15dea2852b 100644 >> --- a/gnu/packages/gtk.scm >> +++ b/gnu/packages/gtk.scm >> @@ -401,12 +401,14 @@ (define-public pango >> (list bash-minimal >> zlib)) >> (native-inputs >> - (list `(,glib "bin") ;glib-mkenums, etc. >> - gobject-introspection ;g-ir-compiler, etc. >> - help2man >> - perl >> - pkg-config >> - python-wrapper)) >> + `((,glib "bin") ;glib-mkenums, etc. >> + ,@(if (target-hurd?) >> + '() >> + (list gobject-introspection)) ;g-ir-compiler, etc. >> + ,help2man >> + ,perl >> + ,pkg-config >> + ,python-wrapper)) > > Stylistically, I think it'd be better to use append (and 'if') here than > quasiquotes (to avoid having to unquote all inputs). Okay, I can change it to (cons `(,glib "bin") ;glib-mkenums, etc. (append (if (target-hurd?) '() (list gobject-introspection)) ;g-ir-compiler, etc. (list help2man perl pkg-config python-wrapper))) > Otherwise it LGTM. Thanks! -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:20:01 GMT) Full text and rfc822 format available.Message #185 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Josselin Poiret <dev <at> jpoiret.xyz>, 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 22:18:56 +0200
Hi, (+Cc: Josselin.) Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > * gnu/packages/guile.scm (guile-3.0)[arguments]: When building on the Hurd, > add stage 'disable-popen.test-open-pipe' to avoid running the > open-input-pipe test (hangs) and open-output-pipe test (fails. [...] > + #~((add-after 'unpack 'disable-popen.test-no-duplicate > + ;; This test hangs on the Hurd. > + (lambda _ > + (substitute* "test-suite/tests/popen.test" > + (("\\(pass-if \"no duplicate\".*" all) > + (string-append all " (when (string-ci= \"GNU\" (vector-ref (uname) 0)) (throw 'unresolved)) > +")))))) Maybe write: (string-append all (object->string '(when …))) Out of curiosity, is there a bug report for this one? IIRC, the test suite of Guile 3.0.9 + ‘guile-hurd-posix-spawn.patch’ used to pass on glibc 2.35. As discussed on IRC, skipping this test is not great in that it’ll likely come to haunt us. However, like you write, we can do that for now in the interest of making progress :-) and remove it with a proper fix once we have it. So… LGTM! Ludo’.
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:24:01 GMT) Full text and rfc822 format available.Message #188 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Ludovic Courtès <ludo <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 22:23:00 +0200
Ludovic Courtès writes: Hi! > Great work! Thank yout! > A general comment: these changes to test suites were made based on > feedback from non-chrooted builds, whose outcome is influenced by system > state such as running translators. Until we have chroot builds, I think > we should be cautious and not invest too much time. That's a helpful perspective, thanks for sharing. [snip coreutil's long list of failing patches] > For example, I wonder how reliable this long list is. Some of these > tests may fiddle with /proc, /etc/fstab, and other things not under > control, which means some might suddenly pass for some reason. So I > wonder if we should just #:tests? #f in this case. > > Thoughts? In this case, having invested the time to identify hanging and failing tests, I would suggent to keep the list; but I'm also fine with using #:tests? #f when more than, say 15 tests fail? What I failed to mention, is that I looked into what Debian is doing for cases like these, and without exception they just skip the test suite for the Hurd, even for critical packages such as coreutils and python. > > (With other, higher-level test suites with a couple of failures, it’s > probably still a good idea to skip individual tests instead of the whole > test suite.) Noted. Now I'm wondering whether glib should be considered to have higher level tests. It would have been nice if I kept some kind of record on this. It will be a bit less painful te re-check once CI built most upto glib, dunno. Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:24:02 GMT) Full text and rfc822 format available.Message #191 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Ludovic Courtès <ludo <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 22:23:08 +0200
Ludovic Courtès writes: Hi! > Great work! Thank you! > A general comment: these changes to test suites were made based on > feedback from non-chrooted builds, whose outcome is influenced by system > state such as running translators. Until we have chroot builds, I think > we should be cautious and not invest too much time. That's a helpful perspective, thanks for sharing. [snip coreutil's long list of failing patches] > For example, I wonder how reliable this long list is. Some of these > tests may fiddle with /proc, /etc/fstab, and other things not under > control, which means some might suddenly pass for some reason. So I > wonder if we should just #:tests? #f in this case. > > Thoughts? In this case, having invested the time to identify hanging and failing tests, I would suggent to keep the list; but I'm also fine with using #:tests? #f when more than, say 15 tests fail? What I failed to mention, is that I looked into what Debian is doing for cases like these, and without exception they just skip the test suite for the Hurd, even for critical packages such as coreutils and python. > > (With other, higher-level test suites with a couple of failures, it’s > probably still a good idea to skip individual tests instead of the whole > test suite.) Noted. Now I'm wondering whether glib should be considered to have higher level tests. It would have been nice if I kept some kind of record on this. It will be a bit less painful te re-check once CI built most upto glib, dunno. Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:24:02 GMT) Full text and rfc822 format available.Message #194 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 22:23:26 +0200
Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > * gnu/packages/base.scm (grep)[arguments]: When building natively on the Hurd, > remove Rename phase 'skip-triple-backref-test' to 'skip-tests'. Remove > "tests/triple-backref" as it now passes. Add the hanging > "tests/hash-collision-perf" test, and the failing "tests/file" test. [...] > + '((add-before 'check 'skip-test > (lambda _ > - ;; This test is marked as malfunctioning on glibc systems > - ;; due to > - ;; <https://sourceware.org/bugzilla/show_bug.cgi?id=11053> > - ;; and it triggers a segfault with glibc 2.33 on GNU/Hurd. > - ;; Skip it. > - (substitute* "tests/triple-backref" > - (("^warn_" all) > - (string-append "exit 77\n" all)))))) > - '())) > - #:make-flags ,(if (target-hurd?) > - ''("XFAIL_TESTS=test-perror2 equiv-classes") ;XXX > - ''()))) > + (substitute* > + ;; This test hangs > + '("tests/hash-collision-perf" > + ;; This test fails > + "tests/file") > + (("^#!.*" all) > + (string-append all "exit 77;\n")))))) Are there any hints in the log files of these two tests? Contrary to Coreutils, this is less likely to be an environment issue—or if it is, that might be clear from the log. So having an idea of what’s failing and ideally a reference to a bug report upstream would be great. Maybe not a blocker, but something we should do. Ludo’.
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Tue, 18 Jul 2023 20:30:02 GMT) Full text and rfc822 format available.Message #197 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Ludovic Courtès <ludo <at> gnu.org> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Tue, 18 Jul 2023 22:29:07 +0200
Hey! Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > Also, most probably problematic tests in the guile test suite were fixed on > guile master. As I understand, Josselin is working on this, so way may want > to skip the patch for guile (or apply it anyway and revert it later). > > Because many patches are almost trivial and similar, you may want to give some > specific comments to the non-trivial patches and possibly some general > comments for the trivial ones instead of a LGTM on every individual patch? So modulo the few comments I sent, I think this looks good. There’s a couple of things to check (which I haven’t do): • Make sure x86_64-linux derivations (for instance) are unchanged. That is, ‘./pre-inst-env guix build libreoffice -d’ should produce the same thing before and after this patch series, on x86_64-linux. (Pro tip: replace ‘-d’ with ‘-n’; if there are substitutes, it means it hasn’t changed. :-)) • Make sure ‘guix build sed --target=i586-pc-gnu’ still works. Probably the derivation should be unchanged, but maybe it’s OK if it changes (sometimes avoiding a cross-rebuild would require extra boilerplate that we’d rather not have). • And well, ‘guix build sed -s i586-gnu’ should work as well, but that’s the whole point of this series! Thanks a lot for all the work! Ludo’.
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 00:57:01 GMT) Full text and rfc822 format available.Message #200 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Tue, 18 Jul 2023 20:56:14 -0400
Hi, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: [...] > Okay, I can change it to > > (cons `(,glib "bin") ;glib-mkenums, etc. > (append (if (target-hurd?) > '() > (list gobject-introspection)) ;g-ir-compiler, etc. > (list help2man > perl > pkg-config > python-wrapper))) You can avoid 'cons' by moving `(,glib "bin") to the front of the trailing list (the one starting with help2man ...), I think. -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 05:24:02 GMT) Full text and rfc822 format available.Message #203 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Ludovic Courtès <ludo <at> gnu.org> Cc: Josselin Poiret <dev <at> jpoiret.xyz>, 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Wed, 19 Jul 2023 07:23:40 +0200
Ludovic Courtès writes: Hi! > (+Cc: Josselin.) > > Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > >> * gnu/packages/guile.scm (guile-3.0)[arguments]: When building on the Hurd, >> add stage 'disable-popen.test-open-pipe' to avoid running the >> open-input-pipe test (hangs) and open-output-pipe test (fails. > > [...] > >> + #~((add-after 'unpack 'disable-popen.test-no-duplicate >> + ;; This test hangs on the Hurd. >> + (lambda _ >> + (substitute* "test-suite/tests/popen.test" >> + (("\\(pass-if \"no duplicate\".*" all) >> + (string-append all " (when (string-ci= \"GNU\" (vector-ref (uname) 0)) (throw 'unresolved)) >> +")))))) > > Maybe write: > > (string-append all > (object->string '(when …))) That's a neat trick; changed to (string-append all (object->string '(when (string-ci= "GNU" (vector-ref (uname) 0)) (throw 'unresolved))))))))) > Out of curiosity, is there a bug report for this one? Sorry, no! I was kinda hoping this would resolve itself somehow, I think. Let's make sure there's a bug report if we still need this after Josselin's work. > IIRC, the test suite of Guile 3.0.9 + ‘guile-hurd-posix-spawn.patch’ > used to pass on glibc 2.35. Ok, good to know. > As discussed on IRC, skipping this test is not great in that it’ll > likely come to haunt us. However, like you write, we can do that for > now in the interest of making progress :-) and remove it with a proper > fix once we have it. > > So… LGTM! Thanks! Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 06:15:02 GMT) Full text and rfc822 format available.Message #206 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Wed, 19 Jul 2023 08:14:22 +0200
Maxim Cournoyer writes: Hello, > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > > [...] > >> Okay, I can change it to >> >> (cons `(,glib "bin") ;glib-mkenums, etc. >> (append (if (target-hurd?) >> '() >> (list gobject-introspection)) ;g-ir-compiler, etc. >> (list help2man >> perl >> pkg-config >> python-wrapper))) > > You can avoid 'cons' by moving `(,glib "bin") to the front of the > trailing list (the one starting with help2man ...), I think. Eh..I think that I don't understand; you mean moving `(,glib ,bin) after gobject-introspection like this? (append (if (target-hurd?) '() (list gobject-introspection)) ;g-ir-compiler, etc. (list `(,glib "bin") ;glib-mkenums, etc. help2man perl pkg-config python-wrapper))) That will trigger a rebuild that I would like to avoid. We could avoid cons by doing (append (list `(,glib "bin")) ;glib-mkenums, etc. (if (target-hurd?) '() (list gobject-introspection)) ;g-ir-compiler, etc. (list help2man perl pkg-config python-wrapper)) perhaps the best option? Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 06:29:02 GMT) Full text and rfc822 format available.Message #209 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Ludovic Courtès <ludo <at> gnu.org> Cc: Josselin Poiret <dev <at> jpoiret.xyz>, 64711 <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Wed, 19 Jul 2023 08:27:39 +0200
Ludovic Courtès writes: Hi! > (+Cc: Josselin.) > > Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > >> * gnu/packages/guile.scm (guile-3.0)[arguments]: When building on the Hurd, >> add stage 'disable-popen.test-open-pipe' to avoid running the >> open-input-pipe test (hangs) and open-output-pipe test (fails. > > [...] > >> + #~((add-after 'unpack 'disable-popen.test-no-duplicate >> + ;; This test hangs on the Hurd. >> + (lambda _ >> + (substitute* "test-suite/tests/popen.test" >> + (("\\(pass-if \"no duplicate\".*" all) >> + (string-append all " (when (string-ci= \"GNU\" (vector-ref (uname) 0)) (throw 'unresolved)) >> +")))))) > > Maybe write: > > (string-append all > (object->string '(when …))) That's a neat trick; changed to (string-append all (object->string '(when (string-ci= "GNU" (vector-ref (uname) 0)) (throw 'unresolved))))))))) > Out of curiosity, is there a bug report for this one? Sorry, no! I was kinda hoping this would resolve itself somehow, I think. Let's make sure there's a bug report if we still need this after Josselin's work. > IIRC, the test suite of Guile 3.0.9 + ‘guile-hurd-posix-spawn.patch’ > used to pass on glibc 2.35. Ok, good to know. > As discussed on IRC, skipping this test is not great in that it’ll > likely come to haunt us. However, like you write, we can do that for > now in the interest of making progress :-) and remove it with a proper > fix once we have it. > > So… LGTM! Thanks! Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 09:31:01 GMT) Full text and rfc822 format available.Message #212 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Wed, 19 Jul 2023 11:30:29 +0200
[Message part 1 (text/plain, inline)]
Maxim Cournoyer writes: Hi! > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > >> Liliana Marie Prikler writes: >> >>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >>> Nieuwenhuizen: >>>> Gobject-introspection and libdrm does not build for the Hurd. >>>> Poppler depends >>>> on nss, which does not build for the Hurd. >>>> >>>> * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the >>>> Hurd, do >>>> not include gobject-introspection. >>>> [inputs]: Likewise, do not include libdrm, poppler. >> >>> Could we provide a minimal gobject-introspection that builds for the >>> hurd? >> >> That would be nice. Note that Debian doesn't support >> gobject-introspection on the Hurd, unless I'm mistaken. > > I wonder what prevents gobject-introspection from running on the Hurd? Find build log attached. Janneke
[gi9lnpaqmi2wkz6h8rcf8kx092zj2k-gobject-introspection-1.73.1.drv.gz (application/octet-stream, attachment)]
[Message part 3 (text/plain, inline)]
-- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 16:23:02 GMT) Full text and rfc822 format available.Message #215 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Wed, 19 Jul 2023 12:22:31 -0400
Hi Janneke, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > Maxim Cournoyer writes: > > Hello, > >> Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: >> >> [...] >> >>> Okay, I can change it to >>> >>> (cons `(,glib "bin") ;glib-mkenums, etc. >>> (append (if (target-hurd?) >>> '() >>> (list gobject-introspection)) ;g-ir-compiler, etc. >>> (list help2man >>> perl >>> pkg-config >>> python-wrapper))) >> >> You can avoid 'cons' by moving `(,glib "bin") to the front of the >> trailing list (the one starting with help2man ...), I think. > > Eh..I think that I don't understand; you mean moving `(,glib ,bin) after > gobject-introspection like this? > > (append (if (target-hurd?) > '() > (list gobject-introspection)) ;g-ir-compiler, etc. > (list > `(,glib "bin") ;glib-mkenums, etc. > help2man > perl > pkg-config > python-wrapper))) > > That will trigger a rebuild that I would like to avoid. Ah, apologies, I had not thought about this causing rebuilds. > We could avoid cons by doing > > (append (list `(,glib "bin")) ;glib-mkenums, etc. > (if (target-hurd?) > '() > (list gobject-introspection)) ;g-ir-compiler, etc. > (list > help2man > perl > pkg-config > python-wrapper)) > > perhaps the best option? Either ways are fine, sorry for the noise :-). -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Wed, 19 Jul 2023 20:52:02 GMT) Full text and rfc822 format available.Message #218 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 40/43] gnu: pango: Support build for the Hurd. Date: Wed, 19 Jul 2023 22:51:01 +0200
Maxim Cournoyer writes: Hi Maxim, > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > >> Maxim Cournoyer writes: >> >> Hello, >> >>> Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: >>> >>> [...] [..] >> That will trigger a rebuild that I would like to avoid. > > Ah, apologies, I had not thought about this causing rebuilds. Yeah, tricky. >> We could avoid cons by doing >> >> (append (list `(,glib "bin")) ;glib-mkenums, etc. >> (if (target-hurd?) >> '() >> (list gobject-introspection)) ;g-ir-compiler, etc. >> (list >> help2man >> perl >> pkg-config >> python-wrapper)) >> >> perhaps the best option? > > Either ways are fine, sorry for the noise :-). No problem, thanks for chiming in and caring enough about stylistics! I like the last variant probably slightly better, so I'll keep that for harfbuzz and pango. Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Thu, 20 Jul 2023 03:15:01 GMT) Full text and rfc822 format available.Message #221 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Wed, 19 Jul 2023 23:14:07 -0400
Hi Janneke, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > Maxim Cournoyer writes: > > Hi! > >> Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: >> >>> Liliana Marie Prikler writes: >>> >>>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >>>> Nieuwenhuizen: >>>>> Gobject-introspection and libdrm does not build for the Hurd. >>>>> Poppler depends >>>>> on nss, which does not build for the Hurd. >>>>> >>>>> * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the >>>>> Hurd, do >>>>> not include gobject-introspection. >>>>> [inputs]: Likewise, do not include libdrm, poppler. >>> >>>> Could we provide a minimal gobject-introspection that builds for the >>>> hurd? >>> >>> That would be nice. Note that Debian doesn't support >>> gobject-introspection on the Hurd, unless I'm mistaken. >> >> I wonder what prevents gobject-introspection from running on the Hurd? > > Find build log attached. Interesting. Debian carries no Hurd patch for it [0], and upstream doesn't seem to know about this issue [1]. [0] http://deb.debian.org/debian/pool/main/g/gobject-introspection/gobject-introspection_1.76.1-1.debian.tar.xz [1] https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/?sort=created_date&state=opened&search=getauxval&first_page_size=20 -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Thu, 20 Jul 2023 08:20:02 GMT) Full text and rfc822 format available.Message #224 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Thu, 20 Jul 2023 10:19:43 +0200
[Message part 1 (text/plain, inline)]
Maxim Cournoyer writes: Hello! > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > >> Liliana Marie Prikler writes: >> >>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >>> Nieuwenhuizen: >>>> * gnu/packages/glib.scm (glib)[arguments]: When building for the >>>> Hurd, >>>> set #:tests? to #false. >> >> [..] >>>> + #:tests? (not (target-hurd?)) >> >>>> compiled >> >>> Instead of disabling tests altogether, can we just disable those that >>> fail on the Hurd? >> >> We probably can, and I have tried to do so in most cases. However, >> identifying those tests can be quite time consuming. I'm not sure how >> many tests failed here, and note that some tests will hang or crash the >> Hurd, so if we decide to do this, I would appreciate some help :-) >> >> Ludo on the other hand, argued against having more than ~20 (IIRC) test >> exceptions and using #:tests? #f instead. >> >> My idea was to get guix to build natively, and guix pull to work. Once >> we get those to work, we can possibly look forward to more contributors >> to this. > > I agree with Liliana that it's nicer to disable just these tests that > fail, but in light of what you wrote, your approach seems reasonable. Yes, I agree that if we want to make Hurd better and enabble us to create a bug report it sure helps if we have more information. Yesterday I decided to have another look into this. I have identified 20 tests that TIMEOUT after 600s, and 37 FAIL and instead of setting #:tests? to #false, I have added them to the `disable-failing-tests' phase when building on the Hurd. See attached patch. Greetings, Janneke
[0001-gnu-glib-Disable-hanging-and-failing-tests-for-the-H.patch (text/x-patch, inline)]
From e65647119e4791580ef50869d35be29d4010c6bb Mon Sep 17 00:00:00 2001 Message-Id: <e65647119e4791580ef50869d35be29d4010c6bb.1689841075.git.janneke <at> gnu.org> From: Janneke Nieuwenhuizen <janneke <at> gnu.org> Date: Tue, 13 Jun 2023 10:58:03 +0200 Subject: [PATCH] gnu: glib: Disable hanging and failing tests for the Hurd. * gnu/packages/glib.scm (glib)[arguments]: When building for the Hurd, in phase `disable-failing-tests', neutralize 20 hanging tests, and 37 more failing tests. --- gnu/packages/glib.scm | 104 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 103 insertions(+), 1 deletion(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index e988e8dc87..a0b85b15d1 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius <at> gnu.org> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo <at> nixo.xyz> ;;; Copyright © 2020 Florian Pelz <pelzflorian <at> pelzflorian.de> -;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke <at> gnu.org> +;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke <at> gnu.org> ;;; Copyright © 2020 Arthur Margerit <ruhtra.mar <at> gmail.com> ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be> ;;; Copyright © 2022 Petr Hodina <phodina <at> protonmail.com> @@ -285,6 +285,108 @@ (define glib (string-append "//" all "\n")) (("^ g_assert_cmpfloat \\(elapsed, ==.*" all) (string-append "//" all "\n")))) + '()) + #$@(if (system-hurd?) + '((with-directory-excursion "gio/tests" + ;; TIMEOUT after 600s + (substitute* '("actions.c" + "dbus-appinfo.c" + "debugcontroller.c" + "gdbus-bz627724.c" + "gdbus-connection-slow.c" + "gdbus-exit-on-close.c" + "gdbus-export.c" + "gdbus-introspection.c" + "gdbus-method-invocation.c" + "gdbus-non-socket.c" + "gdbus-proxy-threads.c" + "gdbus-proxy-unique-name.c" + "gdbus-proxy-well-known-name.c" + "gdbus-proxy.c" + "gdbus-test-codegen.c" + "gmenumodel.c" + "gnotification.c" + "stream-rw_all.c") + (("return (g_test_run|session_bus_run)" all call) + (string-append "return 0;// " call)) + ((" (ret|rtv|result) = (g_test_run|session_bus_run)" + all var call) + (string-append " " var " = 0;// " call)) + (("[ \t]*g_test_add_func.*;") "")) + + ;; commenting-out g_assert, g_test_add_func, g_test_run + ;; does not help; special-case short-circuit. + (substitute* "gdbus-connection-loss.c" ;; TODO? + ((" gchar \\*path;.*" all) + (string-append all " return 0;\n"))) + + ;; FAIL + (substitute* '("appmonitor.c" + "async-splice-output-stream.c" + "autoptr.c" + "contexts.c" + "converter-stream.c" + "file.c" + "g-file-info.c" + "g-file.c" + "g-icon.c" + "gapplication.c" + "gdbus-connection-flush.c" + "gdbus-connection.c" + "gdbus-names.c" + "gdbus-server-auth.c" + "gsocketclient-slow.c" + "gsubprocess.c" + "io-stream.c" + "live-g-file.c" + "memory-monitor.c" + "mimeapps.c" + "network-monitor-race.c" + "network-monitor.c" + "pollable.c" + "power-profile-monitor.c" + "readwrite.c" + "resources.c" + "socket-service.c" + "socket.c" + "tls-bindings.c" + "tls-certificate.c" + "tls-database.c" + "trash.c" + "vfs.c") + (("return (g_test_run|session_bus_run)" all call) + (string-append "return 0;// " call)) + ((" (ret|rtv|result) = (g_test_run|session_bus_run)" + all var call) + (string-append " " var " = 0;// " call)) + (("[ \t]*g_test_add_func.*;") "")) + + ;; commenting-out g_test_add_func, g_test_run does + ;; not help; special-case short-circuit. + (substitute* "gsettings.c" + (("#ifdef TEST_LOCALE_PATH" all) + (string-append " return 0;\n" all))) + + ;; commenting-out g_test_add_func, ;; g_test_run does + ;; not help; special-case short-circuit. + (substitute* "proxy-test.c" + ((" gint result.*;" all) + (string-append all " return 0;\n"))) + + ;; commenting-out g_test_add_func, g_test_run + ;; does not help; special-case short-circuit. + (substitute* "volumemonitor.c" + ((" gboolean ret;" all) + (string-append all " return 0;\n")))) + + (with-directory-excursion "glib/tests" + ;; TIMEOUT after 600s + (substitute* "thread-pool.c" + (("[ \t]*g_test_add_func.*;") "")) + + ;; FAIL + (substitute* "fileutils.c" + (("[ \t]*g_test_add_func.*;") "")))) '()))) ;; Python references are not being patched in patch-phase of build, ;; despite using python-wrapper as input. So we patch them manually. base-commit: c5a189d2abdbfe4c8dfeef764e3be055948b5c91 -- 2.40.1
[Message part 3 (text/plain, inline)]
-- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
Janneke Nieuwenhuizen <janneke <at> gnu.org>
:Janneke Nieuwenhuizen <janneke <at> gnu.org>
:Message #229 received at 64711-done <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Ludovic Courtès <ludo <at> gnu.org> Cc: 64711-done <at> debbugs.gnu.org Subject: Re: bug#64711: [PATCH 00/45] Fix builds and skip failing tests for the Hurd. Date: Thu, 20 Jul 2023 10:27:10 +0200
Ludovic Courtès writes: Hi, > Janneke Nieuwenhuizen <janneke <at> gnu.org> skribis: > >> Also, most probably problematic tests in the guile test suite were fixed on >> guile master. As I understand, Josselin is working on this, so way may want >> to skip the patch for guile (or apply it anyway and revert it later). >> >> Because many patches are almost trivial and similar, you may want to give some >> specific comments to the non-trivial patches and possibly some general >> comments for the trivial ones instead of a LGTM on every individual patch? > > So modulo the few comments I sent, I think this looks good. \o/ > There’s a couple of things to check (which I haven’t do): > > • Make sure x86_64-linux derivations (for instance) are unchanged. > That is, ‘./pre-inst-env guix build libreoffice -d’ should produce > the same thing before and after this patch series, on x86_64-linux. > (Pro tip: replace ‘-d’ with ‘-n’; if there are substitutes, it means > it hasn’t changed. :-)) Ah, that's a nice trick. Checked! What I did, was after developing each patch (only) check that x86_64 package didn't get rebuilt. > • Make sure ‘guix build sed --target=i586-pc-gnu’ still works. > Probably the derivation should be unchanged, but maybe it’s OK if it > changes (sometimes avoiding a cross-rebuild would require extra > boilerplate that we’d rather not have). Checked! (It changed, of course). > • And well, ‘guix build sed -s i586-gnu’ should work as well, but > that’s the whole point of this series! Checked! -- but here I cheated a bit, I've only checked this before rebasing. > Thanks a lot for all the work! Thank you (and other reviewers) for all the help! Pushed to master as 6547d3852b11966271535962110d9e68f50c95fc Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Thu, 20 Jul 2023 18:09:01 GMT) Full text and rfc822 format available.Message #232 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> To: Janneke Nieuwenhuizen <janneke <at> gnu.org> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Thu, 20 Jul 2023 14:08:45 -0400
Hi Janneke, Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > Maxim Cournoyer writes: > > Hello! > >> Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: >> >>> Liliana Marie Prikler writes: >>> >>>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >>>> Nieuwenhuizen: >>>>> * gnu/packages/glib.scm (glib)[arguments]: When building for the >>>>> Hurd, >>>>> set #:tests? to #false. >>> >>> [..] >>>>> + #:tests? (not (target-hurd?)) >>> >>>>> compiled >>> >>>> Instead of disabling tests altogether, can we just disable those that >>>> fail on the Hurd? >>> >>> We probably can, and I have tried to do so in most cases. However, >>> identifying those tests can be quite time consuming. I'm not sure how >>> many tests failed here, and note that some tests will hang or crash the >>> Hurd, so if we decide to do this, I would appreciate some help :-) >>> >>> Ludo on the other hand, argued against having more than ~20 (IIRC) test >>> exceptions and using #:tests? #f instead. >>> >>> My idea was to get guix to build natively, and guix pull to work. Once >>> we get those to work, we can possibly look forward to more contributors >>> to this. >> >> I agree with Liliana that it's nicer to disable just these tests that >> fail, but in light of what you wrote, your approach seems reasonable. > > Yes, I agree that if we want to make Hurd better and enabble us to > create a bug report it sure helps if we have more information. > > Yesterday I decided to have another look into this. I have identified > 20 tests that TIMEOUT after 600s, and 37 FAIL and instead of setting > #:tests? to #false, I have added them to the `disable-failing-tests' > phase when building on the Hurd. See attached patch. Well done pushing the investigation! Are you sure these failures are Hurd-only? When I see timeouts related to dbus tests, I often think the problem may be attributed to #30948, because dbus often waits for processes to die completely but are left as zombies in the build container due to incorrect signal handling from the Guile PID 1 there. But since the glib package currently builds for x86_64 at least, that's probably not it... LGTM. -- Thanks, Maxim
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Fri, 21 Jul 2023 17:23:02 GMT) Full text and rfc822 format available.Message #235 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd. Date: Fri, 21 Jul 2023 19:22:00 +0200
Maxim Cournoyer writes: Hi Maxim, > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > >> Maxim Cournoyer writes: >> >> Hello! >> >>> Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: >>> >>>> Liliana Marie Prikler writes: >>>> >>>>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >>>>> Nieuwenhuizen: >>>>>> * gnu/packages/glib.scm (glib)[arguments]: When building for the >>>>>> Hurd, >>>>>> set #:tests? to #false. >>>> >>>> [..] >>>>>> + #:tests? (not (target-hurd?)) >>>> >>>>>> compiled >>>> >>>>> Instead of disabling tests altogether, can we just disable those that >>>>> fail on the Hurd? >>>> >>>> We probably can, and I have tried to do so in most cases. However, >>>> identifying those tests can be quite time consuming. I'm not sure how >>>> many tests failed here, and note that some tests will hang or crash the >>>> Hurd, so if we decide to do this, I would appreciate some help :-) >>>> >>>> Ludo on the other hand, argued against having more than ~20 (IIRC) test >>>> exceptions and using #:tests? #f instead. >>>> >>>> My idea was to get guix to build natively, and guix pull to work. Once >>>> we get those to work, we can possibly look forward to more contributors >>>> to this. >>> >>> I agree with Liliana that it's nicer to disable just these tests that >>> fail, but in light of what you wrote, your approach seems reasonable. >> >> Yes, I agree that if we want to make Hurd better and enabble us to >> create a bug report it sure helps if we have more information. >> >> Yesterday I decided to have another look into this. I have identified >> 20 tests that TIMEOUT after 600s, and 37 FAIL and instead of setting >> #:tests? to #false, I have added them to the `disable-failing-tests' >> phase when building on the Hurd. See attached patch. > > Well done pushing the investigation! Thanks, and thanks for push ;) > Are you sure these failures are Hurd-only? No, not 100%, but... > When I see timeouts related to dbus tests, I often think the problem > may be attributed to #30948, because dbus often waits for processes to > die completely but are left as zombies in the build container due to > incorrect signal handling from the Guile PID 1 there. But since the > glib package currently builds for x86_64 at least, ...yeah, I didn't check if some problems are 32bit related, for example. that's probably not it... > LGTM. \o/ Greetings, Janneke -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
guix-patches <at> gnu.org
:bug#64711
; Package guix-patches
.
(Fri, 21 Jul 2023 18:28:01 GMT) Full text and rfc822 format available.Message #238 received at 64711 <at> debbugs.gnu.org (full text, mbox):
From: Janneke Nieuwenhuizen <janneke <at> gnu.org> To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com> Cc: Raghav Gururajan <rg <at> raghavgururajan.name>, ludo <at> gnu.org, 64711 <at> debbugs.gnu.org, Liliana Marie Prikler <liliana.prikler <at> gmail.com> Subject: Re: [bug#64711] [PATCH 26/43] gnu: cairo: Support building for the Hurd. Date: Fri, 21 Jul 2023 20:27:38 +0200
Maxim Cournoyer writes: Hi Maxim, > Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: > >> Maxim Cournoyer writes: >> >> Hi! >> >>> Janneke Nieuwenhuizen <janneke <at> gnu.org> writes: >>> >>>> Liliana Marie Prikler writes: >>>> >>>>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke >>>>> Nieuwenhuizen: >>>>>> Gobject-introspection and libdrm does not build for the Hurd. >>>>>> Poppler depends >>>>>> on nss, which does not build for the Hurd. >>>>>> >>>>>> * gnu/packages/gtk.scm (cairo)[native-inputs]: When building for the >>>>>> Hurd, do >>>>>> not include gobject-introspection. >>>>>> [inputs]: Likewise, do not include libdrm, poppler. >>>> >>>>> Could we provide a minimal gobject-introspection that builds for the >>>>> hurd? >>>> >>>> That would be nice. Note that Debian doesn't support >>>> gobject-introspection on the Hurd, unless I'm mistaken. I was mistaken; I've checked it again and gobject-introspection is installable for the Hurd. --8<---------------cut here---------------start------------->8--- ii gobject-introspection 1.74.0-3 hurd-i386 Generate interface introspection data for GObject libraries --8<---------------cut here---------------end--------------->8--- >>> I wonder what prevents gobject-introspection from running on the Hurd? >> >> Find build log attached. > > Interesting. Debian carries no Hurd patch for it [0], and upstream > doesn't seem to know about this issue [1]. Hmm? Interesting indeed... > [0] http://deb.debian.org/debian/pool/main/g/gobject-introspection/gobject-introspection_1.76.1-1.debian.tar.xz > [1] https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/?sort=created_date&state=opened&search=getauxval&first_page_size=20 -- Janneke Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sat, 19 Aug 2023 11:24:06 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.