aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rwxr-xr-xconfigure66
-rw-r--r--configure.in9
-rw-r--r--src/ChangeLog7
-rw-r--r--src/config.in3
-rw-r--r--src/s/netbsd.h3
6 files changed, 91 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 36e80a7bd9..a4e2660bb2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-01-12 Chong Yidong <[email protected]>
+
+ * configure.in [netbsd systems]: Check for tputs definition
+ (Bug#7642).
+
2010-12-11 Glenn Morris <[email protected]>
* make-dist: Exclude etc/*.pyc. [Backport from trunk]
diff --git a/configure b/configure
index ead032e31c..b408648498 100755
--- a/configure
+++ b/configure
@@ -11833,6 +11833,72 @@ _ACEOF
fi
+case "$opsys" in
+ netbsd)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing tputs" >&5
+$as_echo_n "checking for library containing tputs... " >&6; }
+if test "${ac_cv_search_tputs+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char tputs ();
+int
+main ()
+{
+return tputs ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' ncurses terminfo termcap; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_tputs=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test "${ac_cv_search_tputs+set}" = set; then :
+ break
+fi
+done
+if test "${ac_cv_search_tputs+set}" = set; then :
+
+else
+ ac_cv_search_tputs=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_tputs" >&5
+$as_echo "$ac_cv_search_tputs" >&6; }
+ac_res=$ac_cv_search_tputs
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+ if test $ac_cv_search_tputs = -lterminfo; then
+
+$as_echo "#define TERMINFO 1" >>confdefs.h
+
+ fi
+ ;;
+esac
+
# Do we have res_init, for detecting changes in /etc/resolv.conf?
resolv=no
diff --git a/configure.in b/configure.in
index 2cbd03067d..b15a0bf7a7 100644
--- a/configure.in
+++ b/configure.in
@@ -2372,6 +2372,15 @@ AC_CHECK_FUNCS(getpt)
# than to expect to find it in ncurses.
AC_CHECK_LIB(ncurses, tparm)
+case "$opsys" in
+ netbsd)
+ AC_SEARCH_LIBS(tputs, [ncurses terminfo termcap])
+ if test $ac_cv_search_tputs = -lterminfo; then
+ AC_DEFINE(TERMINFO, 1, [Define to 1 if you use terminfo instead of termcap.])
+ fi
+ ;;
+esac
+
# Do we have res_init, for detecting changes in /etc/resolv.conf?
resolv=no
diff --git a/src/ChangeLog b/src/ChangeLog
index 2b22a2e07f..dbb7be762a 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
+2011-01-12 Chong Yidong <[email protected]>
+
+ * config.in (TERMINFO): New definition.
+
+ * s/netbsd.h: Use it to choose between terminfo and termcap
+ (Bug#7642).
+
2011-01-03 Jan Djärv <[email protected]>
* coding.h (ENCODE_UTF_8): Remove "Used by ..." comment.
diff --git a/src/config.in b/src/config.in
index ed10347944..0ccb13d740 100644
--- a/src/config.in
+++ b/src/config.in
@@ -895,6 +895,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Process async input synchronously. */
#undef SYNC_INPUT
+/* Define to 1 if you use terminfo instead of termcap. */
+#undef TERMINFO
+
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
diff --git a/src/s/netbsd.h b/src/s/netbsd.h
index 27605c2808..4a9e31167e 100644
--- a/src/s/netbsd.h
+++ b/src/s/netbsd.h
@@ -45,8 +45,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define LIBS_DEBUG
/* -lutil is not needed for NetBSD >0.9. */
/* #define LIBS_SYSTEM -lutil */
-#ifdef HAVE_TERM_H
-#define TERMINFO
+#ifdef TERMINFO
#define LIBS_TERMCAP -lterminfo
#else
#define LIBS_TERMCAP -ltermcap