Re: [RFA/RFC] (hppa/tui) Fix build failure due to missing wborder

Joel Brobecker
2004-02-25T18:59:49Z

[-- Attachment #1: Type: text/plain, Size: 903 bytes --]

On Tue, Feb 24, 2004 at 09:09:42PM -0500, Daniel Jacobowitz wrote:
> Try this instead:
> AC_CHECK_FUNC(wborder, [],
> [AC_SEARCH_LIBS(wborder, [cur_colr], [],
> [AC_MSG_WARN([...])])])

Very clever! I didn't know that AC_CHECK_FUNC was using $LIBS to
link its test program...

Attach is a new suggested patch.

2004-02-25 J. Brobecker <brobecker@gnat.com>

* configure.in: Make sure that the wborder function is available.
Otherwise, search for it in the cur_colr library.
* configure: Regenerate.

On HP/UX, configure outputs:

checking for library containing initscr... -lHcurses
checking for wborder... no
checking for library containing wborder... -lcur_colr

On Linux, configure says:

checking for library containing initscr... -lncurses
checking for wborder... yes

In both cases, I verified that TUI was linked in.
--
Joel

[-- Attachment #2: configure.in.diff --]
[-- Type: text/plain, Size: 1470 bytes --]

Index: configure.in
===================================================================
RCS file: /cvs/src/src/gdb/configure.in,v
retrieving revision 1.147
diff -u -p -r1.147 configure.in
--- configure.in 18 Feb 2004 19:01:36 -0000 1.147
+++ configure.in 25 Feb 2004 18:57:33 -0000
@@ -146,6 +146,16 @@ fi
AC_SEARCH_LIBS(initscr, [ncurses Hcurses curses pdcurses], [],
[AC_MSG_WARN([no curses library found])])

+# Check whether the wborder function is provided by the curses
+# library detected above. In certain implementations such as
+# the HP/UX Hcurses for instance, this function is provided by an
+# additional library. So if we did not find this function inside
+# the curses library, try some alternate libraries we know might
+# provide it.
+AC_CHECK_FUNC(wborder, [wborder_available=yes],
+ [AC_SEARCH_LIBS(wborder, [cur_colr], [wborder_available=yes],
+ [AC_MSG_WARN([no wborder function found])])])
+
# Enable TUI.
AC_ARG_ENABLE(tui,
[ --enable-tui enable full-screen terminal user interface (TUI)],
@@ -157,7 +167,7 @@ AC_ARG_ENABLE(tui,
esac],enable_tui=yes)
if test x"$enable_tui" = xyes; then
if test -d $srcdir/tui; then
- if test "$ac_cv_search_initscr" != no; then
+ if test "$ac_cv_search_initscr" != no -a "$wborder_available" = "yes"; then
CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)"
CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)"
CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)"