#include <thread_db.h>
#else
-#ifdef HAVE_STDINT_H
-#include <stdint.h>
-typedef uint32_t gdb_uint32_t;
-#define GDB_UINT32_C(c) UINT32_C(c)
-#else
-typedef unsigned int gdb_uint32_t;
-#define GDB_UINT32_C(c) c ## U
-#endif
-
-/* Copyright 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2007, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA. */
#ifndef _THREAD_DB_H
#define _THREAD_DB_H 1
/* Bitmask of enabled events. */
typedef struct td_thr_events
{
- gdb_uint32_t event_bits[TD_EVENTSIZE];
+ uint32_t event_bits[TD_EVENTSIZE];
} td_thr_events_t;
/* Event set manipulation macros. */
#define __td_eventmask(n) \
- (GDB_UINT32_C (1) << (((n) - 1) & BT_UIMASK))
+ (UINT32_C (1) << (((n) - 1) & BT_UIMASK))
#define __td_eventword(n) \
- ((GDB_UINT32_C ((n) - 1)) >> BT_UISHIFT)
+ ((UINT32_C ((n) - 1)) >> BT_UISHIFT)
#define td_event_emptyset(setp) \
do { \
do { \
int __i; \
for (__i = TD_EVENTSIZE; __i > 0; --__i) \
- (setp)->event_bits[__i - 1] = GDB_UINT32_C (0xffffffff); \
+ (setp)->event_bits[__i - 1] = UINT32_C (0xffffffff); \
} while (0)
#define td_event_addset(setp, n) \
} u;
} td_notify_t;
+/* Some people still have libc5 or old glibc with no uintptr_t.
+ They lose. glibc 2.1.3 was released on 2000-02-25, and it has
+ uintptr_t, so it's reasonable to force these people to upgrade. */
+
+#ifndef HAVE_UINTPTR_T
+#error No uintptr_t available; your C library is too old.
+/* Inhibit further compilation errors after this error. */
+#define uintptr_t void *
+#endif
+
/* Structure used to report event. */
typedef struct td_event_msg
{
intptr_t ti_sp; /* Unused. */
short int ti_flags; /* Unused. */
int ti_pri; /* Thread priority. */
- lwpid_t ti_lid; /* Unused. */
+ lwpid_t ti_lid; /* Kernel pid for this thread. */
sigset_t ti_sigmask; /* Signal mask. */
unsigned char ti_traceme; /* Nonzero if event reporting
enabled. */