reverted jam buildsystem, until changed for make is working,

minor fix in island processing
This commit is contained in:
ejcoumans
2006-12-25 20:39:39 +00:00
parent 8d92ca34c2
commit 24691e8eb8
7 changed files with 273 additions and 2061 deletions

22
INSTALL
View File

@@ -1,27 +1,22 @@
Bullet Collision Detection and Physics Library
Building: read the Bullet_User_Manual.pdf or:
Compile
Under Windows, projectfiles for Visual Studio version 6,7,7.1 and 8 are available in msvc/<version>.
For example, for Visual Studio 2005, open msvc/8/wksbullet.sln
The ColladaDemo and ConvexDecomposition demo needs to be able to locate the data files (jenga.dae and file.obj) in the current directory. Make sure Visual Studio points to the right folder (..\..).
Alternatively you can use Cmake for all platforms including Win32, Mac OS X (PPC/Intel), Linux, BSD etc.
Cmake allows to autogenerate MSVC, Xcode, Kdevelop, UNIX Makefiles etc:
Download cmake from http://cmake.org
./cmake . -G Xcode
You can replace Xcode by other available build systems. Just run cmake to see which are available for your platform.
Two more options: make and jam.
For other systems, for example Linux or Mac OS-X:
./autogen.sh
Download/install CMake from www.cmake.org, and run cmake . -G Xcode (or replace Xcode with other available buildsystem).
Alternatively use jam:
./configure
jam
or
make
jam
If jam is not available for your system, you can compile it, jam sources are included with the Bullet sources in jam-2.5
@@ -33,8 +28,9 @@ make
(as root)
sudo ./jam0 install
su
For more help, visit http://www.bulletphysics.com/Bullet/phpBB2
make install
For more help, visit http://www.continuousphysics.com

View File

@@ -1,2 +1,3 @@
Bullet Collision Detection and Physics Library version 2.40
Bullet Collision Detection and Physics Library version 2.41
http://bullet.sourceforge.net

View File

@@ -9,27 +9,17 @@ MACROFILE=aclocal.m4
MACRODIR=mk/autoconf
rm -f $MACROFILE
echo "Running aclocal"
aclocal
for i in $MACRODIR/*.m4 ; do
cat $i >> $MACROFILE
done
echo "Running automake --add-missing"
automake --add-missing
echo "Running autoheader"
autoheader
rc=$?
if test $rc -eq 0; then
echo "Running autoconf"
autoconf
rc=$?
fi
#rm -f $MACROFILE
rm -f $MACROFILE
exit $rc

View File

@@ -48,12 +48,6 @@
/* Define to 1 if you have the <windows.h> header file. */
#undef HAVE_WINDOWS_H
/* Define for Win32 platforms */
#undef NOMINMAX
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
@@ -72,12 +66,6 @@
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
/* Define for Win32 platforms */
#undef WIN32
/* Define to 1 if the X Window System is missing or not being used. */
#undef X_DISPLAY_MISSING

2217
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,7 @@ AC_PREREQ([2.54])
#----------------------------------------------------------------------------
AC_INIT(
[bullet],
[2.40],
[2.41],
[bullet@erwincoumans.com])
CS_PACKAGEINFO(
[Bullet Continuous Collision Detection and Physics Library],
@@ -18,9 +18,6 @@ CS_PACKAGEINFO(
AC_CONFIG_SRCDIR([mk/jam/build.jam])
AC_CONFIG_AUX_DIR([mk/autoconf])
AC_CANONICAL_HOST
AC_PROG_RANLIB
AC_PROG_CXX
AM_INIT_AUTOMAKE
#----------------------------------------------------------------------------
# Setup for the configuration header.
@@ -80,45 +77,8 @@ AS_IF([test $cs_host_family = windows],
CS_EMIT_BUILD_PROPERTY([COMPILER.CFLAGS], [$glut_cflags], [+])
CS_EMIT_BUILD_PROPERTY([COMPILER.LFLAGS], [$glut_lflags], [+])
])
CS_CHECK_GLUT
#----------------------------------------------------------------------------
# check for OpenGL related libraries
#----------------------------------------------------------------------------
case "${host}" in
*darwin*|*macosx*)
opengl_LIBS="$LIBS -framework Carbon -framework OpenGL -framework IOKit -framework AGL"
;;
*-*-cygwin* | *-*-mingw32*)
dnl CygWin under Windoze.
echo Win32 specific hacks...
AC_DEFINE([WIN32], 1, [Define for Win32 platforms])
AC_DEFINE([NOMINMAX], 1, [Define for Win32 platforms])
opengl_LIBS="-lglut32 -lglu32 -lopengl32 -luser32 -lgdi32 -lm -lwinmm"
joystick_LIBS="$joystick_LIBS -lwinmm"
echo "Will link apps with $LIBS"
;;
*)
dnl X-Windows based machines
save_LIBS=$LIBS
AC_SEARCH_LIBS(glNewList, [ GL GLcore MesaGL ])
AC_SEARCH_LIBS(glutInit, [ glut ])
opengl_LIBS="$LIBS"
LIBS=$save_LIBS
if test "x$ac_cv_search_glNewList" = "x-lGLcore"; then
dnl if GLcore found, then also check for GL
AC_SEARCH_LIBS(glXCreateContext, GL)
fi
AC_SUBST(opengl_LIBS,[$opengl_LIBS])
esac
#----------------------------------------------------------------------------
# Package configuration switches.
#----------------------------------------------------------------------------
@@ -143,8 +103,7 @@ CS_EMIT_PACKAGEINFO
# Emit generated files.
#----------------------------------------------------------------------------
CS_JAMCONFIG_OUTPUT([Jamconfig])
AC_CONFIG_FILES([Jamfile bullet.pc Makefile src/Makefile Demos/OpenGL/Makefile Demos/BasicDemo/Makefile Demos/VehicleDemo/Makefile Demos/CcdPhysicsDemo/Makefile])
AC_CONFIG_FILES([Jamfile bullet.pc])
AC_OUTPUT
AC_MSG_NOTICE([

View File

@@ -271,14 +271,22 @@ void btSimulationIslandManager::buildAndProcessIslands(btDispatcher* dispatcher,
//int islandId;
//update the sleeping state for bodies, if all are sleeping
//traverse the simulation islands, and call the solver, unless all objects are sleeping/deactivated
for (int startIslandIndex=0;startIslandIndex<numElem;startIslandIndex = endIslandIndex)
{
int islandId = getUnionFind().getElement(startIslandIndex).m_id;
for (endIslandIndex = startIslandIndex+1;(endIslandIndex<numElem) && (getUnionFind().getElement(endIslandIndex).m_id == islandId);endIslandIndex++)
{
}
bool islandSleeping = false;
for (endIslandIndex = startIslandIndex;(endIslandIndex<numElem) && (getUnionFind().getElement(endIslandIndex).m_id == islandId);endIslandIndex++)
{
int i = getUnionFind().getElement(endIslandIndex).m_sz;
btCollisionObject* colObj0 = collisionObjects[i];
if (!colObj0->isActive())
islandSleeping = true;
}
//find the accompanying contact manifold for this islandId
int numIslandManifolds = 0;
@@ -301,8 +309,11 @@ void btSimulationIslandManager::buildAndProcessIslands(btDispatcher* dispatcher,
}
callback->ProcessIsland(startManifold,numIslandManifolds, islandId);
if (!islandSleeping)
{
callback->ProcessIsland(startManifold,numIslandManifolds, islandId);
}
if (numIslandManifolds)
{
startManifoldIndex = endManifoldIndex;