home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 9 / FreshFishVol9-CD2.bin / bbs / gnu / gdb-4.14-src.lha / gdb-4.14 / gdb / 29k-share / udi / udiphunix.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-10  |  3.1 KB  |  82 lines

  1. /* Originally called "udiphsun.h", however it was not very
  2.    Sun-specific; now it is used for generic-unix-with-bsd-ipc.
  3.  
  4.    Copyright 1993 Free Software Foundation, Inc.
  5.  
  6.    This file is part of GDB.
  7.  
  8.    This program is free software; you can redistribute it and/or modify
  9.    it under the terms of the GNU General Public License as published by
  10.    the Free Software Foundation; either version 2 of the License, or
  11.    (at your option) any later version.
  12.  
  13.    This program is distributed in the hope that it will be useful,
  14.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16.    GNU General Public License for more details.
  17.    
  18.    You should have received a copy of the GNU General Public License
  19.    along with this program; if not, write to the Free Software
  20.    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
  21.  
  22. /* This file is to be used to reconfigure the UDI Procedural interface
  23.    for a given host. This file should be placed so that it will be
  24.    included from udiproc.h. Everything in here may need to be changed
  25.    when you change either the host CPU or its compiler. Nothing in
  26.    here should change to support different targets. There are multiple
  27.    versions of this file, one for each of the different host/compiler
  28.    combinations in use.
  29. */
  30.  
  31. #define UDIStruct  struct        /* _packed not needed on unix */
  32. /* First, we need some types */
  33. /* Types with at least the specified number of bits */
  34. typedef double        UDIReal64;        /* 64-bit real value */
  35. typedef float        UDIReal32;        /* 32-bit real value */
  36.   
  37. typedef unsigned long    UDIUInt32;        /* unsigned integers */
  38. typedef unsigned short    UDIUInt16; 
  39. typedef unsigned char    UDIUInt8;
  40.   
  41. typedef long        UDIInt32;        /* 32-bit integer */ 
  42. typedef short        UDIInt16;        /* 16-bit integer */ 
  43. typedef char        UDIInt8;        /* unreliable signedness */
  44.  
  45. /* To aid in supporting environments where the DFE and TIP use
  46. different compilers or hosts (like DOS 386 on one side, 286 on the
  47. other, or different Unix machines connected by sockets), we define
  48. two abstract types - UDIInt and UDISizeT.
  49. UDIInt should be defined to be int except for host/compiler combinations
  50. that are intended to talk to existing UDI components that have a different
  51. sized int. Similarly for UDISizeT.
  52. */
  53. typedef int        UDIInt;
  54. typedef unsigned int    UDIUInt;
  55.  
  56. typedef unsigned int    UDISizeT;
  57.  
  58. /* Now two void types. The first is for function return types,
  59. the other for pointers to no particular type. Since these types
  60. are used solely for documentational clarity, if your host/compiler
  61. doesn't support either one, replace them with int and char *
  62. respectively.
  63. */
  64. typedef void        UDIVoid;        /* void type */
  65. typedef void *        UDIVoidPtr;        /* void pointer type */
  66. typedef void *        UDIHostMemPtr;        /* Arbitrary memory pointer */
  67.  
  68. /* Now we want a type optimized for boolean values. Normally this
  69.    would be int, but on some machines (Z80s, 8051s, etc) it might
  70.    be better to map it onto a char
  71. */
  72. typedef    int        UDIBool;
  73.  
  74. /* Now indicate whether your compiler support full ANSI style
  75.    prototypes. If so, use #if 1. If not use #if 0.
  76. */
  77. #if 0
  78. #define UDIParams(x)    x
  79. #else
  80. #define UDIParams(x)    ()
  81. #endif
  82.