summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorBen Gardner <bgardner@wabtec.com>2016-05-25 10:03:53 -0500
committerBen Gardner <bgardner@wabtec.com>2016-05-25 10:03:53 -0500
commit1d20df627d2fd74d86531dfd44595aed17cb202f (patch)
tree5bc7000efe29965ab11b0084d1640e5d366ce313
parente0c6e819c28a5c866cd3437599b8e979b23f0627 (diff)
termcodes: make VEOL2, VWERASE, VLNEXT, ECHOCTL, and ECHOKE optional
My POSIX-like platform is missing some basic termcodes. Make them optional. Signed-off-by: Ben Gardner <gardner.ben@gmail.com>
-rw-r--r--termcodes.c24
1 files changed, 22 insertions, 2 deletions
diff --git a/termcodes.c b/termcodes.c
index 490e6ce..c5819c1 100644
--- a/termcodes.c
+++ b/termcodes.c
@@ -34,7 +34,11 @@ const struct TermCode termcodes[MAX_TERMCODE+1] = {
{VKILL, TERMCODE_CONTROLCHAR},
{VEOF, TERMCODE_CONTROLCHAR},
{VEOL, TERMCODE_CONTROLCHAR},
+#ifdef VEOL2
{VEOL2, TERMCODE_CONTROLCHAR},
+#else
+ {0, 0},
+#endif
{VSTART, TERMCODE_CONTROLCHAR},
{VSTOP, TERMCODE_CONTROLCHAR},
{VSUSP, TERMCODE_CONTROLCHAR},
@@ -51,17 +55,25 @@ const struct TermCode termcodes[MAX_TERMCODE+1] = {
#ifdef AIX
{CERASE, TERMCODE_CONTROLCHAR},
#else
+#ifdef VWERASE
{VWERASE, TERMCODE_CONTROLCHAR},
+#else
+ {0, 0},
#endif
+#endif
+#ifdef VLNEXT
{VLNEXT, TERMCODE_CONTROLCHAR},
+#else
+ {0, 0},
+#endif
#ifdef VFLUSH
{VFLUSH, TERMCODE_CONTROLCHAR},
-#else
+#else
{0, 0},
#endif
#ifdef VSWTCH
{VSWTCH, TERMCODE_CONTROLCHAR},
-#else
+#else
{0, 0},
#endif
#ifdef VSTATUS
@@ -135,8 +147,16 @@ const struct TermCode termcodes[MAX_TERMCODE+1] = {
{NOFLSH, TERMCODE_LOCAL},
{TOSTOP, TERMCODE_LOCAL},
{IEXTEN, TERMCODE_LOCAL},
+#ifdef ECHOCTL
{ECHOCTL, TERMCODE_LOCAL},
+#else
+ {0, 0},
+#endif
+#ifdef ECHOKE
{ECHOKE, TERMCODE_LOCAL},
+#else
+ {0, 0},
+#endif
#ifdef PENDIN
{PENDIN, TERMCODE_LOCAL},
#else