simspark/simspark-odefix.patch

35 lines
1.2 KiB
Diff

diff -up simspark-0.2.2/cmake/FindODE.cmake.odefix simspark-0.2.2/cmake/FindODE.cmake
--- simspark-0.2.2/cmake/FindODE.cmake.odefix 2011-04-26 16:10:46.000000000 +0430
+++ simspark-0.2.2/cmake/FindODE.cmake 2011-04-27 22:40:12.761590987 +0430
@@ -60,7 +60,20 @@ IF (NOT ODE_FOUND)
ENDFOREACH(flag)
SET(ODE_EXTRA_LDFLAGS ${ODE_CONFIG_LIBS})
- ELSE("${ODE_CONFIG_RESULT}" MATCHES "^0$")
+
+ # Convert the linker flags to a CMake list.
+ STRING(REGEX REPLACE " +" ";"
+ ODE_CONFIG_LIBS "${ODE_CONFIG_LIBS}")
+
+ # Look for -l options.
+ FOREACH(flag ${ODE_CONFIG_LIBS})
+ IF("${flag}" MATCHES "^-l.*ode.*")
+ STRING(REGEX REPLACE "^-l" ""
+ ODE_LIB_NAME "${flag}")
+ ENDIF("${flag}" MATCHES "^-l.*ode.*")
+ ENDFOREACH(flag)
+
+ ELSE("${ODE_CONFIG_RESULT}" MATCHES "^0$")
MESSAGE("Error running ${ODE_CONFIG}: [${ODE_CONFIG_RESULT}]")
ENDIF("${ODE_CONFIG_RESULT}" MATCHES "^0$")
@@ -79,7 +92,7 @@ IF (NOT ODE_FOUND)
NO_DEFAULT_PATH
)
FIND_LIBRARY(ODE_LIBRARY
- NAMES ode ode_double ode_single
+ NAMES ${ODE_LIB_NAME} ode ode_double ode_single
PATHS
${ODE_CONFIG_PREFIX}/lib
/usr/lib