Skip to content

Commit d189614

Browse files
committed
Changing MSVC to clang-cl on win (XII)
1 parent c35159f commit d189614

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

CMakeLists.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ target_link_libraries(blosc2_ext PRIVATE Python::NumPy)
5151

5252
# Add include directory for miniexpr.h and others
5353
target_include_directories(blosc2_ext PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src/blosc2")
54+
# Enforce a C standard that miniexpr relies on.
55+
target_compile_features(blosc2_ext PRIVATE c_std_99)
5456

5557
if(DEFINED ENV{USE_SYSTEM_BLOSC2})
5658
set(USE_SYSTEM_BLOSC2 ON)
@@ -81,6 +83,16 @@ else()
8183
FetchContent_MakeAvailable(blosc2)
8284
include_directories("${blosc2_SOURCE_DIR}/include")
8385
target_link_libraries(blosc2_ext PRIVATE blosc2_static)
86+
if(WIN32 AND CMAKE_C_COMPILER_ID STREQUAL "Clang")
87+
set(_blosc2_ssse3_flag "-mssse3")
88+
if(CMAKE_C_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
89+
set(_blosc2_ssse3_flag "/clang:-mssse3")
90+
endif()
91+
if(TARGET blosc2_static)
92+
target_compile_options(blosc2_static PRIVATE "${_blosc2_ssse3_flag}")
93+
endif()
94+
unset(_blosc2_ssse3_flag)
95+
endif()
8496
endif()
8597

8698
add_custom_command(

0 commit comments

Comments
 (0)