ODE dependency in playground/games

Andreas Beckermann b_mann at gmx.de
Mon Feb 9 13:30:22 CET 2009


On Saturday 07 February 2009, Stefan Majewsky wrote:
> Hi folks,
>
> I need to use a 3D physics engine in Kolf 2 (in trunk/playground/games
> currently) and after evaluating some available solutions, I've come to use
> the Open Dynamics Engine. By reading some modules, I composed the
> FindODE.cmake script which is at [1] (ODE itself uses autotools). When I
> wanted to integrate the ODE check into the CMakeLists.txt for
> playground/games [2], I noticed two things:
>
> 1. The variable ODE_FOUND is already used to determine whether Astrododge
> is built, but the find_package(ODE) call is in the CMakeLists.txt for
> Astrododge [3], which is only included if ODE has already been found. What
> the...? 2. Astrododge comes with its own FindODE.cmake [4], but it looks
> weird to me that paths like /usr/include etc. are hardcoded for Linux while

The paths aren't hardcoded, cmake takes a list of paths where it searches for 
the libraries/files _in addition_ to the default paths. The astrododge 
FindODE.cmake provides a few of these paths, to make it easier to find ODE on 
common systems.
However /usr/include and /usr/local/include (same with lib) are kinda 
pointless here, as cmake searches those by default anyway.

However the astrododge version e.g. also searches in ${OGRE_HOME} for the 
includes and libs which makes things _a lot_ simpler when you build in 
windows. The kolf version requires a lot more work from the user, as the 
paths must be given to cmake manually (e.g. by adding the required paths to 
environment variables).

So I'd go for the astrododge version.

Hmmm, however I just noticed that apparently astrododge uses the FindODE.cmake 
from d-collide 
(http://d-collide.ematia.de/svn/d-collide/trunk/d-collide/cmake/modules/).
So my opinion on this may be a bit biased, as I probably wrote most of that 
file :-)
But it also means that this file has been tested on several Linux 
distributions, Windows and MAC.

Greetings
Andi


More information about the Kde-buildsystem mailing list