Hello out here, first, please CC me, I'm not actively subscribing this list.
Since a couple of weeks now I face a nasty problem with building ports using poudriere. For our department's infrastructure and my home office's jails, I provide packages build with poudriere. Having a threaded Apache, port www/apache24, this requires several ports to have option ZTS enabled, in particular lang/php56, www/mod_php56 and subsequent ports. I have already filed a PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=214979 But obviusly, there is nobody else facing this problem and this lead to the conclusion, that no one else is using a threaded Apache 2.4 with the requirement of setting option ZTS in related PHP stuff. The problem is always the same: devel/pear: ERR: pear-1.10.1 depends on file: /usr/local/lib/php/20131226/xml.so - not found or textproc/php56-xmlreader: ERR: php56-xmlreader-5.6.28 depends on file: /usr/local/lib/php/20131226/dom.so - not found or databases/php56-pdo_pgsql: ERR: php56-pdo_pgsql-5.6.28 depends on file: /usr/local/lib/php/20131226/pdo.so - not found and so forth. The missing modules are expected to reside in /usr/local/lib/php/20131226-zts/ instead of the error triggering /usr/local/lib/php/20131226. That would indicated to me that some ports, especially related to XML, PDO and so forth are not found by the specific ports. They are definitely installed in /usr/local/lib/php/20131226-zts/ during the poudriere build - but the ports requiring those modules seem to not to respect the ZTS appendix to the path. I deleted ALL(!) php56 related packages from the packaged folder forcing pourdriere to start rebuilding all of these packages and further I ran again through the very time costly procidure of configuration. But that didn't help much, the problems stayed. So I decided to delete all packages with "poudriere bulk -c" - that is something people want to avoid since it takes ages on slow machines. But even that is without effect! Since a lot of ports require a working php56 environment, like wikimedia, icinga2/icingaweb2 and many others we use, updating the jails automatically via pkg is a mess resulting in non-working bugzilla50, for instance - its php environment complains about not finding the required modules anymore. That corrupts the whole ports/pkg idea! On the contrary, when doing a classical, rock-solid installation via the "make install" way, everything is smooth. Even packages build via "make package" respect the ZTS settings. On four target servers and two other machines I tried this and it worked. I'm not much familiar with poudriere but this problem popped out of the blue a couple of weeks for now and I'm unwilling to bisect it. I thought pkg/poudriere might be a solution to reduce workload on updates for a bunch of jails we use, but this problem is bugging me really hard. I have no clue how to circumvent or fix it. I'll try to build a manual package via make and commit this to the package repo in the hope it will temporarily fix the problem, but this couldn't be a long-term solution. It would be nice if someone could hint me towards what I'm doing wrong here or look at the problem. The other question is: is ZTS REALLY(?) necessary? There is a strong warning popping up when building www/mod_php56 regarding to this. Many thanks in advance, Oliver -- O. Hartmann Ich widerspreche der Nutzung oder Übermittlung meiner Daten für Werbezwecke oder für die Markt- oder Meinungsforschung (§ 28 Abs. 4 BDSG).
pgp1AXICJxKBo.pgp
Description: OpenPGP digital signature
