Re: multiple sapi (multiple bug reports)
| From: | Stanley Sufficool | Date: | Sat, 13 Nov 2010 19:50:47 +0000 |
| Subject: | Re: multiple sapi (multiple bug reports) | ||
| References: | 1 2 3 4 5 6 7 8 9 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-50183@lists.php.net to get a copy of this message | ||
2010/11/13 Jérôme Loyet <jerome@loyet.net>:
> Le 12 novembre 2010 23:57, Jani Taskinen <jani.taskinen@iki.fi> a écrit :
>> I updated the patch:
>>
>> http://pecl.php.net/~jani/patches/multi-sapi.patch
>>
>> Now it will fail if no sapi/binary is selected. And "make install" will now
>> also install them all. :)
>
> it seems to work well.
I think Gentoo already has a multiple SAPI build in their PHP patch set.
>
>>
>> The question remains: into what branches can I commit it?
>> Some might think it's not a bug fix.. ;)
>
> I don't really know. As it may changes the way package managers manage
> the way to compile multiple sapi at once, it could work for them. It
> would maybe be more logic to commit it in trunk.
>
> In all the cases, I think a patch which changes the unix buildchain
> have to be tested widely before commiting. what you think ?
>
> ++ Jerome
>>
>> --Jani
>>
>>
>> 12.11.2010 10:23, Jérôme Loyet kirjoitti:
>>>
>>> 2010/11/12 Jani Taskinen<jani.taskinen@iki.fi>:
>>>>
>>>> And here's the patch:
>>>>
>>>>
>>>> http://pecl.php.net/~jani/patches/multi-sapi.patch
>>>>
>>>> Note: It's not quite finished, the 'make install' might not work..
>>>> ;)
>>>
>>> After a very quick try, there is a missing case: if not SAPI and no
>>> binaries have been selected, we should trigger an error message. The
>>> configture is terminating normaly et make does nothing (normal).
>>>
>>> ++ Jerome
>>>
>>>>
>>>> --Jani
>>>>
>>>>
>>>> 12.11.2010 2:40, Jani Taskinen kirjoitti:
>>>>>
>>>>> I'm working on an improvement on how all binaries are build thus
>>>>> enabling building all such in one go if one wants to. I already added a
>>>>> check for multiple sapi _modules_ being build, it will error out.
>>>>>
>>>>> Stay tuned, I'll post the patch once I've tested it a bit.
>>>>>
>>>>> --Jani
>>>>>
>>>>>
>>>>> 12.11.2010 0:03, Jérôme Loyet kirjoitti:
>>>>>>
>>>>>> 2010/11/11 Jani Taskinen<jani.taskinen@iki.fi>:
>>>>>>>
>>>>>>> 11.11.2010 18:46, Kalle Sommer Nielsen kirjoitti:
>>>>>>>>
>>>>>>>> Hi Jérôme
>>>>>>>>
>>>>>>>> 2010/11/11 Jérôme Loyet<jerome@loyet.net>:
>>>>>>>>>
>>>>>>>>> If this is a normal behaviour, we should add an error at
>>>>>>>>> configure
>>>>>>>>> telling that only one SAPI is supported at once.
>>>>>>>>> It not, we should correct it.
>>>>>>>>>
>>>>>>>>> Did I miss something ?
>>>>>>>>
>>>>>>>> On Windows we have no problems in compiling multiple SAPI's
>>>>>>>> using one
>>>>>>>> ./configure, so I believe it is indeed a bug on the Unix build
>>>>>>>> system
>>>>>>>> causing this, so yeah I suppose it should be fixed.
>>>>>>>>
>>>>>>>
>>>>>>> Sascha explained this briefly here:
>>>>>>>
>>>>>>>
>>>>>>> http://www.mail-archive.com/php-cvs@lists.php.net/msg00413.html
>>>>>>
>>>>>> I understand it's hard to compile mutiple SAPI (dependancies, linkage,
>>>>>> ...). In this case, this should be clear at configure and an error
>>>>>> message should be shown. It's not reasonable not to be able to compile
>>>>>> CGI and apache2 sapi without any informations (like
>>>>>> http://bugs.php.net/53271).
>>>>>>
>>>>>> I've made a quick patch (http://pastebin.com/jUGMtSjv) which:
>>>>>>
>>>>>> - move the sapi/cgi/config9.m4 to config.m4. The reason cgi sapi uses
>>>>>> a config9.m4 file is to be called at configure as the last SAPI.
>>>>>>
>>>>>> - remove the "No SAPI selected" check in sapi/cgi/config.m4. To
>>>>>> me
>>>>>> it's not its job. It has to be done by configure. To me, the cgi sapi
>>>>>> must be like any of the others
>>>>>>
>>>>>> - change the cgi sapi to be disable by default. cgi sapi will be like
>>>>>> any other sapi (except cli), disable by default. Basically, PHP is a
>>>>>> programming scripting language. The CLI has to be enable by default
>>>>>> and other sapi have to be enabled by the user.
>>>>>>
>>>>>> - add a "No SAPI selected" check in configure.in, after
>>>>>> "esyscmd(./build/config-stubs sapi)" (after all sapi config*.m4
>>>>>> files
>>>>>> have been executed). Use CLI as default SAPI if it's not been
>>>>>> disabled. If all SAPI and CLI have been disabled, issue the error
>>>>>> message.
>>>>>>
>>>>>> - A a check in PHP_SELECT_SAPI (in acinclude.m4) to ensure it's been
>>>>>> called only once (all SAPI (except CLI) calls this macro). At second
>>>>>> call, an error message telling that only one SAPI can be compiled is
>>>>>> shown.
>>>>>>
>>>>>> I don't have a huge php core background but it seems (for me at least)
>>>>>> the right way for users.
>>>>>>
>>>>>> hope it helps.
>>>>>>
>>>>>>>
>>>>>>> Something called ZTS also comes to my mind..
>>>>>>
>>>>>> It's not the first time ZTS comes in the discution about multiple
>>>>>> SAPI. I've made some tests and looked into the code of the build
>>>>>> chain, but I can't see how it's related. Maybe someone can
>>>>>> enlight me
>>>>>> ?
>>>>>>
>>>>>> thx
>>>>>>
>>>>>> ++ jerome
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> PHP Internals - PHP Runtime Development Mailing List
>>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>>
>>>>
>>
>>
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>