@@ -115,28 +115,32 @@ endif()
115
115
116
116
add_library (pybind11::windows_extras IMPORTED INTERFACE ${optional_global} )
117
117
118
- if (MSVC )
119
- # /MP enables multithreaded builds (relevant when there are many files), /bigobj is
120
- # needed for bigger binding projects due to the limit to 64k addressable sections
118
+ if (MSVC ) # That's also clang-cl
119
+ # /bigobj is needed for bigger binding projects due to the limit to 64k
120
+ # addressable sections
121
121
set_property (
122
122
TARGET pybind11::windows_extras
123
123
APPEND
124
124
PROPERTY INTERFACE_COMPILE_OPTIONS /bigobj)
125
125
126
- if (CMAKE_VERSION VERSION_LESS 3.11)
127
- set_property (
128
- TARGET pybind11::windows_extras
129
- APPEND
130
- PROPERTY INTERFACE_COMPILE_OPTIONS $<$<NOT :$<CONFIG:Debug>>:/MP>)
131
- else ()
132
- # Only set these options for C++ files. This is important so that, for
133
- # instance, projects that include other types of source files like CUDA
134
- # .cu files don't get these options propagated to nvcc since that would
135
- # cause the build to fail.
136
- set_property (
137
- TARGET pybind11::windows_extras
138
- APPEND
139
- PROPERTY INTERFACE_COMPILE_OPTIONS $<$<NOT :$<CONFIG:Debug>>:$<$<COMPILE_LANGUAGE:CXX>:/MP>>)
126
+ # /MP enables multithreaded builds (relevant when there are many files) for MSVC
127
+ if ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "MSVC" ) # no Clang no Intel
128
+ if (CMAKE_VERSION VERSION_LESS 3.11)
129
+ set_property (
130
+ TARGET pybind11::windows_extras
131
+ APPEND
132
+ PROPERTY INTERFACE_COMPILE_OPTIONS $<$<NOT :$<CONFIG:Debug>>:/MP>)
133
+ else ()
134
+ # Only set these options for C++ files. This is important so that, for
135
+ # instance, projects that include other types of source files like CUDA
136
+ # .cu files don't get these options propagated to nvcc since that would
137
+ # cause the build to fail.
138
+ set_property (
139
+ TARGET pybind11::windows_extras
140
+ APPEND
141
+ PROPERTY INTERFACE_COMPILE_OPTIONS
142
+ $<$<NOT :$<CONFIG:Debug>>:$<$<COMPILE_LANGUAGE:CXX>:/MP>>)
143
+ endif ()
140
144
endif ()
141
145
endif ()
142
146
0 commit comments