mysql56-client statically links in the bundled zlib, which is older than FreeBSD's system zlib. This causes problems in Postfix if it is compiled to use MySQL because other libraries in Postfix need the system libz for dlopen(), but since the symbols are already defined from the bundled libz, the system libz symbols won't be bound. Since the implementations (/lib/libz.so vs. the mysql-bundled zlib) aren't compatible, this causes crashes. Evidence: http://thread.gmane.org/gmane.mail.postfix.user/249888/focus=249910 (and the thread surrounding it, which reflects the entire debugging procedure) I am proposing the attached patch to remedy the problem. Alternatively, someone could debug the build and find out why MySQL56-client cannot find the zlib and resorts to the bundled one. I am not sufficiently familiar with debugging cmake rigs to assist here.
*** Bug 198811 has been marked as a duplicate of this bug. ***
Also, see in particular this one: http://article.gmane.org/gmane.mail.postfix.user/249946
Created attachment 154683 [details] patch to make MySQL use the system's zlib
is there any porgress on having this applied to the ports tree ? I just hit this as an issue as I am trying to staticly link an executable which uses both mysql and gzopen. IIf I link againsy mysql it cannot find gzopen, and if I link in the system zlib it complains about multiply defined symbols. Am sure I can work around it, but its a real pain for now...
Created attachment 166989 [details] patch fixes this issue for mysql57 This patch makes mysql57 to use system libs (and adds configurable options for user too)
Created attachment 166990 [details] patch fixes issue for mysql5.6 This patch makes mysql56 to use system libs (and adds configurable options for user too)
Both patches portlint: for mysql57 is OK for 56, patches should be generated using make makepatch (instead of diff) [it's only WARN not fatal ;D and it's off-topic for this issue] poudriere: Okay (9.3 10.1 11.0)
*** Bug 206215 has been marked as a duplicate of this bug. ***
*** Bug 207197 has been marked as a duplicate of this bug. ***
Comment on attachment 166989 [details] patch fixes this issue for mysql57 With updating to 5.7.12 we won't need this patch anymore.
ping
A commit references this bug: Author: feld Date: Thu Jan 19 22:29:06 UTC 2017 New revision: 431919 URL: https://svnweb.freebsd.org/changeset/ports/431919 Log: databases/mysql56: Update to 5.6.35 - Port improvements from MySQL 5.7 port - Use system libs instead of bundled - Fix many open PRs - Change MAINTAINER PR: 216244 192657 198812 199751 205093 PR: 209618 211248 205983 209338 Changes: head/databases/mysql56-client/Makefile head/databases/mysql56-client/files/patch-CMakeLists.txt head/databases/mysql56-client/files/patch-extra_CMakeLists.txt head/databases/mysql56-client/files/patch-man_CMakeLists.txt head/databases/mysql56-client/files/patch-mysys_ssl_my_default.cc head/databases/mysql56-client/files/patch-scripts_CMakeLists.txt head/databases/mysql56-client/files/patch-support-files_CMakeLists.txt head/databases/mysql56-client/pkg-message head/databases/mysql56-server/Makefile head/databases/mysql56-server/distinfo head/databases/mysql56-server/files/my.cnf.sample.in head/databases/mysql56-server/files/mysql-server.in head/databases/mysql56-server/files/patch-mysys_ssl_my_default.cc head/databases/mysql56-server/pkg-message head/databases/mysql56-server/pkg-plist
A commit references this bug: Author: brnrd Date: Thu Jan 26 19:58:06 UTC 2017 New revision: 432535 URL: https://svnweb.freebsd.org/changeset/ports/432535 Log: MFH: r431919 r431968 r431975 r432035 r432066 r432458 databases/mysql56: Update to 5.6.35 - Port improvements from MySQL 5.7 port - Use system libs instead of bundled - Fix many open PRs - Change MAINTAINER PR: 216244 192657 198812 199751 205093 PR: 209618 211248 205983 209338 databases/mysql56-server: Rollback rc script changes databases/mysql56-server: Do not install my.cnf sample An issue was discovered where users of mysql did not have a my.cnf and the recent update was causing mysqld to find a sample my.cnf and load its parameters. This was causing errors on startup for users of innodb as the parameters used to init the database did not match the ones in the sample config file it was now reading. databases/mysql56-server: Fix build with LibreSSL - Fix CMake SSL detection - Always set WITH_SSL=${OPENSSLBASE} PR: 216311 Approved by: Mahdi Moktari <mokhi64@gmail.com> (maintainer) Differential Revision: D9272 Revert r432035 part 2, it breaks build with openssl from base With hat: portmgr databases/mysql56-server: Fix OpenSSL linking - Force dynamic linking with OpenSSL Approved by: ports-secteam (feld) Changes: _U branches/2017Q1/ branches/2017Q1/databases/mysql56-client/Makefile branches/2017Q1/databases/mysql56-client/files/patch-CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake branches/2017Q1/databases/mysql56-client/files/patch-extra_CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-man_CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-mysys_ssl_my_default.cc branches/2017Q1/databases/mysql56-client/files/patch-scripts_CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-support-files_CMakeLists.txt branches/2017Q1/databases/mysql56-client/pkg-message branches/2017Q1/databases/mysql56-server/Makefile branches/2017Q1/databases/mysql56-server/distinfo branches/2017Q1/databases/mysql56-server/files/my.cnf.sample.in branches/2017Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake branches/2017Q1/databases/mysql56-server/files/patch-mysys_ssl_my_default.cc branches/2017Q1/databases/mysql56-server/pkg-message branches/2017Q1/databases/mysql56-server/pkg-plist