mirror of
https://github.com/ollama/ollama.git
synced 2025-05-16 06:24:52 +02:00
51 lines
1.5 KiB
CMake
51 lines
1.5 KiB
CMake
include(CheckLanguage)
|
|
|
|
find_package(Threads REQUIRED)
|
|
|
|
set(CMAKE_CXX_STANDARD 11)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
set(GGML_CCACHE ON)
|
|
set(GGML_SCHED_MAX_COPIES 4)
|
|
set(GGML_CPU_ALL_VARIANTS ON)
|
|
set(GGML_CUDA_PEER_MAX_BATCH_SIZE 128)
|
|
set(GGML_LLAMAFILE ON)
|
|
|
|
add_compile_definitions(GGML_BUILD)
|
|
add_compile_definitions(GGML_SHARED)
|
|
add_compile_definitions(GGML_BACKEND_DL)
|
|
add_compile_definitions(GGML_BACKEND_SHARED)
|
|
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src)
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/include)
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/ggml-cpu)
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/ggml-cpu/amx)
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src EXCLUDE_FROM_ALL)
|
|
set_target_output_directory(ggml-base)
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/ggml-cpu)
|
|
set_target_output_directory(ggml-cpu)
|
|
|
|
find_package(BLAS)
|
|
if(NOT BLAS_VENDOR)
|
|
set(GGML_BLAS_VENDOR "Generic")
|
|
else()
|
|
set(GGML_BLAS_VENDOR ${BLAS_VENDOR})
|
|
endif()
|
|
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/ggml-blas)
|
|
set_target_output_directory(ggml-blas)
|
|
|
|
check_language(CUDA)
|
|
if(CMAKE_CUDA_COMPILER)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/ggml-cuda)
|
|
set_target_output_directory(ggml-cuda)
|
|
endif()
|
|
|
|
check_language(HIP)
|
|
if(CMAKE_HIP_COMPILER)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ggml/src/ggml-hip)
|
|
set_target_output_directory(ggml-hip)
|
|
endif()
|