1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
/* autoconf cannot fiddle out declarations. Use our homebrewn tools. (jw) */
/*
* Declarations that may cause conflicts belong here so that osdef.sh
* can clean out the forest. Everything else belongs in os_unix.h
*
* How this works:
* - This file contains all unix prototypes that Vim might need.
* - The shell script osdef.sh is executed at compile time to remove all the
* prototypes that are in an include file. This results in osdef.h.
* - osdef.h is included in vim.h.
*
* sed cannot always handle so many commands, this is file 1 of 2
*/
extern int printf(char *, ...);
extern int fprintf(FILE *, char *, ...);
extern int sprintf(char *, char *, ...);
extern int sscanf(char *, char *, ...);
#ifndef fopen /* could be redefined to fopen64() */
extern FILE *fopen(const char *, const char *);
#endif
extern int fclose(FILE *);
extern int fseek(FILE *, long, int);
#ifdef HAVE_FSEEKO
extern int fseeko(FILE *, off_t, int);
#endif
extern long ftell(FILE *);
#ifdef HAVE_FSEEKO
extern off_t ftello(FILE *);
#endif
extern void rewind(FILE *);
extern int fread(char *, int, int, FILE *);
extern int fwrite(char *, int, int, FILE *);
extern int fputs(char *, FILE *);
#ifndef ferror /* let me say it again: "macros should never have prototypes" */
extern int ferror(FILE *);
#endif
extern int fflush(FILE *);
#if defined(sun) || defined(_SEQUENT_)
/* used inside of stdio macros getc(), puts(), putchar()... */
extern int _flsbuf(int, FILE *);
extern int _filbuf(FILE *);
#endif
#if !defined(HAVE_SELECT)
struct pollfd; /* for poll() */
extern int poll(struct pollfd *, long, int);
#endif
#ifdef HAVE_MEMSET
extern void *memset(void *, int, size_t);
#endif
extern int memcmp(const void *, const void *, size_t);
#ifdef HAVE_STRPBRK
extern char *strpbrk(const char *, const char *);
#endif
#ifdef USEBCOPY
extern void bcopy(char *, char *, int);
#else
# ifdef USEMEMCPY
extern void memcpy(char *, char *, int);
# else
# ifdef USEMEMMOVE
extern void memmove(char *, char *, int);
# endif
# endif
#endif
#ifndef __BIONIC__ // Android's libc #defines bzero to memset.
// used inside of FD_ZERO macro
extern void bzero(void *, size_t);
#endif
#ifdef HAVE_SETSID
extern pid_t setsid(void);
#endif
#ifdef HAVE_SETPGID
extern int setpgid(pid_t, pid_t);
#endif
#ifdef HAVE_STRTOL
extern int strtol(char *, char **, int);
#endif
#ifdef HAVE_STRFTIME
extern size_t strftime(char *, size_t, char *, struct tm *);
#endif
#ifdef HAVE_STRCASECMP
extern int strcasecmp(char *, char *);
#endif
#ifdef HAVE_STRNCASECMP
extern int strncasecmp(char *, char *, size_t);
#endif
#ifndef strdup
extern char *strdup(const char *);
#endif
extern int atoi(char *);
extern int atol(char *);
#ifndef USE_SYSTEM
extern int fork(void);
# ifndef __TANDEM
extern int execvp(const char *, const char **);
# endif
extern int wait(int *); /* will this break things ...? */
extern int waitpid(pid_t, int *, int);
#endif
extern int toupper(int);
extern int tolower(int);
extern RETSIGTYPE (*signal(int, RETSIGTYPE (*func) SIGPROTOARG)) SIGPROTOARG;
#ifdef HAVE_SIGSET
extern RETSIGTYPE (*sigset(int, RETSIGTYPE (*func) SIGPROTOARG)) SIGPROTOARG;
#endif
#if defined(HAVE_SETJMP_H)
# ifdef HAVE_SIGSETJMP
extern int sigsetjmp(sigjmp_buf, int);
extern void siglongjmp(sigjmp_buf, int);
# else
extern int setjmp(jmp_buf);
extern void longjmp(jmp_buf, int);
# endif
#endif
extern int kill(int, int);
#ifndef __TANDEM
extern int access(char *, int);
#endif
extern int fsync(int);
extern int fchown(int, int, int);
#if defined(HAVE_GETCWD) && !defined(sun) && !defined(__TANDEM)
extern char *getcwd(char *, int);
#else
extern char *getwd(char *);
#endif
#ifndef __alpha /* suggested by Campbell */
extern int ioctl(int, int, ...);
#endif
extern int chmod(const char *, mode_t);
|