Skip to content

Commit 33b5670

Browse files
authored
Merge pull request #3096 from martin-frbg/fixclangcmake
Fix Cooperlake/DYNAMIC_ARCH builds with clang on Windows
2 parents 0cc3677 + 95e19e2 commit 33b5670

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

cmake/system.cmake

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -148,16 +148,20 @@ endif ()
148148
include("${PROJECT_SOURCE_DIR}/cmake/prebuild.cmake")
149149
if (DEFINED TARGET)
150150
if (${TARGET} STREQUAL COOPERLAKE AND NOT NO_AVX512)
151-
# if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
151+
if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
152152
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
153-
if (${GCC_VERSION} VERSION_GREATER 10.1 OR ${GCC_VERSION} VERSION_EQUAL 10.1)
153+
if (${CMAKE_C_COMPILER_VERSION} VERSION_GREATER 10.09)
154+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=cooperlake")
155+
else()
156+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512")
157+
endif()
158+
elseif (${CMAKE_C_COMPILER_ID} STREQUAL "Clang" OR ${CMAKE_C_COMPILER_ID} STREQUAL "AppleClang")
159+
if (${CMAKE_C_COMPILER_VERSION} VERSION_GREATER 8.99)
154160
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=cooperlake")
155161
else()
156162
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512")
157163
endif()
158-
# elseif (${CMAKE_C_COMPILER_ID} STREQUAL "CLANG")
159-
# set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2")
160-
# endif()
164+
endif()
161165
endif()
162166
if (${TARGET} STREQUAL SKYLAKEX AND NOT NO_AVX512)
163167
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512")

0 commit comments

Comments
 (0)