LlamaConfig.cmake.in
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(LLAMA_BLAS @LLAMA_BLAS@) 6 set(LLAMA_CUDA @LLAMA_CUDA@) 7 set(LLAMA_METAL @LLAMA_METAL@) 8 set(LLAMA_HIPBLAS @LLAMA_HIPBLAS@) 9 set(LLAMA_ACCELERATE @LLAMA_ACCELERATE@) 10 11 @PACKAGE_INIT@ 12 13 set_and_check(LLAMA_INCLUDE_DIR "@PACKAGE_LLAMA_INCLUDE_INSTALL_DIR@") 14 set_and_check(LLAMA_LIB_DIR "@PACKAGE_LLAMA_LIB_INSTALL_DIR@") 15 set_and_check(LLAMA_BIN_DIR "@PACKAGE_LLAMA_BIN_INSTALL_DIR@") 16 17 # Ensure transient dependencies satisfied 18 19 find_package(Threads REQUIRED) 20 if (APPLE AND LLAMA_ACCELERATE) 21 find_library(ACCELERATE_FRAMEWORK Accelerate REQUIRED) 22 endif() 23 24 if (LLAMA_BLAS) 25 find_package(BLAS REQUIRED) 26 endif() 27 28 if (LLAMA_CUDA) 29 find_package(CUDAToolkit REQUIRED) 30 endif() 31 32 if (LLAMA_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 38 if (LLAMA_HIPBLAS) 39 find_package(hip REQUIRED) 40 find_package(hipblas REQUIRED) 41 find_package(rocblas REQUIRED) 42 endif() 43 44 find_library(llama_LIBRARY llama 45 REQUIRED 46 HINTS ${LLAMA_LIB_DIR}) 47 48 set(_llama_link_deps "Threads::Threads" "@LLAMA_EXTRA_LIBS@") 49 set(_llama_transient_defines "@LLAMA_TRANSIENT_DEFINES@") 50 add_library(llama UNKNOWN IMPORTED) 51 set_target_properties(llama 52 PROPERTIES 53 INTERFACE_INCLUDE_DIRECTORIES "${LLAMA_INCLUDE_DIR}" 54 INTERFACE_LINK_LIBRARIES "${_llama_link_deps}" 55 INTERFACE_COMPILE_DEFINITIONS "${_llama_transient_defines}" 56 IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" 57 IMPORTED_LOCATION "${llama_LIBRARY}" 58 INTERFACE_COMPILE_FEATURES cxx_std_11 59 POSITION_INDEPENDENT_CODE ON ) 60 61 check_required_components(Llama)