1
2
3
4
5
6
7
8
9
10
11 #ifndef MC_UNIXCOMPAT_H
12 #define MC_UNIXCOMPAT_H
13
14 #include <fcntl.h>
15 #include <signal.h>
16 #include <unistd.h>
17
18 #include <sys/types.h>
19
20 #ifdef MAJOR_IN_MKDEV
21 #include <sys/mkdev.h>
22 #elif defined MAJOR_IN_SYSMACROS
23 #include <sys/sysmacros.h>
24 #endif
25
26 #if defined(HAVE_STRING_H)
27 #include <string.h>
28
29 #elif defined(HAVE_MEMORY_H)
30 #include <memory.h>
31 #else
32 #include <strings.h>
33
34 #endif
35
36 #if defined(__QNX__) && !defined(__QNXNTO__)
37
38 #include <unix.h>
39 #endif
40
41
42
43 #ifndef major
44 #warning major() is undefined. Device numbers will not be shown correctly.
45 #define major(devnum) (((devnum) >> 8) & 0xff)
46 #endif
47
48 #ifndef minor
49 #warning minor() is undefined. Device numbers will not be shown correctly.
50 #define minor(devnum) (((devnum) & 0xff))
51 #endif
52
53 #ifndef makedev
54 #warning makedev() is undefined. Device numbers will not be shown correctly.
55 #define makedev(major, minor) ((((major) & 0xff) << 8) | ((minor) & 0xff))
56 #endif
57
58 #ifndef STDIN_FILENO
59 #define STDIN_FILENO 0
60 #endif
61
62 #ifndef STDOUT_FILENO
63 #define STDOUT_FILENO 1
64 #endif
65
66 #ifndef STDERR_FILENO
67 #define STDERR_FILENO 2
68 #endif
69
70 #ifndef HAVE_STRUCT_DIRENT_D_TYPE
71 #define DT_UNKNOWN 0
72 #define DT_DIR 101
73 #define DT_LNK 102
74 #endif
75
76
77 #if !defined O_BINARY && defined _O_BINARY
78
79 #define O_BINARY _O_BINARY
80 #endif
81 #ifdef __BEOS__
82
83 #undef O_BINARY
84 #endif
85
86 #ifndef O_BINARY
87 #define O_BINARY 0
88 #endif
89
90
91 #ifndef O_NONBLOCK
92 #ifdef O_NDELAY
93 #define O_NONBLOCK O_NDELAY
94 #else
95 #define O_NONBLOCK FNDELAY
96 #endif
97 #endif
98
99
100 #ifndef PRIXMAX
101 #define PRIXMAX PRIxMAX
102 #endif
103
104
105 #ifdef ESC_CHAR
106 #undef ESC_CHAR
107 #endif
108
109 #define ESC_CHAR '\033'
110 #define ESC_STR "\033"
111
112
113 #define PATH_SEP '/'
114 #define PATH_SEP_STR "/"
115 #define IS_PATH_SEP(c) ((c) == PATH_SEP)
116 #define PATH_ENV_SEP ':'
117 #define TMPDIR_DEFAULT "/tmp"
118 #define SCRIPT_SUFFIX ""
119 #define get_default_editor() "vi"
120 #define OS_SORT_CASE_SENSITIVE_DEFAULT TRUE
121
122
123
124
125
126
127
128
129
130
131
132 #endif