From 60b481d881989cc355751b733d36e838dfb69de1 Mon Sep 17 00:00:00 2001 From: Peter Date: Mon, 17 Mar 2025 18:54:48 +1100 Subject: [PATCH] whisper : add option to use system-installed GGML (#2887) --- CMakeLists.txt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 45f8270c..a2e2c91d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -62,7 +62,8 @@ option(WHISPER_ALL_WARNINGS "whisper: enable all compiler warnings" option(WHISPER_ALL_WARNINGS_3RD_PARTY "whisper: enable all compiler warnings in 3rd party libs" OFF) # build -option(WHISPER_FATAL_WARNINGS "whisper: enable -Werror flag" OFF) +option(WHISPER_FATAL_WARNINGS "whisper: enable -Werror flag" OFF) +option(WHISPER_USE_SYSTEM_GGML "whisper: use system-installed GGML library" OFF) # sanitizers option(WHISPER_SANITIZE_THREAD "whisper: enable thread sanitizer" OFF) @@ -121,7 +122,15 @@ whisper_option_depr(WARNING WHISPER_SYCL_F16 GGML_SYCL_F16) # if (NOT TARGET ggml) - add_subdirectory(ggml) + if (WHISPER_USE_SYSTEM_GGML) + find_package(ggml REQUIRED) + if (NOT ggml_FOUND) + message(FATAL_ERROR "System-installed GGML library not found.") + endif() + add_library(ggml ALIAS ggml::ggml) + else() + add_subdirectory(ggml) + endif() # ... otherwise assume ggml is added by a parent CMakeLists.txt endif() add_subdirectory(src)