I'm trying to build NetBSD-10 on Solaris-11.4 and noticing various
portability issues that result in build failures.
The last one is related to missing OpenSSL types:
# compile libtelnet/pk.o
/opt/netbsd/tools.sparc64/bin/sparc64--netbsd-gcc -O2
-fdebug-prefix-map=\$DESTDIR= -fdebug-prefix-map=\$NETBSDSRCDIR=/u
sr/src -fdebug-prefix-map=\$X11SRCDIR=/usr/xsrc
-fdebug-regex-map='/usr/src/(.*)/obj$=/usr/obj/\1' -fdebug-regex-map='/u
sr/src/(.*)/obj/(.*)=/usr/obj/\1/\2'
-fdebug-regex-map='/usr/src/(.*)/obj\..*=/usr/obj/\1'
-fdebug-regex-map='/usr/src/(
.*)/obj\..*/(.*)=/usr/obj/\1/\2' -std=gnu99 -Wall -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Wno-sig
n-compare -Wsystem-headers -Wno-traditional -Wa,--fatal-warnings
-Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwri
te-strings -Wextra -Wno-unused-parameter -Wno-sign-compare
-Wold-style-definition -Wsign-compare -Wformat=2 -Wno-format
-zero-length -Werror -mcpu=ultrasparc -fPIE -fstack-protector
-Wstack-protector --param ssp-buffer-size=1 --sysro
ot=/opt/netbsd/obj.sparc64/destdir.sparc64 -DHAS_CGETENT
-I/opt/netbsd/netbsd-10-src/lib/libtelnet -DENCRYPTION -DAUTHEN
TICATION -DDES_ENCRYPTION -DKRB5 -DSRA
-Wp,-iremap,/opt/netbsd/obj.sparc64/destdir.sparc64:
-Wp,-fno-canonical-system-he
aders -Wp,-iremap,/opt/netbsd/netbsd-10-src:/usr/src
-Wp,-iremap,/opt/netbsd/xsrc:/usr/xsrc -D_FORTIFY_SOURCE=2 -c -Wno
-pointer-sign /opt/netbsd/netbsd-10-src/lib/libtelnet/pk.c -o pk.o
In file included from
/opt/netbsd/obj.sparc64/destdir.sparc64/usr/include/openssl/bn.h:25,
from /opt/netbsd/netbsd-10-src/lib/libtelnet/pk.c:52:
/opt/netbsd/obj.sparc64/destdir.sparc64/usr/include/openssl/types.h:96:1:
error: data definition has no type or storage
class [-Werror]
96 | STACK_OF(BIGNUM);
| ^~~~~~~~
As far as I can tell, these macros should be in <openssl/safestack.h>
header but this file is empty in destdir:
ls -l /opt/netbsd/obj.sparc64/destdir.sparc64/usr/include/openssl/safestack.h
-r--r--r-- 1 root root 0 Mar 26 09:17
/opt/netbsd/obj.sparc64/destdir.sparc64/usr/include/openssl/safestack.h
Can someone familiar with NetBSD OpenSSL suggest why some header
files are empty?
Thanks.