From a4a18b8bbef0fe4265d675f9c56ea17566566484 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Mon, 30 Apr 2012 21:07:14 -0400 Subject: [PATCH] Use libtinfo in preference to libncurses (bug#9741) * configure.in: Try libtinfo for tputs. (LIBS_TERMCAP) [gnu*]: Use libtinfo if it was found. * etc/NEWS: Mention this. --- ChangeLog | 3 +++ configure.in | 13 ++++++++++--- etc/NEWS | 3 +++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 137248c0d8..109132d0f9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2012-05-01 Glenn Morris + * configure.in: Try libtinfo for tputs. + (LIBS_TERMCAP) [gnu*]: Use libtinfo if it was found. (Bug#9741) + * configure.in: Combine adjacent $opsys case blocks. * configure.in (LIBS_TERMCAP): Remove unreachable branch for sol2. diff --git a/configure.in b/configure.in index 42a6b3364c..4ad5efbb81 100644 --- a/configure.in +++ b/configure.in @@ -2868,7 +2868,7 @@ AC_DEFUN([tputs_link_source], [ ]) # Maybe curses should be tried earlier? # See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9736#35 -for tputs_library in '' ncurses terminfo termcap curses; do +for tputs_library in '' tinfo ncurses terminfo termcap curses; do OLIBS=$LIBS if test -z "$tputs_library"; then LIBS_TERMCAP= @@ -2888,7 +2888,8 @@ done AC_MSG_RESULT([$msg]) if test "X$msg" = Xno; then AC_MSG_ERROR([The required function `tputs' was not found in any library. -These libraries were tried: libncurses, libterminfo, libtermcap, libcurses. +The following libraries were tried (in order): + libtinfo, libncurses, libterminfo, libtermcap, libcurses Please try installing whichever of these libraries is most appropriate for your system, together with its header files. For example, a libncurses-dev(el) or similar package.]) @@ -2897,12 +2898,18 @@ fi ## Use termcap instead of terminfo? ## Only true for: freebsd < 40000, ms-w32, msdos, netbsd < 599002500. TERMINFO=yes +## FIXME? In the cases below where we unconditionally set +## LIBS_TERMCAP="-lncurses", this overrides LIBS_TERMCAP = -ltinfo, +## if that was found above to have tputs. +## Should we use the gnu* logic everywhere? case "$opsys" in ## darwin: Prevents crashes when running Emacs in Terminal.app under 10.2. ## The ncurses library has been moved out of the System framework in ## Mac OS X 10.2. So if configure detects it, set the command-line ## option to use it. - darwin|gnu*) LIBS_TERMCAP="-lncurses" ;; + darwin) LIBS_TERMCAP="-lncurses" ;; + + gnu*) [ "x$LIBS_TERMCAP" = x ] && LIBS_TERMCAP="-lncurses" ;; freebsd) AC_MSG_CHECKING([whether FreeBSD is new enough to use terminfo]) diff --git a/etc/NEWS b/etc/NEWS index ce3cfe7acc..ef809aad4e 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -29,6 +29,9 @@ possibly-questionable C code. On a recent GNU system there should be no warnings; on older and on non-GNU systems the generated warnings may be useful. +--- +** Emacs uses libtinfo in preference to libncurses, if available. + * Startup Changes in Emacs 24.2 -- 2.20.1