ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/platform/README
Revision: 1.2
Committed: Fri Dec 26 17:00:32 2008 UTC (15 years, 4 months ago) by schorsch
Branch: MAIN
CVS Tags: rad4R2P2, rad5R0, rad4R2, rad4R1, rad4R0, rad4R2P1
Changes since 1.1: +39 -18 lines
Log Message:
Invoke test suite from SCons and installation instructions.

File Contents

# User Rev Content
1 schorsch 1.2 Platform configuration files for the SCons based build system
2     -------------------------------------------------------------
3 schorsch 1.1
4     <platform>.cfg
5     --------------
6    
7 schorsch 1.2 The <platform>.cfg files in this directory are used to determine
8 schorsch 1.1 the right settings, libraries, source files etc. on the platform
9     where you are building Radiance. The build system will select the
10 schorsch 1.2 appropriate file automatically.
11 schorsch 1.1
12     If your platform isn't supported yet, then you can create a new
13 schorsch 1.2 file with an appropriat name (SCons should tell you what it
14 schorsch 1.1 expects). Usually, you will start by copying the file of the most
15 schorsch 1.2 similar suupported platform, and then make the necessary changes.
16 schorsch 1.1
17     On unix based platforms without a specific config file, the file
18     "posix.cfg" will be used (which may or may not work well enough).
19    
20 schorsch 1.2 As of this writing, the following platforms are included
21     (although not all of them have been tested very recently):
22    
23     * linux.cfg Linux
24     * freebsd.cfg FreeBSD unix
25     * darwin.cfg Macintosh OS-X
26     * sunos.cfg Sun Microsysems Solaris Unix
27     * irix.cfg sgi IRIX Unix release 5.x or later
28     * irix4.cfg sgi IRIX Unix release 4.x (obsolete)
29     * irix3.cfg sgi IRIX Unix release 3.x (obsolete)
30     * hpux.cfg Hewlett Packard HP-Unix
31     * aix.cfg IBM AIX Unix
32     * posix.cfg default for unknown Unix systems
33     * win32.cfg MS Windows (Visual C compilers)
34     * cygwin.cfg Cygwin on MS Windows http://www.cygwin.com/
35     * mingw.cfg MingW on MS Windows http://www.mingw.org/
36    
37 schorsch 1.1
38     <platform>_custom.cfg
39     ---------------------
40    
41     If you want to experiment with changes to the shipped file, then
42     you can create a copy named <platform>_custom.cfg, and make your
43     changes there. If such a file exists, then it will be used in
44     place of the original.
45    
46    
47     Contents and format
48     -------------------
49    
50     Any text starting with a hash character (#) until the end of the
51     line is ignored as a comment.
52    
53     A config file consists of several sections, each of which is
54     introduced by a keyword in brackets.
55     Within each section, a configuration directive starts with a
56 schorsch 1.2 keyword and a colon, followed by the data assigned to that keyword.
57 schorsch 1.1
58    
59     Sections
60     --------
61    
62     [install] # directories where to install the software
63 schorsch 1.2 [build] # compile and link instructions for production builds
64     [debug] # compile and link instructions for debug builds
65 schorsch 1.1 [code] # code compatibility configuration
66    
67    
68     Install section
69     ---------------
70    
71     # The root directory of the Radiance installation
72 schorsch 1.2 RAD_BASEDIR: /opt/radiance3.6
73 schorsch 1.1
74     # The following are relative to RAD_BASEDIR!
75     # The directory for executables
76     RAD_BINDIR: bin
77 schorsch 1.2
78 schorsch 1.1 # The directory for support files (.cal, .pic, .fnt, etc.)
79     RAD_RLIBDIR: share/lib
80 schorsch 1.2
81     # The directory for the man pages
82 schorsch 1.1 RAD_MANDIR: share/man
83    
84    
85     Debug and Build sections
86     ------------------------
87    
88 schorsch 1.2 # The same keywords can (and usually will) be used in both, but
89     # their assigned values will often differ.
90 schorsch 1.1
91     # The compiler to use (example: Gnu gcc)
92     CC: gcc
93    
94 schorsch 1.2 # The directories for system header files (not normally needed).
95 schorsch 1.1 CPPPATH:
96    
97     # Symbols to define for the preprocessor (example for Cygwin)
98     CPPDEFINES: freebsd HDSUF=.exe
99    
100     # Flags for the C preprocessor (example
101     CPPFLAGS: -O2 -Wall -Wno-uninitialized
102    
103 schorsch 1.2 # Flags for the C compiler (example for debug build with gcc)
104 schorsch 1.1 CCFLAGS: -pg
105    
106 schorsch 1.2 # The directories for system libraries (not normally needed)
107 schorsch 1.1 LIBPATH:
108    
109     # Flags for the linker (example for debug build on Windows)
110     LINKFLAGS: /debug
111    
112     # Flags specific to ezxml.c (example for cygwin/mingw)
113     EZXML_CPPDEFINES: EZXML_NOMMAP
114    
115     # Where to find an installed libtiff and its include files
116     # (Not needed when on a standard search path)
117     # If no libtiff is found here or on the standard paths, then
118     # Radiance will build its own.
119     TIFFLIB:
120     TIFFINCLUDE:
121    
122    
123     The Code section
124     ----------------
125    
126     # There should be no need to edit this section in existing
127     # config files. If you create a new file for a yet untested
128 schorsch 1.2 # platform, you may need to ask on the dev-list what will
129     # work here.
130 schorsch 1.1
131     RAD_COMPAT: # theoretically obsolete (src/common/strcmp.c)
132     RAD_MATHCOMPAT: # erf.c floating point error function
133     RAD_ARGSCOMPAT: # fixargv0.c for Windows
134     RAD_NETCOMPAT: # [win_]netproc.c for ranimate
135     RAD_MLIB: # usually 'm', or any fastlib available
136     RAD_SOCKETLIB: # ws_2_32 on Windows (VC links it automatically)
137     RAD_PROCESS: # our process abstraction and win_popen()
138     RAD_PCALLS: # more custom process abstraction
139    
140 schorsch 1.2
141