ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/platform/README
Revision: 1.1
Committed: Tue Dec 23 15:03:59 2008 UTC (15 years, 4 months ago) by schorsch
Branch: MAIN
Log Message:
SCons now uses installed libtiff, if a compatible one is available. Added platform/README to explain config files.

File Contents

# User Rev Content
1 schorsch 1.1 Platform configuration files for SCons based build procedure.
2    
3    
4     <platform>.cfg
5     --------------
6    
7     The <platform>.cfg files in this directory are use to determine
8     the right settings, libraries, source files etc. on the platform
9     where you are building Radiance. The build system will select the
10     right file automatically.
11    
12     If your platform isn't supported yet, then you can create a new
13     file with an appropriat name (SCons will tell you what it
14     expects). Usually, you will start by copying the file of the most
15     similar suupported platform.
16    
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    
21     <platform>_custom.cfg
22     ---------------------
23    
24     If you want to experiment with changes to the shipped file, then
25     you can create a copy named <platform>_custom.cfg, and make your
26     changes there. If such a file exists, then it will be used in
27     place of the original.
28    
29    
30     Contents and format
31     -------------------
32    
33     Any text starting with a hash character (#) until the end of the
34     line is ignored as a comment.
35    
36     A config file consists of several sections, each of which is
37     introduced by a keyword in brackets.
38     Within each section, a configuration directive starts with a
39     keyword and a colon, followed by the specific instructions.
40    
41    
42     Sections
43     --------
44    
45     [install] # directories where to install the software
46     [build] # compile and link instruction for production builds
47     [debug] # compile and link instruction for debug builds
48     [code] # code compatibility configuration
49    
50    
51     Install section
52     ---------------
53    
54     # The root directory of the Radiance installation
55     RAD_BASEDIR: /home/gm/src/rad/r6b
56    
57     # The following are relative to RAD_BASEDIR!
58     # The directory for executables
59     RAD_BINDIR: bin
60     # The directory for support files (.cal, .pic, .fnt, etc.)
61     RAD_RLIBDIR: share/lib
62     # The directory for the manual files
63     RAD_MANDIR: share/man
64    
65    
66     Debug and Build sections
67     ------------------------
68    
69     # The same keywords can be used in both, but usually their
70     # assigned values will vary.
71    
72     # The compiler to use (example: Gnu gcc)
73     CC: gcc
74    
75     # The directories for C header files (not normally needed).
76     CPPPATH:
77    
78     # Symbols to define for the preprocessor (example for Cygwin)
79     CPPDEFINES: freebsd HDSUF=.exe
80    
81     # Flags for the C preprocessor (example
82     CPPFLAGS: -O2 -Wall -Wno-uninitialized
83    
84     # Flags for the C compiler (example for debug build)
85     CCFLAGS: -pg
86    
87     # The directories for required libraris (not normally needed)
88     LIBPATH:
89    
90     # Flags for the linker (example for debug build on Windows)
91     LINKFLAGS: /debug
92    
93     # Flags specific to ezxml.c (example for cygwin/mingw)
94     EZXML_CPPDEFINES: EZXML_NOMMAP
95    
96     # Where to find an installed libtiff and its include files
97     # (Not needed when on a standard search path)
98     # If no libtiff is found here or on the standard paths, then
99     # Radiance will build its own.
100     TIFFLIB:
101     TIFFINCLUDE:
102    
103    
104     The Code section
105     ----------------
106    
107     # There should be no need to edit this section in existing
108     # config files. If you create a new file for a yet untested
109     # platform, you may need to ask on the dev-list what might
110     # work best.
111    
112     RAD_COMPAT: # theoretically obsolete (src/common/strcmp.c)
113     RAD_MATHCOMPAT: # erf.c floating point error function
114     RAD_ARGSCOMPAT: # fixargv0.c for Windows
115     RAD_NETCOMPAT: # [win_]netproc.c for ranimate
116     RAD_MLIB: # usually 'm', or any fastlib available
117     RAD_SOCKETLIB: # ws_2_32 on Windows (VC links it automatically)
118     RAD_PROCESS: # our process abstraction and win_popen()
119     RAD_PCALLS: # more custom process abstraction
120