1set(NDI_SDK_INCLUDE_PATH "" CACHE PATH "NDI SDK include path") 2set(NDI_SDK_LIBRARY_PATH "" CACHE PATH "NDI SDK library path") 3 4if(NOT (NDI_SDK_INCLUDE_PATH AND NDI_SDK_LIBRARY_PATH)) 5 message(FATAL_ERROR "NDI SDK: Please povide NDI_SDK_INCLUDE_PATH and NDI_SDK_LIBRARY_PATH!") 6endif() 7 8find_path(NDI_INCLUDE_DIR 9 NAMES 10 Processing.NDI.compat.h 11 Processing.NDI.deprecated.h 12 Processing.NDI.DynamicLoad.h 13 Processing.NDI.Find.h 14 Processing.NDI.FrameSync.h 15 Processing.NDI.Lib.cplusplus.h 16 Processing.NDI.Lib.h 17 Processing.NDI.Recv.ex.h 18 Processing.NDI.Recv.h 19 Processing.NDI.Routing.h 20 Processing.NDI.Send.h 21 Processing.NDI.structs.h 22 Processing.NDI.utilities.h 23 PATHS "${NDI_SDK_INCLUDE_PATH}" 24) 25 26find_library(NDI_LIBRARY 27 NAMES ndi 28 PATHS "${NDI_SDK_LIBRARY_PATH}" 29) 30if(NOT NDI_LIBRARY) 31 message(FATAL_ERROR "NDI SDK: libndi.so / ndi.dll not found in:\n${NDI_SDK_LIBRARY_PATH}\nMaybe you have to create a symlink or rename the file.") 32endif() 33 34include(FindPackageHandleStandardArgs) 35find_package_handle_standard_args(NDI 36 FOUND_VAR NDI_FOUND 37 REQUIRED_VARS 38 NDI_LIBRARY 39 NDI_INCLUDE_DIR 40) 41 42if(NDI_FOUND AND NOT TARGET NDI::NDI) 43 add_library(NDI::NDI SHARED IMPORTED) 44 set_target_properties(NDI::NDI PROPERTIES 45 IMPORTED_LOCATION "${NDI_LIBRARY}" 46 INTERFACE_INCLUDE_DIRECTORIES "${NDI_INCLUDE_DIR}" 47 ) 48endif() 49 50mark_as_advanced( 51 NDI_INCLUDE_DIR 52 NDI_LIBRARY 53)