Skip to content

Commit 9feb0c9

Browse files
authored
Revert "[libc][cmake] Tidy compiler includes (#66783)" (#66822)
This reverts commit a35a3b7. This broke libc benchmarks.
1 parent c649f29 commit 9feb0c9

File tree

5 files changed

+43
-28
lines changed

5 files changed

+43
-28
lines changed

libc/CMakeLists.txt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,6 @@ endif()
77
include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake
88
NO_POLICY_SCOPE)
99

10-
# `llvm-project/llvm/CMakeLists.txt` adds the following directive
11-
# `include_directories( ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR})`
12-
# We undo it to be able to precisely control what is getting included.
13-
set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "")
14-
1510
# Default to C++17
1611
set(CMAKE_CXX_STANDARD 17)
1712

libc/cmake/modules/LLVMLibCObjectRules.cmake

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,7 @@ function(_build_gpu_objects fq_target_name internal_target_name)
151151
${ARGN}
152152
)
153153

154+
set(include_dirs ${LIBC_SOURCE_DIR} ${LIBC_INCLUDE_DIR})
154155
set(common_compile_options ${ADD_GPU_OBJ_COMPILE_OPTIONS})
155156
if(NOT ADD_GPU_OBJ_CXX_STANDARD)
156157
set(ADD_GPU_OBJ_CXX_STANDARD ${CMAKE_CXX_STANDARD})
@@ -188,10 +189,13 @@ function(_build_gpu_objects fq_target_name internal_target_name)
188189
)
189190

190191
target_compile_options(${gpu_target_name} PRIVATE ${compile_options})
191-
target_include_directories(${gpu_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
192-
target_include_directories(${gpu_target_name} PRIVATE ${LIBC_SOURCE_DIR})
192+
target_include_directories(${gpu_target_name} PRIVATE ${include_dirs})
193193
target_compile_definitions(${gpu_target_name} PRIVATE LIBC_COPT_PUBLIC_PACKAGING)
194-
set_target_properties(${gpu_target_name} PROPERTIES CXX_STANDARD ${ADD_GPU_OBJ_CXX_STANDARD})
194+
set_target_properties(
195+
${gpu_target_name}
196+
PROPERTIES
197+
CXX_STANDARD ${ADD_GPU_OBJ_CXX_STANDARD}
198+
)
195199
if(ADD_GPU_OBJ_DEPENDS)
196200
add_dependencies(${gpu_target_name} ${ADD_GPU_OBJ_DEPENDS})
197201
endif()
@@ -257,8 +261,7 @@ function(_build_gpu_objects fq_target_name internal_target_name)
257261
target_compile_options(${fq_target_name} PRIVATE
258262
"SHELL:-Xclang -fembed-offload-object=${packaged_gpu_binary}")
259263
endforeach()
260-
target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
261-
target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR})
264+
target_include_directories(${fq_target_name} PRIVATE ${include_dirs})
262265
add_dependencies(${fq_target_name}
263266
${full_deps_list} ${packaged_gpu_names} ${stub_target_name})
264267

@@ -282,8 +285,7 @@ function(_build_gpu_objects fq_target_name internal_target_name)
282285
get_nvptx_compile_options(nvptx_options ${LIBC_GPU_TARGET_ARCHITECTURE})
283286
target_compile_options(${internal_target_name} PRIVATE ${nvptx_options})
284287
endif()
285-
target_include_directories(${internal_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
286-
target_include_directories(${internal_target_name} PRIVATE ${LIBC_SOURCE_DIR})
288+
target_include_directories(${internal_target_name} PRIVATE ${include_dirs})
287289
if(full_deps_list)
288290
add_dependencies(${internal_target_name} ${full_deps_list})
289291
endif()
@@ -367,8 +369,12 @@ function(create_object_library fq_target_name)
367369
${ADD_OBJECT_SRCS}
368370
${ADD_OBJECT_HDRS}
369371
)
370-
target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
371-
target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR})
372+
target_include_directories(
373+
${fq_target_name}
374+
PRIVATE
375+
${LIBC_SOURCE_DIR}
376+
${LIBC_INCLUDE_DIR}
377+
)
372378
target_compile_options(${fq_target_name} PRIVATE ${compile_options})
373379
endif()
374380

@@ -627,6 +633,7 @@ function(create_entrypoint_object fq_target_name)
627633
"${ADD_ENTRYPOINT_OBJ_FLAGS}"
628634
${ADD_ENTRYPOINT_OBJ_COMPILE_OPTIONS}
629635
)
636+
set(include_dirs ${LIBC_SOURCE_DIR} ${LIBC_INCLUDE_DIR})
630637
get_fq_deps_list(fq_deps_list ${ADD_ENTRYPOINT_OBJ_DEPENDS})
631638
set(full_deps_list ${fq_deps_list} libc.src.__support.common)
632639

