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: [rfa] PROBLEMS (i[3456]86-*-linux*): Require glibc 2.1.3 or later


> Should the build notes also mention this?  The PROBLEM (groan) with the 
> PROBLEMS file is that people often don't read it :-).

I picked PROBLEMS because it seemed to be the file with the
appropriate level of detail.

I'm flexible on this, I'm willing to wrote notes wherever you like, just
say where.  Do you want text in 'README: Unpacking and Installation:
Quick Overview' or 'NEWS', or ???

> Does the build (configure or compile) barf clearly explain the reason 
> for the failure?  If it is this common, GDB might as well be a little 
> proactive and complain up front.

The compile barfs like this:

  In file included from ../../gdb-5.2/gdb/thread-db.c:26:
   ../../gdb-5.2/gdb/gdb_thread_db.h:211: parse error before `uintptr_t'
   ../../gdb-5.2/gdb/gdb_thread_db.h:211: warning: no semicolon at end
of struct or union
   ../../gdb-5.2/gdb/gdb_thread_db.h:211: warning: no semicolon at end
of struct or union
   ../../gdb-5.2/gdb/gdb_thread_db.h:212: warning: type defaults to
`int' in declaration of `msg'
   ../../gdb-5.2/gdb/gdb_thread_db.h:212: warning: data definition has
no type or storage class
   ../../gdb-5.2/gdb/gdb_thread_db.h:213: parse error before `}'

This could be detected at autoconf time, something like:

  AC_MSG_CHECKING(for uintptr_t support in glibc)
  AC_CACHE_VAL(ac_cv_c_uintptr_t,
  [AC_TRY_COMPILE(, [
    #include <stdint.h>
    uintptr_t foo;
    ],
    ac_cv_c_uintptr_t=yes, ac_cv_c_uintptr_t=no)])
  AC_MSG_RESULT($ac_cv_c_uintptr_t)
  if test $ac_cv_c_uintptr_t = yes; then
    AC_DEFINE(HAVE_UINTPTR_T)
  fi

Then gdb_thread_db.h could produce a better error message if it
gets compiled.  It's used only on *-*-*linux* and s390-*-*,
not everywhere.

Do you want to go in that direction?  That looks reasonable to me.
I would balk at actually filling in a defintion of uintptr_t though.
If their glibc is that old (3 years old!) they are likely to have
other problems and I want to cauterize their build.

Michael C


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