gnu: python: Support native build on the Hurd.

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.
This commit is contained in:
Janneke Nieuwenhuizen 2023-06-05 18:57:27 +02:00
parent 378766dd2e
commit 60b1a23065
No known key found for this signature in database
GPG key ID: F3C1A0D9C1D65273

View file

@ -457,7 +457,7 @@ (define-public python-3.10
(format #f "TESTOPTS=-j~d" (parallel-job-count)) (format #f "TESTOPTS=-j~d" (parallel-job-count))
;; test_mmap fails on low-memory systems ;; test_mmap fails on low-memory systems
" --exclude test_mmap test_socket" " --exclude test_mmap test_socket"
,@(if (target-hurd?) ,@(if (system-hurd?)
'(" test_posix" ;multiple errors '(" test_posix" ;multiple errors
" test_time" " test_time"
" test_pty" " test_pty"
@ -487,12 +487,33 @@ (define-public python-3.10
" test_open_unix_connection" " test_open_unix_connection"
" test_open_unix_connection_error" " test_open_unix_connection_error"
" test_read_pty_output" " 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) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
,@(if (system-hurd?) ,@(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 (add-after 'unpack 'remove-windows-binaries
(lambda _ (lambda _