diff options
author | Jan Dubois <jand@activestate.com> | 2009-04-27 16:03:38 -0700 |
---|---|---|
committer | H.Merijn Brand <h.m.brand@xs4all.nl> | 2009-04-28 08:09:41 +0200 |
commit | 287a962e687f7bb371dc3759b32ea8df45f0ba62 (patch) | |
tree | 38d15881e118b7cf36f2431fb186bc59a019cc7b /perl.h | |
parent | bb23f8d160852f98fe9c47e54ed245f0a8388664 (diff) | |
download | perl-287a962e687f7bb371dc3759b32ea8df45f0ba62.tar.gz |
Fix -p function and Fcntl::S_IFIFO constant under Microsoft VC compiler
Create S_IFIFO macro as an alias for _S_IFIFO if only the latter is being
defined by the standard headers (e.g. Microsoft Visual C++).
This is necessary to get the C<-p> function working, and also to define
the Fcntl::S_IFIFO constant.
See also http://bugs.activestate.com/show_bug.cgi?id=82665
Cheers,
-Jan
From 6386a37b103723e3c473119b95dd0b8edc59a1ed Mon Sep 17 00:00:00 2001
From: Jan Dubois <jand@activestate.com>
Date: Mon, 27 Apr 2009 15:44:23 -0700
Subject: [PATCH] Create S_IFIFO macro as an alias for _S_IFIFO if only the latter is being
defined by the standard headers (e.g. Microsoft Visual C++).
This is necessary to get the C<-p> function working, and also to define
the Fcntl::S_IFIFO constant.
See also http://bugs.activestate.com/show_bug.cgi?id=82665
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
Diffstat (limited to 'perl.h')
-rw-r--r-- | perl.h | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -1143,6 +1143,13 @@ EXTERN_C int usleep(unsigned int); # include <sys/stat.h> #endif +/* Microsoft VC's sys/stat.h defines all S_Ixxx macros except S_IFIFO. + This definition should ideally go into win32/win32.h, but S_IFIFO is + used later here in perl.h before win32/win32.h is being included. */ +#if !defined(S_IFIFO) && defined(_S_IFIFO) +# define S_IFIFO _S_IFIFO +#endif + /* The stat macros for Amdahl UTS, Unisoft System V/88 (and derivatives like UTekV) are broken, sometimes giving false positives. Undefine them here and let the code below set them to proper values. |