[MacPorts] #69930: php82-mysql, php83-mysql: Add mysql8 variant

MacPorts noreply at macports.org
Wed Nov 6 14:14:23 UTC 2024


#69930: php82-mysql, php83-mysql: Add mysql8 variant
---------------------------------------+------------------------
  Reporter:  clouseau                  |      Owner:  ryandesign
      Type:  enhancement               |     Status:  accepted
  Priority:  Normal                    |  Milestone:
 Component:  ports                     |    Version:  2.9.3
Resolution:                            |   Keywords:
      Port:  php82-mysql, php83-mysql  |
---------------------------------------+------------------------

Comment (by ryandesign):

 Replying to [comment:12 jmpalacios]:
 > You mean commits [https://github.com/php/php-
 src/commit/9a45e4525371287ecb6faea3bf9f223dfe0c7ad4
 9a45e4525371287ecb6faea3bf9f223dfe0c7ad4] & [https://github.com/php/php-
 src/commit/c6100a75ea2700489c21b8a070134de6b60308f4
 c6100a75ea2700489c21b8a070134de6b60308f4] to the PHP configure.ac script?

 Yes. They both make the same change because there was some back and forth
 with the change being made, then reverted without explanation, then
 remade.

 > That shouldn't much of a problem with a local patch file, right?

 Even simple changes are complicated due to the complexity of the php port.
 For example, one complexity is that for php80 and later I use buildconf
 (PHP's script that runs autoreconf) but for earlier PHP versions I don't.
 That means the patch for earlier PHP versions needs to patch configure,
 not configure.ac. I would like to rewrite the port so that all versions
 use buildconf but that will involve changing a lot of the patchfiles.

 > With that in place, the aim would be to build PHP < 8.3 with per-PHP-
 release bundled OpenSSL libraries? Which you argue is necessary to enable
 the caching_sha2_password plugin?

 No. For all PHP versions, they will continue to use whatever MacPorts
 openssl port is appropriate for that version of PHP. But I will get rid of
 the separate phpXX-openssl module ports and include their functionality in
 the PHP SAPI ports (phpXX, phpXX-apache2handler, phpXX-cgi, phpXX-fpm). I
 can confirm that doing this fixes the output of `phpXX -i | grep 'Loaded
 plugins'` to be what was desired per comment:4.

 Another complexity is arranging for the separate phpXX-openssl module
 ports to no longer be active on user systems following this change,
 probably by using [PortfileRecipes#replaced-by replaced_by] in the phpXX-
 openssl subports and the [PortfileRecipes#deactivatehack deactivate hack]
 in the SAPI subports.

 Finally, building PHP takes time. The php port contains many versions of
 PHP. Building them all to verify the fix takes even more time. And there
 are various not-yet-resolved tickets about problems that make certain
 older PHP versions not build on newer macOS versions which makes testing
 this fix more complicated. There is the complexity of me finding enough
 uninterrupted time to make the changes and satisfy myself that they have
 been done correctly before publishing them.

-- 
Ticket URL: <https://trac.macports.org/ticket/69930#comment:13>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list