cmake_minimum_required(VERSION 3.5)

# 设置项目名称
project(SciCameraDemo)

# 设置C++标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)

# 指定编译器
# set(CMAKE_C_COMPILER gcc)
# set(CMAKE_CXX_COMPILER g++)

# 添加包含路径
include_directories(${PROJECT_SOURCE_DIR}/Libraries/include)

# 设置库文件路径
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
	link_directories(${PROJECT_SOURCE_DIR}/Libraries/windows)
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
	link_directories(${PROJECT_SOURCE_DIR}/Libraries/linux_x86_64)
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
	link_directories(${PROJECT_SOURCE_DIR}/Libraries/linux_arm64)
else()
	message(FATAL_ERROR "Unsupported platform")
endif()

# 添加源文件
set(SOURCES
    common.cpp
    SciCameraDemo.cpp
    SdkOperate.cpp
)

# 添加头文件
set(HEADERS
    common.h
    SdkOperate.h
)

# 添加可执行文件
add_executable(SciCameraDemo ${SOURCES} ${HEADERS})

# 设置链接器标志
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined -Wl,--allow-shlib-undefined")

# 链接动态库
target_link_libraries(SciCameraDemo PRIVATE pthread SciCamSDK)
