You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
194 lines
7.7 KiB
194 lines
7.7 KiB
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index ea334df0..53e4dc8e 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -103,9 +103,10 @@ find_package(FLEX REQUIRED)
|
|
bison_target(bison_parser src/parser.yy ${CMAKE_BINARY_DIR}/parser.tab.cc VERBOSE)
|
|
flex_target(flex_lexer src/lexer.l ${CMAKE_BINARY_DIR}/lex.yy.cc)
|
|
add_flex_bison_dependency(flex_lexer bison_parser)
|
|
-add_library(parser ${BISON_bison_parser_OUTPUTS} ${FLEX_flex_lexer_OUTPUTS})
|
|
-target_compile_options(parser PRIVATE "-w")
|
|
-target_include_directories(parser PUBLIC src src/ast ${CMAKE_BINARY_DIR})
|
|
+add_library(bpftraceparser ${BISON_bison_parser_OUTPUTS} ${FLEX_flex_lexer_OUTPUTS})
|
|
+target_compile_options(bpftraceparser PRIVATE "-w")
|
|
+target_include_directories(bpftraceparser PUBLIC src src/ast ${CMAKE_BINARY_DIR})
|
|
+install(TARGETS bpftraceparser LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
|
|
include(CheckSymbolExists)
|
|
set(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
|
|
diff --git a/resources/CMakeLists.txt b/resources/CMakeLists.txt
|
|
index a95c60a1..f5c4d676 100644
|
|
--- a/resources/CMakeLists.txt
|
|
+++ b/resources/CMakeLists.txt
|
|
@@ -1,6 +1,7 @@
|
|
-add_library(resources headers.cpp)
|
|
+add_library(bpftraceresources headers.cpp)
|
|
|
|
-target_include_directories(resources PUBLIC ../src)
|
|
+target_include_directories(bpftraceresources PUBLIC ../src)
|
|
+install(TARGETS bpftraceresources LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
|
|
function(embed_headers output)
|
|
file(WRITE ${output} "#include \"headers.h\"\n\nnamespace bpftrace {\n")
|
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
|
index 47a050e2..1bbcf882 100644
|
|
--- a/src/CMakeLists.txt
|
|
+++ b/src/CMakeLists.txt
|
|
@@ -40,7 +40,7 @@ add_library(runtime
|
|
${BFD_DISASM_SRC}
|
|
)
|
|
# Ensure flex+bison outputs are built first
|
|
-add_dependencies(runtime parser)
|
|
+add_dependencies(runtime bpftraceparser)
|
|
|
|
add_library(libbpftrace
|
|
build_info.cpp
|
|
@@ -57,6 +57,7 @@ add_executable(${BPFTRACE}
|
|
)
|
|
|
|
install(TARGETS ${BPFTRACE} DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
+install(TARGETS libbpftrace LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
target_link_libraries(${BPFTRACE} libbpftrace)
|
|
|
|
if (BUILD_FUZZ)
|
|
@@ -109,6 +110,7 @@ target_include_directories(runtime PRIVATE ${CMAKE_BINARY_DIR})
|
|
target_include_directories(runtime PRIVATE ${CMAKE_SOURCE_DIR}/src)
|
|
target_include_directories(runtime PRIVATE ${CMAKE_SOURCE_DIR}/src/ast)
|
|
target_compile_definitions(runtime PRIVATE ${BPFTRACE_FLAGS})
|
|
+install(TARGETS runtime LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
target_compile_definitions(libbpftrace PRIVATE ${BPFTRACE_FLAGS})
|
|
|
|
# Linking
|
|
@@ -121,7 +123,8 @@ if(STATIC_LINKING)
|
|
endif(STATIC_LINKING)
|
|
|
|
|
|
-target_link_libraries(libbpftrace parser resources runtime aot ast arch cxxdemangler_llvm)
|
|
+target_link_libraries(libbpftrace bpftraceparser bpftraceresources
|
|
+ runtime aot bpftraceast bpftracearch cxxdemangler_llvm)
|
|
|
|
if (LIBBPF_BTF_DUMP_FOUND)
|
|
target_include_directories(runtime PUBLIC ${LIBBPF_INCLUDE_DIRS})
|
|
diff --git a/src/aot/CMakeLists.txt b/src/aot/CMakeLists.txt
|
|
index 291d53f2..308691ee 100644
|
|
--- a/src/aot/CMakeLists.txt
|
|
+++ b/src/aot/CMakeLists.txt
|
|
@@ -10,7 +10,7 @@ if(NOT LIBBCC_BPF_CONTAINS_RUNTIME)
|
|
endif()
|
|
|
|
add_executable(bpftrace-aotrt aot_main.cpp)
|
|
-target_link_libraries(bpftrace-aotrt aot runtime arch ast_defs cxxdemangler_stdlib)
|
|
+target_link_libraries(bpftrace-aotrt aot runtime bpftracearch ast_defs cxxdemangler_stdlib)
|
|
install(TARGETS bpftrace-aotrt DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
|
|
# Linking
|
|
@@ -27,3 +27,4 @@ if(BUILD_ASAN)
|
|
target_compile_options(bpftrace-aotrt PUBLIC "-fsanitize=address")
|
|
target_link_options(bpftrace-aotrt PUBLIC "-fsanitize=address")
|
|
endif()
|
|
+install(TARGETS aot LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
diff --git a/src/arch/CMakeLists.txt b/src/arch/CMakeLists.txt
|
|
index 76bb217e..4ad0f626 100644
|
|
--- a/src/arch/CMakeLists.txt
|
|
+++ b/src/arch/CMakeLists.txt
|
|
@@ -1,15 +1,17 @@
|
|
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
|
|
- add_library(arch aarch64.cpp)
|
|
+ add_library(bpftracearch aarch64.cpp)
|
|
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64" OR
|
|
CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64le")
|
|
- add_library(arch ppc64.cpp)
|
|
+ add_library(bpftracearch ppc64.cpp)
|
|
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "s390" OR
|
|
CMAKE_SYSTEM_PROCESSOR STREQUAL "s390x")
|
|
- add_library(arch s390.cpp)
|
|
+ add_library(bpftracearch s390.cpp)
|
|
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
|
- add_library(arch x86_64.cpp)
|
|
+ add_library(bpftracearch x86_64.cpp)
|
|
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "mips64")
|
|
- add_library(arch mips64.cpp)
|
|
+ add_library(bpftracearch mips64.cpp)
|
|
else()
|
|
message(FATAL_ERROR "Unsupported architecture: ${CMAKE_SYSTEM_PROCESSOR}")
|
|
endif()
|
|
+
|
|
+install(TARGETS bpftracearch LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
diff --git a/src/ast/CMakeLists.txt b/src/ast/CMakeLists.txt
|
|
index 014295cd..c35f6ac6 100644
|
|
--- a/src/ast/CMakeLists.txt
|
|
+++ b/src/ast/CMakeLists.txt
|
|
@@ -1,6 +1,6 @@
|
|
add_library(ast_defs ast.cpp)
|
|
|
|
-add_library(ast
|
|
+add_library(bpftraceast
|
|
async_event_types.cpp
|
|
attachpoint_parser.cpp
|
|
int_parser.cpp
|
|
@@ -20,11 +20,13 @@ add_library(ast
|
|
target_include_directories(ast_defs PUBLIC ${CMAKE_SOURCE_DIR}/src)
|
|
target_include_directories(ast_defs PUBLIC ${CMAKE_SOURCE_DIR}/src/ast)
|
|
target_include_directories(ast_defs PUBLIC ${CMAKE_BINARY_DIR})
|
|
-target_link_libraries(ast ast_defs arch bpforc parser)
|
|
+target_link_libraries(bpftraceast ast_defs bpftracearch bpforc bpftraceparser)
|
|
+install(TARGETS ast_defs LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
+install(TARGETS bpftraceast LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
|
|
-add_dependencies(ast_defs parser)
|
|
+add_dependencies(ast_defs bpftraceparser)
|
|
|
|
-target_compile_definitions(ast PRIVATE ${BPFTRACE_FLAGS})
|
|
+target_compile_definitions(bpftraceast PRIVATE ${BPFTRACE_FLAGS})
|
|
|
|
if (STATIC_LINKING)
|
|
set(clang_libs
|
|
@@ -55,11 +57,11 @@ if (STATIC_LINKING)
|
|
|
|
|
|
if(EMBED_USE_LLVM)
|
|
- target_link_libraries(ast "-Wl,--start-group" ${CLANG_EMBEDDED_CMAKE_TARGETS} ${LLVM_EMBEDDED_CMAKE_TARGETS} "-Wl,--end-group")
|
|
+ target_link_libraries(bpftraceast "-Wl,--start-group" ${CLANG_EMBEDDED_CMAKE_TARGETS} ${LLVM_EMBEDDED_CMAKE_TARGETS} "-Wl,--end-group")
|
|
else()
|
|
llvm_map_components_to_libnames(llvm_libs ${llvm_lib_names})
|
|
- target_link_libraries(ast ${clang_libs})
|
|
- target_link_libraries(ast ${llvm_libs})
|
|
+ target_link_libraries(bpftraceast ${clang_libs})
|
|
+ target_link_libraries(bpftraceast ${llvm_libs})
|
|
endif()
|
|
|
|
if(STATIC_LIBC)
|
|
@@ -69,13 +71,13 @@ if (STATIC_LINKING)
|
|
else()
|
|
find_library(found_LLVM LLVM HINTS ${LLVM_LIBRARY_DIRS})
|
|
if(found_LLVM)
|
|
- target_link_libraries(ast LLVM)
|
|
+ target_link_libraries(bpftraceast LLVM)
|
|
else()
|
|
llvm_map_components_to_libnames(_llvm_libs bpfcodegen ipo irreader mcjit orcjit ${LLVM_TARGETS_TO_BUILD})
|
|
llvm_expand_dependencies(llvm_libs ${_llvm_libs})
|
|
- target_link_libraries(ast ${llvm_libs})
|
|
+ target_link_libraries(bpftraceast ${llvm_libs})
|
|
endif()
|
|
- target_link_libraries(ast libclang)
|
|
+ target_link_libraries(bpftraceast libclang)
|
|
endif()
|
|
|
|
add_subdirectory(bpforc)
|
|
diff --git a/src/ast/bpforc/CMakeLists.txt b/src/ast/bpforc/CMakeLists.txt
|
|
index 3f6dbefa..8ccfbb2b 100644
|
|
--- a/src/ast/bpforc/CMakeLists.txt
|
|
+++ b/src/ast/bpforc/CMakeLists.txt
|
|
@@ -1 +1,2 @@
|
|
add_library(bpforc bpforc.cpp)
|
|
+install(TARGETS bpforc LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
diff --git a/src/cxxdemangler/CMakeLists.txt b/src/cxxdemangler/CMakeLists.txt
|
|
index 04cfcdd9..5677aa4b 100644
|
|
--- a/src/cxxdemangler/CMakeLists.txt
|
|
+++ b/src/cxxdemangler/CMakeLists.txt
|
|
@@ -1,2 +1,4 @@
|
|
add_library(cxxdemangler_stdlib cxxdemangler_stdlib.cpp)
|
|
add_library(cxxdemangler_llvm cxxdemangler_llvm.cpp)
|
|
+install(TARGETS cxxdemangler_stdlib LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
+install(TARGETS cxxdemangler_llvm LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|