summaryrefslogtreecommitdiff
path: root/gdb/configure.in
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2000-04-14 10:13:50 +0000
committerMark Kettenis <kettenis@gnu.org>2000-04-14 10:13:50 +0000
commitd84dd0c55ec2daf8bc3430098b22760478b4b68b (patch)
tree8d14c2e667b7aa60335f3e681fe2b337080f7d6a /gdb/configure.in
parent0d8dfecfe98596d2999f2616d7f2b904260022cc (diff)
downloadbinutils-gdb-d84dd0c55ec2daf8bc3430098b22760478b4b68b.tar.gz
2000-04-13 Mark Kettenis <kettenis@gnu.org>
* acconfig.h (HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T, HAVE_LWPID_T, HAVE_PSADDR_T): Add them here instead of in config.in. * acconfig.h (PRFPREGSET_T_BROKEN): New define. * configure.in: Add check for broken prfpregset_t type. * lin-thread.c (gdb_prfpregset): New typedef, depends on definition of PRFPREGSET_T_BROKEN. (ps_lgetfpregs, ps_lsetfpregs, p_td_thr_getfpregs, p_td_thr_setfpregs, thread_db_fetch_registers, thread_db_store_registers): Use gdb_prfpregset_t instead of prfpregset_t. * config.in: Regenerated. * configure: Regenerated.
Diffstat (limited to 'gdb/configure.in')
-rw-r--r--gdb/configure.in26
1 files changed, 26 insertions, 0 deletions
diff --git a/gdb/configure.in b/gdb/configure.in
index 73ce79d1042..5f112c0854e 100644
--- a/gdb/configure.in
+++ b/gdb/configure.in
@@ -201,6 +201,32 @@ if test "$ac_cv_header_sys_procfs_h" = yes; then
BFD_HAVE_SYS_PROCFS_TYPE(lwpid_t)
BFD_HAVE_SYS_PROCFS_TYPE(psaddr_t)
+ dnl Check for broken prfpregset_t type
+
+ dnl For Linux/i386, glibc 2.1.3 was released with a bogus
+ dnl prfpregset_t type (it's a typedef for the pointer to a struct
+ dnl instead of the struct itself). We detect this here, and work
+ dnl around it in lin-thread.c.
+
+ if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then
+ AC_MSG_CHECKING(whether prfpregset_t type is broken)
+ AC_CACHE_VAL(gdb_cv_prfpregset_t_broken,
+ [AC_TRY_RUN([#include <sys/procfs.h>
+ int main ()
+ {
+ if (sizeof (prfpregset_t) == sizeof (void *))
+ return 1;
+ return 0;
+ }],
+ gdb_cv_prfpregset_t_broken=no,
+ gdb_cv_prfpregset_t_broken=yes,
+ gdb_cv_prfpregset_t_broken=yes)])
+ AC_MSG_RESULT($gdb_cv_prfpregset_t_broken)
+ if test $gdb_cv_prfpregset_t_broken = yes; then
+ AC_DEFINE(PRFPREGSET_T_BROKEN)
+ fi
+ fi
+
dnl Check for PIOCSET ioctl entry
AC_MSG_CHECKING(for PIOCSET ioctl entry in sys/procfs.h)