--- backend/server/i386-arch.h.orig 2007-06-26 09:14:11.000000000 -0400 +++ backend/server/i386-arch.h 2007-06-26 23:07:08.000000000 -0400 @@ -2,12 +2,63 @@ #define __MONO_DEBUGGER_I386_ARCH_H__ #include +#include G_BEGIN_DECLS #if defined(__i386__) +/* + * added because gentoo linux headers + * no longer include asm-i386/user.h + */ + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19) + + struct user_i387_struct { + long cwd; + long swd; + long twd; + long fip; + long fcs; + long foo; + long fos; + long st_space[20]; + }; + + struct user_regs_struct { + long ebx, ecx, edx, esi, edi, ebp, eax; + unsigned short ds, __ds, es, __es; + unsigned short fs, __fs, gs, __gs; + long orig_eax, eip; + unsigned short cs, __cs; + long eflags, esp; + unsigned short ss, __ss; + }; + + struct user{ + struct user_regs_struct regs; + int u_fpvalid; + struct user_i387_struct i387; + unsigned long int u_tsize; + unsigned long int u_dsize; + unsigned long int u_ssize; + unsigned long start_code; + unsigned long start_stack; + long int signal; + int reserved; + struct user_pt_regs * u_ar0; + struct user_i387_struct* u_fpstate; + unsigned long magic; + char u_comm[32]; + int u_debugreg[8]; + }; + +#else #include +#endif + +/* end added structs */ #define INFERIOR_REGS_TYPE struct user_regs_struct #define INFERIOR_FPREGS_TYPE struct user_i387_struct