Bladeren bron

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 9 maanden geleden
bovenliggende
commit
99881f77d8
1 gewijzigde bestanden met toevoegingen van 10 en 1 verwijderingen
  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()