summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorrodent <rodent>2014-01-26 04:00:19 +0000
committerrodent <rodent>2014-01-26 04:00:19 +0000
commitc5880b3651f70756c34f9433fc0ebac1ff72da6a (patch)
tree567f2930a47966edcedbe6f393bbaa1e8996a2d1 /devel
parentf11117ac52015df81c393b00025d53fcbac6ac7d (diff)
downloadpkgsrc-c5880b3651f70756c34f9433fc0ebac1ff72da6a.tar.gz
Forgot to add this... Fixes unportable cfmakeraw() for SunOS.
Diffstat (limited to 'devel')
-rw-r--r--devel/ucommon/patches/patch-utils_keywait.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/devel/ucommon/patches/patch-utils_keywait.cpp b/devel/ucommon/patches/patch-utils_keywait.cpp
new file mode 100644
index 00000000000..3b153582ca6
--- /dev/null
+++ b/devel/ucommon/patches/patch-utils_keywait.cpp
@@ -0,0 +1,22 @@
+$NetBSD: patch-utils_keywait.cpp,v 1.1 2014/01/26 04:00:19 rodent Exp $
+
+Fix unportable cfmakeraw() for SunOS.
+
+--- utils/keywait.cpp.orig 2014-01-04 17:31:43.000000000 +0000
++++ utils/keywait.cpp
+@@ -122,7 +122,15 @@ PROGRAM_MAIN(argc, argv)
+ shell::exiting(&cleanup);
+
+ tcgetattr(0, &current);
++#if defined(__sun)
++ current.c_iflag &= ~(IMAXBEL|IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON);
++ current.c_oflag &= ~OPOST;
++ current.c_lflag &= ~(ECHO|ECHONL|ICANON|ISIG|IEXTEN);
++ current.c_cflag &= ~(CSIZE|PARENB);
++ current.c_cflag |= CS8;
++#else
+ cfmakeraw(&current);
++#endif
+ tcsetattr(0, TCSANOW, &current);
+ fd_set inp;
+ struct timeval tv = {0, 0};