123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
- # file Copyright.txt or https://cmake.org/licensing for details.
- #[=======================================================================[.rst:
- FindBullet
- ----------
- Try to find the Bullet physics engine
- ::
- This module defines the following variables
- ::
- BULLET_FOUND - Was bullet found
- BULLET_INCLUDE_DIRS - the Bullet include directories
- BULLET_LIBRARIES - Link to this, by default it includes
- all bullet components (Dynamics,
- Collision, LinearMath, & SoftBody)
- ::
- This module accepts the following variables
- ::
- BULLET_ROOT - Can be set to bullet install path or Windows build path
- #]=======================================================================]
- macro(_FIND_BULLET_LIBRARY _var)
- find_library(${_var}
- NAMES
- ${ARGN}
- HINTS
- ${BULLET_ROOT}
- ${BULLET_ROOT}/lib/Release
- ${BULLET_ROOT}/lib/Debug
- ${BULLET_ROOT}/out/release8/libs
- ${BULLET_ROOT}/out/debug8/libs
- PATH_SUFFIXES lib
- )
- mark_as_advanced(${_var})
- endmacro()
- macro(_BULLET_APPEND_LIBRARIES _list _release)
- set(_debug ${_release}_DEBUG)
- if(${_debug})
- set(${_list} ${${_list}} optimized ${${_release}} debug ${${_debug}})
- else()
- set(${_list} ${${_list}} ${${_release}})
- endif()
- endmacro()
- find_path(BULLET_INCLUDE_DIR NAMES btBulletCollisionCommon.h
- HINTS
- ${BULLET_ROOT}/include
- ${BULLET_ROOT}/src
- PATH_SUFFIXES bullet
- )
- # Find the libraries
- _FIND_BULLET_LIBRARY(BULLET_DYNAMICS_LIBRARY BulletDynamics)
- _FIND_BULLET_LIBRARY(BULLET_DYNAMICS_LIBRARY_DEBUG BulletDynamics_Debug BulletDynamics_d)
- _FIND_BULLET_LIBRARY(BULLET_COLLISION_LIBRARY BulletCollision)
- _FIND_BULLET_LIBRARY(BULLET_COLLISION_LIBRARY_DEBUG BulletCollision_Debug BulletCollision_d)
- _FIND_BULLET_LIBRARY(BULLET_MATH_LIBRARY BulletMath LinearMath)
- _FIND_BULLET_LIBRARY(BULLET_MATH_LIBRARY_DEBUG BulletMath_Debug BulletMath_d LinearMath_Debug LinearMath_d)
- _FIND_BULLET_LIBRARY(BULLET_SOFTBODY_LIBRARY BulletSoftBody)
- _FIND_BULLET_LIBRARY(BULLET_SOFTBODY_LIBRARY_DEBUG BulletSoftBody_Debug BulletSoftBody_d)
- include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
- FIND_PACKAGE_HANDLE_STANDARD_ARGS(Bullet DEFAULT_MSG
- BULLET_DYNAMICS_LIBRARY BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY
- BULLET_SOFTBODY_LIBRARY BULLET_INCLUDE_DIR)
- set(BULLET_INCLUDE_DIRS ${BULLET_INCLUDE_DIR})
- if(BULLET_FOUND)
- _BULLET_APPEND_LIBRARIES(BULLET_LIBRARIES BULLET_DYNAMICS_LIBRARY)
- _BULLET_APPEND_LIBRARIES(BULLET_LIBRARIES BULLET_COLLISION_LIBRARY)
- _BULLET_APPEND_LIBRARIES(BULLET_LIBRARIES BULLET_MATH_LIBRARY)
- _BULLET_APPEND_LIBRARIES(BULLET_LIBRARIES BULLET_SOFTBODY_LIBRARY)
- endif()
|