* gnu/packages/hurd.scm (hurd)[arguments]: In phases 'build-libdde-linux' and
'install-goodies', also look in inputs for dependencies. There is no check
target, so set #:tests? to #false.
* 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/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/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.