Fix Windows MSVC AVX builds

- bug introduced in 0cb2b86730
- currently getting: `warning C5102: ignoring invalid command-line macro definition '/arch:AVX2'`
- solution is to use `_options(...)` not `_definitions(...)`
pull/913/head^2
Cosmic Snow 1 year ago committed by AT
parent b906fb4057
commit ae4a275bcd

@ -381,7 +381,7 @@ function(include_ggml DIRECTORY SUFFIX WITH_LLAMA)
message(STATUS "x86 detected") message(STATUS "x86 detected")
if (MSVC) if (MSVC)
if (LLAMA_AVX512) if (LLAMA_AVX512)
target_compile_definitions(ggml${SUFFIX} PRIVATE target_compile_options(ggml${SUFFIX} PRIVATE
$<$<COMPILE_LANGUAGE:C>:/arch:AVX512> $<$<COMPILE_LANGUAGE:C>:/arch:AVX512>
$<$<COMPILE_LANGUAGE:CXX>:/arch:AVX512>) $<$<COMPILE_LANGUAGE:CXX>:/arch:AVX512>)
# MSVC has no compile-time flags enabling specific # MSVC has no compile-time flags enabling specific
@ -399,11 +399,11 @@ function(include_ggml DIRECTORY SUFFIX WITH_LLAMA)
$<$<COMPILE_LANGUAGE:CXX>:__AVX512VNNI__>) $<$<COMPILE_LANGUAGE:CXX>:__AVX512VNNI__>)
endif() endif()
elseif (LLAMA_AVX2) elseif (LLAMA_AVX2)
target_compile_definitions(ggml${SUFFIX} PRIVATE target_compile_options(ggml${SUFFIX} PRIVATE
$<$<COMPILE_LANGUAGE:C>:/arch:AVX2> $<$<COMPILE_LANGUAGE:C>:/arch:AVX2>
$<$<COMPILE_LANGUAGE:CXX>:/arch:AVX2>) $<$<COMPILE_LANGUAGE:CXX>:/arch:AVX2>)
elseif (LLAMA_AVX) elseif (LLAMA_AVX)
target_compile_definitions(ggml${SUFFIX} PRIVATE target_compile_options(ggml${SUFFIX} PRIVATE
$<$<COMPILE_LANGUAGE:C>:/arch:AVX> $<$<COMPILE_LANGUAGE:C>:/arch:AVX>
$<$<COMPILE_LANGUAGE:CXX>:/arch:AVX>) $<$<COMPILE_LANGUAGE:CXX>:/arch:AVX>)
endif() endif()

Loading…
Cancel
Save