Build fails with LibreSSL 2.7
Summary
When building bind with LibreSSL 2.7 this results in build errors. The error is observed with versions 9.9 through 2018.04.06 76fa1c18
LibreSSL 2.7 implements the OpenSSL 1.1 API and adds a number of 1.0.2 methods as well. Most builds are now OK when using OPENSSL_VERSION_NUMBER >= 0x10100000
checks in the code.
I've collected fall-out from the upgrade of LibreSSL 2.6 to 2.7 in the FreeBSD wiki (as well as patches to fix many ports).
Steps to reproduce
Build/install LibreSSL 2.7 in /usr/local
./configure --with-openssl=/usr/local
make
What is the current bug behavior?
openssldh_link.c:80:1: error: static declaration of 'DH_get0_key' follows non-static declaration
DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key) {
^
/usr/include/openssl/dh.h:196:6: note: previous declaration is here
void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key);
^
etc.
What is the expected correct behavior?
===> build complete
Relevant configuration files
Not relevant
Relevant logs and/or screenshots
$ uname -a
FreeBSD build.brnrd.eu 11.1-RELEASE-p8 FreeBSD 11.1-RELEASE-p8 #0 r331348: Thu Mar 22 19:24:14 CET 2018 bernard@meterkast.brnrd.eu:/usr/obj/usr/src/sys/BEASTIE111 amd64
$ openssl version
LibreSSL 2.7.2
$ cc -v
FreeBSD clang version 4.0.0 (tags/RELEASE_400/final 297347) (based on LLVM 4.0.0)
Target: x86_64-unknown-freebsd11.1
Thread model: posix
InstalledDir: /usr/bin
$ make -VCONFIGURE_ENV -VCONFIGURE_ARGS -VCFLAGS -VCPPFLAGS -VCXXFLAGS -VLDFLAGS
PYTHON="/usr/local/bin/python2.7" XDG_DATA_HOME=/usr/ports/dns/bind9-devel/work XDG_CONFIG_HOME=/usr/ports/dns/bind9-devel/work HOME=/usr/ports/dns/bind9-devel/work PATH=/usr/ports/dns/bind9-devel/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/home/brnrd/bin SHELL=/bin/sh CONFIG_SHELL=/bin/sh CMAKE_PREFIX_PATH="/usr/local" CONFIG_SITE=/usr/ports/Templates/config.site lt_cv_sys_max_cmd_len=262144
--localstatedir=/var --disable-linux-caps --disable-symtable --with-randomdev=/dev/random --with-libxml2=/usr/local --with-readline="-L/usr/local/lib -ledit" --with-dlopen=yes --sysconfdir=/usr/local/etc/namedb --disable-dnstap --disable-fixed-rrset --without-geoip --with-idn=/usr/local --enable-ipv6 --with-libjson --disable-largefile --with-lmdb --with-python=/usr/local/bin/python2.7 --disable-querytrace --enable-rpz-nsdname --enable-rpz-nsip STD_CDEFINES="-DDIG_SIGCHASE=1" --enable-tcp-fastopen --enable-threads --with-tuning=default --with-gssapi=/usr KRB5CONFIG="/usr/bin/krb5-config" --with-openssl=/usr/local --disable-native-pkcs11 --with-dlz-filesystem=yes --without-gost --prefix=/usr/local ${_LATE_CONFIGURE_ARGS}
-O2 -fno-strict-aliasing -pipe -march=native -DLIBICONV_PLUG -fstack-protector -isystem /usr/local/include
-DLIBICONV_PLUG -isystem /usr/local/include
-O2 -fno-strict-aliasing -pipe -march=native -DLIBICONV_PLUG -fstack-protector -isystem /usr/local/include -DLIBICONV_PLUG -isystem /usr/local/include
-fstack-protector
Possible fixes
Edited by Ghost User