Go to the documentation of this file. 28 #ifndef GWENHYWFARAPI_H 29 #define GWENHYWFARAPI_H 31 #include <gwenhywfar/types.h> 33 #ifdef GWENHYWFAR_IS_SUBPROJECT 34 # define GWENHYWFAR_API 35 # define GWENHYWFAR_EXPORT 36 # define GWENHYWFAR_NOEXPORT 39 # ifdef BUILDING_GWENHYWFAR 41 # if GWENHYWFAR_SYS_IS_WINDOWS 44 # define GWENHYWFAR_API __declspec (dllexport) 46 # define GWENHYWFAR_API 50 # ifdef GCC_WITH_VISIBILITY_ATTRIBUTE 51 # define GWENHYWFAR_API __attribute__((visibility("default"))) 53 # define GWENHYWFAR_API 58 # if GWENHYWFAR_SYS_IS_WINDOWS 61 # define GWENHYWFAR_API __declspec (dllimport) 63 # define GWENHYWFAR_API 67 # define GWENHYWFAR_API 71 # ifdef GCC_WITH_VISIBILITY_ATTRIBUTE 72 # define GWENHYWFAR_EXPORT __attribute__((visibility("default"))) 73 # define GWENHYWFAR_NOEXPORT __attribute__((visibility("hidden"))) 75 # define GWENHYWFAR_EXPORT 76 # define GWENHYWFAR_NOEXPORT 80 # define GWEN_UNUSED __attribute__((unused)) 86 #if GWENHYWFAR_SYS_IS_WINDOWS 87 # define GWENHYWFAR_CB __stdcall 89 # define GWENHYWFAR_CB 92 #if GWENHYWFAR_SYS_IS_WINDOWS 94 # define GWEN_DIR_SEPARATOR '/' 95 # define GWEN_DIR_SEPARATOR_S "/" 97 # define GWEN_DIR_SEPARATOR '\\' 98 # define GWEN_DIR_SEPARATOR_S "\\" 100 # define GWEN_SEARCHPATH_SEPARATOR ';' 101 # define GWEN_SEARCHPATH_SEPARATOR_S ";" 105 # define GWEN_DIR_SEPARATOR '/' 108 # define GWEN_DIR_SEPARATOR_S "/" 111 # define GWEN_SEARCHPATH_SEPARATOR ':' 114 # define GWEN_SEARCHPATH_SEPARATOR_S ":" 120 #ifndef __GNUC_PREREQ 121 # if defined __GNUC__ && defined __GNUC_MINOR__ 122 # define __GNUC_PREREQ(maj, min) \ 123 ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) 125 # define __GNUC_PREREQ(maj, min) 0 133 # define __STRING(x) #x 139 #include <gwenhywfar/system.h> 142 #if __GNUC_PREREQ(3, 0) 144 # define GWEN_DEPRECATED __attribute__((deprecated)) 145 # define GWEN_UNUSED __attribute__((unused)) 146 # define GWEN_LIKELY(cond) __builtin_expect(!!(cond), 1) 147 # define GWEN_UNLIKELY(cond) __builtin_expect(!!(cond), 0) 149 # define GWEN_DEPRECATED 151 # define GWEN_LIKELY(cond) (!!(cond)) 152 # define GWEN_UNLIKELY(cond) (!!(cond)) 156 #if defined(__GNUC__) && !defined(__MINGW32__) 157 # define GWEN_FORMAT(fmt, pos, argstart) \ 158 __attribute__ ((format (fmt, pos, argstart))) 160 # define GWEN_FORMAT(fmt, pos, argstart) 164 #define GWEN_TIMEOUT_NONE (0) 165 #define GWEN_TIMEOUT_FOREVER (-1)