# 插件子目录 CMakeLists.txt

# 插件源文件列表（含公共 sysfs PCI 模块）
set(SOURCES gpu_glenfly.c ${SOURCE_TOP_DIR}/common/pci_sysfs.c)

# 创建插件库目标
add_library(glenfly SHARED ${SOURCES})

# 设置libkgc_glenfly.so库路径
set(LIB_KGC_GLENFLY_PATH "" CACHE STRING "KGC GLENFLY library dir")

if("${LIB_KGC_GLENFLY_PATH}" STREQUAL "")
    if(UNIX)
        if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
		set(LIB_KGC_GLENFLY_PATH "\"/usr/lib/kgc/libkgc_glenfly.so\"")
        elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
		set(LIB_KGC_GLENFLY_PATH "\"/usr/lib/kgc/libkgc_glenfly.so\"")
        endif()
    elseif(ANDROID)
	    set(LIB_KGC_GLENFLY_PATH "path/to/android/library")
    endif()
endif()

add_definitions(-DLIB_KGC_GLENFLY_PATH=${LIB_KGC_GLENFLY_PATH})

message("LIB_KGC_GLENFLY_PATH: ${LIB_KGC_GLENFLY_PATH}")

include_directories(/usr/include/libdrm)
target_include_directories(glenfly PRIVATE "${SOURCE_TOP_DIR}/include" "${SOURCE_TOP_DIR}/common" "${SOURCE_TOP_DIR}/third_party/glenfly" "${SOURCE_TOP_DIR}/plugins/xpu/glenfly")
target_link_libraries(glenfly PRIVATE libdrm.so)

set_target_properties(glenfly PROPERTIES LIBRARY_OUTPUT_DIRECTORY ..)

install(TARGETS glenfly
    LIBRARY DESTINATION lib/kyml/plugins/xpu)
