https://github.com/gchatelet created https://github.com/llvm/llvm-project/pull/66878
This is a reland of #66783 a35a3b75b219247eb9ff6784d1a0fe562f72d415 fixing the benchmark breakage. >From b3150085acea981ca9ed55c161ee9afeccfead20 Mon Sep 17 00:00:00 2001 From: Guillaume Chatelet <gchate...@google.com> Date: Tue, 19 Sep 2023 21:16:42 +0000 Subject: [PATCH 1/2] Revert "[libc][cmake] Tidy compiler includes (#66783)" This reverts commit a35a3b75b219247eb9ff6784d1a0fe562f72d415. This broke libc benchmarks. --- libc/CMakeLists.txt | 5 --- libc/cmake/modules/LLVMLibCObjectRules.cmake | 31 +++++++++++-------- libc/cmake/modules/LLVMLibCTestRules.cmake | 32 +++++++++++++++----- libc/utils/HdrGen/CMakeLists.txt | 2 +- libc/utils/LibcTableGenUtil/CMakeLists.txt | 1 - 5 files changed, 43 insertions(+), 28 deletions(-) diff --git a/libc/CMakeLists.txt b/libc/CMakeLists.txt index 414be906336bf3f..0cec6fc07d982b4 100644 --- a/libc/CMakeLists.txt +++ b/libc/CMakeLists.txt @@ -7,11 +7,6 @@ endif() include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake NO_POLICY_SCOPE) -# `llvm-project/llvm/CMakeLists.txt` adds the following directive -# `include_directories( ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR})` -# We undo it to be able to precisely control what is getting included. -set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "") - # Default to C++17 set(CMAKE_CXX_STANDARD 17) diff --git a/libc/cmake/modules/LLVMLibCObjectRules.cmake b/libc/cmake/modules/LLVMLibCObjectRules.cmake index c10b81f1af8cba3..994437f55d27407 100644 --- a/libc/cmake/modules/LLVMLibCObjectRules.cmake +++ b/libc/cmake/modules/LLVMLibCObjectRules.cmake @@ -151,6 +151,7 @@ function(_build_gpu_objects fq_target_name internal_target_name) ${ARGN} ) + set(include_dirs ${LIBC_SOURCE_DIR} ${LIBC_INCLUDE_DIR}) set(common_compile_options ${ADD_GPU_OBJ_COMPILE_OPTIONS}) if(NOT ADD_GPU_OBJ_CXX_STANDARD) set(ADD_GPU_OBJ_CXX_STANDARD ${CMAKE_CXX_STANDARD}) @@ -188,10 +189,13 @@ function(_build_gpu_objects fq_target_name internal_target_name) ) target_compile_options(${gpu_target_name} PRIVATE ${compile_options}) - target_include_directories(${gpu_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${gpu_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories(${gpu_target_name} PRIVATE ${include_dirs}) target_compile_definitions(${gpu_target_name} PRIVATE LIBC_COPT_PUBLIC_PACKAGING) - set_target_properties(${gpu_target_name} PROPERTIES CXX_STANDARD ${ADD_GPU_OBJ_CXX_STANDARD}) + set_target_properties( + ${gpu_target_name} + PROPERTIES + CXX_STANDARD ${ADD_GPU_OBJ_CXX_STANDARD} + ) if(ADD_GPU_OBJ_DEPENDS) add_dependencies(${gpu_target_name} ${ADD_GPU_OBJ_DEPENDS}) endif() @@ -257,8 +261,7 @@ function(_build_gpu_objects fq_target_name internal_target_name) target_compile_options(${fq_target_name} PRIVATE "SHELL:-Xclang -fembed-offload-object=${packaged_gpu_binary}") endforeach() - target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories(${fq_target_name} PRIVATE ${include_dirs}) add_dependencies(${fq_target_name} ${full_deps_list} ${packaged_gpu_names} ${stub_target_name}) @@ -282,8 +285,7 @@ function(_build_gpu_objects fq_target_name internal_target_name) get_nvptx_compile_options(nvptx_options ${LIBC_GPU_TARGET_ARCHITECTURE}) target_compile_options(${internal_target_name} PRIVATE ${nvptx_options}) endif() - target_include_directories(${internal_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${internal_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories(${internal_target_name} PRIVATE ${include_dirs}) if(full_deps_list) add_dependencies(${internal_target_name} ${full_deps_list}) endif() @@ -367,8 +369,12 @@ function(create_object_library fq_target_name) ${ADD_OBJECT_SRCS} ${ADD_OBJECT_HDRS} ) - target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories( + ${fq_target_name} + PRIVATE + ${LIBC_SOURCE_DIR} + ${LIBC_INCLUDE_DIR} + ) target_compile_options(${fq_target_name} PRIVATE ${compile_options}) endif() @@ -627,6 +633,7 @@ function(create_entrypoint_object fq_target_name) "${ADD_ENTRYPOINT_OBJ_FLAGS}" ${ADD_ENTRYPOINT_OBJ_COMPILE_OPTIONS} ) + set(include_dirs ${LIBC_SOURCE_DIR} ${LIBC_INCLUDE_DIR}) get_fq_deps_list(fq_deps_list ${ADD_ENTRYPOINT_OBJ_DEPENDS}) set(full_deps_list ${fq_deps_list} libc.src.__support.common) @@ -663,8 +670,7 @@ function(create_entrypoint_object fq_target_name) ${ADD_ENTRYPOINT_OBJ_HDRS} ) target_compile_options(${internal_target_name} BEFORE PRIVATE ${common_compile_options}) - target_include_directories(${internal_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${internal_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories(${internal_target_name} PRIVATE ${include_dirs}) add_dependencies(${internal_target_name} ${full_deps_list}) target_link_libraries(${internal_target_name} ${full_deps_list}) @@ -678,8 +684,7 @@ function(create_entrypoint_object fq_target_name) ${ADD_ENTRYPOINT_OBJ_HDRS} ) target_compile_options(${fq_target_name} BEFORE PRIVATE ${common_compile_options} -DLIBC_COPT_PUBLIC_PACKAGING) - target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories(${fq_target_name} PRIVATE ${include_dirs}) add_dependencies(${fq_target_name} ${full_deps_list}) target_link_libraries(${fq_target_name} ${full_deps_list}) endif() diff --git a/libc/cmake/modules/LLVMLibCTestRules.cmake b/libc/cmake/modules/LLVMLibCTestRules.cmake index 3d02a37e96db51f..e1286b4ab963189 100644 --- a/libc/cmake/modules/LLVMLibCTestRules.cmake +++ b/libc/cmake/modules/LLVMLibCTestRules.cmake @@ -148,8 +148,12 @@ function(create_libc_unittest fq_target_name) ${LIBC_UNITTEST_SRCS} ${LIBC_UNITTEST_HDRS} ) - target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories( + ${fq_build_target_name} + PRIVATE + ${LIBC_SOURCE_DIR} + ${LIBC_INCLUDE_DIR} + ) target_compile_options( ${fq_build_target_name} PRIVATE -fpie ${LIBC_COMPILE_OPTIONS_DEFAULT} @@ -382,8 +386,12 @@ function(add_libc_fuzzer target_name) ${LIBC_FUZZER_SRCS} ${LIBC_FUZZER_HDRS} ) - target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories( + ${fq_target_name} + PRIVATE + ${LIBC_SOURCE_DIR} + ${LIBC_INCLUDE_DIR} + ) target_link_libraries(${fq_target_name} PRIVATE ${link_object_files} @@ -508,8 +516,12 @@ function(add_integration_test test_name) ) set_target_properties(${fq_build_target_name} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) - target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories( + ${fq_build_target_name} + PRIVATE + ${LIBC_SOURCE_DIR} + ${LIBC_INCLUDE_DIR} + ) target_compile_options(${fq_build_target_name} PRIVATE -fpie -ffreestanding -fno-exceptions -fno-rtti ${INTEGRATION_TEST_COMPILE_OPTIONS}) # The GPU build requires overriding the default CMake triple and architecture. @@ -671,8 +683,12 @@ function(add_libc_hermetic_test test_name) RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} #OUTPUT_NAME ${fq_target_name} ) - target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) - target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR}) + target_include_directories( + ${fq_build_target_name} + PRIVATE + ${LIBC_SOURCE_DIR} + ${LIBC_INCLUDE_DIR} + ) target_compile_options(${fq_build_target_name} PRIVATE ${LIBC_HERMETIC_TEST_COMPILE_OPTIONS} ${HERMETIC_TEST_COMPILE_OPTIONS}) diff --git a/libc/utils/HdrGen/CMakeLists.txt b/libc/utils/HdrGen/CMakeLists.txt index 0ec1cba542d400d..0b1612e8a886ae6 100644 --- a/libc/utils/HdrGen/CMakeLists.txt +++ b/libc/utils/HdrGen/CMakeLists.txt @@ -14,7 +14,7 @@ add_tablegen(libc-hdrgen LIBC PublicAPICommand.h ) -target_include_directories(libc-hdrgen PRIVATE ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR}) +target_include_directories(libc-hdrgen PRIVATE ${LIBC_SOURCE_DIR}) target_link_libraries(libc-hdrgen PRIVATE LibcTableGenUtil) add_subdirectory(PrototypeTestGen) diff --git a/libc/utils/LibcTableGenUtil/CMakeLists.txt b/libc/utils/LibcTableGenUtil/CMakeLists.txt index dca6a7bb8306557..222f177ee2f7706 100644 --- a/libc/utils/LibcTableGenUtil/CMakeLists.txt +++ b/libc/utils/LibcTableGenUtil/CMakeLists.txt @@ -6,4 +6,3 @@ add_llvm_library( LINK_COMPONENTS Support TableGen ) target_include_directories(LibcTableGenUtil PUBLIC ${LIBC_SOURCE_DIR}) -target_include_directories(LibcTableGenUtil PRIVATE ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR}) >From 4f2c8a4c1a55eb7d5ff24fd9bde4ca321813b7bc Mon Sep 17 00:00:00 2001 From: Guillaume Chatelet <gchate...@google.com> Date: Wed, 20 Sep 2023 09:17:09 +0000 Subject: [PATCH 2/2] [reland][libc][cmake] Tidy compiler includes (#66783) We want to activate `llvm-header-guard` (#66477) but the current CMake configuration includes paths that should be `isystem`. This PR restricts the number of `-I` passed to the clang command line and correctly marks the llvm libc include path as `isystem`. This is a reland of #66783 a35a3b75b219247eb9ff6784d1a0fe562f72d415 fixing the benchmark breakage. --- libc/CMakeLists.txt | 5 +++ libc/benchmarks/CMakeLists.txt | 3 ++ libc/cmake/modules/LLVMLibCObjectRules.cmake | 31 ++++++++----------- libc/cmake/modules/LLVMLibCTestRules.cmake | 32 +++++--------------- libc/utils/HdrGen/CMakeLists.txt | 2 +- libc/utils/LibcTableGenUtil/CMakeLists.txt | 1 + 6 files changed, 31 insertions(+), 43 deletions(-) diff --git a/libc/CMakeLists.txt b/libc/CMakeLists.txt index 0cec6fc07d982b4..414be906336bf3f 100644 --- a/libc/CMakeLists.txt +++ b/libc/CMakeLists.txt @@ -7,6 +7,11 @@ endif() include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake NO_POLICY_SCOPE) +# `llvm-project/llvm/CMakeLists.txt` adds the following directive +# `include_directories( ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR})` +# We undo it to be able to precisely control what is getting included. +set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "") + # Default to C++17 set(CMAKE_CXX_STANDARD 17) diff --git a/libc/benchmarks/CMakeLists.txt b/libc/benchmarks/CMakeLists.txt index 3d665ce1c6e7198..48f5f48ff832248 100644 --- a/libc/benchmarks/CMakeLists.txt +++ b/libc/benchmarks/CMakeLists.txt @@ -85,6 +85,9 @@ add_library(libc-benchmark LibcBenchmark.h ) +target_include_directories(libc-benchmark + PUBLIC ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR} +) target_link_libraries(libc-benchmark PUBLIC benchmark::benchmark diff --git a/libc/cmake/modules/LLVMLibCObjectRules.cmake b/libc/cmake/modules/LLVMLibCObjectRules.cmake index 994437f55d27407..c10b81f1af8cba3 100644 --- a/libc/cmake/modules/LLVMLibCObjectRules.cmake +++ b/libc/cmake/modules/LLVMLibCObjectRules.cmake @@ -151,7 +151,6 @@ function(_build_gpu_objects fq_target_name internal_target_name) ${ARGN} ) - set(include_dirs ${LIBC_SOURCE_DIR} ${LIBC_INCLUDE_DIR}) set(common_compile_options ${ADD_GPU_OBJ_COMPILE_OPTIONS}) if(NOT ADD_GPU_OBJ_CXX_STANDARD) set(ADD_GPU_OBJ_CXX_STANDARD ${CMAKE_CXX_STANDARD}) @@ -189,13 +188,10 @@ function(_build_gpu_objects fq_target_name internal_target_name) ) target_compile_options(${gpu_target_name} PRIVATE ${compile_options}) - target_include_directories(${gpu_target_name} PRIVATE ${include_dirs}) + target_include_directories(${gpu_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${gpu_target_name} PRIVATE ${LIBC_SOURCE_DIR}) target_compile_definitions(${gpu_target_name} PRIVATE LIBC_COPT_PUBLIC_PACKAGING) - set_target_properties( - ${gpu_target_name} - PROPERTIES - CXX_STANDARD ${ADD_GPU_OBJ_CXX_STANDARD} - ) + set_target_properties(${gpu_target_name} PROPERTIES CXX_STANDARD ${ADD_GPU_OBJ_CXX_STANDARD}) if(ADD_GPU_OBJ_DEPENDS) add_dependencies(${gpu_target_name} ${ADD_GPU_OBJ_DEPENDS}) endif() @@ -261,7 +257,8 @@ function(_build_gpu_objects fq_target_name internal_target_name) target_compile_options(${fq_target_name} PRIVATE "SHELL:-Xclang -fembed-offload-object=${packaged_gpu_binary}") endforeach() - target_include_directories(${fq_target_name} PRIVATE ${include_dirs}) + target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) add_dependencies(${fq_target_name} ${full_deps_list} ${packaged_gpu_names} ${stub_target_name}) @@ -285,7 +282,8 @@ function(_build_gpu_objects fq_target_name internal_target_name) get_nvptx_compile_options(nvptx_options ${LIBC_GPU_TARGET_ARCHITECTURE}) target_compile_options(${internal_target_name} PRIVATE ${nvptx_options}) endif() - target_include_directories(${internal_target_name} PRIVATE ${include_dirs}) + target_include_directories(${internal_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${internal_target_name} PRIVATE ${LIBC_SOURCE_DIR}) if(full_deps_list) add_dependencies(${internal_target_name} ${full_deps_list}) endif() @@ -369,12 +367,8 @@ function(create_object_library fq_target_name) ${ADD_OBJECT_SRCS} ${ADD_OBJECT_HDRS} ) - target_include_directories( - ${fq_target_name} - PRIVATE - ${LIBC_SOURCE_DIR} - ${LIBC_INCLUDE_DIR} - ) + target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) target_compile_options(${fq_target_name} PRIVATE ${compile_options}) endif() @@ -633,7 +627,6 @@ function(create_entrypoint_object fq_target_name) "${ADD_ENTRYPOINT_OBJ_FLAGS}" ${ADD_ENTRYPOINT_OBJ_COMPILE_OPTIONS} ) - set(include_dirs ${LIBC_SOURCE_DIR} ${LIBC_INCLUDE_DIR}) get_fq_deps_list(fq_deps_list ${ADD_ENTRYPOINT_OBJ_DEPENDS}) set(full_deps_list ${fq_deps_list} libc.src.__support.common) @@ -670,7 +663,8 @@ function(create_entrypoint_object fq_target_name) ${ADD_ENTRYPOINT_OBJ_HDRS} ) target_compile_options(${internal_target_name} BEFORE PRIVATE ${common_compile_options}) - target_include_directories(${internal_target_name} PRIVATE ${include_dirs}) + target_include_directories(${internal_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${internal_target_name} PRIVATE ${LIBC_SOURCE_DIR}) add_dependencies(${internal_target_name} ${full_deps_list}) target_link_libraries(${internal_target_name} ${full_deps_list}) @@ -684,7 +678,8 @@ function(create_entrypoint_object fq_target_name) ${ADD_ENTRYPOINT_OBJ_HDRS} ) target_compile_options(${fq_target_name} BEFORE PRIVATE ${common_compile_options} -DLIBC_COPT_PUBLIC_PACKAGING) - target_include_directories(${fq_target_name} PRIVATE ${include_dirs}) + target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) add_dependencies(${fq_target_name} ${full_deps_list}) target_link_libraries(${fq_target_name} ${full_deps_list}) endif() diff --git a/libc/cmake/modules/LLVMLibCTestRules.cmake b/libc/cmake/modules/LLVMLibCTestRules.cmake index e1286b4ab963189..3d02a37e96db51f 100644 --- a/libc/cmake/modules/LLVMLibCTestRules.cmake +++ b/libc/cmake/modules/LLVMLibCTestRules.cmake @@ -148,12 +148,8 @@ function(create_libc_unittest fq_target_name) ${LIBC_UNITTEST_SRCS} ${LIBC_UNITTEST_HDRS} ) - target_include_directories( - ${fq_build_target_name} - PRIVATE - ${LIBC_SOURCE_DIR} - ${LIBC_INCLUDE_DIR} - ) + target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR}) target_compile_options( ${fq_build_target_name} PRIVATE -fpie ${LIBC_COMPILE_OPTIONS_DEFAULT} @@ -386,12 +382,8 @@ function(add_libc_fuzzer target_name) ${LIBC_FUZZER_SRCS} ${LIBC_FUZZER_HDRS} ) - target_include_directories( - ${fq_target_name} - PRIVATE - ${LIBC_SOURCE_DIR} - ${LIBC_INCLUDE_DIR} - ) + target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR}) target_link_libraries(${fq_target_name} PRIVATE ${link_object_files} @@ -516,12 +508,8 @@ function(add_integration_test test_name) ) set_target_properties(${fq_build_target_name} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) - target_include_directories( - ${fq_build_target_name} - PRIVATE - ${LIBC_SOURCE_DIR} - ${LIBC_INCLUDE_DIR} - ) + target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR}) target_compile_options(${fq_build_target_name} PRIVATE -fpie -ffreestanding -fno-exceptions -fno-rtti ${INTEGRATION_TEST_COMPILE_OPTIONS}) # The GPU build requires overriding the default CMake triple and architecture. @@ -683,12 +671,8 @@ function(add_libc_hermetic_test test_name) RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} #OUTPUT_NAME ${fq_target_name} ) - target_include_directories( - ${fq_build_target_name} - PRIVATE - ${LIBC_SOURCE_DIR} - ${LIBC_INCLUDE_DIR} - ) + target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR}) + target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR}) target_compile_options(${fq_build_target_name} PRIVATE ${LIBC_HERMETIC_TEST_COMPILE_OPTIONS} ${HERMETIC_TEST_COMPILE_OPTIONS}) diff --git a/libc/utils/HdrGen/CMakeLists.txt b/libc/utils/HdrGen/CMakeLists.txt index 0b1612e8a886ae6..0ec1cba542d400d 100644 --- a/libc/utils/HdrGen/CMakeLists.txt +++ b/libc/utils/HdrGen/CMakeLists.txt @@ -14,7 +14,7 @@ add_tablegen(libc-hdrgen LIBC PublicAPICommand.h ) -target_include_directories(libc-hdrgen PRIVATE ${LIBC_SOURCE_DIR}) +target_include_directories(libc-hdrgen PRIVATE ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR}) target_link_libraries(libc-hdrgen PRIVATE LibcTableGenUtil) add_subdirectory(PrototypeTestGen) diff --git a/libc/utils/LibcTableGenUtil/CMakeLists.txt b/libc/utils/LibcTableGenUtil/CMakeLists.txt index 222f177ee2f7706..dca6a7bb8306557 100644 --- a/libc/utils/LibcTableGenUtil/CMakeLists.txt +++ b/libc/utils/LibcTableGenUtil/CMakeLists.txt @@ -6,3 +6,4 @@ add_llvm_library( LINK_COMPONENTS Support TableGen ) target_include_directories(LibcTableGenUtil PUBLIC ${LIBC_SOURCE_DIR}) +target_include_directories(LibcTableGenUtil PRIVATE ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR}) _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits