# uname -a FreeBSD test 12.2-RELEASE-p4 FreeBSD 12.2-RELEASE-p4 r369447 GENERIC amd64 Make iksemel fail on FreeBSD 12.2 from ports: =========================================== /bin/sh ../libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I../include -I../include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -I/usr/local/include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -Wall -I/usr/local/include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -Wall -MT libiksemel_la-tls-openssl.lo -MD -MP -MF .d eps/libiksemel_la-tls-openssl.Tpo -c -o libiksemel_la-tls-openssl.lo `test -f 'tls-openssl.c' || echo './'`tls-openssl.c libtool: compile: cc -DHAVE_CONFIG_H -I. -I../include -I../include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -I/usr/local/include -O2 -pipe -fstack-protector-strong -fno-s trict-aliasing -Wall -I/usr/local/include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -Wall -MT libiksemel_la-tls-openssl.lo -MD -MP -MF .deps/libiksemel_la-tls-openssl.Tpo - c tls-openssl.c -fPIC -DPIC -o .libs/libiksemel_la-tls-openssl.o tls-openssl.c:27:3: error: incomplete definition of type 'struct bio_st' b->init = 1; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:28:3: error: incomplete definition of type 'struct bio_st' b->num = 0; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:29:3: error: incomplete definition of type 'struct bio_st' b->ptr = NULL; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:30:3: error: incomplete definition of type 'struct bio_st' b->flags = 0 ; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:39:3: error: incomplete definition of type 'struct bio_st' b->ptr = NULL; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:40:3: error: incomplete definition of type 'struct bio_st' b->init = 0; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:41:3: error: incomplete definition of type 'struct bio_st' b->flags = 0; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:48:53: error: incomplete definition of type 'struct bio_st' struct ikstls_data *data = (struct ikstls_data *) b->ptr; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:61:53: error: incomplete definition of type 'struct bio_st' struct ikstls_data *data = (struct ikstls_data *) b->ptr; ~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ tls-openssl.c:92:19: error: variable has incomplete type 'BIO_METHOD' (aka 'struct bio_method_st') static BIO_METHOD my_bio_method = { ^ /usr/local/include/openssl/bio.h:250:16: note: forward declaration of 'struct bio_method_st' typedef struct bio_method_st BIO_METHOD; ^ tls-openssl.c:138:5: error: incomplete definition of type 'struct bio_st' bio->ptr = (void *) data; ~~~^ /usr/local/include/openssl/ossl_typ.h:79:16: note: forward declaration of 'struct bio_st' typedef struct bio_st BIO; ^ 11 errors generated. *** Error code 1 Stop. make[2]: stopped in /usr/ports/textproc/iksemel/work/iksemel-978b733/src *** Error code 1 *** Error code 1 Stop. make: stopped in /usr/ports/textproc/iksemel ===========================================
It builds fine for me in {11.4,12.2}{amd64,i386} and current amd64. There aren't any pkg-fallout messages for this package either. Do you have any local ssl settings in make.conf? Are you working with an up to date ports collection?
It seems error is caused by adding DEFAULT_VERSIONS+=ssl=openssl into make.conf (please see log at https://sona.ciernik.sk/poudriere/data/test_122x64-default/2021-03-15_16h55m50s/logs/errors/iksemel-1.5.log ). Same behaviour on FreeBSD 11.4. Ports tree was refreshed just minutes ago. # poudriere ports -l PORTSTREE METHOD TIMESTAMP PATH default portsnap 2021-03-15 16:54:52 /virtuals/poudriere/ports/default
(In reply to Fernando Apesteguía from comment #1) > Do you have any local ssl settings in make.conf? Yes line in make.conf: DEFAULT_VERSIONS+=ssl=openssl > Are you working with an up to date ports collection? Yes? I use command: # portsnap fetch update Initially, the error occurred exactly when updating ports. This later I made a clean installation еo be sure that this port is not making.
Addition. If: 1) not setting DEFAULT_VERSIONS+=ssl=openssl 2) openssl is not installed port is making. If at least one of the conditions is met -- not making/
Created attachment 223732 [details] explicitly disable openssl Looking at configure.ac, it prefers OpenSSL even when --with-gnutls is set. Adding --without-openssl should fix this, please test the patch.
(In reply to Felix Palmen from comment #5) With the applied patch the port builds fine.
It turns out that this is just a disable openssl. Thanks, patch correct make trouble. P.S. Then the question is: why was maked going without disable openssl before? These are the problems with openssl?
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=0a4dd56b6717f75db19a03d8a7920783e256cd0a commit 0a4dd56b6717f75db19a03d8a7920783e256cd0a Author: Fernando ApesteguÃa <fernape@FreeBSD.org> AuthorDate: 2021-04-13 07:00:03 +0000 Commit: Fernando ApesteguÃa <fernape@FreeBSD.org> CommitDate: 2021-04-13 07:05:15 +0000 textproc/iksemel: fix build when openssl is installed. This port does not build when openssl is installed. Disable it explicitely in the configure. PR: 254296 Reported by: dym@afalina.od.ua Tested by: felix@palmen-it.de newton.ja.terry@gmail.com MFH: 2021Q2 build fix textproc/iksemel/Makefile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
A commit in branch 2021Q2 references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=fa9cbe85e2cf34975f4a36dabbe87916e800c483 commit fa9cbe85e2cf34975f4a36dabbe87916e800c483 Author: Fernando ApesteguÃa <fernape@FreeBSD.org> AuthorDate: 2021-04-13 07:00:03 +0000 Commit: Fernando ApesteguÃa <fernape@FreeBSD.org> CommitDate: 2021-04-13 07:07:25 +0000 textproc/iksemel: fix build when openssl is installed. This port does not build when openssl is installed. Disable it explicitely in the configure. PR: 254296 Reported by: dym@afalina.od.ua Tested by: felix@palmen-it.de newton.ja.terry@gmail.com MFH: 2021Q2 build fix (cherry picked from commit 0a4dd56b6717f75db19a03d8a7920783e256cd0a) textproc/iksemel/Makefile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
Committed and merged to 2021Q1. Thanks!