2 |
2 |
3 sources = [ |
3 sources = [ |
4 'common.cc', 'raytracer.cc', 'sampler.cc', 'scene.cc', |
4 'common.cc', 'raytracer.cc', 'sampler.cc', 'scene.cc', |
5 'shapes.cc', 'material.cc', 'pixmap.cc', 'serialize.cc', |
5 'shapes.cc', 'material.cc', 'pixmap.cc', 'serialize.cc', |
6 'container.cc', 'kdtree.cc', 'octree.cc'] |
6 'container.cc', 'kdtree.cc', 'octree.cc'] |
|
7 |
|
8 includes = [ |
|
9 'common.h', 'container.h', 'kdtree.h', 'material.h', |
|
10 'matrix.h', 'mempool.h', 'octree.h', 'pixmap.h', |
|
11 'quaternion.h', 'raytracer.h', 'raytracermodule.h', |
|
12 'sampler.h', 'scene.h', 'serialize.h', 'shapes.h', |
|
13 'simd.h', 'vector.h'] |
7 |
14 |
8 if buildmodule: |
15 if buildmodule: |
9 shared_objs = [] |
16 shared_objs = [] |
10 for src in sources: |
17 for src in sources: |
11 shared_objs.append( pyenv.SharedObject(src) ) |
18 shared_objs.append( pyenv.SharedObject(src) ) |
23 LINKFLAGS=linkflags) |
30 LINKFLAGS=linkflags) |
24 if cc == 'msvc': |
31 if cc == 'msvc': |
25 pyenv.AddPostAction(pymodule, 'mt /nologo /manifest ${TARGET}.manifest /outputresource:$TARGET;2') |
32 pyenv.AddPostAction(pymodule, 'mt /nologo /manifest ${TARGET}.manifest /outputresource:$TARGET;2') |
26 env.Alias('shared-objs', shared_objs) |
33 env.Alias('shared-objs', shared_objs) |
27 env.Alias('python-module', pymodule) |
34 env.Alias('python-module', pymodule) |
28 Return('pymodule') |
35 |
|
36 # MS Visual Studio Project |
|
37 vcprojsrcs = [] |
|
38 for src in sources+['raytracermodule.cc']: |
|
39 vcprojsrcs += ['src/' + src] |
|
40 vcprojincs = [] |
|
41 for inc in includes: |
|
42 vcprojincs += ['include/' + inc] |
|
43 vcproj = env.MSVSProject( |
|
44 auto_build_solution=0, |
|
45 target = '#pyrit_module' + env['MSVSPROJECTSUFFIX'], |
|
46 srcs = vcprojsrcs, |
|
47 incs = vcprojincs, |
|
48 buildtarget = 'python-module', |
|
49 variant = 'Release') |
|
50 |
|
51 Return(('pymodule', 'vcproj')) |
29 else: |
52 else: |
30 objs = [] |
53 objs = [] |
31 for src in sources: |
54 for src in sources: |
32 o = env.Object(src) |
55 o = env.Object(src) |
33 objs.append( o ) |
56 objs.append( o ) |