# Find the Vision Labs Vehicle Engine SDK kit. # Sets the usual variables expected for find_package scripts: # VSDK_INCLUDE_DIRS - headers location # VSDK_LIBRARIES - libraries to link against # VSDK_FOUND - true if Vehicle SDK was found. # Look for headers. find_path(VSDK_INCLUDE_DIRS NAMES vsdk/VehicleEngine.h vsdk/VSDKStatus.h HINTS $ENV{VSDKDIR} PATHS ${VSDK_ROOT} PATH_SUFFIXES include ) #find additional include path for fsdk headers find_path(VSDK_ADDITIONAL_INCLUDE_DIRS NAMES fsdk/ISettingsProvider.h fsdk/Types.h HINTS $ENV{VSDKDIR} PATHS ${VSDK_ROOT} PATH_SUFFIXES include ) #determine compiler vendor tag if(MSVC10) set(VSDK_COMPILER_NAME vs2010) elseif(MSVC11) set(VSDK_COMPILER_NAME vs2012) elseif(MSVC12) set(VSDK_COMPILER_NAME vs2013) elseif(MSVC14) set(VSDK_COMPILER_NAME vs2015) elseif(MSVC15) set(VSDK_COMPILER_NAME vs2017) elseif(CMAKE_COMPILER_IS_GNUCXX) set(VSDK_COMPILER_NAME gcc4) elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") set(VSDK_COMPILER_NAME clang) elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang") set(VSDK_COMPILER_NAME clang) else() message(SEND_ERROR "Unsupported compiler: ${VSDK_COMPILER_NAME}") endif() if(CMAKE_SIZEOF_VOID_P EQUAL 8) set(VSDK_TARGET_NAME x64) else() set(VSDK_TARGET_NAME x86) endif() find_library(VSDK_LIBRARIES NAMES VehicleEngineSDK PATHS ${VSDK_ROOT} PATH_SUFFIXES lib/${VSDK_COMPILER_NAME}/${VSDK_TARGET_NAME} NO_DEFAULT_PATH) if(VSDK_INCLUDE_DIRS AND VSDK_LIBRARIES) set(VSDK_FOUND TRUE) endif() message(STATUS "VSDK: VSDK_INCLUDE_DIRS = ${VSDK_INCLUDE_DIRS}. VSDK_LIBRARIES = ${VSDK_LIBRARIES}") include(FindPackageHandleStandardArgs) find_package_handle_standard_args(VSDK_FOUND VSDK_INCLUDE_DIRS VSDK_ADDITIONAL_INCLUDE_DIRS VSDK_LIBRARIES) set(VSDK_INCLUDE_DIRS ${VSDK_INCLUDE_DIRS} ${VSDK_ADDITIONAL_INCLUDE_DIRS}) mark_as_advanced( VSDK_FOUND VSDK_INCLUDE_DIRS VSDK_LIBRARIES )