diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ef49d27542793749afe7f9a93148bb6d6439e6e..bc4226a6393d3bc63ad1ac7b8e1de7d76dbdb00e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,6 +11,8 @@ set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules") include(FCLVersion) +option(FCL_STATIC_LIBRARY "Whether the FCL library should be static rather than shared" OFF) + # Whether to enable SSE option(FCL_USE_SSE "Whether FCL should SSE instructions" ON) set(FCL_HAVE_SSE 0) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 4f69c9a1d77badc7069b47d0fd40207cba6ead1b..33cb7fa1e56615cc1ffef094790c5e26f6e17015 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,57 +1,9 @@ -add_library(${PROJECT_NAME} SHARED - BV/AABB.cpp - BV/OBB.cpp - BV/RSS.cpp - BV/kIOS.cpp - BV/OBBRSS.cpp - BV/kDOP.cpp - traversal/traversal_node_base.cpp - traversal/traversal_node_bvhs.cpp - intersect.cpp - ccd/motion.cpp - BVH/BV_fitter.cpp - BVH/BV_splitter.cpp - BVH/BVH_model.cpp - BVH/BVH_utility.cpp - math/transform.cpp - traversal/traversal_node_setup.cpp - shape/geometric_shapes.cpp - shape/geometric_shapes_utility.cpp - collision_node.cpp - traversal/traversal_recurse.cpp - broadphase/broadphase_bruteforce.cpp - broadphase/broadphase_spatialhash.cpp - broadphase/broadphase_SaP.cpp - broadphase/broadphase_SSaP.cpp - broadphase/broadphase_interval_tree.cpp - broadphase/broadphase_dynamic_AABB_tree.cpp - broadphase/broadphase_dynamic_AABB_tree_array.cpp - collision.cpp - collision_func_matrix.cpp - broadphase/interval_tree.cpp - ccd/conservative_advancement.cpp - ccd/interval.cpp - ccd/interval_vector.cpp - ccd/interval_matrix.cpp - ccd/taylor_model.cpp - ccd/taylor_vector.cpp - ccd/taylor_matrix.cpp - distance_func_matrix.cpp - distance.cpp - narrowphase/gjk.cpp - narrowphase/gjk_libccd.cpp - narrowphase/narrowphase.cpp - broadphase/hierarchy_tree.cpp - articulated_model/joint_config.cpp - articulated_model/joint.cpp - articulated_model/link.cpp - articulated_model/model_config.cpp - articulated_model/model.cpp - ccd/interpolation/interpolation.cpp - ccd/interpolation/interpolation_factory.cpp - ccd/interpolation/interpolation_linear.cpp - profile.cpp - collision_data.cpp) +file(GLOB_RECURSE FCL_SOURCE_CODE ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp) +if(FCL_STATIC_LIBRARY) + add_library(${PROJECT_NAME} STATIC ${FCL_SOURCE_CODE}) +else() + add_library(${PROJECT_NAME} SHARED ${FCL_SOURCE_CODE}) +endif() target_link_libraries(${PROJECT_NAME} ${CCD_LIBRARIES} ${OCTOMAP_LIBRARIES} ${Boost_LIBRARIES})