llama-config.cmake.in 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. set(LLAMA_VERSION @LLAMA_INSTALL_VERSION@)
  2. set(LLAMA_BUILD_COMMIT @LLAMA_BUILD_COMMIT@)
  3. set(LLAMA_BUILD_NUMBER @LLAMA_BUILD_NUMBER@)
  4. set(LLAMA_SHARED_LIB @BUILD_SHARED_LIBS@)
  5. set(GGML_BLAS @GGML_BLAS@)
  6. set(GGML_CUDA @GGML_CUDA@)
  7. set(GGML_METAL @GGML_METAL@)
  8. set(GGML_HIPBLAS @GGML_HIPBLAS@)
  9. set(GGML_ACCELERATE @GGML_ACCELERATE@)
  10. set(GGML_VULKAN @GGML_VULKAN@)
  11. set(GGML_VULKAN_CHECK_RESULTS @GGML_VULKAN_CHECK_RESULTS@)
  12. set(GGML_VULKAN_DEBUG @GGML_VULKAN_DEBUG@)
  13. set(GGML_VULKAN_MEMORY_DEBUG @GGML_VULKAN_MEMORY_DEBUG@)
  14. set(GGML_VULKAN_VALIDATE @GGML_VULKAN_VALIDATE@)
  15. set(GGML_SYCL @GGML_SYCL@)
  16. set(GGML_OPENMP @GGML_OPENMP@)
  17. @PACKAGE_INIT@
  18. set_and_check(LLAMA_INCLUDE_DIR "@PACKAGE_LLAMA_INCLUDE_INSTALL_DIR@")
  19. set_and_check(LLAMA_LIB_DIR "@PACKAGE_LLAMA_LIB_INSTALL_DIR@")
  20. set_and_check(LLAMA_BIN_DIR "@PACKAGE_LLAMA_BIN_INSTALL_DIR@")
  21. # Ensure transient dependencies satisfied
  22. find_package(Threads REQUIRED)
  23. if (APPLE AND GGML_ACCELERATE)
  24. find_library(ACCELERATE_FRAMEWORK Accelerate REQUIRED)
  25. endif()
  26. if (GGML_BLAS)
  27. find_package(BLAS REQUIRED)
  28. endif()
  29. if (GGML_CUDA)
  30. find_package(CUDAToolkit REQUIRED)
  31. endif()
  32. if (GGML_METAL)
  33. find_library(FOUNDATION_LIBRARY Foundation REQUIRED)
  34. find_library(METAL_FRAMEWORK Metal REQUIRED)
  35. find_library(METALKIT_FRAMEWORK MetalKit REQUIRED)
  36. endif()
  37. if (GGML_VULKAN)
  38. find_package(Vulkan REQUIRED)
  39. endif()
  40. if (GGML_HIPBLAS)
  41. find_package(hip REQUIRED)
  42. find_package(hipblas REQUIRED)
  43. find_package(rocblas REQUIRED)
  44. endif()
  45. if (GGML_SYCL)
  46. find_package(IntelSYCL REQUIRED)
  47. find_package(MKL REQUIRED)
  48. endif()
  49. if (GGML_OPENMP)
  50. find_package(OpenMP REQUIRED)
  51. endif()
  52. find_library(ggml_LIBRARY ggml
  53. REQUIRED
  54. HINTS ${LLAMA_LIB_DIR})
  55. find_library(llama_LIBRARY llama
  56. REQUIRED
  57. HINTS ${LLAMA_LIB_DIR})
  58. set(_llama_link_deps "${ggml_LIBRARY}" "@GGML_LINK_LIBRARIES@")
  59. set(_llama_transient_defines "@GGML_TRANSIENT_DEFINES@")
  60. add_library(llama UNKNOWN IMPORTED)
  61. set_target_properties(llama
  62. PROPERTIES
  63. INTERFACE_INCLUDE_DIRECTORIES "${LLAMA_INCLUDE_DIR}"
  64. INTERFACE_LINK_LIBRARIES "${_llama_link_deps}"
  65. INTERFACE_COMPILE_DEFINITIONS "${_llama_transient_defines}"
  66. IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
  67. IMPORTED_LOCATION "${llama_LIBRARY}"
  68. INTERFACE_COMPILE_FEATURES cxx_std_11
  69. POSITION_INDEPENDENT_CODE ON )
  70. check_required_components(Llama)