Skip to content

Commit 76b4b89

Browse files
authored
Use -dumpversion with gcc only
1 parent 49e0f48 commit 76b4b89

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

cmake/system.cmake

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,19 @@ if (DEFINED BINARY AND DEFINED TARGET AND BINARY EQUAL 32)
4242
endif ()
4343

4444
if (DEFINED TARGET)
45-
if (${TARGET} STREQUAL "SKYLAKEX" AND NOT NO_AVX512)
46-
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512")
47-
endif()
48-
if (${TARGET} STREQUAL "HASWELL" AND NOT NO_AVX2)
49-
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
50-
if (${GCC_VERSION} VERSION_GREATER 4.7 OR ${GCC_VERSION} VERSION_EQUAL 4.7)
51-
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2")
52-
endif()
53-
endif()
45+
if (${TARGET} STREQUAL "SKYLAKEX" AND NOT NO_AVX512)
46+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512")
47+
endif()
48+
if (${TARGET} STREQUAL "HASWELL" AND NOT NO_AVX2)
49+
if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU")
50+
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
51+
if (${GCC_VERSION} VERSION_GREATER 4.7 OR ${GCC_VERSION} VERSION_EQUAL 4.7)
52+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2")
53+
endif()
54+
elseif (${CMAKE_C_COMPILER_ID} STREQUAL "CLANG")
55+
set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2")
56+
endif()
57+
endif()
5458
endif()
5559

5660
if (DEFINED TARGET)

0 commit comments

Comments
 (0)