perl 5.003_03: perl.h
[perl.git] / perlio.h
1 #ifndef H_PERLIO
2 #define H_PERLIO 1
3
4 /* Allow -DUSE_STDIO to force the issue for x2p directory */
5 #ifdef USE_STDIO
6 #ifdef PERLIO_IS_STDIO
7 #undef PERLIO_IS_STDIO
8 #endif
9 #define PERLIO_IS_STDIO
10 #else
11 extern void PerlIO_init _((void));
12 #endif
13
14 #include "perlsdio.h"
15
16 #ifndef PERLIO_IS_STDIO
17 #ifdef USE_SFIO
18 #include "perlsfio.h"
19 #endif /* USE_SFIO */
20 #endif /* PERLIO_IS_STDIO */
21
22 #ifndef EOF
23 #define EOF (-1)
24 #endif
25
26 /* This is to catch case with no stdio */
27 #ifndef BUFSIZ
28 #define BUFSIZ 1024
29 #endif
30
31 #ifndef SEEK_SET
32 #define SEEK_SET 0
33 #endif
34
35 #ifndef SEEK_CUR
36 #define SEEK_CUR 1
37 #endif
38
39 #ifndef SEEK_END
40 #define SEEK_END 2
41 #endif
42
43 #ifndef PerlIO
44 struct _PerlIO;
45 #define PerlIO struct _PerlIO
46 #endif /* No PerlIO */
47
48 #ifndef Fpos_t
49 #define Fpos_t long
50 #endif
51
52 #ifndef NEXT30_NO_ATTRIBUTE
53 #ifndef HASATTRIBUTE       /* disable GNU-cc attribute checking? */
54 #ifdef  __attribute__      /* Avoid possible redefinition errors */
55 #undef  __attribute__
56 #endif
57 #define __attribute__(attr)
58 #endif 
59 #endif
60
61 #ifndef PerlIO_stdoutf
62 extern int      PerlIO_stdoutf          _((const char *,...))
63                                         __attribute__((format (printf, 1, 2)));
64 #endif
65 #ifndef PerlIO_puts
66 extern int      PerlIO_puts             _((PerlIO *,const char *));
67 #endif
68 #ifndef PerlIO_open
69 extern PerlIO * PerlIO_open             _((const char *,const char *));
70 #endif
71 #ifndef PerlIO_close
72 extern int      PerlIO_close            _((PerlIO *));
73 #endif
74 #ifndef PerlIO_eof
75 extern int      PerlIO_eof              _((PerlIO *));
76 #endif
77 #ifndef PerlIO_error
78 extern int      PerlIO_error            _((PerlIO *));
79 #endif
80 #ifndef PerlIO_clearerr
81 extern void     PerlIO_clearerr         _((PerlIO *));
82 #endif
83 #ifndef PerlIO_getc
84 extern int      PerlIO_getc             _((PerlIO *));
85 #endif
86 #ifndef PerlIO_putc
87 extern int      PerlIO_putc             _((PerlIO *,int));
88 #endif
89 #ifndef PerlIO_flush
90 extern int      PerlIO_flush            _((PerlIO *));
91 #endif
92 #ifndef PerlIO_ungetc
93 extern int      PerlIO_ungetc           _((PerlIO *,int));
94 #endif
95 #ifndef PerlIO_fileno
96 extern int      PerlIO_fileno           _((PerlIO *));
97 #endif
98 #ifndef PerlIO_fdopen
99 extern PerlIO * PerlIO_fdopen           _((int, const char *));
100 #endif
101 #ifndef PerlIO_importFILE
102 extern PerlIO * PerlIO_importFILE       _((FILE *,int));
103 #endif
104 #ifndef PerlIO_exportFILE
105 extern FILE *   PerlIO_exportFILE       _((PerlIO *,int));
106 #endif
107 #ifndef PerlIO_findFILE
108 extern FILE *   PerlIO_findFILE         _((PerlIO *));
109 #endif
110 #ifndef PerlIO_releaseFILE
111 extern void     PerlIO_releaseFILE      _((PerlIO *,FILE *));
112 #endif
113 #ifndef PerlIO_read
114 extern int      PerlIO_read             _((PerlIO *,void *,size_t)); 
115 #endif
116 #ifndef PerlIO_write
117 extern int      PerlIO_write            _((PerlIO *,const void *,size_t)); 
118 #endif
119 #ifndef PerlIO_setlinebuf
120 extern void     PerlIO_setlinebuf       _((PerlIO *)); 
121 #endif
122 #ifndef PerlIO_printf
123 extern int      PerlIO_printf           _((PerlIO *, const char *,...))
124                                         __attribute__((format (printf, 2, 3))); 
125 #endif
126 #ifndef PerlIO_sprintf
127 extern int      PerlIO_sprintf          _((char *, int, const char *,...))
128                                         __attribute__((format (printf, 3, 4))); 
129 #endif
130 #ifndef PerlIO_vprintf
131 extern int      PerlIO_vprintf          _((PerlIO *, const char *, va_list)); 
132 #endif
133 #ifndef PerlIO_tell
134 extern long     PerlIO_tell             _((PerlIO *));
135 #endif
136 #ifndef PerlIO_seek
137 extern int      PerlIO_seek             _((PerlIO *,off_t,int));
138 #endif
139 #ifndef PerlIO_rewind
140 extern void     PerlIO_rewind           _((PerlIO *));
141 #endif
142 #ifndef PerlIO_has_base
143 extern int      PerlIO_has_base         _((PerlIO *)); 
144 #endif
145 #ifndef PerlIO_has_cntptr
146 extern int      PerlIO_has_cntptr       _((PerlIO *)); 
147 #endif
148 #ifndef PerlIO_fast_gets
149 extern int      PerlIO_fast_gets        _((PerlIO *)); 
150 #endif
151 #ifndef PerlIO_canset_cnt
152 extern int      PerlIO_canset_cnt       _((PerlIO *)); 
153 #endif
154 #ifndef PerlIO_get_ptr
155 extern char *   PerlIO_get_ptr          _((PerlIO *)); 
156 #endif
157 #ifndef PerlIO_get_cnt
158 extern int      PerlIO_get_cnt          _((PerlIO *)); 
159 #endif
160 #ifndef PerlIO_set_cnt
161 extern void     PerlIO_set_cnt          _((PerlIO *,int)); 
162 #endif
163 #ifndef PerlIO_set_ptrcnt
164 extern void     PerlIO_set_ptrcnt       _((PerlIO *,char *,int)); 
165 #endif
166 #ifndef PerlIO_get_base
167 extern char *   PerlIO_get_base         _((PerlIO *)); 
168 #endif
169 #ifndef PerlIO_get_bufsiz
170 extern int      PerlIO_get_bufsiz       _((PerlIO *)); 
171 #endif
172 #ifndef PerlIO_tmpfile
173 extern PerlIO * PerlIO_tmpfile          _((void));
174 #endif
175 #ifndef PerlIO_stdin
176 extern PerlIO * PerlIO_stdin    _((void));
177 #endif
178 #ifndef PerlIO_stdout
179 extern PerlIO * PerlIO_stdout   _((void));
180 #endif
181 #ifndef PerlIO_stderr
182 extern PerlIO * PerlIO_stderr   _((void));
183 #endif
184 #ifndef PerlIO_getpos
185 extern int      PerlIO_getpos           _((PerlIO *,Fpos_t *));
186 #endif
187 #ifndef PerlIO_setpos
188 extern int      PerlIO_setpos           _((PerlIO *,const Fpos_t *));
189 #endif 
190 #endif /* Include guard */
191
192
193