Index: code/trunk/src/bullet/BulletCollision/CMakeLists.txt
===================================================================
--- code/trunk/src/bullet/BulletCollision/CMakeLists.txt	(revision 2662)
+++ code/trunk/src/bullet/BulletCollision/CMakeLists.txt	(revision 2710)
@@ -1,3 +1,3 @@
-SET(BulletCollision_SRCS
+ADD_SOURCE_FILES(BULLET_FILES
 	BroadphaseCollision/btAxisSweep3.cpp
 	BroadphaseCollision/btBroadphaseProxy.cpp
@@ -10,4 +10,5 @@
 	BroadphaseCollision/btQuantizedBvh.cpp
 	BroadphaseCollision/btSimpleBroadphase.cpp
+
 	CollisionDispatch/btActivatingCollisionAlgorithm.cpp
 	CollisionDispatch/btCollisionDispatcher.cpp
@@ -30,4 +31,5 @@
 	CollisionDispatch/btUnionFind.cpp
 	CollisionDispatch/SphereTriangleDetector.cpp
+
 	CollisionShapes/btBoxShape.cpp
 	CollisionShapes/btBvhTriangleMeshShape.cpp
@@ -63,4 +65,5 @@
 	CollisionShapes/btTriangleMeshShape.cpp
 	CollisionShapes/btUniformScalingShape.cpp
+
 	Gimpact/btContactProcessing.cpp
 	Gimpact/btGImpactShape.cpp
@@ -74,4 +77,5 @@
 	Gimpact/btGImpactQuantizedBvh.cpp
 	Gimpact/gim_box_set.cpp
+
 	NarrowPhaseCollision/btContinuousConvexCollision.cpp
 	NarrowPhaseCollision/btGjkEpa2.cpp
@@ -85,5 +89,104 @@
 	NarrowPhaseCollision/btSubSimplexConvexCast.cpp
 	NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
+
+	# Headers
+	BroadphaseCollision/btAxisSweep3.h
+	BroadphaseCollision/btBroadphaseInterface.h
+	BroadphaseCollision/btBroadphaseProxy.h
+	BroadphaseCollision/btCollisionAlgorithm.h
+	BroadphaseCollision/btDispatcher.h
+	BroadphaseCollision/btDbvtBroadphase.h
+	BroadphaseCollision/btDbvt.h
+	BroadphaseCollision/btMultiSapBroadphase.h
+	BroadphaseCollision/btOverlappingPairCache.h
+	BroadphaseCollision/btOverlappingPairCallback.h
+	BroadphaseCollision/btQuantizedBvh.h
+	BroadphaseCollision/btSimpleBroadphase.h
+
+	CollisionDispatch/btActivatingCollisionAlgorithm.h
+	CollisionDispatch/btCollisionConfiguration.h
+	CollisionDispatch/btCollisionCreateFunc.h
+	CollisionDispatch/btCollisionDispatcher.h
+	CollisionDispatch/btCollisionObject.h
+	CollisionDispatch/btCollisionWorld.h
+	CollisionDispatch/btCompoundCollisionAlgorithm.h
+	CollisionDispatch/btConvexConcaveCollisionAlgorithm.h
+	CollisionDispatch/btDefaultCollisionConfiguration.h
+	CollisionDispatch/btSphereSphereCollisionAlgorithm.h
+	CollisionDispatch/btBoxBoxCollisionAlgorithm.h
+	CollisionDispatch/btBoxBoxDetector.h
+	CollisionDispatch/btGhostObject.h
+	CollisionDispatch/btSphereBoxCollisionAlgorithm.h
+	CollisionDispatch/btConvexPlaneCollisionAlgorithm.h
+	CollisionDispatch/btSphereTriangleCollisionAlgorithm.h
+	CollisionDispatch/btConvexConvexAlgorithm.h
+	CollisionDispatch/btEmptyCollisionAlgorithm.h
+	CollisionDispatch/btManifoldResult.h
+	CollisionDispatch/btSimulationIslandManager.h
+	CollisionDispatch/btUnionFind.h
+	CollisionDispatch/SphereTriangleDetector.h
+
+	CollisionShapes/btBoxShape.h
+	CollisionShapes/btBvhTriangleMeshShape.h
+	CollisionShapes/btCapsuleShape.h
+	CollisionShapes/btCollisionMargin
+	CollisionShapes/btCollisionShape.h
+	CollisionShapes/btCompoundShape.h
+	CollisionShapes/btConcaveShape.h
+	CollisionShapes/btConeShape.h
+	CollisionShapes/btConvexHullShape.h
+	CollisionShapes/btConvexPointCloudShape.h
+	CollisionShapes/btConvexShape.h
+	CollisionShapes/btConvexInternalShape.h
+	CollisionShapes/btConvexTriangleMeshShape.h
+	CollisionShapes/btCylinderShape.h
+	CollisionShapes/btEmptyShape.h
+	CollisionShapes/btHeightfieldTerrainShape.h
+	CollisionShapes/btMinkowskiSumShape.h
+	CollisionShapes/btMaterial.h
+	CollisionShapes/btMultimaterialTriangleMeshShape.h
+	CollisionShapes/btMultiSphereShape.h
+	CollisionShapes/btOptimizedBvh.h
+	CollisionShapes/btPolyhedralConvexShape.h
+	CollisionShapes/btScaledBvhTriangleMeshShape.h
+	CollisionShapes/btTetrahedronShape.h
+	CollisionShapes/btSphereShape.h
+	CollisionShapes/btShapeHull.h
+	CollisionShapes/btStaticPlaneShape.h
+	CollisionShapes/btStridingMeshInterface.h
+	CollisionShapes/btTriangleCallback.h
+	CollisionShapes/btTriangleBuffer.h
+	CollisionShapes/btTriangleIndexVertexArray.h
+	CollisionShapes/btTriangleIndexVertexMaterialArray.h
+	CollisionShapes/btTriangleMesh.h
+	CollisionShapes/btTriangleMeshShape.h
+	CollisionShapes/btUniformScalingShape.h
+
+	Gimpact/btGImpactShape.h
+	Gimpact/gim_contact.h
+	Gimpact/btGImpactBvh.h
+	Gimpact/btGenericPoolAllocator.h
+	Gimpact/gim_memory.h
+	Gimpact/btGImpactCollisionAlgorithm.h
+	Gimpact/btTriangleShapeEx.h
+	Gimpact/gim_tri_collision.h
+	Gimpact/btGImpactQuantizedBvh.h
+	Gimpact/gim_box_set.h
+
+	NarrowPhaseCollision/btContinuousConvexCollision.h
+	NarrowPhaseCollision/btConvexCast.h
+	NarrowPhaseCollision/btConvexPenetrationDepthSolver.h
+	NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h
+	NarrowPhaseCollision/btGjkConvexCast.h
+	NarrowPhaseCollision/btGjkEpa2.h
+	NarrowPhaseCollision/btGjkEpaPenetrationDepthSolver.h
+	NarrowPhaseCollision/btGjkPairDetector.h
+	NarrowPhaseCollision/btManifoldPoint.h
+	NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h
+	NarrowPhaseCollision/btPersistentManifold.h
+	NarrowPhaseCollision/btPointCollector.h
+	NarrowPhaseCollision/btRaycastCallback.h
+	NarrowPhaseCollision/btSimplexSolverInterface.h
+	NarrowPhaseCollision/btSubSimplexConvexCast.h
+	NarrowPhaseCollision/btVoronoiSimplexSolver.h
 )
-
-ADD_LIBRARY(BulletCollision ${BulletCollision_SRCS})
Index: code/trunk/src/bullet/BulletDynamics/CMakeLists.txt
===================================================================
--- code/trunk/src/bullet/BulletDynamics/CMakeLists.txt	(revision 2662)
+++ code/trunk/src/bullet/BulletDynamics/CMakeLists.txt	(revision 2710)
@@ -1,3 +1,3 @@
-SET(BulletDynamics_SRCS
+ADD_SOURCE_FILES(BULLET_FILES
 	ConstraintSolver/btContactConstraint.cpp
 	ConstraintSolver/btConeTwistConstraint.cpp
@@ -9,12 +9,42 @@
 	ConstraintSolver/btSolve2LinearConstraint.cpp
 	ConstraintSolver/btTypedConstraint.cpp
+
 	Dynamics/Bullet-C-API.cpp
 	Dynamics/btDiscreteDynamicsWorld.cpp
 	Dynamics/btSimpleDynamicsWorld.cpp
 	Dynamics/btRigidBody.cpp
+
 	Vehicle/btRaycastVehicle.cpp
 	Vehicle/btWheelInfo.cpp
+
 	Character/btKinematicCharacterController.cpp
+
+	# Headers
+	ConstraintSolver/btConstraintSolver.h
+	ConstraintSolver/btContactConstraint.h
+	ConstraintSolver/btContactSolverInfo.h
+	ConstraintSolver/btConeTwistConstraint.h
+	ConstraintSolver/btGeneric6DofConstraint.h
+	ConstraintSolver/btHingeConstraint.h
+	ConstraintSolver/btJacobianEntry.h
+	ConstraintSolver/btPoint2PointConstraint.h
+	ConstraintSolver/btSequentialImpulseConstraintSolver.h
+	ConstraintSolver/btSliderConstraint.h
+	ConstraintSolver/btSolve2LinearConstraint.h
+	ConstraintSolver/btSolverBody.h
+	ConstraintSolver/btSolverConstraint.h
+	ConstraintSolver/btTypedConstraint.h
+
+	Dynamics/btContinuousDynamicsWorld.h
+	Dynamics/btDiscreteDynamicsWorld.h
+	Dynamics/btDynamicsWorld.h
+	Dynamics/btSimpleDynamicsWorld.h
+	Dynamics/btRigidBody.h
+
+	Vehicle/btRaycastVehicle.h
+	Vehicle/btVehicleRaycaster.h
+	Vehicle/btWheelInfo.h
+
+	Character/btCharacterControllerInterface.h
+	Character/btKinematicCharacterController.h
 )
-
-ADD_LIBRARY(BulletDynamics ${BulletDynamics_SRCS})
Index: code/trunk/src/bullet/CMakeLists.txt
===================================================================
--- code/trunk/src/bullet/CMakeLists.txt	(revision 2662)
+++ code/trunk/src/bullet/CMakeLists.txt	(revision 2710)
@@ -1,3 +1,42 @@
+ #
+ #             ORXONOX - the hottest 3D action shooter ever to exist
+ #                             > www.orxonox.net <
+ #
+ #        This program is free software; you can redistribute it and/or
+ #         modify it under the terms of the GNU General Public License
+ #        as published by the Free Software Foundation; either version 2
+ #            of the License, or (at your option) any later version.
+ #
+ #       This program is distributed in the hope that it will be useful,
+ #        but WITHOUT ANY WARRANTY; without even the implied warranty of
+ #        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ #                 GNU General Public License for more details.
+ #
+ #   You should have received a copy of the GNU General Public License along
+ #      with this program; if not, write to the Free Software Foundation,
+ #     Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ #
+
+SET_SOURCE_FILES(BULLET_FILES
+  btBulletCollisionCommon.h
+  btBulletDynamicsCommon.h
+  Bullet-C-Api.h
+)
 ADD_SUBDIRECTORY(BulletCollision)
 ADD_SUBDIRECTORY(BulletDynamics)
 ADD_SUBDIRECTORY(LinearMath)
+
+GENERATE_SOURCE_GROUPS(${BULLET_FILES})
+
+# No warnings needed from third party libraries
+REMOVE_COMPILER_FLAGS("-W3 -W4" MSVC)
+ADD_COMPILER_FLAGS("-w")
+
+IF(MSVC)
+  ADD_LIBRARY(bullet_orxonox STATIC ${BULLET_FILES})
+ELSE(MSVC)
+  ADD_LIBRARY(bullet_orxonox SHARED ${BULLET_FILES})
+  ORXONOX_INSTALL(bullet_orxonox)
+ENDIF(MSVC)
+
+SET_TARGET_PROPERTIES(bullet_orxonox PROPERTIES VERSION 2.73)
Index: code/trunk/src/bullet/LinearMath/CMakeLists.txt
===================================================================
--- code/trunk/src/bullet/LinearMath/CMakeLists.txt	(revision 2662)
+++ code/trunk/src/bullet/LinearMath/CMakeLists.txt	(revision 2710)
@@ -1,8 +1,30 @@
-SET(LinearMath_SRCS
+ADD_SOURCE_FILES(BULLET_FILES
 		btConvexHull.cpp
 		btQuickprof.cpp
 		btGeometryUtil.cpp
 		btAlignedAllocator.cpp
+
+		# Headers
+		btAlignedObjectArray.h
+		btList.h
+		btPoolAllocator.h
+		btRandom.h
+		btVector3.h
+		btDefaultMotionState.h
+		btMatrix3x3.h
+		btQuadWord.h
+		btHashMap.h
+		btScalar.h
+		btAabbUtil2.h
+		btConvexHull.h
+		btMinMax.h
+		btQuaternion.h
+		btStackAlloc.h
+		btGeometryUtil.h
+		btMotionState.h
+		btTransform.h
+		btAlignedAllocator.h
+		btIDebugDraw.h
+		btQuickprof.h
+		btTransformUtil.h
 )
-
-ADD_LIBRARY(LinearMath ${LinearMath_SRCS})
Index: code/trunk/src/bullet/changes_orxonox.diff
===================================================================
--- code/trunk/src/bullet/changes_orxonox.diff	(revision 2710)
+++ code/trunk/src/bullet/changes_orxonox.diff	(revision 2710)
@@ -0,0 +1,15 @@
+--- LinearMath\btScalar.h	So Feb 15 18:28:13 2009
++++ LinearMath\btScalar.h	Sa Feb 14 23:04:53 2009
+@@ -227,7 +227,11 @@
+ SIMD_FORCE_INLINE btScalar btAtan2(btScalar x, btScalar y) { return atan2f(x, y); }
+ SIMD_FORCE_INLINE btScalar btExp(btScalar x) { return expf(x); }
+ SIMD_FORCE_INLINE btScalar btLog(btScalar x) { return logf(x); }
+-SIMD_FORCE_INLINE btScalar btPow(btScalar x,btScalar y) { return powf(x,y); }
++  #if defined( __MINGW32__ )
++  SIMD_FORCE_INLINE btScalar btPow(btScalar x,btScalar y) { return pow(x,y); }
++  #else
++  SIMD_FORCE_INLINE btScalar btPow(btScalar x,btScalar y) { return powf(x,y); }
++  #endif
+ 
+ #endif
+ 
