Skip to content

Commit 688d71e

Browse files
authored
[libclc] Track dependencies through dependency files (#86965)
This commit fixes the problem of missing build dependencies between libclc source files and their various includes (namely headers and .inc files). We would like to do this with compiler-generated dependency files because then the dependencies are accurate and there are no false positives, leading to unnecessary rebuilds. This is how regular C/C++ dependencies are usually tracked by CMake. Note that this variable is an internal API so is not guaranteed to work, but then again *all* of CMake's support for new languages (which we use for CLC/LL languages) is an internal API. On balance this change is probably worth it due to how minimally invasive it is. It should work with all supported compilers and CMake generators.
1 parent 44af53b commit 688d71e

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

libclc/cmake/CMakeCLCInformation.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ if(NOT CMAKE_CLC_CREATE_STATIC_LIBRARY)
99
endif()
1010

1111
set(CMAKE_INCLUDE_FLAG_CLC "-I")
12+
set(CMAKE_DEPFILE_FLAGS_CLC "-MD -MT <DEP_TARGET> -MF <DEP_FILE>")

0 commit comments

Comments
 (0)