Blob


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.9 2002/12/12 11:26:08 alex Exp $
13 *
14 * portab.h: "Portabilitaets-Definitionen"
15 */
18 #ifndef __PORTAB__
19 #define __PORTAB__
22 #include "config.h"
25 /* Compiler Features */
27 #ifdef __GNUC__
28 # define PUNUSED(x) __attribute__ ((unused)) x
29 # define UNUSED __attribute__ ((unused))
30 #else
31 # define PUNUSED(x) x
32 # define UNUSED
33 #endif
35 #ifndef PARAMS
36 # if PROTOTYPES
37 # define PARAMS(args) args
38 # else
39 # define PARAMS(args) ()
40 # endif
41 #endif
44 /* Keywords */
46 #define EXTERN extern
47 #define STATIC static
48 #define LOCAL static
49 #define CONST const
50 #define REGISTER register
53 /* Datatentypen */
55 #ifndef PROTOTYPES
56 # ifndef signed
57 # define signed
58 # endif
59 #endif
61 typedef void VOID;
62 typedef void POINTER;
64 typedef signed int INT;
65 typedef unsigned int UINT;
66 typedef signed long LONG;
67 typedef unsigned long ULONG;
69 typedef signed char INT8;
70 typedef unsigned char UINT8;
71 typedef signed short INT16;
72 typedef unsigned short UINT16;
73 typedef signed long INT32;
74 typedef unsigned long UINT32;
76 typedef double DOUBLE;
77 typedef float FLOAT;
79 typedef char CHAR;
81 typedef UINT8 BOOLEAN;
83 #undef TRUE
84 #define TRUE (BOOLEAN)1
86 #undef FALSE
87 #define FALSE (BOOLEAN)0
89 #undef NULL
90 #ifdef PROTOTYPES
91 # define NULL (VOID *)0
92 #else
93 # define NULL 0L
94 #endif
96 #undef GLOBAL
97 #define GLOBAL
100 /* SPLint */
103 #ifdef S_SPLINT_S
104 #include "splint.h"
105 #endif
108 /* configure-Optionen */
110 #ifndef HAVE_socklen_t
111 #define socklen_t int /* u.a. fuer Mac OS X */
112 #endif
114 #if OS_UNIX_AUX
115 #define _POSIX_SOURCE /* muss unter A/UX definiert sein */
116 #endif
119 /* Konstanten */
121 #ifndef TARGET_OS
122 #define TARGET_OS "unknown"
123 #endif
125 #ifndef TARGET_CPU
126 #define TARGET_CPU "unknown"
127 #endif
129 #ifndef TARGET_VENDOR
130 #define TARGET_VENDOR "unknown"
131 #endif
134 #endif
137 /* -eof- */