From 9acc4ce5d1e4d166f9fb916d3417ea52fbe16b70 Mon Sep 17 00:00:00 2001 From: Boqun Feng Date: Mon, 17 Feb 2014 09:49:26 +0800 Subject: GBE: fix terminfo library linkage In some distros, the terminal libraries are divided into two libraries, one is tinfo and the other is ncurses, however, for other distros, there is only one single ncurses library with all functions. In order to link proper terminal library for LLVM, find_library macro in cmake can be used. In this patch, the tinfo is prefered, so that it wouldn't affect linkage behavior in distros with tinfo. Signed-off-by: Boqun Feng Reviewed-by: Zhigang Gong Reviewed-by: Igor Gnatenko --- backend/src/CMakeLists.txt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'backend') diff --git a/backend/src/CMakeLists.txt b/backend/src/CMakeLists.txt index 6db4a2a6..6e37d95d 100644 --- a/backend/src/CMakeLists.txt +++ b/backend/src/CMakeLists.txt @@ -189,7 +189,13 @@ target_link_libraries( ${CMAKE_DL_LIBS}) if (LLVM_VERSION_NODOT VERSION_EQUAL 34) - target_link_libraries(gbe tinfo) + find_library(TERMINFO NAMES tinfo ncurses) + if (${TERMINFO} STREQUAL TERMINFO-NOTFOUND) + message(FATAL_ERROR "no libtinfo or libncurses is found in system") + else (${TERMINFO} STREQUAL TERMINFO-NOTFOUND) + target_link_libraries(gbe ${TERMINFO}) + message(STATUS "use ${TERMINFO} as terminal control library") + endif (${TERMINFO} STREQUAL TERMINFO-NOTFOUND) endif(LLVM_VERSION_NODOT VERSION_EQUAL 34) link_directories (${LLVM_LIBRARY_DIR}) -- cgit v1.2.3