project(gdev) aux_source_directory(${PROJECT_SOURCE_DIR} DEVICE_SRCS ) set(DEVICE_SRCS ${DEVICE_SRCS} ${PROJECT_SOURCE_DIR}/usb/IUsb.h) file(GLOB DEVICE_HEADERS ${PROJECT_SOURCE_DIR}/*.h) set(DEVICE_SRCS ${DEVICE_SRCS} ${DEVICE_HEADERS}) IF (CMAKE_SYSTEM_NAME MATCHES "Linux") file(GLOB DIR_USB "${PROJECT_SOURCE_DIR}/usb/libusbex.*") MESSAGE(STATUS "current platform: Linux ") ELSEIF (CMAKE_SYSTEM_NAME MATCHES "Windows") file(GLOB DIR_USB "${PROJECT_SOURCE_DIR}/usb/UsbScanEx.*") MESSAGE(STATUS "current platform: Windows") ELSEIF (CMAKE_SYSTEM_NAME MATCHES "FreeBSD") MESSAGE(STATUS "current platform: FreeBSD") ELSE () MESSAGE(STATUS "other platform: ${CMAKE_SYSTEM_NAME}") ENDIF (CMAKE_SYSTEM_NAME MATCHES "Linux") set(DEVICE_SRCS ${DEVICE_SRCS} ${DIR_USB}) add_definitions(-DNOMINMAX) link_directories(${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/win/cyusb/lib/windows/x86/) link_libraries(CyAPI) add_library(${PROJECT_NAME} STATIC ${DEVICE_SRCS}) target_link_libraries(${PROJECT_NAME} PRIVATE gimgproc) target_include_directories(${PROJECT_NAME} PRIVATE ${OpenCV_INCLUDE_DIRS} ${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/nick ${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/win/ddk ${PROJECT_SOURCE_DIR}/../Tirdparty/3rdparty/win/cyusb/inc ${PROJECT_SOURCE_DIR}/usb) target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR})