mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-02 03:39:43 -06:00
FindCurses: Detect and satisfy ncurses dependency on tinfo
When ncurses is built with USE=tinfo we need to find "tinfo" as a
dependency of the main library. Otherwise 'cbreak' is missing:
ld: ...: undefined reference to symbol 'cbreak'
ld: note: 'cbreak' is defined in DSO /lib/libtinfo.so.5 so try adding
it to the linker command line
See https://bugs.gentoo.org/show_bug.cgi?id=468622 for more information.
Applied-by: Rolf Eike Beer <eike@sf-mail.de>
This commit is contained in:
@@ -135,10 +135,20 @@ else()
|
||||
CACHE FILEPATH "The curses library" ${FORCE_IT})
|
||||
endif()
|
||||
|
||||
CHECK_LIBRARY_EXISTS("${CURSES_NCURSES_LIBRARY}"
|
||||
cbreak "" CURSES_NCURSES_HAS_CBREAK)
|
||||
if(NOT CURSES_NCURSES_HAS_CBREAK)
|
||||
find_library(CURSES_EXTRA_LIBRARY tinfo HINTS "${_cursesLibDir}")
|
||||
find_library(CURSES_EXTRA_LIBRARY tinfo )
|
||||
CHECK_LIBRARY_EXISTS("${CURSES_EXTRA_LIBRARY}"
|
||||
cbreak "" CURSES_TINFO_HAS_CBREAK)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
find_library(CURSES_EXTRA_LIBRARY cur_colr HINTS "${_cursesLibDir}")
|
||||
find_library(CURSES_EXTRA_LIBRARY cur_colr )
|
||||
if (NOT CURSES_TINFO_HAS_CBREAK)
|
||||
find_library(CURSES_EXTRA_LIBRARY cur_colr HINTS "${_cursesLibDir}")
|
||||
find_library(CURSES_EXTRA_LIBRARY cur_colr )
|
||||
endif()
|
||||
|
||||
find_library(CURSES_FORM_LIBRARY form HINTS "${_cursesLibDir}")
|
||||
find_library(CURSES_FORM_LIBRARY form )
|
||||
@@ -182,5 +192,7 @@ mark_as_advanced(
|
||||
CURSES_INCLUDE_DIR
|
||||
CURSES_CURSES_HAS_WSYNCUP
|
||||
CURSES_NCURSES_HAS_WSYNCUP
|
||||
CURSES_NCURSES_HAS_CBREAK
|
||||
CURSES_TINFO_HAS_CBREAK
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user