This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] configure.ac, configure: curses/termcap on *-*-osf5.*


   Date: Tue, 27 Apr 2004 21:50:27 -0400 (EDT)
   From: mec.gnu@mindspring.com (Michael Elizabeth Chastain)

   Mark Kettenis writes:
   > Sorry, but this isn't right.  Just because ncurses doesn't work on one
   > particular system, we shouldn't treat all those systems specially.
   > Why is ncurses not working on this particular system?

   You're implying that building gdb with ncurses works on *any*
   alphaev68-dec-osf5.1 system.  I doubt that it does.

What I'm saying is that I don't see why gdb wouldn't build on a
*-*-osf5* system with a properly installed ncurses if it builds on the
same system with the vendor's curses library.  What seems to be the
problem here is that on the test-drive system you're using, the
ncurses library isn't properly installed.  This could happen on any
system, even on GNU/Linux systems.  That's no justification to special
case *-*-osf5* in configure.

   On closer inspection, libcurses lives in /usr/shlib, /usr/ccs/lib,
   and /usr/lib.  libncurses lives in /usr/local/lib.  I think that's
   evidence that libcurses is the official curses library for osf5.1
   and libncurses is something local to the machine that I'm using
   (spe147.testdrive.hp.com).

   I also experimented with a test program that just calls one
   library function:

     vendor cc, -lcurses  ... links
     vendor cc, -lncurses ... unresolved external
     gcc, -lcurses  ... links
     gcc, -lncurses ... unresolved external

This makes me wonder why configure doesn't detect ncurses as being broken.

   That just shows that ncurses is broken on the specific host spe147. 
   But the location of libcurses and the location of libncurses
   leads me to think that libcurses is official on osf5.1 and
   libncurses is not.

Yup.  You don't typically find ncurses as the vendor curses library on
commercial UNIXen (as opposed to the Open Source OS'es such as *BSD
and GNU/Linux).  However, GDB prefers ncurses over the vendor curses
library.  I think it is in the GNU spirit to prefer an Open Source
implementation over a proprietary one.  But perhaps more importantly,
ncurses is available on many systems, and provides a uniform
interface.  The vendor's curses implementation may be incomplete or
may have serious bugs.  If we have evidence that this is not the right
strategy, we might change it to prefer the vendor's curses library
over ncurses.  But in order to do that we need more evidence than one
single system that has a broken ncurses.

Could you be so kind to revert the bit of your patch that special
cases *-*-osf5* when looking for a curses library?

Thanks,

Mark


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]