This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCHSET] [4/4] Fix various issue in TUI
- From: Pedro Alves <palves at redhat dot com>
- To: Eli Zaretskii <eliz at gnu dot org>
- Cc: gdb-patches at sourceware dot org
- Date: Thu, 22 Jan 2015 17:15:00 +0000
- Subject: Re: [PATCHSET] [4/4] Fix various issue in TUI
- Authentication-results: sourceware.org; auth=none
- References: <83vbkrbt4d dot fsf at gnu dot org> <54AAEC02 dot 7020500 at redhat dot com> <83bnmd8028 dot fsf at gnu dot org> <83y4p1zq7k dot fsf at gnu dot org> <54C0E7FE dot 4020401 at redhat dot com> <83lhkuvl1v dot fsf at gnu dot org>
On 01/22/2015 04:26 PM, Eli Zaretskii wrote:
>> Date: Thu, 22 Jan 2015 12:07:26 +0000
>> From: Pedro Alves <palves@redhat.com>
>> CC: gdb-patches@sourceware.org
>>
>>>>>>> On 12/31/2014 05:56 PM, Eli Zaretskii wrote:
>>>>>>>>> Well, one patch is Windows-specific after all. This patch makes sure
>>>>>>>>> windows-termcap is not compiled when GDB is linked against ncurses,
>>>>>>>
>>>>>>> ...
>>>>>>>
>>>>>>>>> and also makes the file a no-op should it compile in that
>>>>>>>>> configuration.
>>>>>>>
>>>>>>> With the configure.ac change, how can that happen?
>>>>>
>>>>> It shouldn't.
>>
>> I'd have preferred to drop that hunk then. It just seems to
>> be either pointless or hiding some problem with the
>> configure.ac check.
>
> At the very least how about an #error in those conditions? Otherwise,
> any bit-rot (something that happens now and then with the MinGW build)
> will silently do the wrong thing.
Well, I fear that the #ifdefery can bit rot just as well. So having
two places that can bitrot (configure and #ifdef) seems worse than
one.
>>
>> So shouldn't the right check be this:
>>
>> if test x"$curses_found" != xyes; then
>> ac_cv_search_tgetent="none required"
>> CONFIG_OBS="$CONFIG_OBS windows-termcap.o"
>> fi ;;
>>
>> ?
>
> I'm not sure. GDB can be configured --without-tui --with-curses.
> Does your logic work then?
It's the same thing. That sets $prefer_curses:
opt_curses=no
AC_ARG_WITH(curses, AS_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
prefer_curses=no
if test "$opt_curses" = "yes"; then
prefer_curses=yes
fi
But that doesn't mean that curses will be used. We'll again fall here:
curses_found=no
if test x"$prefer_curses" = xyes; then
...
AC_SEARCH_LIBS(waddstr, [ncurses cursesX curses])
if test "$ac_cv_search_waddstr" != no; then
curses_found=yes
fi
fi
And if waddstr is not found, meaning curses is not really
available, even though it'd be preferred, $prefer_curses is
yes, but $curses_found is no.
Thanks,
Pedro Alves