Просмотр исходного кода

whisper : add check that target name exists (whisper/3103)

This commit adds a check to makes sure that the target exists before
trying to add compile options to ignore warnings when using MSVC.

The motivation for this is currently the build is broken depending on
the cmake options provided. With this fix it should be possible to build
even if the targets are not actually available.

Refs: https://github.com/ggml-org/whisper.cpp/pull/3090#issuecomment-2842760104
Daniel Bevenius 8 месяцев назад
Родитель
Сommit
99881f77d8
1 измененных файлов с 10 добавлено и 1 удалено
  1. 10 1
      ggml/CMakeLists.txt

+ 10 - 1
ggml/CMakeLists.txt

@@ -368,10 +368,19 @@ if (MSVC)
         /wd4267  # Conversion from 'size_t' to a smaller type, possible loss of data
     )
     function(disable_msvc_warnings target_name)
-        target_compile_options(${target_name} PRIVATE ${MSVC_WARNING_FLAGS})
+        if(TARGET ${target_name})
+            target_compile_options(${target_name} PRIVATE ${MSVC_WARNING_FLAGS})
+        endif()
     endfunction()
 
     disable_msvc_warnings(ggml-base)
     disable_msvc_warnings(ggml)
     disable_msvc_warnings(ggml-cpu)
+    disable_msvc_warnings(ggml-cpu-x64)
+    disable_msvc_warnings(ggml-cpu-sse42)
+    disable_msvc_warnings(ggml-cpu-sandybridge)
+    disable_msvc_warnings(ggml-cpu-haswell)
+    disable_msvc_warnings(ggml-cpu-skylakex)
+    disable_msvc_warnings(ggml-cpu-icelake)
+    disable_msvc_warnings(ggml-cpu-alderlake)
 endif()