diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-12-01 20:33:21 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-12-01 20:33:21 +0400 |
commit | 45de38077131b248eb52ab1863072750252a85e2 (patch) | |
tree | ae04201f8c6600b65974d252075f0dd020423c20 /intern/cycles/SConscript | |
parent | f6f7e270e30946d0bb3ea4d5c556c994125e590f (diff) |
Cycles
* Compile all of cycles with -ffast-math again
* Add scons compilation of cuda binaries, tested on mac/linux.
* Add UI option for supported/experimental features, to make it
more clear what is supported, opencl/subdivision is experimental.
* Remove cycles xml exporter, was just for testing.
Diffstat (limited to 'intern/cycles/SConscript')
-rw-r--r-- | intern/cycles/SConscript | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/intern/cycles/SConscript b/intern/cycles/SConscript index ecd22f654e8..3299faa864a 100644 --- a/intern/cycles/SConscript +++ b/intern/cycles/SConscript @@ -14,6 +14,7 @@ sources.remove(path.join('kernel', 'kernel_optimized.cpp')) incs = [] defs = [] +cxxflags = [] defs.append('CCL_NAMESPACE_BEGIN=namespace ccl {') defs.append('CCL_NAMESPACE_END=}') @@ -22,7 +23,7 @@ defs.append('WITH_OPENCL') defs.append('WITH_MULTI') defs.append('WITH_CUDA') -if env['WITH_BF_CYCLES_BINARIES']: +if env['WITH_BF_CYCLES_CUDA_BINARIES']: defs.append('WITH_CUDA_BINARIES') incs.extend('. bvh render device kernel kernel/osl kernel/svm util subd'.split()) @@ -33,12 +34,17 @@ incs.append(cycles['BF_OIIO_INC']) incs.append(cycles['BF_BOOST_INC']) incs.append(cycles['BF_PYTHON_INC']) +if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'): + cxxflags.append('-D_CRT_SECURE_NO_WARNINGS /fp:fast /EHsc'.split()) +else: + cxxflags.append('-ffast-math'.split()) + # optimized kernel if env['WITH_BF_RAYOPTIMIZATION']: optim_cxxflags = [] if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'): - optim_cxxflags.append('/Ox /Ot /arch:SSE2 -D_CRT_SECURE_NO_WARNINGS /EHsc /fp:fast'.split()) + optim_cxxflags.append('/arch:SSE2 -D_CRT_SECURE_NO_WARNINGS /fp:fast /EHsc'.split()) else: optim_cxxflags.append('-ffast-math -msse -msse2 -msse3'.split()) @@ -48,5 +54,10 @@ if env['WITH_BF_RAYOPTIMIZATION']: cycles_optim = cycles.Clone() cycles_optim.BlenderLib('bf_intern_cycles_optimized', optim_sources, incs, optim_defs, libtype=['intern'], priority=[0], compileflags=[None], cxx_compileflags=optim_cxxflags) -cycles.BlenderLib('bf_intern_cycles', sources, incs, defs, libtype=['intern'], priority=[0], compileflags=[None]) +cycles.BlenderLib('bf_intern_cycles', sources, incs, defs, libtype=['intern'], priority=[0], compileflags=[None], cxx_compileflags=cxxflags) + +# cuda kernel binaries +if env['WITH_BF_CYCLES_CUDA_BINARIES']: + kernel_binaries = SConscript(['kernel/SConscript']) + cycles.Depends("device/device_cuda.o", kernel_binaries) |