diff options
author | Damien Plisson <damien.plisson@yahoo.fr> | 2009-12-17 20:05:28 +0300 |
---|---|---|
committer | Damien Plisson <damien.plisson@yahoo.fr> | 2009-12-17 20:05:28 +0300 |
commit | 1975ee5eecc17514b441fb9ac921063c38fcabc4 (patch) | |
tree | b17498faf199f276e843c30767d6b06577e3c9a1 /intern/elbeem/CMakeLists.txt | |
parent | 4271a40ee7a53029f04389234278b7f64d834a11 (diff) |
OSX vs OpenMP : implement workaround to fix crashes when using mop from a background thread
Fix# 20043 & 20392
The issue is that OSX lib does not implement TLS (Thread Local Storage), so libgomp uses pthread functions to read/write thread specific vars.
But this implementation is currently (gcc 4.2) buggy : the write function is called only at lib start (in main thread), and the var is undefined for background thread.
The workaround is to perform this gomp_tls_key var write at beginning of background threads that use openMP. (Currently: render & fluidsim)
Diffstat (limited to 'intern/elbeem/CMakeLists.txt')
-rw-r--r-- | intern/elbeem/CMakeLists.txt | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/intern/elbeem/CMakeLists.txt b/intern/elbeem/CMakeLists.txt index b59554e5709..e541d334086 100644 --- a/intern/elbeem/CMakeLists.txt +++ b/intern/elbeem/CMakeLists.txt @@ -33,9 +33,9 @@ IF(WINDOWS) ADD_DEFINITIONS(-DUSE_MSVC6FIXES) ENDIF(WINDOWS) -IF(WITH_OPENMP AND NOT APPLE) +IF(WITH_OPENMP) ADD_DEFINITIONS(-DPARALLEL=1) -ENDIF(WITH_OPENMP AND NOT APPLE) +ENDIF(WITH_OPENMP) BLENDERLIB_NOLIST(bf_elbeem "${SRC}" "${INC}") #, libtype='blender', priority=0 ) |