home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / nspr30-e.zip / nspr30-e / include / md / _nextstep.cfg < prev    next >
Text File  |  1998-11-18  |  7KB  |  237 lines

  1. /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
  2. /*
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  * 
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  * 
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18.  
  19. #ifndef nspr_cpucfg___
  20. #define nspr_cpucfg___
  21.  
  22. #ifndef XP_UNIX
  23. #define XP_UNIX
  24. #endif
  25.  
  26. #ifndef NEXTSTEP
  27. #define NEXTSTEP
  28. #endif
  29.  
  30. /*    Platform specific
  31. */
  32. #if defined(__sparc__)
  33.  
  34. /* Check these
  35. */
  36. #undef  IS_LITTLE_ENDIAN
  37. #define IS_BIG_ENDIAN 1
  38. #define    HAVE_LONG_LONG
  39. #undef    HAVE_ALIGNED_DOUBLES
  40. #define    HAVE_ALIGNED_LONGLONGS 1
  41.  
  42. #define PR_BYTES_PER_BYTE   1
  43. #define PR_BYTES_PER_SHORT  2
  44. #define PR_BYTES_PER_INT    4
  45. #define PR_BYTES_PER_INT64  8
  46. #define PR_BYTES_PER_LONG   4
  47. #define PR_BYTES_PER_FLOAT  4
  48. #define PR_BYTES_PER_DOUBLE 8
  49. /* Taken from _solaris.cfg
  50. */
  51. #define PR_BYTES_PER_WORD   4
  52. #define PR_BYTES_PER_DWORD  8
  53. #define PR_BYTES_PER_WORD_LOG2   2
  54. #define PR_BYTES_PER_DWORD_LOG2  3
  55.  
  56. #define PR_BITS_PER_BYTE    8
  57. #define PR_BITS_PER_SHORT   16
  58. #define PR_BITS_PER_INT     32
  59. #define PR_BITS_PER_INT64   64
  60. #define PR_BITS_PER_LONG    32
  61. #define PR_BITS_PER_FLOAT   32
  62. #define PR_BITS_PER_DOUBLE  64
  63. /* Taken from _solaris.cfg
  64. */
  65. #define PR_BITS_PER_WORD    32
  66.  
  67. #define PR_BITS_PER_BYTE_LOG2   3
  68. #define PR_BITS_PER_SHORT_LOG2  4
  69. #define PR_BITS_PER_INT_LOG2    5
  70. #define PR_BITS_PER_INT64_LOG2  6
  71. #define PR_BITS_PER_LONG_LOG2   5
  72. #define PR_BITS_PER_FLOAT_LOG2  5
  73. #define PR_BITS_PER_DOUBLE_LOG2 6
  74. /* Taken from _solaris.cfg
  75. */
  76. #define PR_BITS_PER_WORD_LOG2   5
  77.  
  78. #define PR_ALIGN_OF_SHORT   2
  79. #define PR_ALIGN_OF_INT     4
  80. #define PR_ALIGN_OF_LONG    4
  81. #define PR_ALIGN_OF_INT64   8
  82. #define PR_ALIGN_OF_FLOAT   4
  83. #define PR_ALIGN_OF_DOUBLE  8
  84. #define PR_ALIGN_OF_POINTER 4
  85.  
  86. #define PR_WORDS_PER_DWORD_LOG2  1
  87.  
  88. #elif defined(__m68k__)
  89.  
  90. /* Check these
  91. */
  92. #undef  IS_LITTLE_ENDIAN
  93. #define IS_BIG_ENDIAN 1
  94. #define    HAVE_LONG_LONG
  95. #undef    HAVE_ALIGNED_DOUBLES
  96. #define    HAVE_ALIGNED_LONGLONGS 1
  97.  
  98. #define PR_BYTES_PER_BYTE   1
  99. #define PR_BYTES_PER_SHORT  2
  100. #define PR_BYTES_PER_INT    4
  101. #define PR_BYTES_PER_INT64  8
  102. #define PR_BYTES_PER_LONG   4
  103. #define PR_BYTES_PER_FLOAT  4
  104. #define PR_BYTES_PER_DOUBLE 8
  105. #define PR_BYTES_PER_WORD   4
  106. #define PR_BYTES_PER_DWORD  8
  107. #define PR_BYTES_PER_WORD_LOG2   2
  108. #define PR_BYTES_PER_DWORD_LOG2  3
  109.  
  110. #define PR_BITS_PER_BYTE    8
  111. #define PR_BITS_PER_SHORT   16
  112. #define PR_BITS_PER_INT     32
  113. #define PR_BITS_PER_INT64   64
  114. #define PR_BITS_PER_LONG    32
  115. #define PR_BITS_PER_FLOAT   32
  116. #define PR_BITS_PER_DOUBLE  64
  117. #define PR_BITS_PER_WORD    32
  118.  
  119. #define PR_BITS_PER_BYTE_LOG2   3
  120. #define PR_BITS_PER_SHORT_LOG2  4
  121. #define PR_BITS_PER_INT_LOG2    5
  122. #define PR_BITS_PER_INT64_LOG2  6
  123. #define PR_BITS_PER_LONG_LOG2   5
  124. #define PR_BITS_PER_FLOAT_LOG2  5
  125. #define PR_BITS_PER_DOUBLE_LOG2 6
  126. #define PR_BITS_PER_WORD_LOG2   5
  127.  
  128. #define PR_ALIGN_OF_SHORT   2
  129. #define PR_ALIGN_OF_INT     2
  130. #define PR_ALIGN_OF_LONG    2
  131. #define PR_ALIGN_OF_INT64   2
  132. #define PR_ALIGN_OF_FLOAT   2
  133. #define PR_ALIGN_OF_DOUBLE  2
  134. #define PR_ALIGN_OF_POINTER 2
  135.  
  136. #define PR_WORDS_PER_DWORD_LOG2  1
  137.  
  138. #elif defined(__i386__)
  139.  
  140. /* Check these
  141. */
  142. #define IS_LITTLE_ENDIAN 1
  143. #undef  IS_BIG_ENDIAN
  144. #define    HAVE_LONG_LONG
  145. #undef    HAVE_ALIGNED_DOUBLES
  146. #define    HAVE_ALIGNED_LONGLONGS 1
  147.  
  148. #define PR_BYTES_PER_BYTE   1
  149. #define PR_BYTES_PER_SHORT  2
  150. #define PR_BYTES_PER_INT    4
  151. #define PR_BYTES_PER_INT64  8
  152. #define PR_BYTES_PER_LONG   4
  153. #define PR_BYTES_PER_FLOAT  4
  154. #define PR_BYTES_PER_DOUBLE 8
  155. #define PR_BYTES_PER_WORD   4
  156. #define PR_BYTES_PER_DWORD  8
  157.  
  158. #define PR_BITS_PER_BYTE    8
  159. #define PR_BITS_PER_SHORT   16
  160. #define PR_BITS_PER_INT     32
  161. #define PR_BITS_PER_INT64   64
  162. #define PR_BITS_PER_LONG    32
  163. #define PR_BITS_PER_FLOAT   32
  164. #define PR_BITS_PER_DOUBLE  64
  165. #define PR_BITS_PER_WORD    32
  166.  
  167. #define PR_BITS_PER_BYTE_LOG2   3
  168. #define PR_BITS_PER_SHORT_LOG2  4
  169. #define PR_BITS_PER_INT_LOG2    5
  170. #define PR_BITS_PER_INT64_LOG2  6
  171. #define PR_BITS_PER_LONG_LOG2   5
  172. #define PR_BITS_PER_FLOAT_LOG2  5
  173. #define PR_BITS_PER_DOUBLE_LOG2 6
  174. #define PR_BITS_PER_WORD_LOG2   5
  175.  
  176. #define PR_ALIGN_OF_SHORT   2
  177. #define PR_ALIGN_OF_INT     4
  178. #define PR_ALIGN_OF_LONG    4
  179. #define PR_ALIGN_OF_INT64   4
  180. #define PR_ALIGN_OF_FLOAT   4
  181. #define PR_ALIGN_OF_DOUBLE  4
  182. #define PR_ALIGN_OF_POINTER 4
  183. #define PR_ALIGN_OF_WORD    4
  184.  
  185. #define PR_BYTES_PER_WORD_LOG2   2
  186. #define PR_BYTES_PER_DWORD_LOG2  3
  187. #define PR_WORDS_PER_DWORD_LOG2  1
  188. #endif /* defined(__somearch__) */
  189.  
  190.  
  191. #ifndef NO_NSPR_10_SUPPORT
  192.  
  193. #define BYTES_PER_BYTE        PR_BYTES_PER_BYTE
  194. #define BYTES_PER_SHORT     PR_BYTES_PER_SHORT
  195. #define BYTES_PER_INT         PR_BYTES_PER_INT
  196. #define BYTES_PER_INT64        PR_BYTES_PER_INT64
  197. #define BYTES_PER_LONG        PR_BYTES_PER_LONG
  198. #define BYTES_PER_FLOAT        PR_BYTES_PER_FLOAT
  199. #define BYTES_PER_DOUBLE    PR_BYTES_PER_DOUBLE
  200. #define BYTES_PER_WORD        PR_BYTES_PER_WORD
  201. #define BYTES_PER_DWORD        PR_BYTES_PER_DWORD
  202.  
  203. #define BITS_PER_BYTE        PR_BITS_PER_BYTE
  204. #define BITS_PER_SHORT        PR_BITS_PER_SHORT
  205. #define BITS_PER_INT        PR_BITS_PER_INT
  206. #define BITS_PER_INT64        PR_BITS_PER_INT64
  207. #define BITS_PER_LONG        PR_BITS_PER_LONG
  208. #define BITS_PER_FLOAT        PR_BITS_PER_FLOAT
  209. #define BITS_PER_DOUBLE        PR_BITS_PER_DOUBLE
  210. #define BITS_PER_WORD        PR_BITS_PER_WORD
  211.  
  212. #define BITS_PER_BYTE_LOG2    PR_BITS_PER_BYTE_LOG2
  213. #define BITS_PER_SHORT_LOG2    PR_BITS_PER_SHORT_LOG2
  214. #define BITS_PER_INT_LOG2    PR_BITS_PER_INT_LOG2
  215. #define BITS_PER_INT64_LOG2    PR_BITS_PER_INT64_LOG2
  216. #define BITS_PER_LONG_LOG2    PR_BITS_PER_LONG_LOG2
  217. #define BITS_PER_FLOAT_LOG2    PR_BITS_PER_FLOAT_LOG2
  218. #define BITS_PER_DOUBLE_LOG2     PR_BITS_PER_DOUBLE_LOG2
  219. #define BITS_PER_WORD_LOG2    PR_BITS_PER_WORD_LOG2
  220.  
  221. #define ALIGN_OF_SHORT        PR_ALIGN_OF_SHORT
  222. #define ALIGN_OF_INT        PR_ALIGN_OF_INT
  223. #define ALIGN_OF_LONG        PR_ALIGN_OF_LONG
  224. #define ALIGN_OF_INT64        PR_ALIGN_OF_INT64
  225. #define ALIGN_OF_FLOAT        PR_ALIGN_OF_FLOAT
  226. #define ALIGN_OF_DOUBLE        PR_ALIGN_OF_DOUBLE
  227. #define ALIGN_OF_POINTER    PR_ALIGN_OF_POINTER
  228. #define ALIGN_OF_WORD        PR_ALIGN_OF_WORD
  229.  
  230. #define BYTES_PER_WORD_LOG2    PR_BYTES_PER_WORD_LOG2
  231. #define BYTES_PER_DWORD_LOG2    PR_BYTES_PER_DWORD_LOG2
  232. #define WORDS_PER_DWORD_LOG2    PR_WORDS_PER_DWORD_LOG2
  233.  
  234. #endif /* NO_NSPR_10_SUPPORT */
  235.  
  236. #endif /* nspr_cpucfg___ */
  237.