| author | Radek Brich <radek.brich@devl.cz> | 
| Wed, 09 Apr 2008 17:55:29 +0200 | |
| branch | pyrit | 
| changeset 64 | 5785cca4cdb9 | 
| parent 63 | 440e1ae80459 | 
| child 65 | 242839c6d27d | 
| permissions | -rw-r--r-- | 
| 
64
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
1  | 
Help("""
 | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
2  | 
Targets:  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
3  | 
all - build everything,  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
4  | 
|
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
5  | 
libs - build all libraries  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
6  | 
demos - build all demos  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
7  | 
models - download/prepare all models  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
8  | 
docs - compile doxygen documentation  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
9  | 
|
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
10  | 
libs = (static-lib, python-module)  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
11  | 
static-lib - ray tracer library to link with  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
12  | 
python-module - ray tracer module for Python  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
13  | 
|
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
14  | 
demos = (python-demos, cc-demos)  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
15  | 
python-demos - Python demos, this depends on python-module  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
16  | 
cc-demos - C++ demos  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
17  | 
|
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
18  | 
models = (local-models, download-models)  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
19  | 
local-models - prepare local models  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
20  | 
download-models - download models which are not locally available  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
21  | 
|
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
22  | 
no-docs = (libs, demos, models)  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
23  | 
- everything but docs  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
24  | 
no-download = (libs, demos, local-models)  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
25  | 
- everything but docs and downloadable models  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
26  | 
|
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
27  | 
Default target is no-download.  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
28  | 
""")  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
29  | 
|
| 60 | 30  | 
Decider('MD5-timestamp')
 | 
| 
63
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
31  | 
import os  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
32  | 
env = Environment(ENV = {'PATH' : os.environ['PATH']})
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
33  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
34  | 
### GNU C++ Compiler  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
35  | 
#env.Replace(CXX="g++")  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
36  | 
#env.Append(CCFLAGS="-O3 -Wall -pipe -ffast-math -msse3 ")  | 
| 60 | 37  | 
|
| 
63
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
38  | 
### Intel C++ Compiler  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
39  | 
env.Replace(CXX="icpc")  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
40  | 
env.Append(CCFLAGS="-O3 -w1 -mtune=core2 -xT ")  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
41  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
42  | 
### MinGW32  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
43  | 
# PY_CCFLAGS=-I"C:\Program Files\Python25\include"  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
44  | 
# PY_LDFLAGS=-L"C:\Program Files\Python25\libs" -lpython25  | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
45  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
46  | 
# pthread  | 
| 
64
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
47  | 
if env['PLATFORM'] == 'win32':  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
48  | 
env.Append(LINKFLAGS="-lpthreadGC2 ")  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
49  | 
else:  | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
50  | 
env.Append(CCFLAGS="-pthread ")  | 
| 
63
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
51  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
52  | 
# CCFLAGS=-g -fno-strict-aliasing  | 
| 60 | 53  | 
|
54  | 
# float: -fsingle-precision-constant  | 
|
55  | 
# double: -DPYRIT_DOUBLE  | 
|
| 
63
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
56  | 
(lib, pymodule) = SConscript('src/SConscript', build_dir='build/lib', duplicate=0, exports='env')
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
57  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
58  | 
SConscript('ccdemos/SConscript', build_dir='build/ccdemos', duplicate=0, exports='env lib')
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
59  | 
SConscript('demos/SConscript', exports='pymodule')
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
60  | 
env.Alias('demos', ['cc-demos', 'python-demos'])
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
61  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
62  | 
SConscript('models/SConscript')
 | 
| 60 | 63  | 
|
| 
63
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
64  | 
env.Alias('docs', Command('docs/html', [], 'doxygen'))
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
65  | 
env.Clean('docs', ['docs/html', 'docs/latex'])
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
66  | 
|
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
67  | 
env.Alias('no-docs', ['libs', 'demos', 'models'])
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
68  | 
env.Alias('no-download', ['libs', 'demos', 'local-models'])
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
69  | 
|
| 
64
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
70  | 
env.Alias('all', ['no-docs', 'docs'])
 | 
| 
 
5785cca4cdb9
add Help with list of targets to SConstruct
 
Radek Brich <radek.brich@devl.cz> 
parents: 
63 
diff
changeset
 | 
71  | 
|
| 
63
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
72  | 
env.Alias('pyrit', 'no-download')
 | 
| 
 
440e1ae80459
add many SCons targets (see DEVNOTES)
 
Radek Brich <radek.brich@devl.cz> 
parents: 
62 
diff
changeset
 | 
73  | 
Default('pyrit')
 |