Enabling opcache causes libraries to build as static
| From: | David Zuelke | Date: | Tue, 08 Mar 2016 01:57:31 +0000 |
| Subject: | Enabling opcache causes libraries to build as static | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-91533@lists.php.net to get a copy of this message | ||
Hi all,
I've been trying to get to the bottom of why even a minimal PHP build (any 5.x or 7 release, or
a fresh e.g. 7.0 branch checkout after buildconf) creates .a versions of all shared extensions in
addition to ..so modules.
I've narrowed it down to opcache:
$ ./configure --disable-all
...
checking whether to build shared libraries... yes
checking whether to build static libraries... no
versus
$ ./configure --disable-all --enable-opcache=shared
...
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
but I cannot figure out why this is happening (both on OS X and Ubuntu 14.04).
Is this intentional? Related to opcache's "can only be built shared" status? But why
would that trigger static builds? Or is it a bug?
I've been wading through config.m4s, generated configures etc but still haven't found the
reason; any pointers or explanations would be much appreciated!
Cheers,
David