Created attachment 145894 [details] output of make install clean while compiling cqrlog on head I ran into an error with mysql55-client. short error (see full log attached): /usr/ports/databases/mysql55-client/work/mysql-5.5.39/extra/yassl/src/ssl.cpp:319:16: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql55-client/work/mysql-5.5.39/extra/yassl/src/ssl.cpp:415:16: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql55-client/work/mysql-5.5.39/extra/yassl/src/ssl.cpp:436:12: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql55-client/work/mysql-5.5.39/extra/yassl/src/ssl.cpp:450:12: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql55-client/work/mysql-5.5.39/extra/yassl/src/ssl.cpp:475:12: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 38 warnings and 20 errors generated. *** Error code 1 Stop. make[4]: stopped in /usr/ports/databases/mysql55-client/work/mysql-5.5.39 *** Error code 1
as you can imaging, mysql55 is quite a popular port and this is the only PR that says it can't be built. Moveover, portsmon is showing it's building across the board: http://portsmon.freebsd.org/portoverview.py?category=databases&portname=mysql55-client You didn't even list what you are trying to build it on (e.g. which arch, which release). I think chances are good this is a local issue. But I'll assign the PR to Alex the maintainer and let him decide on it's validity
>you didn't even list what you are trying to build it on (e.g. which arch, which >release). I think chances are good this is a local issue. You can see the arch and the version in the attached log (extract below): FreeBSD vic 11.0-CURRENT FreeBSD 11.0-CURRENT #1 r269442:269449: Sun Aug 3 01:18:07 CEST 2014 root@vic:/usr/obj/usr/src/sys/GENERIC amd64 output of make install clean: ===> License GPLv2 accepted by the user ===> Found saved configuration for mysql55-client-5.5.39 ===> mysql55-client-5.5.39 depends on file: /usr/local/sbin/pkg - found ===> Fetching all distfiles required by mysql55-client-5.5.39 for building ===> Extracting for mysql55-client-5.5.39 => SHA256 Checksum OK for mysql-5.5.39.tar.gz. ===> Patching for mysql55-client-5.5.39 ===> Applying FreeBSD patches for mysql55-client-5.5.39 ===> mysql55-client-5.5.39 depends on file: /usr/local/bin/cmake - found ===> mysql55-client-5.5.39 depends on shared library: libreadline.so.6 - found (/usr/local/lib/libreadline.so.6) ===> Configuring for mysql55-client-5.5.39 ===> Performing in-source build /bin/mkdir -p /usr/ports/databases/mysql55-client/work/mysql-5.5.39 -- Running cmake version 2.8.12.1 -- The C compiler identification is Clang 3.4.1 -- The CXX compiler identification is Clang 3.4.1 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- MySQL 5.5.39 -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stddef.h -- Looking for stddef.h - found -- Check size of void * -- Check size of void * - done -- Packaging as: mysql-5.5.39-FreeBSD11.0-x86_64
Effects me on FreeBSD 10.1-p17, too. System: AMD64 | GENERIC OpenSSL 1.0.2d 9 Jul 2015 Build Log: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:34: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/yassl_int.hpp:31: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/cert_wrapper.hpp:37: /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:159:5: error: expected '}' X509_V_OK = 0, ^ /usr/local/include/openssl/x509_vfy.h:315:66: note: expanded from macro 'X509_V_OK' # define X509_V_OK 0 ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:158:6: note: to match this '{' enum { /* X509 Constants */ ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:158:1: warning: declaration does not declare anything [-Wmissing-declarations] enum { /* X509 Constants */ ^~~~ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:190:5: error: expected '}' EVP_R_BAD_DECRYPT = 2 ^ /usr/local/include/openssl/evp.h:1463:59: note: expanded from macro 'EVP_R_BAD_DECRYPT' # define EVP_R_BAD_DECRYPT 100 ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:188:6: note: to match this '{' enum { /* ERR Constants */ ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:302:5: error: expected '}' SSL_ERROR_NONE = 0, /* for most functions */ ^ /usr/local/include/openssl/ssl.h:1858:42: note: expanded from macro 'SSL_ERROR_NONE' # define SSL_ERROR_NONE 0 ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:292:6: note: to match this '{' enum { /* ssl Constants */ ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:399:16: error: elaborated type refers to a typedef typedef struct EVP_PKEY EVP_PKEY; ^ /usr/local/include/openssl/ossl_typ.h:133:28: note: declared here typedef struct evp_pkey_st EVP_PKEY; ^ In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:34: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/yassl_int.hpp:31: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/cert_wrapper.hpp:37: /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:456:9: warning: 'STACK_OF' macro redefined #define STACK_OF(x) x ^ /usr/local/include/openssl/safestack.h:88:10: note: previous definition is here # define STACK_OF(type) struct stack_st_##type ^ In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:34: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/yassl_int.hpp:31: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/cert_wrapper.hpp:37: /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:491:9: warning: 'OPENSSL_malloc' macro redefined #define OPENSSL_malloc(x) malloc(x) ^ /usr/local/include/openssl/crypto.h:381:10: note: previous definition is here # define OPENSSL_malloc(num) CRYPTO_malloc((int)num,__FILE__,__LINE__) ^ In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:34: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/yassl_int.hpp:31: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/cert_wrapper.hpp:37: /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:492:9: warning: 'OPENSSL_free' macro redefined #define OPENSSL_free(x) free(x) ^ /usr/local/include/openssl/crypto.h:390:10: note: previous definition is here # define OPENSSL_free(addr) CRYPTO_free(addr) ^ In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:34: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/yassl_int.hpp:31: In file included from /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/cert_wrapper.hpp:37: /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/include/openssl/ssl.h:538:9: warning: 'SSL_DEFAULT_CIPHER_LIST' macro redefined #define SSL_DEFAULT_CIPHER_LIST "" /* default all */ ^ /usr/local/include/openssl/ssl.h:341:10: note: previous definition is here # define SSL_DEFAULT_CIPHER_LIST "ALL:!EXPORT:!aNULL:!eNULL:!SSLv2" ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:59:15: error: use of undeclared identifier 'SSL_SUCCESS' int ret = SSL_SUCCESS; ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:166:23: error: use of undeclared identifier 'SSL_FAILURE' ret = SSL_FAILURE; ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:264:12: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:346:16: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:442:16: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:463:12: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ /usr/ports/databases/mysql56-client/work/mysql-5.6.26/extra/yassl/src/ssl.cpp:477:12: error: use of undeclared identifier 'SSL_SUCCESS' return SSL_SUCCESS; ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 38 warnings and 20 errors generated. --- extra/yassl/CMakeFiles/yassl.dir/src/ssl.cpp.o --- *** [extra/yassl/CMakeFiles/yassl.dir/src/ssl.cpp.o] Error code 1 make[3]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 1 error make[3]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 --- extra/yassl/CMakeFiles/yassl.dir/all --- *** [extra/yassl/CMakeFiles/yassl.dir/all] Error code 2 make[2]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 A failure has been detected in another branch of the parallel make make[3]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 --- zlib/CMakeFiles/zlib.dir/all --- *** [zlib/CMakeFiles/zlib.dir/all] Error code 2 make[2]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 2 errors make[2]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 *** [all] Error code 2 make[1]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 1 error make[1]: stopped in /usr/ports/databases/mysql56-client/work/mysql-5.6.26 ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** Error code 1 Stop.
This also affects me with mysql56-client, on 10.2-STABLE on armv6. As per discussion at https://forums.freebsd.org/threads/mysql56-client-build-errors-on-10-stable.53193/#post-298890 , the errors appear to be at least partially due to a conflict between OpenSSL installed in /usr/local (e.g. from the ports collection) and the OpenSSL code in the yassl part of the MySQL client code. I was told to consider it a port bug and to file a PR. Hopefully my comment here will suffice.
Created attachment 161037 [details] Tinderbox Build of MySQL Client 5.6.x I concur that the issue is also apparent in builds of the MySQL 5.6.x port, and attached is a copy of the full build log from a local Tinderbox install for 10.2-RELEASE-p2 amd64. The last successful build time I have recorded is August 26, if that helps.
As per discussion at https://forums.freebsd.org/threads/mysql56-client-build-errors-on-10-stable.53193/ - the issue has been fixed for this and various other ports by making a change to /usr/ports/Mk/Uses/localbase.mk - The change is https://svnweb.freebsd.org/ports?view=revision&revision=397026
This bug can be closed as fixed, see comment #6