X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=unixish.h;h=1168d297b6f41306fdf176f30af1bcbd7e5927d1;hb=be341bcebb03d2f97192fb78a6a1bc33c7bca5ce;hp=e8ff11a1072eca101d71694f14ffb339545a3bf1;hpb=44a8e56aa037ed0f03f0506f6f85f5ed290c78e1;p=p5sagit%2Fp5-mst-13.2.git diff --git a/unixish.h b/unixish.h index e8ff11a..1168d29 100644 --- a/unixish.h +++ b/unixish.h @@ -18,16 +18,16 @@ #define HAS_UTIME / **/ /* HAS_GROUP - * This symbol, if defined, indicates that the getgrnam(), - * getgrgid(), and getgrent() routines are available to - * get group entries. + * This symbol, if defined, indicates that the getgrnam() and + * getgrgid() routines are available to get group entries. + * The getgrent() has a separate definition, HAS_GETGRENT. */ #define HAS_GROUP / **/ /* HAS_PASSWD - * This symbol, if defined, indicates that the getpwnam(), - * getpwuid(), and getpwent() routines are available to - * get password entries. + * This symbol, if defined, indicates that the getpwnam() and + * getpwuid() routines are available to get password entries. + * The getpwent() has a separate definition, HAS_GETPWENT. */ #define HAS_PASSWD / **/ @@ -42,6 +42,14 @@ */ #undef USEMYBINMODE +/* Stat_t: + * This symbol holds the type used to declare buffers for information + * returned by stat(). It's usually just struct stat. It may be necessary + * to include and to get any typedef'ed + * information. + */ +#define Stat_t struct stat + /* USE_STAT_RDEV: * This symbol is defined if this system has a stat structure declaring * st_rdev @@ -81,7 +89,7 @@ */ /* #define ALTERNATE_SHEBANG "#!" / **/ -#if !defined(NSIG) || defined(M_UNIX) || defined(M_XENIX) +#if !defined(NSIG) || defined(M_UNIX) || defined(M_XENIX) || defined(__NetBSD__) # include #endif @@ -91,12 +99,7 @@ #ifndef SIGILL # define SIGILL 6 /* blech */ #endif -#define ABORT() kill(getpid(),SIGABRT); - -#define BIT_BUCKET "/dev/null" -#define PERL_SYS_INIT(c,v) -#define PERL_SYS_TERM() -#define dXSUB_SYS int dummy +#define ABORT() kill(PerlProc_getpid(),SIGABRT); /* * fwrite1() should be a routine with the same calling sequence as fwrite(), @@ -109,6 +112,32 @@ #define Stat(fname,bufptr) stat((fname),(bufptr)) #define Fstat(fd,bufptr) fstat((fd),(bufptr)) #define Fflush(fp) fflush(fp) +#define Mkdir(path,mode) mkdir((path),(mode)) + +/* these should be set in a hint file, not here */ +#ifndef PERL_SYS_INIT +#if defined(PERL_SCO5) || defined(__FreeBSD__) +# ifdef __FreeBSD__ +# include +# endif +# define PERL_SYS_INIT(c,v) fpsetmask(0); MALLOC_INIT +#else +# ifdef POSIX_BC +# define PERL_SYS_INIT(c,v) sigignore(SIGFPE); MALLOC_INIT +# else +# ifdef __CYGWIN__ +# define PERL_SYS_INIT(c,v) Perl_my_setenv_init(&environ); MALLOC_INIT +# else +# define PERL_SYS_INIT(c,v) MALLOC_INIT +# endif +# endif +#endif +#endif + +#ifndef PERL_SYS_TERM +#define PERL_SYS_TERM() OP_REFCNT_TERM; MALLOC_TERM +#endif -#define my_getenv(var) getenv(var) +#define BIT_BUCKET "/dev/null" +#define dXSUB_SYS