diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-05-18 17:21:34 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-05-18 17:21:34 +0000 |
commit | 071d73d67e7cea60e7334f6ae96c1e8f8050a662 (patch) | |
tree | aa5c6b099874bce274019ec634bca7558acacf4b | |
parent | a537bf83eda87a0eb65c278d673e51f76b0dd98b (diff) | |
download | external_llvm-071d73d67e7cea60e7334f6ae96c1e8f8050a662.zip external_llvm-071d73d67e7cea60e7334f6ae96c1e8f8050a662.tar.gz external_llvm-071d73d67e7cea60e7334f6ae96c1e8f8050a662.tar.bz2 |
termios.h contains the winsize structure we need to determine the
width of a terminal. Don't try to get the width of a terminal if we
don't have this header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72018 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | autoconf/configure.ac | 4 | ||||
-rwxr-xr-x | cmake/config-ix.cmake | 1 | ||||
-rwxr-xr-x | configure | 5 | ||||
-rw-r--r-- | include/llvm/Config/config.h.cmake | 3 | ||||
-rw-r--r-- | include/llvm/Config/config.h.in | 3 | ||||
-rw-r--r-- | lib/System/Unix/Process.inc | 5 |
6 files changed, 16 insertions, 5 deletions
diff --git a/autoconf/configure.ac b/autoconf/configure.ac index 1e04b8c..cb217a5 100644 --- a/autoconf/configure.ac +++ b/autoconf/configure.ac @@ -823,8 +823,8 @@ AC_HEADER_SYS_WAIT AC_HEADER_TIME AC_CHECK_HEADERS([dlfcn.h execinfo.h fcntl.h inttypes.h limits.h link.h]) -AC_CHECK_HEADERS([malloc.h setjmp.h signal.h stdint.h unistd.h utime.h]) -AC_CHECK_HEADERS([windows.h]) +AC_CHECK_HEADERS([malloc.h setjmp.h signal.h stdint.h termios.h unistd.h]) +AC_CHECK_HEADERS([utime.h windows.h]) AC_CHECK_HEADERS([sys/mman.h sys/param.h sys/resource.h sys/time.h]) AC_CHECK_HEADERS([sys/types.h sys/ioctl.h malloc/malloc.h mach/mach.h]) if test "$ENABLE_THREADS" -eq 1 ; then diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake index 7e4016f..adebb1b 100755 --- a/cmake/config-ix.cmake +++ b/cmake/config-ix.cmake @@ -34,6 +34,7 @@ check_include_file(sys/resource.h HAVE_SYS_RESOURCE_H) check_include_file(sys/stat.h HAVE_SYS_STAT_H) check_include_file(sys/time.h HAVE_SYS_TIME_H) check_include_file(sys/types.h HAVE_SYS_TYPES_H) +check_include_file(termios.h HAVE_TERMIOS_H) check_include_file(unistd.h HAVE_UNISTD_H) check_include_file(utime.h HAVE_UTIME_H) check_include_file(windows.h HAVE_WINDOWS_H) @@ -28963,7 +28963,7 @@ done -for ac_header in malloc.h setjmp.h signal.h stdint.h unistd.h utime.h +for ac_header in malloc.h setjmp.h signal.h stdint.h termios.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then @@ -29132,7 +29132,8 @@ fi done -for ac_header in windows.h + +for ac_header in utime.h windows.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then diff --git a/include/llvm/Config/config.h.cmake b/include/llvm/Config/config.h.cmake index 443afb1..caabf07 100644 --- a/include/llvm/Config/config.h.cmake +++ b/include/llvm/Config/config.h.cmake @@ -419,6 +419,9 @@ /* Define to 1 if the system has the type `uint64_t'. */ #undef HAVE_UINT64_T +/* Define to 1 if you have the <termios.h> header file. */ +#cmakedefine HAVE_TERMIOS_H ${HAVE_TERMIOS_H} + /* Define to 1 if you have the <unistd.h> header file. */ #cmakedefine HAVE_UNISTD_H ${HAVE_UNISTD_H} diff --git a/include/llvm/Config/config.h.in b/include/llvm/Config/config.h.in index f0522e5..8ab67a4 100644 --- a/include/llvm/Config/config.h.in +++ b/include/llvm/Config/config.h.in @@ -419,6 +419,9 @@ /* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */ #undef HAVE_SYS_WAIT_H +/* Define to 1 if you have the <termios.h> header file. */ +#undef HAVE_TERMIOS_H + /* Define to 1 if the system has the type `uint64_t'. */ #undef HAVE_UINT64_T diff --git a/lib/System/Unix/Process.inc b/lib/System/Unix/Process.inc index b1286b7..e4f37a1 100644 --- a/lib/System/Unix/Process.inc +++ b/lib/System/Unix/Process.inc @@ -27,6 +27,9 @@ #ifdef HAVE_SYS_IOCTL_H # include <sys/ioctl.h> #endif +#ifdef HAVE_TERMIOS_H +# include <termios.h> +#endif //===----------------------------------------------------------------------===// //=== WARNING: Implementation here must contain only generic UNIX code that @@ -204,7 +207,7 @@ static unsigned getColumns(int FileID) { unsigned Columns = 0; -#ifdef HAVE_SYS_IOCTL_H +#if defined(HAVE_SYS_IOCTL_H) && defined(HAVE_TERMIOS_H) // Try to determine the width of the terminal. struct winsize ws; if (ioctl(FileID, TIOCGWINSZ, &ws) == 0) |