|
add_library(llava OBJECT |
|
llava.cpp |
|
llava.h |
|
clip.cpp |
|
clip.h |
|
) |
|
|
|
target_link_libraries(llava PRIVATE ggml llama ${CMAKE_THREAD_LIBS_INIT}) |
|
|
|
target_include_directories(llava PUBLIC .) |
|
target_include_directories(llava PUBLIC ../..) |
|
target_include_directories(llava PUBLIC ../../common) |
|
|
|
target_compile_features(llava PRIVATE cxx_std_17) |
|
|
|
add_library(llava_static STATIC $<TARGET_OBJECTS:llava>) |
|
if (BUILD_SHARED_LIBS) |
|
set_target_properties(llava PROPERTIES POSITION_INDEPENDENT_CODE ON) |
|
target_compile_definitions(llava PRIVATE LLAMA_SHARED LLAMA_BUILD) |
|
add_library(llava_shared SHARED $<TARGET_OBJECTS:llava>) |
|
target_link_libraries(llava_shared PRIVATE ggml llama ${CMAKE_THREAD_LIBS_INIT}) |
|
install(TARGETS llava_shared LIBRARY) |
|
endif() |
|
|
|
if (NOT MSVC) |
|
target_compile_options(llava PRIVATE -Wno-cast-qual) # stb_image.h |
|
endif() |
|
|
|
if(TARGET BUILD_INFO) |
|
add_dependencies(llava BUILD_INFO) |
|
endif() |
|
|
|
set(TARGET llama-llava-cli) |
|
add_executable(${TARGET} llava-cli.cpp) |
|
set_target_properties(${TARGET} PROPERTIES OUTPUT_NAME llama-llava-cli) |
|
install(TARGETS ${TARGET} RUNTIME) |
|
target_link_libraries(${TARGET} PRIVATE common llava ${CMAKE_THREAD_LIBS_INIT}) |
|
target_compile_features(${TARGET} PRIVATE cxx_std_17) |
|
|
|
set(TARGET llama-minicpmv-cli) |
|
add_executable(${TARGET} minicpmv-cli.cpp) |
|
set_target_properties(${TARGET} PROPERTIES OUTPUT_NAME llama-minicpmv-cli) |
|
install(TARGETS ${TARGET} RUNTIME) |
|
target_link_libraries(${TARGET} PRIVATE common llava ${CMAKE_THREAD_LIBS_INIT}) |
|
target_compile_features(${TARGET} PRIVATE cxx_std_17) |
|
|