This was one of the ports flagged by naddy@ with fno-common issues. I've tested that this builds correctly with -fno-common.
One patch goes away as LibreSSL support is already upstream. A couple new patches added to address a couple build errors. Tested on amd64 to connect to a mainframe. Will be committing in a couple days unless I hear objections. Thanks, Jeremy Index: Makefile =================================================================== RCS file: /cvs/ports/comms/c3270/Makefile,v retrieving revision 1.9 diff -u -p -r1.9 Makefile --- Makefile 12 Jul 2019 20:43:46 -0000 1.9 +++ Makefile 29 Jan 2021 17:53:58 -0000 @@ -2,11 +2,10 @@ COMMENT= curses-based 3270 terminal editor -DISTNAME= suite3270-3.5ga11-src -PKGNAME= c3270-3.5.11 +DISTNAME= suite3270-4.0ga10-src +PKGNAME= c3270-4.0.10 EXTRACT_SUFX= .tgz CATEGORIES= comms -REVISION= 0 HOMEPAGE= http://x3270.bgp.nu/ @@ -21,7 +20,7 @@ LIB_DEPENDS= converters/libiconv MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=x3270/} -WRKDIST= ${WRKDIR}/suite3270-3.5 +WRKDIST= ${WRKDIR}/suite3270-4.0 USE_GMAKE = Yes CONFIGURE_STYLE= gnu CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \ Index: distinfo =================================================================== RCS file: /cvs/ports/comms/c3270/distinfo,v retrieving revision 1.5 diff -u -p -r1.5 distinfo --- distinfo 13 Nov 2017 22:05:33 -0000 1.5 +++ distinfo 29 Jan 2021 17:37:34 -0000 @@ -1,2 +1,2 @@ -SHA256 (suite3270-3.5ga11-src.tgz) = G+3KytCbHiUMKGgseTWxcw/YzvzF99Gzc1Qd7iy38uc= -SIZE (suite3270-3.5ga11-src.tgz) = 3413903 +SHA256 (suite3270-4.0ga10-src.tgz) = Bds0p1CKDWHJWkNWNHLmHQ9/oSzg1fPtPl+I6WbY2Yw= +SIZE (suite3270-4.0ga10-src.tgz) = 3313007 Index: patches/patch-Common_print_command_c =================================================================== RCS file: patches/patch-Common_print_command_c diff -N patches/patch-Common_print_command_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-Common_print_command_c 29 Jan 2021 17:51:57 -0000 @@ -0,0 +1,15 @@ +$OpenBSD$ + +Add missing include. + +Index: Common/print_command.c +--- Common/print_command.c.orig ++++ Common/print_command.c +@@ -34,6 +34,7 @@ + #include <errno.h> + #include <fcntl.h> + #include <assert.h> ++#include <sys/wait.h> + + #include "popups.h" + #include "print_command.h" Index: patches/patch-Common_telnet_c =================================================================== RCS file: patches/patch-Common_telnet_c diff -N patches/patch-Common_telnet_c --- patches/patch-Common_telnet_c 13 Nov 2017 22:05:33 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,16 +0,0 @@ -$OpenBSD: patch-Common_telnet_c,v 1.1 2017/11/13 22:05:33 jeremy Exp $ - -Work around bad SSL library detection. - -Index: Common/telnet.c ---- Common/telnet.c.orig -+++ Common/telnet.c -@@ -3688,7 +3688,7 @@ ssl_base_init(char *cl_hostname, bool *pending) - ssl_pending = pending; - } - --#if !defined(_WIN32) && OPENSSL_VERSION_NUMBER < 0x10100000L /*[*/ -+#if !defined(_WIN32) && OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) /*[*/ - SSL_load_error_strings(); - SSL_library_init(); - #else /*][*/ Index: patches/patch-c3270_screen_c =================================================================== RCS file: patches/patch-c3270_screen_c diff -N patches/patch-c3270_screen_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-c3270_screen_c 29 Jan 2021 17:52:26 -0000 @@ -0,0 +1,17 @@ +$OpenBSD$ + +Don't define CURSES_WIDE, so it doesn't try to use unsupported +types. + +Index: c3270/screen.c +--- c3270/screen.c.orig ++++ c3270/screen.c +@@ -66,6 +66,8 @@ + + #include "cscreen.h" + ++#undef CURSES_WIDE ++ + /* + * The usual x3270 COLS variable (current number of columns in the 3270 + * display) is called cCOLS in c3270, to avoid a conflict with curses COLS (the
