Explorar o código

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 hai 8 meses
pai
achega
99881f77d8
Modificáronse 1 ficheiros con 10 adicións e 1 borrados
  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()