summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure27
-rw-r--r--linux/getch2.c7
2 files changed, 32 insertions, 2 deletions
diff --git a/configure b/configure
index f54ac07513..ad2564986d 100755
--- a/configure
+++ b/configure
@@ -1216,13 +1216,34 @@ int main(void) { return 0; }
EOF
_termios=no
cc_check && _termios=yes
+ _def_termios_h_name='sys/termios.h'
fi
+# second test:
+if test "$_termios" = no ; then
+ cat > $TMPC <<EOF
+#include <termios.h>
+int main(void) { return 0; }
+EOF
+ _termios=no
+ cc_check && _termios=yes
+ _def_termios_h_name='termios.h'
+fi
+
if test "$_termios" = yes ; then
_def_termios='#define HAVE_TERMIOS 1'
- else
+ _def_termios_h='#undef HAVE_TERMIOS_H'
+ _def_termios_sys_h='#undef HAVE_SYS_TERMIOS_H'
+
+ if test "$_def_termios_h_name" = 'sys/termios.h' ; then
+ _def_termios_sys_h='#define HAVE_SYS_TERMIOS_H 1'
+ elif test "$_def_termios_h_name" = 'termios.h' ; then
+ _def_termios_h='#define HAVE_TERMIOS_H 1'
+ fi
+else
_def_termios='#undef HAVE_TERMIOS'
+ _def_termios_h_name=''
fi
-echores "$_termios"
+echores "$_termios (using: $_def_termios_h_name)"
echocheck "shm"
@@ -2855,6 +2876,8 @@ $_def_termcap
/* termios flag for getch2.c */
$_def_termios
+$_def_termios_h
+$_def_termios_sys_h
/* enable PNG support */
$_def_png
diff --git a/linux/getch2.c b/linux/getch2.c
index 693f2afa0c..fdcd538cb6 100644
--- a/linux/getch2.c
+++ b/linux/getch2.c
@@ -16,9 +16,16 @@
#ifdef USE_IOCTL
#include <sys/ioctl.h>
#endif
+
#ifdef HAVE_TERMIOS
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#endif
+#ifdef HAVE_TERMIOS_SYS_H
#include <sys/termios.h>
#endif
+#endif
+
#include <unistd.h>
#include "keycodes.h"