1#ifndef PORT_H
2#define PORT_H
3
4#include <stdio.h>
5
6#if defined (WIN32) || defined (OS2)
7#define NON_UNIX
8#endif
9
10
11#define USE_SA_SIGACTION
12
13
14
15#if 0
16#define false 0
17#define true 1
18#endif
19
20#ifdef OS2
21#define NO_SNPRINTF
22typedef enum
23{
24  false = 0,
25  true = 1
26} bool;
27
28#define INCL_DOSQUEUES
29#include <os2.h>
30
31#define rmdir(XX) { DosDeleteDir(XX); }
32#define chdir(XX) DosSetCurrentDir(XX)
33#define file_close(XX) { DosClose(XX); }
34#define make_directory(XX) DosCreateDir(XX, NULL)
35typedef HFILE FILE_TYPE;
36#define pipe(XX) DosCreatePipe(&XX[0], &XX[1], 8 * 1024)
37#define sleep(XX) DosSleep((XX) * 1000)
38#define exit(XX) DosExit(EXIT_THREAD, XX)
39#else
40#define file_close(XX) { ::close(XX); }
41#define make_directory(XX) mkdir(XX, S_IRWXU)
42typedef int FILE_TYPE;
43#endif
44typedef FILE_TYPE *PFILE_TYPE;
45//typedef FILE *PFILE;
46
47#endif
48
49#ifdef NO_SNPRINTF
50#define snprintf sprintf
51#endif
52
53#define EXIT_CTRL_C 5
54