summaryrefslogtreecommitdiff
path: root/perl.h
diff options
context:
space:
mode:
authorNick Ing-Simmons <nik@tiuk.ti.com>2001-12-14 12:29:41 +0000
committerNick Ing-Simmons <nik@tiuk.ti.com>2001-12-14 12:29:41 +0000
commit39a50e6485766befdfd28c698c2e902cf71e0b6e (patch)
tree3ac40238c135edc48bf8e015c4bbb8831494a284 /perl.h
parent8f620aced70b0a4181340dbac3a04829a2b4c0bc (diff)
parenta58d912c5262ef3032191d4aea207683577527bb (diff)
downloadperl-39a50e6485766befdfd28c698c2e902cf71e0b6e.tar.gz
Integrate mainline
p4raw-id: //depot/perlio@13683
Diffstat (limited to 'perl.h')
-rw-r--r--perl.h109
1 files changed, 67 insertions, 42 deletions
diff --git a/perl.h b/perl.h
index 04df385428..47ebb09713 100644
--- a/perl.h
+++ b/perl.h
@@ -931,11 +931,15 @@ int sockatmark(int);
# define S_IRWXO (S_IROTH|S_IWOTH|S_IXOTH)
#endif
-#ifndef S_IREAD
+/* BeOS 5.0 seems to define S_IREAD and S_IWRITE in <posix/fcntl.h>
+ * which would get included through <sys/file.h >, but that is 3000
+ * lines in the future. --jhi */
+
+#if !defined(S_IREAD) && !defined(__BEOS__)
# define S_IREAD S_IRUSR
#endif
-#ifndef S_IWRITE
+#if !defined(S_IWRITE) && !defined(__BEOS__)
# define S_IWRITE S_IWUSR
#endif
@@ -1749,56 +1753,65 @@ typedef struct clone_params CLONE_PARAMS;
#endif
#if defined(__OPEN_VM)
-# include "vmesa/vmesaish.h"
+# include "vmesa/vmesaish.h"
+# define ISHISH "vmesa"
#endif
#ifdef DOSISH
-# if defined(OS2)
-# include "os2ish.h"
-# else
-# include "dosish.h"
-# endif
-#else
-# if defined(VMS)
+# if defined(OS2)
+# include "os2ish.h"
+# else
+# include "dosish.h"
+# endif
+# define ISHISH "dos"
+#endif
+
+#if defined(VMS)
# include "vmsish.h"
# include "embed.h"
-# else
-# if defined(PLAN9)
-# include "./plan9/plan9ish.h"
-# else
-# if defined(MPE)
-# include "mpeix/mpeixish.h"
-# else
-# if defined(__VOS__)
-# include "vosish.h"
-# else
-# if defined(EPOC)
-# include "epocish.h"
-# else
-# if defined(MACOS_TRADITIONAL)
-# include "macos/macish.h"
-# ifndef NO_ENVIRON_ARRAY
-# define NO_ENVIRON_ARRAY
-# endif
-# else
-# include "unixish.h"
-# endif
-# endif
-# endif
-# endif
+# define ISHISH "vms"
+#endif
+
+#if defined(PLAN9)
+# include "./plan9/plan9ish.h"
+# define ISHISH "plan9"
+#endif
+
+#if defined(MPE)
+# include "mpeix/mpeixish.h"
+# define ISHISH "mpeix"
+#endif
+
+#if defined(__VOS__)
+# include "vosish.h"
+# define ISHISH "vos"
+#endif
+
+#if defined(EPOC)
+# include "epocish.h"
+# define ISHISH "epoc"
+#endif
+
+#if defined(MACOS_TRADITIONAL)
+# include "macos/macish.h"
+# ifndef NO_ENVIRON_ARRAY
+# define NO_ENVIRON_ARRAY
# endif
-# endif
+# define ISHISH "macos classic"
#endif
-#ifndef NO_ENVIRON_ARRAY
-# define USE_ENVIRON_ARRAY
+#if defined(__BEOS__)
+# include "beos/beosish.h"
+# define ISHISH "beos"
+#endif
+
+#ifndef ISHISH
+# include "unixish.h"
+# define ISHISH "unix"
#endif
-#ifdef JPL
- /* E.g. JPL needs to operate on a copy of the real environment.
- * JDK 1.2 and 1.3 seem to get upset if the original environment
- * is diddled with. */
-# define NEED_ENVIRON_DUP_FOR_MODIFY
+#ifndef NO_ENVIRON_ARRAY
+# define USE_ENVIRON_ARRAY
#endif
/*
@@ -3921,6 +3934,18 @@ int flock(int fd, int op);
# define O_TEXT 0
#endif
+#if O_TEXT != O_BINARY
+ /* If you have different O_TEXT and O_BINARY and you are a CLRF shop,
+ * that is, you are somehow DOSish. */
+# if !defined(__BEOS__)
+# define PERLIO_USING_CRLF 1
+# else
+ /* If you have O_TEXT different from your O_BINARY but you still are
+ * not a CRLF shop. */
+# undef PERLIO_USING_CRLF
+# endif
+#endif
+
#ifdef IAMSUID
#ifdef I_SYS_STATVFS