You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

71 lines
1.9 KiB

# 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
)