- neue Datentypen LONG, ULONG und DOUBLE.
[ngircd-alex.git] / src / portab / portab.h
1 /*
2  * ngIRCd -- The Next Generation IRC Daemon
3  * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
4  *
5  * Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen
6  * der GNU General Public License (GPL), wie von der Free Software Foundation
7  * herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2
8  * der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version.
9  * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
10  * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
11  *
12  * $Id: portab.h,v 1.8 2002/10/09 16:53:30 alex Exp $
13  *
14  * portab.h: "Portabilitaets-Definitionen"
15  */
16
17
18 #ifndef __PORTAB__
19 #define __PORTAB__
20
21
22 #include "config.h"
23
24
25 /* Compiler Features */
26
27
28 #ifndef PARAMS
29 # if PROTOTYPES
30 #  define PARAMS(args) args
31 # else
32 #  define PARAMS(args) ()
33 # endif
34 #endif
35
36
37 /* Keywords */
38
39 #define EXTERN extern
40 #define STATIC static
41 #define LOCAL static
42 #define CONST const
43 #define REGISTER register
44
45
46 /* Datatentypen */
47
48 #ifndef PROTOTYPES
49 # ifndef signed
50 #  define signed
51 # endif
52 #endif
53
54 typedef void VOID;
55 typedef void POINTER;
56
57 typedef signed int INT;
58 typedef unsigned int UINT;
59 typedef signed long LONG;
60 typedef unsigned long ULONG;
61
62 typedef signed char INT8;
63 typedef unsigned char UINT8;
64 typedef signed short INT16;
65 typedef unsigned short UINT16;
66 typedef signed long INT32;
67 typedef unsigned long UINT32;
68
69 typedef double DOUBLE;
70 typedef float FLOAT;
71
72 typedef char CHAR;
73
74 typedef UINT8 BOOLEAN;
75
76 #undef TRUE
77 #define TRUE (BOOLEAN)1
78
79 #undef FALSE
80 #define FALSE (BOOLEAN)0
81
82 #undef NULL
83 #ifdef PROTOTYPES
84 # define NULL (VOID *)0
85 #else
86 # define NULL 0L
87 #endif
88
89 #undef GLOBAL
90 #define GLOBAL
91
92
93 /* SPLint */
94
95
96 #ifdef S_SPLINT_S
97 #include "splint.h"
98 #endif
99
100
101 /* configure-Optionen */
102
103 #ifndef HAVE_socklen_t
104 #define socklen_t int                   /* u.a. fuer Mac OS X */
105 #endif
106
107 #if OS_UNIX_AUX
108 #define _POSIX_SOURCE                   /* muss unter A/UX definiert sein */
109 #endif
110
111
112 /* Konstanten */
113
114 #ifndef TARGET_OS
115 #define TARGET_OS "unknown"
116 #endif
117
118 #ifndef TARGET_CPU
119 #define TARGET_CPU "unknown"
120 #endif
121
122 #ifndef TARGET_VENDOR
123 #define TARGET_VENDOR "unknown"
124 #endif
125
126
127 #endif
128
129
130 /* -eof- */