#65579 closed defect (fixed)
mysql8 - latest update to 8.0.30 broke openssl links
Reported by: | jhoyt4 | Owned by: | herbygillot (Herby Gillot) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ||
Port: | mysql8 |
Description
The latest update to 8.0.30https://github.com/macports/macports-ports/commit/67c25ed1f7749637fde72edb42b30accc748778d has me in an endless rev-upgrade loop with the following missing links being the culprit:
sudo port -v rev-upgrade ---> Scanning binaries for linking errors Could not open /opt/local/lib/mysql8/bin/../lib/libcrypto.1.1.dylib: Error opening or reading file (referenced from /opt/local/lib/mysql8/bin/my_openssl) Could not open /opt/local/lib/mysql8/bin/../lib/libssl.1.1.dylib: Error opening or reading file (referenced from /opt/local/lib/mysql8/bin/my_openssl) ---> Found 2 broken files, matching files to ports ---> Found 1 broken port, determining rebuild order You can always run 'port rev-upgrade' again to fix errors. The following ports will be rebuilt: mysql8 @8.0.30
This update not only updated the version, but also snuck in an edit to "databases/mysql8/files/patch-cmake-ssl-include.diff" which I believe removes the generation of the openssl paths.
Change History (5)
comment:1 Changed 2 years ago by jmroot (Joshua Root)
Owner: | set to herbygillot |
---|---|
Status: | new → assigned |
comment:2 Changed 2 years ago by herbygillot (Herby Gillot)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:3 Changed 2 years ago by herbygillot (Herby Gillot)
... but also snuck in an edit to "databases/mysql8/files/patch-cmake-ssl-include.diff" which I believe removes the generation of the openssl paths.
No one here is trying to "sneak" anything in.
The lines removed from the SSL patch in the commit you're referencing (https://github.com/macports/macports-ports/commit/67c25ed1f7749637fde72edb42b30accc748778d) were removed because they are no longer valid or necessary. The upstream 8.0.30 source already contains a fix for the issue those lines were intended to address, so they were cleaned up.
The fix for this turns out to be preventing MySQL from building its own custom version of OpenSSL, which includes the tool my_openssl
, and which is also building those broken libraries (/opt/local/lib/mysql8/bin/../lib/libcrypto.1.1.dylib
, /opt/local/lib/mysql8/bin/../lib/libssl.1.1.dylib
). Doing this forces it to correctly use MacPorts OpenSSL.
As part of this fix, I also removed reference to the Trac ticket that the deleted lines were addressing. This is just further cleanup that I missed prior.
This fix is now available in ports, so you can update your ports tree and try upgrading mysql8
once again to verify whether it works or not before slinging further allegations.
comment:4 Changed 2 years ago by jhoyt4
@herbygillot - thank you for fixing this I can confirm that it now installs properly. Also thank you for the explanation above.
Finally, my apologies. I did not intend to raise your ire / get your blood boiling. "Snuck" was a very poor choice of words on my part.
In d5b06e1891e267017a206413d1b802c5ebdd6c0c/macports-ports (master):