Skip to content

Commit 41e9ecf

Browse files
authored
Optimize compilation with Ninja (#31449)
* Optimize compilation with Ninja, notest, test=windows_ci, test=windows_op * no cache on windows ci, notest, test=windows_ci, test=windows_op * delete /Zc:inline compiled in NVCC, notest, test=windows_ci, test=windows_op * fix test_warpctc_op, notest, test=windows_ci * remove test code, test=develop
1 parent c1b1ccf commit 41e9ecf

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,13 @@ if(WIN32)
7272
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /bigobj")
7373
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /bigobj")
7474

75+
if("${CMAKE_GENERATOR}" STREQUAL "Ninja")
76+
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /Zc:inline")
77+
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /Zc:inline")
78+
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /Zc:inline")
79+
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zc:inline")
80+
endif()
81+
7582
if (MSVC_STATIC_CRT)
7683
message(STATUS "Use static C runtime time, refer to https://docs.microsoft.com/en-us/cpp/c-runtime-library/crt-library-features?view=vs-2019")
7784
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MTd")

cmake/external/warpctc.cmake

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@ ExternalProject_Add(
4949
BUILD_ALWAYS 1
5050
CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
5151
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
52-
-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
53-
-DCMAKE_C_FLAGS_DEBUG=${CMAKE_C_FLAGS_DEBUG}
54-
-DCMAKE_C_FLAGS_RELEASE=${CMAKE_C_FLAGS_RELEASE}
55-
-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
56-
-DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE}
57-
-DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG}
52+
-DCMAKE_C_FLAGS=$<FILTER:${CMAKE_C_FLAGS},EXCLUDE,/Zc:inline>
53+
-DCMAKE_C_FLAGS_DEBUG=$<FILTER:${CMAKE_C_FLAGS_DEBUG},EXCLUDE,/Zc:inline>
54+
-DCMAKE_C_FLAGS_RELEASE=$<FILTER:${CMAKE_C_FLAGS_RELEASE},EXCLUDE,/Zc:inline>
55+
-DCMAKE_CXX_FLAGS=$<FILTER:${CMAKE_CXX_FLAGS},EXCLUDE,/Zc:inline>
56+
-DCMAKE_CXX_FLAGS_RELEASE=$<FILTER:${CMAKE_CXX_FLAGS_RELEASE},EXCLUDE,/Zc:inline>
57+
-DCMAKE_CXX_FLAGS_DEBUG=$<FILTER:${CMAKE_CXX_FLAGS_DEBUG},EXCLUDE,/Zc:inline>
5858
-DCMAKE_INSTALL_PREFIX=${WARPCTC_INSTALL_DIR}
5959
-DWITH_GPU=${WITH_GPU}
6060
-DWITH_OMP=${USE_OMP}

0 commit comments

Comments
 (0)