[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42618] branches/bmesh/blender: svn merge ^/trunk/blender -r42586:42617
Campbell Barton
ideasman42 at gmail.com
Wed Dec 14 01:30:46 CET 2011
Revision: 42618
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42618
Author: campbellbarton
Date: 2011-12-14 00:30:31 +0000 (Wed, 14 Dec 2011)
Log Message:
-----------
svn merge ^/trunk/blender -r42586:42617
Revision Links:
--------------
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42586
Modified Paths:
--------------
branches/bmesh/blender/SConstruct
branches/bmesh/blender/build_files/buildbot/config/user-config-i686.py
branches/bmesh/blender/build_files/buildbot/config/user-config-player-x86_64.py
branches/bmesh/blender/build_files/buildbot/config/user-config-x86_64.py
branches/bmesh/blender/build_files/scons/config/darwin-config.py
branches/bmesh/blender/intern/audaspace/jack/AUD_JackDevice.h
branches/bmesh/blender/intern/cycles/blender/blender_sync.cpp
branches/bmesh/blender/intern/cycles/device/device.h
branches/bmesh/blender/intern/cycles/device/device_cuda.cpp
branches/bmesh/blender/intern/cycles/device/device_multi.cpp
branches/bmesh/blender/intern/cycles/device/device_opencl.cpp
branches/bmesh/blender/intern/cycles/render/session.cpp
branches/bmesh/blender/intern/cycles/render/session.h
branches/bmesh/blender/intern/cycles/util/util_transform.h
branches/bmesh/blender/release/datafiles/splash.png
branches/bmesh/blender/source/blender/blenkernel/BKE_blender.h
branches/bmesh/blender/source/blender/blenkernel/BKE_tracking.h
branches/bmesh/blender/source/blender/blenkernel/intern/tracking.c
branches/bmesh/blender/source/blender/editors/datafiles/splash.png.c
branches/bmesh/blender/source/blender/editors/space_clip/clip_ops.c
branches/bmesh/blender/source/blender/editors/space_clip/tracking_ops.c
branches/bmesh/blender/source/blender/makesrna/intern/rna_fcurve.c
branches/bmesh/blender/source/blender/python/mathutils/mathutils_noise.c
branches/bmesh/blender/source/blender/windowmanager/intern/wm_operators.c
Property Changed:
----------------
branches/bmesh/blender/
branches/bmesh/blender/release/
Property changes on: branches/bmesh/blender
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/soc-2011-cucumber:37517
/branches/soc-2011-tomato:42376,42378-42379,42397,42400
/trunk/blender:39992-42586
+ /branches/soc-2011-cucumber:37517
/branches/soc-2011-tomato:42376,42378-42379,42397,42400
/trunk/blender:39992-42617
Modified: branches/bmesh/blender/SConstruct
===================================================================
--- branches/bmesh/blender/SConstruct 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/SConstruct 2011-12-14 00:30:31 UTC (rev 42618)
@@ -272,7 +272,7 @@
if k not in B.arguments:
env[k] = v
-# Extended OSX_SDK and 3D_CONNEXION_CLIENT_LIBRARY detection for OSX
+# Extended OSX_SDK and 3D_CONNEXION_CLIENT_LIBRARY and JAckOSX detection for OSX
if env['OURPLATFORM']=='darwin':
print B.bc.OKGREEN + "Detected Xcode version: -- " + B.bc.ENDC + env['XCODE_CUR_VER'][:9] + " --"
print "Available " + env['MACOSX_SDK_CHECK']
@@ -291,6 +291,16 @@
else:
env.Append(LINKFLAGS=['-Xlinker','-weak_framework','-Xlinker','3DconnexionClient'])
+ # for now, Mac builders must download and install the JackOSX framework
+ # necessary header file lives here when installed:
+ # /Library/Frameworks/Jackmp.framework/Versions/A/Headers/jack.h
+ if env['WITH_BF_JACK'] == 1:
+ if not os.path.exists('/Library/Frameworks/Jackmp.framework'):
+ print "JackOSX install not found, disabling WITH_BF_JACK" # avoid build errors !
+ env['WITH_BF_JACK'] = 0
+ else:
+ env.Append(LINKFLAGS=['-Xlinker','-weak_framework','-Xlinker','Jackmp'])
+
if env['WITH_BF_OPENMP'] == 1:
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
env['CCFLAGS'].append('/openmp')
Modified: branches/bmesh/blender/build_files/buildbot/config/user-config-i686.py
===================================================================
--- branches/bmesh/blender/build_files/buildbot/config/user-config-i686.py 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/build_files/buildbot/config/user-config-i686.py 2011-12-14 00:30:31 UTC (rev 42618)
@@ -96,6 +96,7 @@
# Cycles
WITH_BF_CYCLES = True
+WITH_BF_CYCLES_CUDA_BINARIES = True
WITH_BF_OIIO = True
WITH_BF_STATICOIIO = True
Modified: branches/bmesh/blender/build_files/buildbot/config/user-config-player-x86_64.py
===================================================================
--- branches/bmesh/blender/build_files/buildbot/config/user-config-player-x86_64.py 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/build_files/buildbot/config/user-config-player-x86_64.py 2011-12-14 00:30:31 UTC (rev 42618)
@@ -95,5 +95,5 @@
# Compilation and optimization
BF_DEBUG = False
-REL_CCFLAGS = ['-O2'] # C & C++
+REL_CCFLAGS = ['-O2', '-msse', '-msse2'] # C & C++
PLATFORM_LINKFLAGS = ['-L/home/sources/staticlibs/lib64']
Modified: branches/bmesh/blender/build_files/buildbot/config/user-config-x86_64.py
===================================================================
--- branches/bmesh/blender/build_files/buildbot/config/user-config-x86_64.py 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/build_files/buildbot/config/user-config-x86_64.py 2011-12-14 00:30:31 UTC (rev 42618)
@@ -96,6 +96,7 @@
# Cycles
WITH_BF_CYCLES = True
+WITH_BF_CYCLES_CUDA_BINARIES = True
WITH_BF_OIIO = True
WITH_BF_STATICOIIO = True
@@ -116,5 +117,5 @@
# Compilation and optimization
BF_DEBUG = False
-REL_CCFLAGS = ['-O2'] # C & C++
+REL_CCFLAGS = ['-O2', '-msse', '-msse2'] # C & C++
PLATFORM_LINKFLAGS = ['-L/home/sources/staticlibs/lib64']
Modified: branches/bmesh/blender/build_files/scons/config/darwin-config.py
===================================================================
--- branches/bmesh/blender/build_files/scons/config/darwin-config.py 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/build_files/scons/config/darwin-config.py 2011-12-14 00:30:31 UTC (rev 42618)
@@ -148,12 +148,12 @@
WITH_BF_STATICCXX = False
BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
-# TODO - set proper paths here (add precompiled to lib/ ? )
-WITH_BF_JACK = False
-BF_JACK = '/usr'
-BF_JACK_INC = '${BF_JACK}/include/jack'
+# we use simply jack framework
+WITH_BF_JACK = True
+BF_JACK = '/Library/Frameworks/Jackmp.framework'
+BF_JACK_INC = '${BF_JACK}/headers'
BF_JACK_LIB = 'jack'
-BF_JACK_LIBPATH = '${BF_JACK}/lib'
+BF_JACK_LIBPATH = '${BF_JACK}'
WITH_BF_SNDFILE = True
BF_SNDFILE = LIBDIR + '/sndfile'
Modified: branches/bmesh/blender/intern/audaspace/jack/AUD_JackDevice.h
===================================================================
--- branches/bmesh/blender/intern/audaspace/jack/AUD_JackDevice.h 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/audaspace/jack/AUD_JackDevice.h 2011-12-14 00:30:31 UTC (rev 42618)
@@ -36,6 +36,10 @@
#include <string>
+#if defined(__APPLE__) // always first include for jack weaklinking !
+#include <weakjack.h>
+#endif
+
#include <jack.h>
#include <ringbuffer.h>
Modified: branches/bmesh/blender/intern/cycles/blender/blender_sync.cpp
===================================================================
--- branches/bmesh/blender/intern/cycles/blender/blender_sync.cpp 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/cycles/blender/blender_sync.cpp 2011-12-14 00:30:31 UTC (rev 42618)
@@ -257,7 +257,7 @@
PointerRNA cscene = RNA_pointer_get(&b_scene.ptr, "cycles");
/* feature set */
- bool experimental = (RNA_enum_get(&cscene, "feature_set") != 0);
+ params.experimental = (RNA_enum_get(&cscene, "feature_set") != 0);
/* device type */
params.device_type = DEVICE_CPU;
@@ -266,14 +266,14 @@
vector<DeviceType> types = Device::available_types();
DeviceType dtype;
- if(!experimental || RNA_enum_get(&cscene, "gpu_type") == 0)
+ if(!params.experimental || RNA_enum_get(&cscene, "gpu_type") == 0)
dtype = DEVICE_CUDA;
else
dtype = DEVICE_OPENCL;
if(device_type_available(types, dtype))
params.device_type = dtype;
- else if(experimental && device_type_available(types, DEVICE_OPENCL))
+ else if(params.experimental && device_type_available(types, DEVICE_OPENCL))
params.device_type = DEVICE_OPENCL;
else if(device_type_available(types, DEVICE_CUDA))
params.device_type = DEVICE_CUDA;
Modified: branches/bmesh/blender/intern/cycles/device/device.h
===================================================================
--- branches/bmesh/blender/intern/cycles/device/device.h 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/cycles/device/device.h 2011-12-14 00:30:31 UTC (rev 42618)
@@ -112,7 +112,7 @@
virtual void *osl_memory() { return NULL; }
/* load/compile kernels, must be called before adding tasks */
- virtual bool load_kernels() { return true; }
+ virtual bool load_kernels(bool experimental) { return true; }
/* tasks */
virtual void task_add(DeviceTask& task) = 0;
Modified: branches/bmesh/blender/intern/cycles/device/device_cuda.cpp
===================================================================
--- branches/bmesh/blender/intern/cycles/device/device_cuda.cpp 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/cycles/device/device_cuda.cpp 2011-12-14 00:30:31 UTC (rev 42618)
@@ -214,6 +214,21 @@
return string("CUDA ") + deviceName;
}
+ bool support_device(bool experimental)
+ {
+ if(!experimental) {
+ int major, minor;
+ cuDeviceComputeCapability(&major, &minor, cuDevId);
+
+ if(major <= 1 && minor <= 2) {
+ cuda_error(string_printf("CUDA device supported only with shader model 1.3 or up, found %d.%d.", major, minor));
+ return false;
+ }
+ }
+
+ return true;
+ }
+
string compile_kernel()
{
/* compute cubin name */
@@ -236,11 +251,11 @@
if(path_exists(cubin))
return cubin;
-#ifdef WITH_CUDA_BINARIES
+#if defined(WITH_CUDA_BINARIES) && defined(_WIN32)
if(major <= 1 && minor <= 2)
cuda_error(string_printf("CUDA device supported only with shader model 1.3 or up, found %d.%d.", major, minor));
else
- cuda_error("CUDA binary kernel for this graphics card not found.");
+ cuda_error(string_printf("CUDA binary kernel for this graphics card shader model (%d.%d) not found.", major, minor));
return "";
#else
/* if not, find CUDA compiler */
@@ -283,12 +298,15 @@
#endif
}
- bool load_kernels()
+ bool load_kernels(bool experimental)
{
/* check if cuda init succeeded */
if(cuContext == 0)
return false;
+ if(!support_device(experimental))
+ return false;
+
/* get kernel */
string cubin = compile_kernel();
Modified: branches/bmesh/blender/intern/cycles/device/device_multi.cpp
===================================================================
--- branches/bmesh/blender/intern/cycles/device/device_multi.cpp 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/cycles/device/device_multi.cpp 2011-12-14 00:30:31 UTC (rev 42618)
@@ -132,10 +132,10 @@
return desc.str();
}
- bool load_kernels()
+ bool load_kernels(bool experimental)
{
foreach(SubDevice& sub, devices)
- if(!sub.device->load_kernels())
+ if(!sub.device->load_kernels(experimental))
return false;
return true;
Modified: branches/bmesh/blender/intern/cycles/device/device_opencl.cpp
===================================================================
--- branches/bmesh/blender/intern/cycles/device/device_opencl.cpp 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/cycles/device/device_opencl.cpp 2011-12-14 00:30:31 UTC (rev 42618)
@@ -365,7 +365,7 @@
return md5.get_hex();
}
- bool load_kernels()
+ bool load_kernels(bool experimental)
{
/* verify if device was initialized */
if(!device_initialized) {
Modified: branches/bmesh/blender/intern/cycles/render/session.cpp
===================================================================
--- branches/bmesh/blender/intern/cycles/render/session.cpp 2011-12-13 22:30:23 UTC (rev 42617)
+++ branches/bmesh/blender/intern/cycles/render/session.cpp 2011-12-14 00:30:31 UTC (rev 42618)
@@ -410,7 +410,7 @@
/* load kernels */
progress.set_status("Loading render kernels (may take a few minutes the first time)");
- if(!device->load_kernels()) {
+ if(!device->load_kernels(params.experimental)) {
string message = device->error_message();
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list