Hi,
PHP 5.4 now provides ZTS stuff required to build extension.
An example of such a build is available in the php-pecl-mysqlnd-ms package (which still wait for a formal review).
See: https://bugzilla.redhat.com/show_bug.cgi?id=742729#c4
Full spec: https://raw.github.com/remicollet/remirepo/master/php-pecl-mysqlnd-ms/php-pe...
This is a dual build (NTS + ZTS). ZTS build is conditional (for f16/f17 compatibility)
This use the new macros provides by php-devel
%php_ztsextdir %{_libdir}/php-zts/modules %php_ztsinidir %{_sysconfdir}/php-zts.d %php_ztsincldir %{_includedir}/php-zts/php %php_ztsbindir %{_bindir}/php-zts
Of course, before adding a ZTS build, you need to check that the used libraries are thread safe ;)
Feedback, and of course review, are welcome
Hopes this example will help.
Regards, Remi.
P.S.1 I plan to fix some of pecl extensions I own to provide both NTS and ZTS extensions.
P.S.2 Sorry for cross-posting, I recommend further discussion on php-devel list.
Le 21/01/2012 19:36, Remi Collet a écrit :
Hi,
PHP 5.4 now provides ZTS stuff required to build extension.
Another example (and another review) : php-pecl-http
php-devel@lists.fedoraproject.org