4 * This symbol, if defined, indicates that the ioctl() routine is
5 * available to set I/O characteristics
10 * This symbol, if defined, indicates that the routine utime() is
11 * available to update the access and modification times of files.
13 #define HAS_UTIME /**/
19 # define SIGABRT SIGILL
22 # define SIGILL 6 /* blech */
24 #define ABORT() kill(getpid(),SIGABRT);
27 * fwrite1() should be a routine with the same calling sequence as fwrite(),
28 * but which outputs all of the bytes requested as a single stream (unlike
29 * fwrite() itself, which on some systems outputs several distinct records
30 * if the number_of_items parameter is >1).
32 #define fwrite1 fwrite
34 #define my_getenv(var) getenv(var)
36 /*****************************************************************************/
38 #include <stdlib.h> /* before the following definitions */
39 #include <unistd.h> /* before the following definitions */
42 #define getcwd _getcwd2
44 /* This guy is needed for quick stdstd */
46 #if defined(USE_STDIO_PTR) && defined(STDIO_PTR_LVALUE) && defined(STDIO_CNT_LVALUE)
47 # define _filbuf _fill
48 /* Perl uses ungetc only with successful return */
49 # define ungetc(c,fp) \
50 (FILE_ptr(fp) > FILE_base(fp) && c == (int)*(FILE_ptr(fp) - 1) \
51 ? (--FILE_ptr(fp), ++FILE_cnt(fp), (int)c) : ungetc(c,fp))
54 #define OP_BINARY O_BINARY
56 #define OS2_STAT_HACK 1
59 #define Stat(fname,bufptr) os2_stat((fname),(bufptr))
60 #define Fstat(fd,bufptr) fstat((fd),(bufptr))
64 #define S_IFBLK 0120000
65 #define S_ISBLK(mode) (((mode) & S_IFMT) == S_IFBLK)
69 #define Stat(fname,bufptr) stat((fname),(bufptr))
70 #define Fstat(fd,bufptr) fstat((fd),(bufptr))