00001 #ifndef AXIS2_DEFINES_H
00002 #define AXIS2_DEFINES_H
00003
00009 #include <stddef.h>
00010
00011 #ifdef __cplusplus
00012 extern "C"
00013 {
00014 #endif
00015
00019 typedef char axis2_char_t;
00020 typedef int axis2_bool_t;
00021 typedef int axis2_status_t;
00022 typedef unsigned int axis2_ssize_t;
00023
00024
00025
00026
00027
00028 #define AXIS2_EOLN '\0'
00029
00033 #define AXIS2_TRUE 1
00034 #define AXIS2_FALSE 0
00035
00039 #if defined(WIN32)
00040 #define AXIS2_EXPORT __declspec(dllexport)
00041 #else
00042 #define AXIS2_EXPORT
00043 #endif
00044
00048 #if defined(WIN32)
00049 #define AXIS2_IMPORT __declspec(dllimport)
00050 #else
00051 #define AXIS2_IMPORT
00052 #endif
00053
00057 #if defined(__GNUC__)
00058 #define AXIS2_CALL __attribute__((cdecl))
00059 #else
00060 #if defined(__unix)
00061 #define AXIS2_CALL
00062 #else
00063 #define AXIS2_CALL __stdcall
00064 #endif
00065 #endif
00066
00067 #ifdef DOXYGEN
00068
00069
00081 # define AXIS2_DECLARE_STATIC
00082
00088 # define AXIS2_DECLARE_EXPORT
00089
00090 #endif
00091
00092 #if !defined(WIN32)
00093
00101 #define AXIS2_DECLARE(type) type AXIS2_CALL
00102
00111 #define AXIS2_DECLARE_NONSTD(type) type
00112
00121 #define AXIS2_DECLARE_DATA
00122
00123 #elif defined(AXIS2_DECLARE_STATIC)
00124 #define AXIS2_DECLARE(type) type AXIS2_CALL
00125 #define AXIS2_DECLARE_NONSTD(type) type
00126 #define AXIS2_DECLARE_DATA
00127 #elif defined(AXIS2_DECLARE_EXPORT)
00128 #define AXIS2_DECLARE(type) AXIS2_EXPORT type AXIS2_CALL
00129 #define AXIS2_DECLARE_NONSTD(type) AXIS2_EXPORT type
00130 #define AXIS2_DECLARE_DATA AXIS2_EXPORT
00131 #else
00132 #define AXIS2_DECLARE(type) AXIS2_IMPORT type AXIS2_CALL
00133 #define AXIS2_DECLARE_NONSTD(type) AXIS2_IMPORT type
00134 #define AXIS2_DECLARE_DATA AXIS2_IMPORT
00135 #endif
00136
00137
00138 #ifdef __cplusplus
00139 }
00140 #endif
00141
00142 #endif