1130812Smarcel/* Native-dependent definitions for LynxOS. 2130812Smarcel 3130812Smarcel Copyright 1993, 1994, 1995, 1996, 1999, 2000, 2003 Free Software 4130812Smarcel Foundation, Inc. 5130812Smarcel 6130812Smarcel This file is part of GDB. 7130812Smarcel 8130812Smarcel This program is free software; you can redistribute it and/or modify 9130812Smarcel it under the terms of the GNU General Public License as published by 10130812Smarcel the Free Software Foundation; either version 2 of the License, or 11130812Smarcel (at your option) any later version. 12130812Smarcel 13130812Smarcel This program is distributed in the hope that it will be useful, 14130812Smarcel but WITHOUT ANY WARRANTY; without even the implied warranty of 15130812Smarcel MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16130812Smarcel GNU General Public License for more details. 17130812Smarcel 18130812Smarcel You should have received a copy of the GNU General Public License 19130812Smarcel along with this program; if not, write to the Free Software 20130812Smarcel Foundation, Inc., 59 Temple Place - Suite 330, 21130812Smarcel Boston, MA 02111-1307, USA. */ 22130812Smarcel 23130812Smarcel#ifndef NM_LYNX_H 24130812Smarcel#define NM_LYNX_H 25130812Smarcel 26130812Smarcelstruct target_waitstatus; 27130812Smarcel 28130812Smarcel#include <sys/conf.h> 29130812Smarcel#include <sys/kernel.h> 30130812Smarcel/* sys/kernel.h should define this, but doesn't always, sigh. */ 31130812Smarcel#ifndef __LYNXOS 32130812Smarcel#define __LYNXOS 33130812Smarcel#endif 34130812Smarcel#include <sys/mem.h> 35130812Smarcel#include <sys/signal.h> 36130812Smarcel#include <sys/time.h> 37130812Smarcel#include <sys/resource.h> 38130812Smarcel#include <sys/itimer.h> 39130812Smarcel#include <sys/file.h> 40130812Smarcel#include <sys/proc.h> 41130812Smarcel#include "gdbthread.h" 42130812Smarcel 43130812Smarcel/* This is the amount to subtract from u.u_ar0 to get the offset in 44130812Smarcel the core file of the register values. */ 45130812Smarcel 46130812Smarcel#define KERNEL_U_ADDR USRSTACK 47130812Smarcel 48130812Smarcel/* As of LynxOS 2.2.2 (beta 8/15/94), this is int. Previous versions seem to 49130812Smarcel have had no prototype, so I'm not sure why GDB used to define this to 50130812Smarcel char *. */ 51130812Smarcel#define PTRACE_ARG3_TYPE int 52130812Smarcel 53130812Smarcel/* Override copies of {fetch,store}_inferior_registers in infptrace.c. */ 54130812Smarcel 55130812Smarcel#define FETCH_INFERIOR_REGISTERS 56130812Smarcel 57130812Smarcel/* Thread ID of stopped thread. */ 58130812Smarcel 59130812Smarcel#define WIFTID(x) (((union wait *)&x)->w_tid) 60130812Smarcel 61130812Smarcel/* Override child_wait in inftarg.c */ 62130812Smarcel 63130812Smarcel#define CHILD_WAIT 64130812Smarcel 65130812Smarcel/* Override child_resume in infptrace.c */ 66130812Smarcel 67130812Smarcel#define CHILD_RESUME 68130812Smarcel 69130812Smarcel/* Override child_thread_alive in intarg.c */ 70130812Smarcel 71130812Smarcel#define CHILD_THREAD_ALIVE 72130812Smarcel 73130812Smarcel#include "target.h" 74130812Smarcel 75130812Smarcelextern ptid_t child_wait (ptid_t ptid, 76130812Smarcel struct target_waitstatus *status); 77130812Smarcel 78130812Smarcel/* Lynx needs a special definition of this so that we can 79130812Smarcel print out the pid and thread number seperately. */ 80130812Smarcel 81130812Smarcel 82130812Smarcel/* override child_pid_to_str in inftarg.c */ 83130812Smarcel#define CHILD_PID_TO_STR 84130812Smarcelextern char *lynx_pid_to_str (ptid_t ptid); 85130812Smarcel 86130812Smarcel#endif /* NM_LYNX_H */ 87