From 88b19eb023d2891d84fb3133e484a25676ebabbf Mon Sep 17 00:00:00 2001 From: "erwin.coumans" Date: Wed, 30 Mar 2011 19:01:29 +0000 Subject: [PATCH] fixes in PosixThreadSupport to enable ThreadingDemo and MultiThreadingDemo to run properly. fix autotools build (added missing files) --- Demos/OpenCLClothDemo/CMakeLists.txt | 2 -- .../GpuSoftBodySolvers/OpenCL/CMakeLists.txt | 3 --- src/BulletMultiThreaded/PosixThreadSupport.cpp | 6 ++++-- src/Makefile.am | 3 +++ 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Demos/OpenCLClothDemo/CMakeLists.txt b/Demos/OpenCLClothDemo/CMakeLists.txt index 1f378a3e1..2678c2a4d 100644 --- a/Demos/OpenCLClothDemo/CMakeLists.txt +++ b/Demos/OpenCLClothDemo/CMakeLists.txt @@ -1,6 +1,4 @@ -IF(BUILD_MINICL_OPENCL_DEMOS) SUBDIRS( MiniCL ) -ENDIF() IF(BUILD_AMD_OPENCL_DEMOS) SUBDIRS(AMD) diff --git a/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/CMakeLists.txt b/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/CMakeLists.txt index 93d5a407b..d298956ce 100644 --- a/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/CMakeLists.txt +++ b/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/CMakeLists.txt @@ -1,7 +1,4 @@ - -IF(BUILD_MINICL_OPENCL_DEMOS) SUBDIRS( MiniCL ) -ENDIF() IF(BUILD_AMD_OPENCL_DEMOS) SUBDIRS(AMD) diff --git a/src/BulletMultiThreaded/PosixThreadSupport.cpp b/src/BulletMultiThreaded/PosixThreadSupport.cpp index 5fc73c85e..c8b49ee3f 100644 --- a/src/BulletMultiThreaded/PosixThreadSupport.cpp +++ b/src/BulletMultiThreaded/PosixThreadSupport.cpp @@ -247,7 +247,7 @@ void PosixThreadSupport::stopSPU() printf("destroy semaphore\n"); destroySem(spuStatus.startSemaphore); printf("semaphore destroyed\n"); - checkPThreadFunction(pthread_cancel(spuStatus.thread)); + checkPThreadFunction(pthread_join(spuStatus.thread,0)); } printf("destroy main semaphore\n"); destroySem(mainSemaphore); @@ -385,7 +385,9 @@ public: btBarrier* PosixThreadSupport::createBarrier() { - return new PosixBarrier(); + PosixBarrier* barrier = new PosixBarrier(); + barrier->setMaxCount(getNumTasks()); + return barrier; } btCriticalSection* PosixThreadSupport::createCriticalSection() diff --git a/src/Makefile.am b/src/Makefile.am index 70e0d055f..af50d1849 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -95,6 +95,7 @@ libLinearMath_la_SOURCES = \ LinearMath/btAlignedAllocator.cpp \ LinearMath/btSerializer.cpp \ LinearMath/btConvexHull.cpp \ + LinearMath/btConvexHullComputer.cpp \ LinearMath/btHashMap.h \ LinearMath/btConvexHull.h \ LinearMath/btAabbUtil2.h \ @@ -128,6 +129,7 @@ libBulletCollision_la_SOURCES = \ BulletCollision/NarrowPhaseCollision/btGjkConvexCast.cpp \ BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp \ BulletCollision/NarrowPhaseCollision/btConvexCast.cpp \ + BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp \ BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp \ BulletCollision/NarrowPhaseCollision/btGjkPairDetector.cpp \ BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp \ @@ -160,6 +162,7 @@ libBulletCollision_la_SOURCES = \ BulletCollision/CollisionShapes/btMinkowskiSumShape.cpp \ BulletCollision/CollisionShapes/btCompoundShape.cpp \ BulletCollision/CollisionShapes/btConeShape.cpp \ + BulletCollision/CollisionShapes/btConvexPolyhedron.cpp \ BulletCollision/CollisionShapes/btMultiSphereShape.cpp \ BulletCollision/CollisionShapes/btUniformScalingShape.cpp \ BulletCollision/CollisionShapes/btSphereShape.cpp \