# -----------------------------
# 查找 libboundscheck 头文件和库
# -----------------------------
find_path(LIBBOUNDCHECK_INCLUDE_DIR
        NAMES securec.h
        PATHS /usr/include
        NO_DEFAULT_PATH
)

find_library(LIBBOUNDCHECK_SHARED_LIBRARY
        NAMES libboundscheck.so boundscheck
        PATHS /usr/lib64 /usr/lib
        NO_DEFAULT_PATH
)

# -----------------------------
# 验证是否找到
# -----------------------------
if(NOT LIBBOUNDCHECK_INCLUDE_DIR OR NOT LIBBOUNDCHECK_SHARED_LIBRARY)
    message(FATAL_ERROR
            "libboundscheck not found! Please install the RPM package:\n"
            "  sudo rpm -ivh libboundscheck-v1.1.11-6.oe2403.aarch64.rpm\n"
            "Or via yum/dnf:\n"
            "  sudo yum install libboundscheck\n"
            "Expected:\n"
            "  Header: /usr/include/securec.h\n"
            "  Shared: /usr/lib64/libboundscheck.so"
    )
endif()

message(STATUS "Found libboundscheck headers: ${LIBBOUNDCHECK_INCLUDE_DIR}")
message(STATUS "Found libboundscheck shared: ${LIBBOUNDCHECK_SHARED_LIBRARY}")

# -----------------------------
# 定义 INTERFACE 库
# -----------------------------

# === libboundscheck (头文件 + 库) ===
add_library(libboundscheck INTERFACE)

# 添加头文件路径
target_include_directories(libboundscheck SYSTEM INTERFACE
        ${LIBBOUNDCHECK_INCLUDE_DIR}
)

# 链接共享库
target_link_libraries(libboundscheck INTERFACE ${LIBBOUNDCHECK_SHARED_LIBRARY})