source: trunk/third/perl/dosish.h @ 10724

Revision 10724, 3.2 KB checked in by ghudson, 27 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r10723, which included commits to RCS files with non-trunk default branches.
Line 
1#define ABORT() abort();
2
3#ifndef SH_PATH
4#define SH_PATH "/bin/sh"
5#endif
6
7#ifdef DJGPP
8#  define BIT_BUCKET "nul"
9#  define OP_BINARY O_BINARY
10void Perl_DJGPP_init();
11#  define PERL_SYS_INIT(argcp, argvp) STMT_START {        \
12    Perl_DJGPP_init();    } STMT_END
13#else   /* DJGPP */
14#  ifdef WIN32
15#    define PERL_SYS_INIT(c,v)  Perl_win32_init(c,v)
16#    define BIT_BUCKET "nul"
17#  else
18#    define PERL_SYS_INIT(c,v)
19#    define BIT_BUCKET "\\dev\\nul" /* "wanna be like, umm, Newlined, or somethin?" */
20#  endif
21#endif  /* DJGPP */
22
23#define PERL_SYS_TERM()
24#define dXSUB_SYS
25#define TMPPATH "plXXXXXX"
26
27#ifdef WIN32
28#define HAS_UTIME
29#define HAS_KILL
30#endif
31
32/*
33 * 5.003_07 and earlier keyed on #ifdef MSDOS for determining if we were
34 * running on DOS, *and* if we had to cope with 16 bit memory addressing
35 * constraints, *and* we need to have memory allocated as unsigned long.
36 *
37 * with the advent of *real* compilers for DOS, they are not locked together.
38 * MSDOS means "I am running on MSDOS". HAS_64K_LIMIT means "I have
39 * 16 bit memory addressing constraints".
40 *
41 * if you need the last, try #DEFINE MEM_SIZE unsigned long.
42 */
43#ifdef MSDOS
44 #ifndef DJGPP
45  #define HAS_64K_LIMIT
46 #endif
47#endif
48
49/* USEMYBINMODE
50 *      This symbol, if defined, indicates that the program should
51 *      use the routine my_binmode(FILE *fp, char iotype) to insure
52 *      that a file is in "binary" mode -- that is, that no translation
53 *      of bytes occurs on read or write operations.
54 */
55#undef USEMYBINMODE
56
57/* USE_STAT_RDEV:
58 *      This symbol is defined if this system has a stat structure declaring
59 *      st_rdev
60 */
61#define USE_STAT_RDEV   /**/
62
63/* ACME_MESS:
64 *      This symbol, if defined, indicates that error messages should be
65 *      should be generated in a format that allows the use of the Acme
66 *      GUI/editor's autofind feature.
67 */
68#undef ACME_MESS        /**/
69
70/* ALTERNATE_SHEBANG:
71 *      This symbol, if defined, contains a "magic" string which may be used
72 *      as the first line of a Perl program designed to be executed directly
73 *      by name, instead of the standard Unix #!.  If ALTERNATE_SHEBANG
74 *      begins with a character other then #, then Perl will only treat
75 *      it as a command line if if finds the string "perl" in the first
76 *      word; otherwise it's treated as the first line of code in the script.
77 *      (IOW, Perl won't hand off to another interpreter via an alternate
78 *      shebang sequence that might be legal Perl code.)
79 */
80/* #define ALTERNATE_SHEBANG "#!" / **/
81
82/*
83 * fwrite1() should be a routine with the same calling sequence as fwrite(),
84 * but which outputs all of the bytes requested as a single stream (unlike
85 * fwrite() itself, which on some systems outputs several distinct records
86 * if the number_of_items parameter is >1).
87 */
88#define fwrite1 fwrite
89
90#define Fstat(fd,bufptr)   fstat((fd),(bufptr))
91#define Fflush(fp)         fflush(fp)
92#define Mkdir(path,mode)   mkdir((path),(mode))
93
94#ifndef WIN32
95#  define Stat(fname,bufptr) stat((fname),(bufptr))
96#else
97#  define Stat(fname,bufptr) win32_stat((fname),(bufptr))
98#  define my_getenv(var)  getenv(var)
99/*
100 * the following are standard library calls (stdio in particular)
101 * that is being redirected to the perl DLL. This is needed for
102 * Dynaloading any modules that called stdio functions
103 */
104#  include <win32iop.h>
105#endif  /* WIN32 */
Note: See TracBrowser for help on using the repository browser.