diff options
Diffstat (limited to 'cmake')
-rwxr-xr-x | cmake/config-ix.cmake | 24 | ||||
-rw-r--r-- | cmake/modules/LLVM-Config.cmake | 10 | ||||
-rw-r--r-- | cmake/modules/LLVMConfig.cmake.in | 7 |
3 files changed, 20 insertions, 21 deletions
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake index 0567820..13bd40d 100755 --- a/cmake/config-ix.cmake +++ b/cmake/config-ix.cmake @@ -74,6 +74,7 @@ check_symbol_exists(FE_INEXACT "fenv.h" HAVE_DECL_FE_INEXACT) check_include_file(mach/mach.h HAVE_MACH_MACH_H) check_include_file(mach-o/dyld.h HAVE_MACH_O_DYLD_H) +check_include_file(term.h HAVE_TERM_H) check_include_file(curses.h HAVE_CURSES_H) check_include_file(ncurses.h HAVE_NCURSES_H) check_include_file(ncursesw.h HAVE_NCURSESW_H) @@ -103,18 +104,21 @@ if( NOT PURE_WINDOWS ) else() set(HAVE_LIBZ 0) endif() - if(LLVM_ENABLE_CURSES) - check_library_exists(curses has_colors "" HAVE_CURSES) - if(NOT HAVE_CURSES) - check_library_exists(ncurses has_colors "" HAVE_NCURSES) - set(HAVE_CURSES ${HAVE_NCURSES}) - if(NOT HAVE_CURSES) - check_library_exists(ncursesw has_colors "" HAVE_NCURSESW) - set(HAVE_CURSES ${HAVE_NCURSESW}) + if(LLVM_ENABLE_TERMINFO AND + (HAVE_TERM_H OR HAVE_CURSES_H OR HAVE_NCURSES_H OR HAVE_NCURSESW_H OR + HAVE_NCURSES_CURSES_H OR HAVE_NCURSESW_CURSES_H)) + set(HAVE_TERMINFO 0) + foreach(library tinfo curses ncurses ncursesw) + string(TOUPPER ${library} library_suffix) + check_library_exists(${library} setupterm "" HAVE_TERMINFO_${library_suffix}) + if(HAVE_TERMINFO_${library_suffix}) + set(HAVE_TERMINFO 1) + set(TERMINFO_LIBS "${library}") + break() endif() - endif() + endforeach() else() - set(HAVE_CURSES 0) + set(HAVE_TERMINFO 0) endif() endif() diff --git a/cmake/modules/LLVM-Config.cmake b/cmake/modules/LLVM-Config.cmake index 3e2447a..9fa45ce 100644 --- a/cmake/modules/LLVM-Config.cmake +++ b/cmake/modules/LLVM-Config.cmake @@ -10,13 +10,9 @@ function(get_system_libs return_var) if( HAVE_LIBDL ) set(system_libs ${system_libs} ${CMAKE_DL_LIBS}) endif() - if(LLVM_ENABLE_CURSES) - if(HAVE_NCURSESW) - set(system_libs ${system_libs} ncursesw) - elseif(HAVE_NCURSES) - set(system_libs ${system_libs} ncurses) - elseif(HAVE_CURSES) - set(system_libs ${system_libs} curses) + if(LLVM_ENABLE_TERMINFO) + if(HAVE_TERMINFO) + set(system_libs ${system_libs} ${TERMINFO_LIBS}) endif() endif() if( LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD ) diff --git a/cmake/modules/LLVMConfig.cmake.in b/cmake/modules/LLVMConfig.cmake.in index d87e242..68fe296 100644 --- a/cmake/modules/LLVMConfig.cmake.in +++ b/cmake/modules/LLVMConfig.cmake.in @@ -20,7 +20,7 @@ set(TARGET_TRIPLE "@TARGET_TRIPLE@") set(LLVM_TOOLS_BINARY_DIR @LLVM_TOOLS_BINARY_DIR@) -set(LLVM_ENABLE_CURSES @LLVM_ENABLE_CURSES@) +set(LLVM_ENABLE_TERMINFO @LLVM_ENABLE_TERMINFO@) set(LLVM_ENABLE_THREADS @LLVM_ENABLE_THREADS@) @@ -30,9 +30,8 @@ set(LLVM_NATIVE_ARCH @LLVM_NATIVE_ARCH@) set(LLVM_ENABLE_PIC @LLVM_ENABLE_PIC@) -set(HAVE_CURSES @HAVE_CURSES@) -set(HAVE_NCURSES @HAVE_NCURSES@) -set(HAVE_NCURSESW @HAVE_NCURSESW@) +set(HAVE_TERMINFO @HAVE_TERMINFO@) +set(TERMINFO_LIBS @TERMINFO_LIBS@) set(HAVE_LIBDL @HAVE_LIBDL@) set(HAVE_LIBPTHREAD @HAVE_LIBPTHREAD@) set(HAVE_LIBZ @HAVE_LIBZ@) |