Guess what: ODBC updates and build fixes.
[wxWidgets.git] / src / iodbc / config.h
1 #ifndef _CONFIG_H
2 #define _CONFIG_H
3
4 # if !defined(WINDOWS) && !defined(WIN32_SYSTEM) && !defined(OS2)
5 # define _UNIX_
6
7 # include <stdlib.h>
8 # include <sys/types.h>
9 # include <string.h>
10 # include <stdio.h>
11
12 # define MEM_ALLOC(size) (malloc((size_t)(size)))
13 # define MEM_FREE(ptr) {if(ptr) free(ptr);}
14
15 # define STRCPY(t, s) (strcpy((char*)(t), (char*)(s)))
16 # define STRNCPY(t,s,n) (strncpy((char*)(t), (char*)(s), (size_t)(n)))
17 # define STRCAT(t, s) (strcat((char*)(t), (char*)(s)))
18 # define STRNCAT(t,s,n) (strncat((char*)(t), (char*)(s), (size_t)(n)))
19 # define STREQ(a, b) (strcmp((char*)(a), (char*)(b)) == 0)
20 # define STRLEN(str) ((str)? strlen((char*)(str)):0)
21
22 # define EXPORT
23 # define CALLBACK
24 # define FAR
25
26 typedef signed short SSHOR;
27 typedef short WORD;
28 typedef long DWORD;
29
30 typedef WORD WPARAM;
31 typedef DWORD LPARAM;
32 typedef void* HWND;
33 typedef int BOOL;
34
35 # endif /* _UNIX_ */
36
37 # if defined(WINDOWS) || defined(WIN32_SYSTEM)
38
39 # include <windows.h>
40 # include <windowsx.h>
41
42 # ifdef _MSVC_
43 # define MEM_ALLOC(size) (fmalloc((size_t)(size)))
44 # define MEM_FREE(ptr) ((ptr)? ffree((PTR)(ptr)):0))
45 # define STRCPY(t, s) (fstrcpy((char FAR*)(t), (char FAR*)(s)))
46 # define STRNCPY(t,s,n) (fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
47 # define STRLEN(str) ((str)? fstrlen((char FAR*)(str)):0)
48 # define STREQ(a, b) (fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
49 # endif
50
51 # ifdef _BORLAND_
52 # define MEM_ALLOC(size) (farmalloc((unsigned long)(size))
53 # define MEM_FREE(ptr) ((ptr)? farfree((void far*)(ptr)):0)
54 # define STRCPY(t, s) (_fstrcpy((char FAR*)(t), (char FAR*)(s)))
55 # define STRNCPY(t,s,n) (_fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
56 # define STRLEN(str) ((str)? _fstrlen((char FAR*)(str)):0)
57 # define STREQ(a, b) (_fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
58 # endif
59
60 # endif /* WINDOWS */
61
62 # if defined(OS2)
63
64 # include <stdlib.h>
65 # include <stdio.h>
66 # include <string.h>
67 # include <memory.h>
68 # define INCL_DOSMODULEMGR /* Module Manager values */
69 # define INCL_DOSERRORS /* Error values */
70 # include <os2.h>
71
72 # ifndef FAR
73 # define FAR
74 # endif
75
76 # define MEM_ALLOC(size) (malloc((size_t)(size)))
77 # define MEM_FREE(ptr) (free((ptr)))
78 # define STRCPY(t, s) (strcpy((char*)(t), (char*)(s)))
79 # define STRNCPY(t,s,n) (strncpy((char*)(t), (char*)(s), (size_t)(n)))
80 # define STRCAT(t, s) (strcat((char*)(t), (char*)(s)))
81 # define STRNCAT(t,s,n) (strncat((char*)(t), (char*)(s), (size_t)(n)))
82 # define STRLEN(str) ((str)? strlen((char*)(str)):0)
83 # define STREQ(a, b) (0 == strcmp((char *)(a), (char *)(b)))
84
85 typedef signed short SSHOR;
86 typedef short WORD;
87 typedef long DWORD;
88
89 typedef WORD WPARAM;
90 typedef DWORD LPARAM;
91
92 # endif /* OS2 */
93
94 # define SYSERR (-1)
95
96 # ifndef NULL
97 # define NULL ((void FAR*)0UL)
98 # endif
99
100 #endif