Skip to content

Commit d8610b9

Browse files
committed
cmake: Remove all PUBLIC target_include_directory() usage
This makes it so include directories aren't propagated from a target to its dependencies. This causes quite a bit of duplication in cmake, but what it really does is makes our inclusion structure explicit.
1 parent 9413917 commit d8610b9

File tree

6 files changed

+22
-12
lines changed

6 files changed

+22
-12
lines changed

src/CMakeLists.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,15 @@ add_library(libbpftrace STATIC
5858
)
5959
# So it's not "liblibbpftrace"
6060
set_target_properties(libbpftrace PROPERTIES PREFIX "")
61+
target_include_directories(libbpftrace PRIVATE ${CMAKE_SOURCE_DIR}/src)
62+
target_include_directories(libbpftrace PRIVATE ${CMAKE_BINARY_DIR})
6163

6264
add_executable(${BPFTRACE}
6365
${MAIN_SRC}
6466
)
65-
target_include_directories(${BPFTRACE} PUBLIC ${CMAKE_BINARY_DIR}/src)
67+
target_include_directories(${BPFTRACE} PRIVATE ${CMAKE_SOURCE_DIR}/src)
68+
target_include_directories(${BPFTRACE} PRIVATE ${CMAKE_BINARY_DIR}/src)
69+
target_include_directories(${BPFTRACE} PRIVATE ${CMAKE_BINARY_DIR})
6670

6771
install(TARGETS ${BPFTRACE} DESTINATION ${CMAKE_INSTALL_BINDIR})
6872
target_link_libraries(${BPFTRACE} libbpftrace)

src/aot/CMakeLists.txt

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
add_library(aot STATIC aot.cpp)
22
add_dependencies(aot parser version_h)
33
target_link_libraries(aot required_resources)
4-
target_include_directories(aot PUBLIC ${CMAKE_SOURCE_DIR}/src)
5-
target_include_directories(aot PUBLIC ${CMAKE_BINARY_DIR}/src)
6-
target_include_directories(aot PUBLIC ${CMAKE_BINARY_DIR})
4+
target_include_directories(aot PRIVATE ${CMAKE_SOURCE_DIR}/src)
5+
target_include_directories(aot PRIVATE ${CMAKE_BINARY_DIR}/src)
6+
target_include_directories(aot PRIVATE ${CMAKE_BINARY_DIR})
77
target_compile_definitions(aot PRIVATE ${BPFTRACE_FLAGS})
88

99
if(STATIC_LINKING)
@@ -19,6 +19,9 @@ if(NOT LIBBCC_BPF_CONTAINS_RUNTIME)
1919
endif()
2020

2121
add_executable(bpftrace-aotrt aot_main.cpp)
22+
target_include_directories(bpftrace-aotrt PRIVATE ${CMAKE_SOURCE_DIR}/src)
23+
target_include_directories(bpftrace-aotrt PRIVATE ${CMAKE_BINARY_DIR})
24+
target_include_directories(bpftrace-aotrt PRIVATE ${CMAKE_BINARY_DIR}/src)
2225
target_link_libraries(bpftrace-aotrt aot runtime arch ast ast_defs cxxdemangler_stdlib)
2326
install(TARGETS bpftrace-aotrt DESTINATION ${CMAKE_INSTALL_BINDIR})
2427

src/arch/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@ else()
1818
message(FATAL_ERROR "Unsupported architecture: ${CMAKE_SYSTEM_PROCESSOR}")
1919
endif()
2020

21-
target_include_directories(arch PUBLIC ${CMAKE_SOURCE_DIR}/src)
21+
target_include_directories(arch PRIVATE ${CMAKE_SOURCE_DIR}/src)

src/ast/CMakeLists.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
add_library(ast_defs STATIC ast.cpp)
2+
target_include_directories(ast_defs PRIVATE ${CMAKE_SOURCE_DIR}/src)
3+
target_include_directories(ast_defs PRIVATE ${CMAKE_BINARY_DIR})
4+
add_dependencies(ast_defs parser)
25

36
add_library(ast STATIC
47
async_event_types.cpp
@@ -22,13 +25,10 @@ add_library(ast STATIC
2225
passes/return_path_analyser.cpp
2326
)
2427

25-
target_include_directories(ast_defs PUBLIC ${CMAKE_SOURCE_DIR}/src)
26-
target_include_directories(ast_defs PUBLIC ${CMAKE_BINARY_DIR})
27-
target_link_libraries(ast ast_defs arch parser)
28-
29-
add_dependencies(ast_defs parser)
30-
28+
target_include_directories(ast PRIVATE ${CMAKE_SOURCE_DIR}/src)
29+
target_include_directories(ast PRIVATE ${CMAKE_BINARY_DIR})
3130
target_compile_definitions(ast PRIVATE ${BPFTRACE_FLAGS})
31+
target_link_libraries(ast ast_defs arch parser)
3232

3333
if(STATIC_LINKING)
3434
include(Util)

tests/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,9 @@ target_include_directories(bpftrace_test PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
6565
target_include_directories(bpftrace_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
6666

6767
target_compile_definitions(bpftrace_test PRIVATE TEST_CODEGEN_LOCATION="${CMAKE_SOURCE_DIR}/tests/codegen/llvm/")
68+
target_include_directories(bpftrace_test PRIVATE ${CMAKE_SOURCE_DIR}/src)
69+
target_include_directories(bpftrace_test PRIVATE ${CMAKE_BINARY_DIR})
70+
target_include_directories(bpftrace_test PRIVATE ${CMAKE_BINARY_DIR}/src)
6871
target_link_libraries(bpftrace_test libbpftrace)
6972

7073
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")

tests/testprogs/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,6 @@ foreach(testprog_source ${testprog_sources})
3636
endforeach()
3737
add_custom_target(testprogs DEPENDS ${testprogtargets})
3838

39-
target_include_directories(usdt_lib PUBLIC ${CMAKE_SOURCE_DIR}/tests/testlibs/)
39+
target_include_directories(usdt_lib PRIVATE ${CMAKE_SOURCE_DIR}/tests/testlibs/)
4040
target_compile_options(usdt_lib PRIVATE -fPIC)
4141
target_link_libraries(usdt_lib usdt_tp)

0 commit comments

Comments
 (0)