Commit | Line | Data |
---|---|---|
c911543b | 1 | /* Fake unistd.h: config.h already provides most of the relevant things. */ |
ab5796a9 | 2 | |
0f7bb05d EZ |
3 | #ifndef _UNISTD_H |
4 | #define _UNISTD_H | |
5 | ||
1088b922 PE |
6 | /* On Microsoft platforms, <stdlib.h> declares 'environ'; on POSIX |
7 | platforms, <unistd.h> does. Every file in Emacs that includes | |
8 | <unistd.h> also includes <stdlib.h>, so there's no need to declare | |
9 | 'environ' here. */ | |
10 | ||
8e2417bf JB |
11 | /* Provide prototypes of library functions that are emulated on w32 |
12 | and whose prototypes are usually found in unistd.h on POSIX | |
4f3f021d | 13 | platforms. */ |
0f7bb05d EZ |
14 | extern ssize_t readlink (const char *, char *, size_t); |
15 | extern int symlink (char const *, char const *); | |
7e8b50d9 EZ |
16 | extern int setpgid (pid_t, pid_t); |
17 | extern pid_t getpgrp (void); | |
4f3f021d EZ |
18 | extern pid_t setsid (void); |
19 | extern pid_t tcgetpgrp (int); | |
0f7bb05d | 20 | |
14f20728 EZ |
21 | extern int faccessat (int, char const *, int, int); |
22 | ||
23 | /* These are normally on fcntl.h, but we don't override that header. */ | |
24 | /* Use values compatible with gnulib, as there's no reason to differ. */ | |
25 | #define AT_FDCWD (-3041965) | |
26 | #define AT_EACCESS 4 | |
27 | #define AT_SYMLINK_NOFOLLOW 4096 | |
28 | ||
49cdacda | 29 | #define O_NOCTTY 0 |
49cdacda | 30 | |
0f7bb05d | 31 | #endif /* _UNISTD_H */ |