@@ -663,8 +670,7 @@ function(create_entrypoint_object fq_target_name)
663670
${ADD_ENTRYPOINT_OBJ_HDRS}
664671
)
665672
target_compile_options(${internal_target_name} BEFORE PRIVATE ${common_compile_options})
666-
target_include_directories(${internal_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
667-
target_include_directories(${internal_target_name} PRIVATE ${LIBC_SOURCE_DIR})
673+
target_include_directories(${internal_target_name} PRIVATE ${include_dirs})
668674
add_dependencies(${internal_target_name} ${full_deps_list})
669675
target_link_libraries(${internal_target_name} ${full_deps_list})
670676

@@ -678,8 +684,7 @@ function(create_entrypoint_object fq_target_name)
678684
${ADD_ENTRYPOINT_OBJ_HDRS}
679685
)
680686
target_compile_options(${fq_target_name} BEFORE PRIVATE ${common_compile_options} -DLIBC_COPT_PUBLIC_PACKAGING)
681-
target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
682-
target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR})
687+
target_include_directories(${fq_target_name} PRIVATE ${include_dirs})
683688
add_dependencies(${fq_target_name} ${full_deps_list})
684689
target_link_libraries(${fq_target_name} ${full_deps_list})
685690
endif()

libc/cmake/modules/LLVMLibCTestRules.cmake

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,12 @@ function(create_libc_unittest fq_target_name)
148148
${LIBC_UNITTEST_SRCS}
149149
${LIBC_UNITTEST_HDRS}
150150
)
151-
target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
152-
target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR})
151+
target_include_directories(
152+
${fq_build_target_name}
153+
PRIVATE
154+
${LIBC_SOURCE_DIR}
155+
${LIBC_INCLUDE_DIR}
156+
)
153157
target_compile_options(
154158
${fq_build_target_name}
155159
PRIVATE -fpie ${LIBC_COMPILE_OPTIONS_DEFAULT}
@@ -382,8 +386,12 @@ function(add_libc_fuzzer target_name)
382386
${LIBC_FUZZER_SRCS}
383387
${LIBC_FUZZER_HDRS}
384388
)
385-
target_include_directories(${fq_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
386-
target_include_directories(${fq_target_name} PRIVATE ${LIBC_SOURCE_DIR})
389+
target_include_directories(
390+
${fq_target_name}
391+
PRIVATE
392+
${LIBC_SOURCE_DIR}
393+
${LIBC_INCLUDE_DIR}
394+
)
387395

388396
target_link_libraries(${fq_target_name} PRIVATE
389397
${link_object_files}
@@ -508,8 +516,12 @@ function(add_integration_test test_name)
508516
)
509517
set_target_properties(${fq_build_target_name}
510518
PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
511-
target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
512-
target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR})
519+
target_include_directories(
520+
${fq_build_target_name}
521+
PRIVATE
522+
${LIBC_SOURCE_DIR}
523+
${LIBC_INCLUDE_DIR}
524+
)
513525
target_compile_options(${fq_build_target_name}
514526
PRIVATE -fpie -ffreestanding -fno-exceptions -fno-rtti ${INTEGRATION_TEST_COMPILE_OPTIONS})
515527
# The GPU build requires overriding the default CMake triple and architecture.
@@ -671,8 +683,12 @@ function(add_libc_hermetic_test test_name)
671683
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
672684
#OUTPUT_NAME ${fq_target_name}
673685
)
674-
target_include_directories(${fq_build_target_name} SYSTEM PRIVATE ${LIBC_INCLUDE_DIR})
675-
target_include_directories(${fq_build_target_name} PRIVATE ${LIBC_SOURCE_DIR})
686+
target_include_directories(
687+
${fq_build_target_name}
688+
PRIVATE
689+
${LIBC_SOURCE_DIR}
690+
${LIBC_INCLUDE_DIR}
691+
)
676692
target_compile_options(${fq_build_target_name}
677693
PRIVATE ${LIBC_HERMETIC_TEST_COMPILE_OPTIONS} ${HERMETIC_TEST_COMPILE_OPTIONS})
678694

libc/utils/HdrGen/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ add_tablegen(libc-hdrgen LIBC
1414
PublicAPICommand.h
1515
)
1616

17-
target_include_directories(libc-hdrgen PRIVATE ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR})
17+
target_include_directories(libc-hdrgen PRIVATE ${LIBC_SOURCE_DIR})
1818
target_link_libraries(libc-hdrgen PRIVATE LibcTableGenUtil)
1919

2020
add_subdirectory(PrototypeTestGen)

libc/utils/LibcTableGenUtil/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,3 @@ add_llvm_library(
66
LINK_COMPONENTS Support TableGen
77
)
88
target_include_directories(LibcTableGenUtil PUBLIC ${LIBC_SOURCE_DIR})
9-
target_include_directories(LibcTableGenUtil PRIVATE ${LLVM_INCLUDE_DIR} ${LLVM_MAIN_INCLUDE_DIR})

0 commit comments

Comments
 (0)