OK?
Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/ucblogo/Makefile,v
retrieving revision 1.13
diff -u -p -r1.13 Makefile
--- Makefile 11 Mar 2013 11:20:28 -0000 1.13
+++ Makefile 6 Dec 2013 11:35:01 -0000
@@ -2,7 +2,7 @@
COMMENT= berkeley's implementation of the logo programming language
DISTNAME= ucblogo-5.5
-REVISION= 2
+REVISION= 3
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_BACKUP}
Index: patches/patch-config_h_in
===================================================================
RCS file: patches/patch-config_h_in
diff -N patches/patch-config_h_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-config_h_in 6 Dec 2013 11:35:01 -0000
@@ -0,0 +1,13 @@
+$OpenBSD$
+--- config.h.in.orig Thu Dec 5 23:17:01 2013
++++ config.h.in Thu Dec 5 23:17:30 2013
+@@ -39,6 +39,9 @@
+ /* Define if you have the <sgtty.h> header file. */
+ #undef HAVE_SGTTY_H
+
++/* Define if you have the <termios.h> header file. */
++#undef HAVE_TERMIOS_H
++
+ /* Define if you have the <termio.h> header file. */
+ #undef HAVE_TERMIO_H
+
Index: patches/patch-configure
===================================================================
RCS file: patches/patch-configure
diff -N patches/patch-configure
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-configure 6 Dec 2013 11:35:01 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- configure.orig Thu Dec 5 23:13:36 2013
++++ configure Thu Dec 5 23:13:51 2013
+@@ -1582,7 +1582,7 @@ EOF
+
+ fi
+
+-for ac_hdr in sgtty.h termio.h unistd.h string.h
++for ac_hdr in sgtty.h termios.h termio.h unistd.h string.h
+ do
+ ac_safe=`echo "$ac_hdr" | tr './\055' '___'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
Index: patches/patch-term_c
===================================================================
RCS file: /cvs/ports/lang/ucblogo/patches/patch-term_c,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-term_c
--- patches/patch-term_c 1 Jun 2006 05:58:15 -0000 1.1.1.1
+++ patches/patch-term_c 6 Dec 2013 11:35:01 -0000
@@ -1,6 +1,6 @@
$OpenBSD: patch-term_c,v 1.1.1.1 2006/06/01 05:58:15 jolan Exp $
---- term.c.orig Fri Jul 22 18:15:32 2005
-+++ term.c Sun May 28 23:54:50 2006
+--- term.c.orig Sat Jul 23 01:15:32 2005
++++ term.c Fri Dec 6 03:30:13 2013
@@ -19,6 +19,9 @@
*
*/
@@ -11,3 +11,102 @@ $OpenBSD: patch-term_c,v 1.1.1.1 2006/06
#include "logo.h"
#include "globals.h"
+@@ -30,6 +33,9 @@
+ #include <console.h>
+ #endif
+
++#ifdef HAVE_TERMIOS_H
++#include <termios.h>
++#else
+ #ifdef HAVE_TERMIO_H
+ #include <termio.h>
+ #else
+@@ -37,6 +43,7 @@
+ #include <sgtty.h>
+ #endif
+ #endif
++#endif
+
+ #undef TRUE
+ #undef FALSE
+@@ -71,6 +78,9 @@ char cm_arr[40];
+ char so_arr[40];
+ char se_arr[40];
+
++#ifdef HAVE_TERMIOS_H
++struct termios tty_cooked, tty_cbreak;
++#else
+ #ifdef HAVE_TERMIO_H
+ struct termio tty_cooked, tty_cbreak;
+ #else
+@@ -78,6 +88,7 @@ struct termio tty_cooked, tty_cbreak;
+ struct sgttyb tty_cooked, tty_cbreak;
+ #endif
+ #endif
++#endif
+
+ int interactive, tty_charmode;
+
+@@ -85,7 +96,7 @@ extern char **environ, *tgoto(), *tgetstr();
+
+ char *termcap_ptr;
+
+-int termcap_putter(char ch) {
++int termcap_putter(int ch) {
+ *termcap_ptr++ = ch;
+ return 0;
+ }
+@@ -125,6 +136,13 @@ void term_init(void) {
+ #endif /* WIN32 */
+ #else
+ if (interactive) {
++#ifdef HAVE_TERMIOS_H
++ tcgetattr(0, &tty_cooked);
++ tty_cbreak = tty_cooked;
++ tty_cbreak.c_cc[VMIN] = '\01';
++ tty_cbreak.c_cc[VTIME] = '\0';
++ tty_cbreak.c_lflag &= ~(ECHO|ICANON);
++#else
+ #ifdef HAVE_TERMIO_H
+ ioctl(0,TCGETA,(char *)(&tty_cooked));
+ tty_cbreak = tty_cooked;
+@@ -137,6 +155,7 @@ void term_init(void) {
+ tty_cbreak.sg_flags |= CBREAK;
+ tty_cbreak.sg_flags &= ~ECHO;
+ #endif
++#endif
+ }
+ tty_charmode = 0;
+ tgetent(bp, getenv("TERM"));
+@@ -181,11 +200,15 @@ void term_init(void) {
+ void charmode_on() {
+ #ifdef unix
+ if ((readstream == stdin) && interactive && !tty_charmode) {
++#ifdef HAVE_TERMIOS_H
++ tcsetattr(0, TCSANOW, &tty_cbreak);
++#else /* !HAVE_TERMIOS_H */
+ #ifdef HAVE_TERMIO_H
+ ioctl(0,TCSETA,(char *)(&tty_cbreak));
+ #else /* !HAVE_TERMIO_H */
+ ioctl(0,TIOCSETP,(char *)(&tty_cbreak));
+ #endif /* HAVE_TERMIO_H */
++#endif /* HAVE_TERMIOS_H */
+ tty_charmode++;
+ }
+ #endif /* unix */
+@@ -197,11 +220,15 @@ void charmode_on() {
+ void charmode_off() {
+ #ifdef unix
+ if (tty_charmode) {
++#ifdef HAVE_TERMIOS_H
++ tcsetattr(0, TCSANOW, &tty_cooked);
++#else /* !HAVE_TERMIOS_H */
+ #ifdef HAVE_TERMIO_H
+ ioctl(0,TCSETA,(char *)(&tty_cooked));
+ #else /* !HAVE_TERMIO_H */
+ ioctl(0,TIOCSETP,(char *)(&tty_cooked));
+ #endif /* HAVE_TERMIO_H */
++#endif /* HAVE_TERMIOS_H */
+ tty_charmode = 0;
+ }
+ #endif /* unix */