ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/common/platform.h
Revision: 3.9
Committed: Thu Jul 17 09:21:29 2003 UTC (20 years, 9 months ago) by schorsch
Content type: text/plain
Branch: MAIN
Changes since 3.8: +2 -1 lines
Log Message:
Added prototypes and includes from patch by Randolph Fritz.
Added more required includes and reduced other compile warnings.

File Contents

# User Rev Content
1 schorsch 3.9 /* RCSid $Id: platform.h,v 3.8 2003/07/14 22:23:59 schorsch Exp $ */
2 schorsch 3.1 /*
3     * platform.h - header file for platform specific definitions
4     */
5     #ifndef _RAD_PLATFORM_H_
6     #define _RAD_PLATFORM_H_
7    
8     #ifdef _WIN32
9    
10 schorsch 3.7 #include <io.h> /* _setmode() and stuff from unistd.h */
11     typedef long off_t;
12    
13 schorsch 3.5 #include <stdio.h>
14     #define popen _popen
15     #define pclose _pclose
16 schorsch 3.6
17 schorsch 3.7 #include <windows.h>
18     #define sleep(s) Sleep(s*1000)
19    
20 schorsch 3.6 #define NON_POSIX
21    
22     #include <sys/types.h>
23     #include <sys/stat.h>
24     #define RHAS_STAT
25     #define S_IFREG _S_IFREG
26     #define W_IFDIR _S_IFDIR
27    
28 schorsch 3.5 #include <fcntl.h> /* _O_BINARY, _O_TEXT */
29     #include <stdlib.h> /* _fmode */
30     #define SET_DEFAULT_BINARY() _fmode = _O_BINARY
31     #define SET_FILE_BINARY(fp) _setmode(fileno(fp),_O_BINARY)
32     #define SET_FD_BINARY(fd) _setmode(fd,_O_BINARY)
33 schorsch 3.1
34     #else /* _WIN32 */
35    
36 schorsch 3.5 #ifdef AMIGA
37     #define NON_POSIX
38     #else
39     /* assumedly posix systems */
40 schorsch 3.9 #include <unistd.h>
41 schorsch 3.5 #define RHAS_GETPWNAM
42 schorsch 3.6 #define RHAS_STAT
43 schorsch 3.5 #define RHAS_FORK_EXEC
44     #endif
45    
46     /* everybody except Windows */
47    
48     /* NOPs */
49     #define SET_DEFAULT_BINARY()
50     #define SET_FILE_BINARY(fp)
51     #define SET_FD_BINARY(fd)
52 schorsch 3.1
53     #endif /* _WIN32 */
54    
55 schorsch 3.8 #ifdef __cplusplus
56     extern "C" {
57     #endif
58    
59     /* nothing to protect yet */
60 schorsch 3.2
61     #ifdef __cplusplus
62     }
63     #endif
64 schorsch 3.1 #endif /* _RAD_PLATFORM_H_ */
65