Req #81238 [Opn]: PHP 8.1: fiber support missing for Solaris Sparc, configure fails
| From: | rainer dot jung at kippdata dot de | Date: | Mon, 12 Jul 2021 08:14:55 +0000 |
| Subject: | Req #81238 [Opn]: PHP 8.1: fiber support missing for Solaris Sparc, configure fails | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-234960@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=81238&edit=1
ID: 81238
User updated by: rainer dot jung at kippdata dot de
Reported by: rainer dot jung at kippdata dot de
Summary: PHP 8.1: fiber support missing for Solaris Sparc,
configure fails
Status: Open
Type: Feature/Change Request
Package: *General Issues
Operating System: Solaris 10 Sparc
PHP Version: 8.1.0alpha3
Block user comment: N
Private report: N
New Comment:
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
Previous Comments:
------------------------------------------------------------------------
[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