Added cross-reference support for document generator.
[silc.git] / includes / silcincludes.h
index d15953faaaa13c1b3817af9020f1ae47d0af1a68..0c72f406c9d326154a8623470fc1c02750a07517 100644 (file)
 #ifndef SILCINCLUDES_H
 #define SILCINCLUDES_H
 
-/* Automatically generated configuration header */
-#include "silcdefs.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define SILC_UNIX
 
 #ifdef WIN32
 #ifndef SILC_WIN32
 #define SILC_WIN32
+#undef SILC_UNIX
 #endif
 #endif
 
 #if defined(__EPOC32__)
 #ifndef SILC_EPOC
 #define SILC_EPOC
+#undef SILC_UNIX
+#endif
+#endif
+
+#ifdef BEOS
+#ifndef SILC_BEOS
+#define SILC_BEOS
+#undef SILC_UNIX
 #endif
+#elif defined(__BEOS__)
+#ifndef SILC_BEOS
+#define SILC_BEOS
+#undef SILC_UNIX
 #endif
+#endif
+
+#if defined(OS2)
+#ifndef SILC_OS2
+#define SILC_OS2
+#undef SILC_UNIX
+#endif
+#endif
+
+/* Automatically generated configuration header */
+#include "silcdefs.h"
+
+/* Platform specific includes */
 
 #ifdef SILC_WIN32
 #include "silcwin32.h"
 #include "silcepoc.h"
 #endif
 
+#ifdef SILC_BEOS
+#include "silcbeos.h"
+#endif
+
+#ifdef SILC_OS2
+#include "silcos2.h"
+#endif
+
 #ifndef DLLAPI
 #define DLLAPI
 #endif
 #include <stddef.h>
 #endif
 
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#endif
+
 #endif                         /* !SILC_WIN32 */
 
 #ifndef HAVE_GETOPT_LONG
 #include "../lib/contrib/getopt.h"
 #endif
 
-#ifndef TRUE
-#define TRUE 1
-#endif
-#ifndef FALSE
-#define FALSE 0
-#endif
-
-/* Define offsetof */
-#ifndef offsetof
-#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
-#endif
-
-/* Define types. The types must be at least of the specified size */
-#undef uint8
-#undef uint16
-#undef uint32
-#undef uin64
-#undef int8
-#undef int16
-#undef int32
-#undef int64
-
-typedef unsigned char uint8;
-typedef signed char int8;
-
-#if SILC_SIZEOF_SHORT > 2
-#error "size of the short must be 2 bytes"
-#endif
-
-typedef unsigned short uint16;
-typedef signed short int16;
-
-#if SILC_SIZEOF_LONG == 4
-typedef unsigned long uint32;
-typedef signed long int32;
-#else
-#if SILC_SIZEOF_INT == 4
-typedef unsigned long uint32;
-typedef signed long int32;
-#else
-#if SILC_SIZEOF_LONG_LONG >= 4
-#ifndef WIN32
-typedef unsigned long long uint32;
-typedef signed long long int32;
-#endif
-#endif
-#endif
-#endif
-
-#if SILC_SIZEOF_LONG >= 8
-typedef unsigned long uint64;
-typedef signed long int64;
-#else
-#if SILC_SIZEOF_LONG_LONG >= 8
-#ifndef WIN32
-typedef unsigned long long uint64;
-typedef signed long long int64;
-#else
-typedef uint32 uint64; /* XXX Use Windows's own 64 bit types */
-typedef int32 int64;
-#endif
-#else
-typedef uint32 uint64;
-typedef int32 int64;
-#endif
-#endif
-
-#if SILC_SIZEOF_VOID_P < 4
-typedef uint32 * void *;
-#endif
-
-#ifndef __cplusplus
-#ifndef bool
-#define bool unsigned char
-#endif
-#endif
-
-/* Generic global SILC includes */
-#include "bitmove.h"
+/* Include generic SILC type definitions */
+#include "silctypes.h"
 
 /* Math library includes */
 #include "silcmp.h"
@@ -263,7 +227,6 @@ typedef uint32 * void *;
 #include "silclist.h"
 #include "silcdlist.h"
 #include "silcbuffer.h"
-#include "silcbufutil.h"
 #include "silcbuffmt.h"
 #include "silcnet.h"
 #include "silcfileutil.h"
@@ -299,4 +262,8 @@ typedef uint32 * void *;
 #include "silcsftp.h"
 #include "silcsftp_fs.h"
 
+#ifdef __cplusplus
+}
 #endif
+
+#endif /* SILCINCLUDES_H */