This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa] PROBLEMS (i[3456]86-*-linux*): Require glibc 2.1.3 or later
- From: Michael Elizabeth Chastain <mec at shout dot net>
- To: ac131313 at redhat dot com
- Cc: gdb-patches at sources dot redhat dot com
- Date: Tue, 25 Feb 2003 11:10:43 -0600
- Subject: 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