Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-08-18 17:36:29 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-08-18 17:36:29 +0400
commit47e313ec0cb367e3fcd8fa7aa8adeeb8a4580f13 (patch)
treeab51bfc11de85f335db533f40c5112c07e5edd12 /source/blender/ikplugin
parent9e742ffc2b4b99b076cfb66ba491a9fbfc5825c2 (diff)
cmake option to build without iksolver
Diffstat (limited to 'source/blender/ikplugin')
-rw-r--r--source/blender/ikplugin/CMakeLists.txt17
-rw-r--r--source/blender/ikplugin/intern/ikplugin_api.c16
2 files changed, 23 insertions, 10 deletions
diff --git a/source/blender/ikplugin/CMakeLists.txt b/source/blender/ikplugin/CMakeLists.txt
index f37b254d719..903267c5618 100644
--- a/source/blender/ikplugin/CMakeLists.txt
+++ b/source/blender/ikplugin/CMakeLists.txt
@@ -29,7 +29,6 @@ set(INC
../blenlib
../makesdna
../../../intern/guardedalloc
- ../../../intern/iksolver/extern
)
set(INC_SYS
@@ -38,14 +37,22 @@ set(INC_SYS
set(SRC
intern/ikplugin_api.c
- intern/iksolver_plugin.c
BIK_api.h
intern/ikplugin_api.h
- intern/iksolver_plugin.h
- intern/itasc_plugin.h
)
+if(WITH_IK_SOLVER)
+ add_definitions(-DWITH_IK_SOLVER)
+ list(APPEND INC
+ ../../../intern/iksolver/extern
+ )
+ list(APPEND SRC
+ intern/iksolver_plugin.c
+ intern/iksolver_plugin.h
+ )
+endif()
+
if(WITH_IK_ITASC)
add_definitions(-DWITH_IK_ITASC)
list(APPEND INC
@@ -54,8 +61,8 @@ if(WITH_IK_ITASC)
)
list(APPEND SRC
intern/itasc_plugin.cpp
+ intern/itasc_plugin.h
)
endif()
-
blender_add_lib(bf_ikplugin "${SRC}" "${INC}" "${INC_SYS}")
diff --git a/source/blender/ikplugin/intern/ikplugin_api.c b/source/blender/ikplugin/intern/ikplugin_api.c
index 147c2b50e31..08d2789451c 100644
--- a/source/blender/ikplugin/intern/ikplugin_api.c
+++ b/source/blender/ikplugin/intern/ikplugin_api.c
@@ -45,13 +45,17 @@
#include "DNA_armature_types.h"
#include "ikplugin_api.h"
-#include "iksolver_plugin.h"
+
+#ifdef WITH_IK_SOLVER
+# include "iksolver_plugin.h"
+#endif
#ifdef WITH_IK_ITASC
-#include "itasc_plugin.h"
+# include "itasc_plugin.h"
#endif
static IKPlugin ikplugin_tab[] = {
+#ifdef WITH_IK_SOLVER
/* Legacy IK solver */
{
iksolver_initialize_tree,
@@ -61,8 +65,10 @@ static IKPlugin ikplugin_tab[] = {
NULL,
NULL,
NULL,
-#ifdef WITH_IK_ITASC
},
+#endif
+
+#ifdef WITH_IK_ITASC
/* iTaSC IK solver */
{
itasc_initialize_tree,
@@ -72,8 +78,8 @@ static IKPlugin ikplugin_tab[] = {
itasc_clear_cache,
itasc_update_param,
itasc_test_constraint,
-#endif
- }
+ },
+ #endif
};
static IKPlugin *get_plugin(bPose *pose)