handle multiple dll paths, add sixense

This commit is contained in:
Stephen Birarda 2015-02-17 15:19:17 -08:00
parent e7b4746c16
commit b727c910d1
6 changed files with 33 additions and 10 deletions

View file

@ -9,8 +9,10 @@
# See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
#
macro(ADD_PATH_TO_LIB_PATHS _PATH)
set(TEMP_LIB_PATHS ${LIB_PATHS})
list(APPEND TEMP_LIB_PATHS ${_PATH})
set(LIB_PATHS ${TEMP_LIB_PATHS} CACHE TYPE LIST FORCE)
macro(ADD_PATHS_TO_LIB_PATHS)
foreach(_PATH in ${ARGN})
set(TEMP_LIB_PATHS ${LIB_PATHS})
list(APPEND TEMP_LIB_PATHS ${_PATH})
set(LIB_PATHS ${TEMP_LIB_PATHS} CACHE TYPE LIST FORCE)
endforeach()
endmacro()

View file

@ -22,7 +22,7 @@ if (WIN32)
find_library(LEAPMOTION_LIBRARY_RELEASE Leap PATH_SUFFIXES lib/x86 HINTS ${LEAPMOTION_SEARCH_DIRS})
get_filename_component(LEAPMOTION_DLL_PATH ${LEAPMOTION_LIBRARY_RELEASE} DIRECTORY CACHE)
add_path_to_lib_paths(${LEAPMOTION_DLL_PATH})
add_paths_to_lib_paths(${LEAPMOTION_DLL_PATH})
elseif (APPLE)
find_library(LEAPMOTION_LIBRARY_RELEASE Leap PATH_SUFFIXES lib HINTS ${LEAPMOTION_SEARCH_DIRS})
endif ()

View file

@ -257,5 +257,5 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2 REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_D
if (WIN32)
get_filename_component(SDL2_DLL_PATH ${SDL2_LIBRARY} DIRECTORY CACHE)
add_path_to_lib_paths(${SDL2_DLL_PATH})
add_paths_to_lib_paths(${SDL2_DLL_PATH} ${SDL2_RELEASE_PATH})
endif ()

View file

@ -32,14 +32,26 @@ elseif (UNIX)
elseif (WIN32)
find_library(SIXENSE_LIBRARY_RELEASE lib/win32/release_dll/sixense.lib HINTS ${SIXENSE_SEARCH_DIRS})
find_library(SIXENSE_LIBRARY_DEBUG lib/win32/debug_dll/sixensed.lib HINTS ${SIXENSE_SEARCH_DIRS})
find_path(SIXENSE_DEBUG_DLL_PATH sixensed.dll PATH_SUFFIXES bin/win32/debug_dll HINTS ${SIXENSE_SEARCH_DIRS})
find_path(SIXENSE_RELEASE_DLL_PATH sixense.dll PATH_SUFFIXES bin/win32/release_dll HINTS ${SIXENSE_SEARCH_DIRS})
endif ()
include(SelectLibraryConfigurations)
select_library_configurations(SIXENSE)
set(SIXENSE_REQUIREMENTS SIXENSE_INCLUDE_DIRS SIXENSE_LIBRARIES)
if (WIN32)
list(APPEND SIXENSE_REQUIREMENTS SIXENSE_DEBUG_DLL_PATH SIXENSE_RELEASE_DLL_PATH)
endif ()
set(SIXENSE_LIBRARIES "${SIXENSE_LIBRARY}")
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Sixense DEFAULT_MSG SIXENSE_INCLUDE_DIRS SIXENSE_LIBRARIES)
find_package_handle_standard_args(Sixense DEFAULT_MSG SIXENSE_REQUIREMENTS)
if (WIN32)
add_paths_to_lib_paths(${SIXSENSE_DEBUG_DLL_PATH})
endif ()
mark_as_advanced(SIXENSE_LIBRARIES SIXENSE_INCLUDE_DIRS SIXENSE_SEARCH_DIRS)

View file

@ -26,7 +26,7 @@ find_library(SOXR_LIBRARIES NAMES soxr PATH_SUFFIXES lib HINTS ${SOXR_SEARCH_DIR
if (WIN32)
find_path(SOXR_DLL_PATH soxr.dll PATH_SUFFIXES bin HINTS ${SOXR_SEARCH_DIRS})
add_path_to_lib_paths(${SOXR_DLL_PATH})
add_paths_to_lib_paths(${SOXR_DLL_PATH})
endif()
include(FindPackageHandleStandardArgs)

View file

@ -58,7 +58,7 @@ elseif (WIN32)
set(_TBB_LIB_DIR "lib/${_TBB_ARCH_DIR}/vc12")
find_path(TBB_DLL_PATH tbb_debug.dll PATH_SUFFIXES "bin/${_TBB_ARCH_DIR}/vc12" HINTS ${TBB_SEARCH_DIRS})
add_path_to_lib_paths(${TBB_DLL_PATH})
elseif (ANDROID)
set(_TBB_DEFAULT_INSTALL_DIR "/tbb")
set(_TBB_LIB_NAME "tbb")
@ -80,6 +80,15 @@ include(FindPackageHandleStandardArgs)
select_library_configurations(TBB)
select_library_configurations(TBB_MALLOC)
find_package_handle_standard_args(TBB DEFAULT_MSG TBB_LIBRARY TBB_MALLOC_LIBRARY TBB_INCLUDE_DIRS)
set(TBB_REQUIREMENTS TBB_LIBRARY TBB_MALLOC_LIBRARY TBB_INCLUDE_DIRS)
if (WIN32)
list(APPEND TBB_REQUIREMENTS TBB_DLL_PATH)
endif ()
find_package_handle_standard_args(TBB DEFAULT_MSG TBB_REQUIREMENTS)
if (WIN32)
add_paths_to_lib_paths(${TBB_DLL_PATH})
endif ()
set(TBB_LIBRARIES ${TBB_LIBRARY} ${TBB_MALLOC_LIBRARY})