Req #81238 [Opn->Csd]: PHP 8.1: fiber support missing for Solaris Sparc, configure fails
Edit report at https://bugs.php.net/bug.php?id=81238&edit=1
ID: 81238
Updated by: nikic@php.net
Reported by: rainer dot jung at kippdata dot de
Summary: PHP 8.1: fiber support missing for Solaris Sparc,
configure fails
-Status: Open
+Status: Closed
Type: Feature/Change Request
Package: *General Issues
Operating System: Solaris 10 Sparc
PHP Version: 8.1.0alpha3
-Assigned To:
+Assigned To: nikic
Block user comment: N
Private report: N
New Comment:
Thanks for the confirmation! The PR has landed in https://github.com/php/php-src/commit/8fd747a2a0e9f57c12bdad22a1844a736e7b4e57,
so closing here.
Previous Comments:
------------------------------------------------------------------------
[2021-07-12 08:14:55] rainer dot jung at kippdata dot de
I regenerated "configure". The patch works well for me. Solaris now builds and tests fine
and Linux still builds and tests fine and uses the same assembler implementation it was using
before.
Thanks a bunch for the good and ultra-fast patch!
Rainer
------------------------------------------------------------------------
[2021-07-10 04:41:13] trowski@php.net
Can you please try compiling with the pull request linked as well as running all the tests? Thank
you!
------------------------------------------------------------------------
[2021-07-10 04:37:33] trowski@php.net
The following pull request has been associated:
Patch Name: Fiber ucontext support
On GitHub: https://github.com/php/php-src/pull/7226
Patch: https://github.com/php/php-src/pull/7226.patch
------------------------------------------------------------------------
[2021-07-09 08:44:17] rainer dot jung at kippdata dot de
Description:
------------
configure for PHP 8.1 fails on Solaris 10 Sparc with:
checking for fiber switching context...
configure: error: Unable to determine platform!
It seems to imported assembler files from Boost context doe not contain support for Sparc Solaris
10.
The sparc architecture is listen under
https://www.boost.org/doc/libs/1_76_0/libs/context/doc/html/context/architectures.html
but the OS Solaris is not part of the table.
Since it supports ucontext_t, the comment below the table should apply: "If the architecture is
not supported but the platform provides ucontext_t, Boost.Context should be compiled with
BOOST_USE_UCONTEXT and b2 property context-impl=ucontext."
Solaris does support ucontext_t (see "man setcontext"), so it would be nice, if PHP fibers
would support this fallbacl mechanism as well. Yes, there are warnings, that such fibers will be
slow, but currently, due to the configure failure, there is no more Solaris 10 Sparc support for PHP
8.1 at all.
Another option would be to make fibers optional.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=81238&edit=1
Thread (5 messages)