* 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/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/fontutils.scm (graphite2)[arguments]: When building natively on
the Hurd, replace phase 'check' to set make-flags to skip "awamicmp3" test.
* 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/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 (%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.
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.
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/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 (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 (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 (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/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.
This reverts commit 12e6a59238, 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/bootloaders.scm (make-u-boot-sunxi64-package): Take argument
for System Control Processor (SCP) firmware.
[native-inputs]: Add SCP firmware.
[phases]: Adjust 'set-environment to also set SCP variable.
(u-boot-pine64-plus, u-boot-pine64-lts, u-boot-pinebook): Pass appropriate
crust firmware as the SCP firmware.
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* gnu/packages/firmware.scm (make-arm-trusted-firmware): Update to 2.9.
(arm-trusted-firmware-imx8mq): Keep at version 2.8.
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>