Bug #71041 [ReO->Csd]: zend_signal_startup() needs ZEND_API
| From: | nikic@php.net | Date: | Tue, 20 Nov 2018 20:31:52 +0000 |
| Subject: | Bug #71041 [ReO->Csd]: zend_signal_startup() needs ZEND_API | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-218067@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=71041&edit=1
ID: 71041
Updated by: nikic@php.net
Reported by: rainer dot jung at kippdata dot de
Summary: zend_signal_startup() needs ZEND_API
-Status: Re-Opened
+Status: Closed
Type: Bug
Package: Compile Failure
Operating System: Linux and Solaris
PHP Version: 7.0.0
Block user comment: N
Private report: N
New Comment:
Automatic comment on behalf of vbart@nginx.com
Revision: http://git.php.net/?p=php-src.git;a=commit;h=11ddf7669a58969ad9101032ce891b951819b3e1
Log: Fix bug #71041 dynamic embed SAPI load error
Previous Comments:
------------------------------------------------------------------------
[2017-09-03 22:38:10] hradtke@php.net
If we are not going to fix this bug, will we accept a patch to properly wrap zend_signal_activate
with #if ZEND_SIGNAL? The call to zend_signal_deactivate is wrapped in it. We should be consistent.
Also, currently --disable_zend_signals is useless. See the report in https://bugs.php.net/bug.php?id=74149 for as to
why.
------------------------------------------------------------------------
[2017-01-16 14:05:32] maroszek at gmx dot net
We are building PHP as a static embed library and linking it afterwards into our project. This
worked in PHP 5.6. Unfortunately in PHP 7.x we get the same error, because zend_signal_startup is
not exported. Any chance to revise your decision? Do i have any major drawbacks when compiling
without signals? (This works around the issue)
Thanks in advance!
------------------------------------------------------------------------
[2015-12-10 13:32:25] krakjoe@php.net
The only place that this function should be called is in the SAPI layer, since all usable
SAPI's are distributed with PHP, there doesn't seem to be a legitimate need to export the
symbol.
------------------------------------------------------------------------
[2015-12-06 10:02:37] rainer dot jung at kippdata dot de
I should add I'm using the configure flag --enable-zend-signals to enable zend signals.
------------------------------------------------------------------------
[2015-12-06 09:35:55] rainer dot jung at kippdata dot de
Description:
------------
In commit
http://git.php.net/?p=php-src.git;a=commitdiff;h=85a511d2c1b7d7489630d7e2d1112bddd4e20203
the calls to zend_signal_startup() where moved from Zend/zend.c into the individual sapi files. IMHO
this means, that zend_signal_startup() needs to be declared and defined using ZEND_API in
Zend/zend_signal.h and Zend/zend_signal.c.
I noticed this, because I changed the PHP build to use a common shared library for the different
SAPIs. It likely is not noticed when linking all zend stuff statically into the binary sapi modules.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=71041&edit=1