file(GLOB LLM_MANAGER_STATIC_SRCS
${PROJECT_SOURCE_DIR}/src/include/llm_manager/*.h
${CMAKE_CURRENT_LIST_DIR}/*.cpp
${PROJECT_SOURCE_DIR}/src/llm_manager/*.cpp
)
include_directories(
${pybind11_INCLUDE_DIRS}
${CMAKE_CURRENT_SOURCE_DIR}/../../include/llm_manager
${CMAKE_CURRENT_SOURCE_DIR}/../../include/utils
${CMAKE_CURRENT_SOURCE_DIR}/../../utils/include/mindie_llm
${THIRD_PARTY_OUTPUT_DIR}/nlohmann/include
)
execute_process(
COMMAND bash -c "python3 -m pybind11 --cmakedir"
OUTPUT_VARIABLE command_output
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set(pybind11_DIR "${command_output}")
find_package(pybind11 REQUIRED)
add_library(llm_manager_python SHARED ${LLM_MANAGER_STATIC_SRCS})
set_target_properties(llm_manager_python PROPERTIES PREFIX "")
target_link_libraries(llm_manager_python
PUBLIC
-Wl,--start-group
pybind11::embed
-Wl,--end-group
mindie_llm_manager
)
install(TARGETS llm_manager_python DESTINATION lib)