* [gentoo-commits] repo/gentoo:master commit in: dev-debug/bpftrace/, dev-debug/bpftrace/files/
@ 2024-01-23 20:51 Patrick McLean
0 siblings, 0 replies; 3+ messages in thread
From: Patrick McLean @ 2024-01-23 20:51 UTC (permalink / raw
To: gentoo-commits
commit: ea3f216953373087585e24acee96b80278d3d4fb
Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 23 20:51:37 2024 +0000
Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Tue Jan 23 20:51:46 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea3f2169
dev-debug/bpftrace: add 0.20.0
Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>
dev-debug/bpftrace/Manifest | 1 +
dev-debug/bpftrace/bpftrace-0.20.0.ebuild | 94 ++++++
.../files/bpftrace-0.20.0-install-libs.patch | 320 +++++++++++++++++++++
3 files changed, 415 insertions(+)
diff --git a/dev-debug/bpftrace/Manifest b/dev-debug/bpftrace/Manifest
index 83127dc3fafe..b16b9efa97c3 100644
--- a/dev-debug/bpftrace/Manifest
+++ b/dev-debug/bpftrace/Manifest
@@ -1 +1,2 @@
DIST bpftrace-0.19.1.gh.tar.gz 1157777 BLAKE2B 9db6285c7a82110106bd05759a09f16d85c82f2516f0b6ea34044e7389b2d38ed418d0fe5da44c2c9f9e67f72404f104f419ce3316c07ea54e65d4f039188039 SHA512 2f56b8fb7abfa58631ebc93c7a98cc066446808cbc0116902e43ebefa5f9625232da5ee3ede1d14a236296660a2f4c0907fa1ef24d383b4e32c70dcc3988c765
+DIST bpftrace-0.20.0.gh.tar.gz 1233420 BLAKE2B f69a65f33a7c1bd518bccf06e7bb975086deef6b43304285f1ac9e6dc54d92c6d887b194f63f46351d5506a1d40eb3d8a70e79e3f3f00b4bbdd692789caee149 SHA512 4554ba3099af086c7a149b809f4855d913361153b5f0b9552dbfabd360300d4ef841fe743734950d10b93c497e062476766cd0f6569ba2ff01951a4cc3a6cdb8
diff --git a/dev-debug/bpftrace/bpftrace-0.20.0.ebuild b/dev-debug/bpftrace/bpftrace-0.20.0.ebuild
new file mode 100644
index 000000000000..92cd7b068b6c
--- /dev/null
+++ b/dev-debug/bpftrace/bpftrace-0.20.0.ebuild
@@ -0,0 +1,94 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_MAX_SLOT=17
+
+inherit llvm linux-info cmake
+
+DESCRIPTION="High-level tracing language for eBPF"
+HOMEPAGE="https://github.com/iovisor/bpftrace"
+MY_PV="${PV//_/}"
+SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV:-${PV}}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+# remove keywords until build works:
+# https://github.com/iovisor/bpftrace/issues/2349
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="fuzzing test"
+
+# lots of fixing needed
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-libs/libbpf-1.1:=
+ >=dev-util/bcc-0.25.0:=
+ >=sys-devel/llvm-10[llvm_targets_BPF(+)]
+ >=sys-devel/clang-10
+ <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
+ <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
+ sys-libs/binutils-libs:=
+ virtual/libelf:=
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-libs/cereal:=
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="
+ app-arch/xz-utils
+ app-alternatives/lex
+ app-alternatives/yacc
+ virtual/pkgconfig
+"
+
+QA_DT_NEEDED="
+ /usr/lib.*/libbpftraceresources.so
+ /usr/lib.*/libcxxdemangler_llvm.so
+"
+
+PATCHES=(
+ "${FILESDIR}/bpftrace-0.20.0-install-libs.patch"
+ "${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
+ "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
+)
+
+pkg_pretend() {
+ local CONFIG_CHECK="
+ ~BPF
+ ~BPF_EVENTS
+ ~BPF_JIT
+ ~BPF_SYSCALL
+ ~FTRACE_SYSCALLS
+ ~HAVE_EBPF_JIT
+ "
+
+ check_extra_config
+}
+
+pkg_setup() {
+ llvm_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DSTATIC_LINKING:BOOL=OFF
+ # bug 809362, 754648
+ -DBUILD_TESTING:BOOL=$(usex test)
+ -DBUILD_FUZZ:BOOL=$(usex fuzzing)
+ -DENABLE_MAN:BOOL=OFF
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # bug 809362
+ dostrip -x /usr/bin/bpftrace
+ doman man/man8/*.?
+}
diff --git a/dev-debug/bpftrace/files/bpftrace-0.20.0-install-libs.patch b/dev-debug/bpftrace/files/bpftrace-0.20.0-install-libs.patch
new file mode 100644
index 000000000000..7369875ad5ef
--- /dev/null
+++ b/dev-debug/bpftrace/files/bpftrace-0.20.0-install-libs.patch
@@ -0,0 +1,320 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 46a2579e..7fa09199 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -102,9 +102,10 @@ endif()
+ bison_target(bison_parser src/parser.yy ${CMAKE_BINARY_DIR}/parser.tab.cc COMPILE_FLAGS ${BISON_FLAGS} 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/src/CMakeLists.txt b/src/CMakeLists.txt
+index 88f5928c..4dee1ec8 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -13,7 +13,7 @@ else()
+ endif ()
+ endif()
+
+-add_library(runtime
++add_library(bpftraceruntime
+ attached_probe.cpp
+ bpffeature.cpp
+ bpftrace.cpp
+@@ -46,7 +46,7 @@ add_library(runtime
+ ${BFD_DISASM_SRC}
+ )
+ # Ensure flex+bison outputs are built first
+-add_dependencies(runtime parser)
++add_dependencies(bpftraceruntime bpftraceparser)
+
+ add_library(libbpftrace
+ build_info.cpp
+@@ -63,6 +63,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)
+@@ -91,7 +92,7 @@ endif()
+ set(KERNEL_HEADERS_DIR "" CACHE PATH "Hard-code kernel headers directory")
+ if (KERNEL_HEADERS_DIR)
+ MESSAGE(STATUS "Using KERNEL_HEADERS_DIR=${KERNEL_HEADERS_DIR}")
+- target_compile_definitions(runtime PUBLIC KERNEL_HEADERS_DIR="${KERNEL_HEADERS_DIR}")
++ target_compile_definitions(bpftraceruntime PUBLIC KERNEL_HEADERS_DIR="${KERNEL_HEADERS_DIR}")
+ endif()
+
+ execute_process(
+@@ -111,10 +112,10 @@ endif()
+
+ add_definitions("-DBPFTRACE_VERSION=\"${BPFTRACE_VERSION}\"")
+
+-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})
++target_include_directories(bpftraceruntime PRIVATE ${CMAKE_BINARY_DIR})
++target_include_directories(bpftraceruntime PRIVATE ${CMAKE_SOURCE_DIR}/src)
++target_include_directories(bpftraceruntime PRIVATE ${CMAKE_SOURCE_DIR}/src/ast)
++target_compile_definitions(bpftraceruntime PRIVATE ${BPFTRACE_FLAGS})
+ target_include_directories(libbpftrace PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
+ target_compile_definitions(libbpftrace PRIVATE ${BPFTRACE_FLAGS})
+
+@@ -124,8 +125,9 @@ if(STATIC_LINKING)
+ endif(STATIC_LINKING)
+
+
+-target_link_libraries(runtime ${LIBBPF_LIBRARIES} ${ZLIB_LIBRARIES})
+-target_link_libraries(libbpftrace parser resources runtime aot ast arch cxxdemangler_llvm)
++target_link_libraries(bpftraceruntime ${LIBBPF_LIBRARIES} ${ZLIB_LIBRARIES})
++target_link_libraries(libbpftrace bpftraceparser bpftraceresources bpftraceruntime aot bpftraceast bpftracearch cxxdemangler_llvm)
++install(TARGETS bpftraceruntime LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+
+ if(LIBPCAP_FOUND)
+ target_link_libraries(libbpftrace ${LIBPCAP_LIBRARIES})
+@@ -135,49 +137,49 @@ if(HAVE_BFD_DISASM)
+ if(STATIC_LINKING OR LIBBFD_STATIC)
+ add_library(LIBBFD STATIC IMPORTED)
+ set_property(TARGET LIBBFD PROPERTY IMPORTED_LOCATION ${LIBBFD_LIBRARIES})
+- target_link_libraries(runtime LIBBFD)
++ target_link_libraries(bpftraceruntime LIBBFD)
+ add_library(LIBOPCODES STATIC IMPORTED)
+ set_property(TARGET LIBOPCODES PROPERTY IMPORTED_LOCATION ${LIBOPCODES_LIBRARIES})
+- target_link_libraries(runtime LIBOPCODES)
++ target_link_libraries(bpftraceruntime LIBOPCODES)
+ add_library(LIBIBERTY STATIC IMPORTED)
+ set_property(TARGET LIBIBERTY PROPERTY IMPORTED_LOCATION ${LIBIBERTY_LIBRARIES})
+- target_link_libraries(runtime LIBIBERTY)
++ target_link_libraries(bpftraceruntime LIBIBERTY)
+
+ add_library(LIBZSTD STATIC IMPORTED)
+ if (LIBZSTD_FOUND)
+ set_property(TARGET LIBZSTD PROPERTY IMPORTED_LOCATION ${LIBZSTD_LIBRARIES})
+- target_link_libraries(runtime LIBZSTD)
++ target_link_libraries(bpftraceruntime LIBZSTD)
+ endif(LIBZSTD_FOUND)
+
+ add_library(LIBSFRAME STATIC IMPORTED)
+ if (LIBSFRAME_FOUND)
+ set_property(TARGET LIBSFRAME PROPERTY IMPORTED_LOCATION ${LIBSFRAME_LIBRARIES})
+- target_link_libraries(runtime LIBSFRAME)
++ target_link_libraries(bpftraceruntime LIBSFRAME)
+ endif()
+ else()
+- target_link_libraries(runtime ${LIBBFD_LIBRARIES})
+- target_link_libraries(runtime ${LIBOPCODES_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBBFD_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBOPCODES_LIBRARIES})
+ endif(STATIC_LINKING OR LIBBFD_STATIC)
+ endif(HAVE_BFD_DISASM)
+
+ # Link to bcc libraries (without LLVM) if possible
+ if(LIBBCC_BPF_CONTAINS_RUNTIME)
+- target_link_libraries(runtime ${LIBBCC_BPF_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBBCC_BPF_LIBRARIES})
+ else()
+- target_link_libraries(runtime ${LIBBCC_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBBCC_LIBRARIES})
+ endif()
+
+ if(STATIC_LINKING)
+ # These are not part of the static libbcc so have to be added separate
+- target_link_libraries(runtime ${LIBBCC_BPF_LIBRARIES})
+- target_link_libraries(runtime ${LIBBPF_LIBRARIES})
+- target_link_libraries(runtime ${LIBBCC_LOADER_LIBRARY_STATIC})
++ target_link_libraries(bpftraceruntime ${LIBBCC_BPF_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBBPF_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBBCC_LOADER_LIBRARY_STATIC})
+
+ add_library(LIBELF STATIC IMPORTED)
+ set_property(TARGET LIBELF PROPERTY IMPORTED_LOCATION ${LIBELF_LIBRARIES})
+- target_link_libraries(runtime LIBELF)
++ target_link_libraries(bpftraceruntime LIBELF)
+ else()
+- target_link_libraries(runtime ${LIBELF_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBELF_LIBRARIES})
+ endif(STATIC_LINKING)
+
+ if (LIBDW_FOUND)
+@@ -206,16 +208,16 @@ if (LIBDW_FOUND)
+
+ target_link_libraries(LIBDW INTERFACE ${LIBDW_LIBS})
+
+- target_link_libraries(runtime LIBDW)
++ target_link_libraries(bpftraceruntime LIBDW)
+ else()
+- target_link_libraries(runtime ${LIBDW_LIBRARIES})
++ target_link_libraries(bpftraceruntime ${LIBDW_LIBRARIES})
+ endif()
+ endif()
+
+ # Support for std::filesystem
+ # GCC version <9 and Clang (all versions) require -lstdc++fs
+ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR ${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS "9")
+- target_link_libraries(runtime "stdc++fs")
++ target_link_libraries(bpftraceruntime "stdc++fs")
+ target_link_libraries(libbpftrace "stdc++fs")
+ endif()
+
+@@ -237,12 +239,12 @@ endif()
+ if (STATIC_LINKING)
+ if(ANDROID)
+ target_link_libraries(libbpftrace "-Wl,-Bdynamic" "-ldl" "-lm" "-lz")
+- target_link_libraries(runtime "-Wl,-Bdynamic" "-ldl" "-lm" "-lz")
++ target_link_libraries(bpftraceruntime "-Wl,-Bdynamic" "-ldl" "-lm" "-lz")
+ else()
+ target_link_libraries(libbpftrace "-Wl,-Bdynamic" "-lrt" "-lpthread" "-ldl" "-lm")
+ target_link_libraries(libbpftrace "-Wl,-Bstatic" "-lz")
+- target_link_libraries(runtime "-Wl,-Bdynamic" "-lrt" "-lpthread" "-ldl" "-lm")
+- target_link_libraries(runtime "-Wl,-Bstatic" "-lz")
++ target_link_libraries(bpftraceruntime "-Wl,-Bdynamic" "-lrt" "-lpthread" "-ldl" "-lm")
++ target_link_libraries(bpftraceruntime "-Wl,-Bstatic" "-lz")
+ endif()
+ endif()
+
+diff --git a/src/aot/CMakeLists.txt b/src/aot/CMakeLists.txt
+index 36ffd739..a7989df0 100644
+--- a/src/aot/CMakeLists.txt
++++ b/src/aot/CMakeLists.txt
+@@ -1,8 +1,9 @@
+ add_library(aot aot.cpp)
+-add_dependencies(aot parser)
++add_dependencies(aot bpftraceparser)
+ target_include_directories(aot PUBLIC ${CMAKE_SOURCE_DIR}/src)
+ target_include_directories(aot PUBLIC ${CMAKE_BINARY_DIR})
+ target_compile_definitions(aot PRIVATE ${BPFTRACE_FLAGS})
++install(TARGETS aot LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+
+ # Only build aotrt if supported bcc is used
+ # (https://github.com/iovisor/bcc/commit/719191867a25ce07dc96f7faf9b8ccedadc7ec44)
+@@ -11,7 +12,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 bpftraceruntime bpftracearch ast_defs cxxdemangler_stdlib)
+ install(TARGETS bpftrace-aotrt DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+ if(LIBPCAP_FOUND)
+diff --git a/src/arch/CMakeLists.txt b/src/arch/CMakeLists.txt
+index e6a1d0a0..c53daa19 100644
+--- a/src/arch/CMakeLists.txt
++++ b/src/arch/CMakeLists.txt
+@@ -1,19 +1,20 @@
+ if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|aarch64)")
+- add_library(arch arm.cpp)
++ add_library(bpftracearch arm.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)
+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv64")
+- add_library(arch riscv64.cpp)
++ add_library(bpftracearch riscv64.cpp)
+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "loongarch64")
+- add_library(arch loongarch64.cpp)
++ add_library(bpftracearch loongarch64.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 65eab229..0bf35ec7 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
+ dibuilderbpf.cpp
+@@ -23,11 +23,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 parser)
++target_link_libraries(bpftraceast ast_defs bpftracearch 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)
+ include(Util)
+@@ -69,23 +71,23 @@ if(STATIC_LINKING)
+ unlink_transitive_dependency("${CLANG_EXPORTED_TARGETS}" "$<LINK_ONLY:clang-cpp>")
+
+ if(TARGET libclang_static)
+- target_link_libraries(ast libclang_static)
++ target_link_libraries(bpftraceast libclang_static)
+ else()
+ # old LLVM versions don't export libclang_static in ClangTargets.cmake; fall back to
+ # libclang.a in that case
+- target_link_libraries(ast libclang.a)
++ target_link_libraries(bpftraceast libclang.a)
+ endif()
+
+- target_link_libraries(ast ${clang_libs})
+- target_link_libraries(ast ${llvm_libs})
++ target_link_libraries(bpftraceast ${clang_libs})
++ target_link_libraries(bpftraceast ${llvm_libs})
+ 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_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()
+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})
+diff --git a/src/resources/CMakeLists.txt b/src/resources/CMakeLists.txt
+index a7598e93..ff816cba 100644
+--- a/src/resources/CMakeLists.txt
++++ b/src/resources/CMakeLists.txt
+@@ -21,4 +21,5 @@ function(embed_headers output_h output_cpp)
+ endfunction()
+
+ embed_headers(${CMAKE_CURRENT_BINARY_DIR}/headers.h ${CMAKE_CURRENT_BINARY_DIR}/headers.cpp)
+-add_library(resources ${CMAKE_CURRENT_BINARY_DIR}/headers.cpp)
++add_library(bpftraceresources ${CMAKE_CURRENT_BINARY_DIR}/headers.cpp)
++install(TARGETS bpftraceresources LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-debug/bpftrace/, dev-debug/bpftrace/files/
@ 2024-03-02 6:33 Sam James
0 siblings, 0 replies; 3+ messages in thread
From: Sam James @ 2024-03-02 6:33 UTC (permalink / raw
To: gentoo-commits
commit: 39340a3d3b3f93f9af613136e874f634305ee356
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 2 06:33:14 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 2 06:33:19 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39340a3d
dev-debug/bpftrace: fix USE=fuzzing build
Signed-off-by: Sam James <sam <AT> gentoo.org>
dev-debug/bpftrace/bpftrace-0.20.1-r1.ebuild | 95 ++++++++++++++++++++++
.../bpftrace/files/bpftrace-0.20.1-fuzzer.patch | 42 ++++++++++
2 files changed, 137 insertions(+)
diff --git a/dev-debug/bpftrace/bpftrace-0.20.1-r1.ebuild b/dev-debug/bpftrace/bpftrace-0.20.1-r1.ebuild
new file mode 100644
index 000000000000..d4856d58d474
--- /dev/null
+++ b/dev-debug/bpftrace/bpftrace-0.20.1-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_MAX_SLOT=17
+
+inherit llvm linux-info cmake
+
+DESCRIPTION="High-level tracing language for eBPF"
+HOMEPAGE="https://github.com/iovisor/bpftrace"
+MY_PV="${PV//_/}"
+SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV:-${PV}}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+# remove keywords until build works:
+# https://github.com/iovisor/bpftrace/issues/2349
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="fuzzing test"
+
+# lots of fixing needed
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-libs/libbpf-1.1:=
+ >=dev-util/bcc-0.25.0:=
+ >=sys-devel/llvm-10[llvm_targets_BPF(+)]
+ >=sys-devel/clang-10
+ <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
+ <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
+ sys-libs/binutils-libs:=
+ virtual/libelf:=
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-libs/cereal:=
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="
+ app-arch/xz-utils
+ app-alternatives/lex
+ app-alternatives/yacc
+ virtual/pkgconfig
+"
+
+QA_DT_NEEDED="
+ usr/lib.*/libbpftraceresources.so
+ usr/lib.*/libcxxdemangler_llvm.so
+"
+
+PATCHES=(
+ "${FILESDIR}/bpftrace-0.20.0-install-libs.patch"
+ "${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
+ "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
+ "${FILESDIR}/bpftrace-0.20.1-fuzzer.patch"
+)
+
+pkg_pretend() {
+ local CONFIG_CHECK="
+ ~BPF
+ ~BPF_EVENTS
+ ~BPF_JIT
+ ~BPF_SYSCALL
+ ~FTRACE_SYSCALLS
+ ~HAVE_EBPF_JIT
+ "
+
+ check_extra_config
+}
+
+pkg_setup() {
+ llvm_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DSTATIC_LINKING:BOOL=OFF
+ # bug 809362, 754648
+ -DBUILD_TESTING:BOOL=$(usex test)
+ -DBUILD_FUZZ:BOOL=$(usex fuzzing)
+ -DENABLE_MAN:BOOL=OFF
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # bug 809362
+ dostrip -x /usr/bin/bpftrace
+ doman man/man8/*.?
+}
diff --git a/dev-debug/bpftrace/files/bpftrace-0.20.1-fuzzer.patch b/dev-debug/bpftrace/files/bpftrace-0.20.1-fuzzer.patch
new file mode 100644
index 000000000000..a0f54e4962f3
--- /dev/null
+++ b/dev-debug/bpftrace/files/bpftrace-0.20.1-fuzzer.patch
@@ -0,0 +1,42 @@
+https://github.com/bpftrace/bpftrace/commit/fe6362b4e2c1b9d0833c7d3f308c1d4006b54723
+
+From fe6362b4e2c1b9d0833c7d3f308c1d4006b54723 Mon Sep 17 00:00:00 2001
+From: gkamathe <73747618+gkamathe@users.noreply.github.com>
+Date: Fri, 16 Feb 2024 18:19:14 +0530
+Subject: [PATCH] =?UTF-8?q?fix=20bpftrace=5Ffuzz=20error=20for=20call=20to?=
+ =?UTF-8?q?=20'get=5Fkernel=E2=80=A6=5Fcflags'=20(#3007)?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* fix bpftrace_fuzz error: no matching function for call to 'get_kernel_cflags'
+
+When compiling bpftace_fuzz we run into the following issue where 1
+argument is missing, adding the required argument
+
+src/fuzz_main.cpp:140:21: error: no matching function for call to 'get_kernel_cflags'
+ extra_flags = get_kernel_cflags(utsname.machine, ksrc, kobj);
+ ^~~~~~~~~~~~~~~~~
+src/utils.h:180:26: note: candidate function not viable: requires 4 arguments, but 3 were provided
+std::vector<std::string> get_kernel_cflags(const char *uname_machine,
+ ^
+Seems fourth argument was added via 4bcee640636e268de4b938a1007fb29a8836f049
+
+Signed-off-by: Gaurav Kamathe <kamathe.gaurav@gmail.com>
+
+---------
+
+Signed-off-by: Gaurav Kamathe <kamathe.gaurav@gmail.com>
+--- a/src/fuzz_main.cpp
++++ b/src/fuzz_main.cpp
+@@ -137,7 +137,8 @@ int fuzz_main(const char* data, size_t sz)
+ kobj = std::get<1>(kdirs);
+
+ if (ksrc != "")
+- extra_flags = get_kernel_cflags(utsname.machine, ksrc, kobj);
++ extra_flags = get_kernel_cflags(
++ utsname.machine, ksrc, kobj, bpftrace.kconfig);
+ }
+ extra_flags.push_back("-include");
+ extra_flags.push_back(CLANG_WORKAROUNDS_H);
+
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-debug/bpftrace/, dev-debug/bpftrace/files/
@ 2024-03-26 18:19 Patrick McLean
0 siblings, 0 replies; 3+ messages in thread
From: Patrick McLean @ 2024-03-26 18:19 UTC (permalink / raw
To: gentoo-commits
commit: 80ffa6803e31930893c80678cf001aca9f7351f5
Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 26 17:23:49 2024 +0000
Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Tue Mar 26 18:18:59 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80ffa680
dev-debug/bpftrace: drop 0.19.1, 0.20.0, 0.20.1
Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>
dev-debug/bpftrace/Manifest | 2 -
dev-debug/bpftrace/bpftrace-0.19.1.ebuild | 95 ------
dev-debug/bpftrace/bpftrace-0.20.0.ebuild | 94 ------
dev-debug/bpftrace/bpftrace-0.20.1.ebuild | 94 ------
.../files/bpftrace-0.19.0-install-libs.patch | 338 ---------------------
5 files changed, 623 deletions(-)
diff --git a/dev-debug/bpftrace/Manifest b/dev-debug/bpftrace/Manifest
index 05ac7d1f5a02..cb5f782335bf 100644
--- a/dev-debug/bpftrace/Manifest
+++ b/dev-debug/bpftrace/Manifest
@@ -1,4 +1,2 @@
-DIST bpftrace-0.19.1.gh.tar.gz 1157777 BLAKE2B 9db6285c7a82110106bd05759a09f16d85c82f2516f0b6ea34044e7389b2d38ed418d0fe5da44c2c9f9e67f72404f104f419ce3316c07ea54e65d4f039188039 SHA512 2f56b8fb7abfa58631ebc93c7a98cc066446808cbc0116902e43ebefa5f9625232da5ee3ede1d14a236296660a2f4c0907fa1ef24d383b4e32c70dcc3988c765
-DIST bpftrace-0.20.0.gh.tar.gz 1233420 BLAKE2B f69a65f33a7c1bd518bccf06e7bb975086deef6b43304285f1ac9e6dc54d92c6d887b194f63f46351d5506a1d40eb3d8a70e79e3f3f00b4bbdd692789caee149 SHA512 4554ba3099af086c7a149b809f4855d913361153b5f0b9552dbfabd360300d4ef841fe743734950d10b93c497e062476766cd0f6569ba2ff01951a4cc3a6cdb8
DIST bpftrace-0.20.1.gh.tar.gz 1233431 BLAKE2B fe9221a94d58b43e0311f8c841df8421c3fe226a3fe61f2ec5cce5de309acdb69a68834e92a2e622a1750975869cbdaa95a90f9afb83989aa61b56b551fa96e3 SHA512 fdcc2b0d091d4ab428207877626b0fb37f3e0778730e6a6db26be869a086264e1f24186857c47597813aacde98621a66301bcf6c8004f77bdf9ebf180f198ba0
DIST bpftrace-0.20.3.gh.tar.gz 1233923 BLAKE2B c8a280441237d068029bd561a0fa70fd54676625c5bdd7d82a0a219d361cd71a460435ff05c865647d3e5c27d769ec296a47e5e7a3546fc8571af6a16d898300 SHA512 218a1bfac7e1a2b7eef5b0ed3e7403eed4bc932f2aa03c5f4c8924246c09088f5074ab3d54031e582cb4f8e7d0c7df1bb30007c2421c44d2c2506364f0ba5a0e
diff --git a/dev-debug/bpftrace/bpftrace-0.19.1.ebuild b/dev-debug/bpftrace/bpftrace-0.19.1.ebuild
deleted file mode 100644
index 48f68c08a2ec..000000000000
--- a/dev-debug/bpftrace/bpftrace-0.19.1.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 2019-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_MAX_SLOT=17
-
-inherit llvm linux-info cmake
-
-DESCRIPTION="High-level tracing language for eBPF"
-HOMEPAGE="https://github.com/iovisor/bpftrace"
-MY_PV="${PV//_/}"
-SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
-S="${WORKDIR}/${PN}-${MY_PV:-${PV}}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# remove keywords until build works:
-# https://github.com/iovisor/bpftrace/issues/2349
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="fuzzing test"
-
-# lots of fixing needed
-RESTRICT="test"
-
-RDEPEND="
- >=dev-libs/libbpf-1.1:=
- >=dev-util/bcc-0.25.0:=
- >=sys-devel/llvm-10[llvm_targets_BPF(+)]
- >=sys-devel/clang-10
- <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
- <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
- sys-libs/binutils-libs:=
- virtual/libelf:=
-"
-DEPEND="
- ${COMMON_DEPEND}
- dev-libs/cereal:=
- test? ( dev-cpp/gtest )
-"
-BDEPEND="
- app-arch/xz-utils
- app-alternatives/lex
- app-alternatives/yacc
- virtual/pkgconfig
-"
-
-QA_DT_NEEDED="
- /usr/lib.*/libbpftraceresources.so
- /usr/lib.*/libcxxdemangler_llvm.so
-"
-
-PATCHES=(
- "${FILESDIR}/bpftrace-0.19.0-install-libs.patch"
- "${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
- "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
-)
-
-pkg_pretend() {
- local CONFIG_CHECK="
- ~BPF
- ~BPF_EVENTS
- ~BPF_JIT
- ~BPF_SYSCALL
- ~FTRACE_SYSCALLS
- ~HAVE_EBPF_JIT
- "
-
- check_extra_config
-}
-
-pkg_setup() {
- llvm_pkg_setup
-}
-
-src_configure() {
- local mycmakeargs=(
- -DSTATIC_LINKING:BOOL=OFF
- # bug 809362, 754648
- -DBUILD_TESTING:BOOL=$(usex test)
- -DBUILD_FUZZ:BOOL=$(usex fuzzing)
- -DENABLE_MAN:BOOL=OFF
- -DUSE_SYSTEM_BPF_BCC:BOOL=ON
- )
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
- # bug 809362
- dostrip -x /usr/bin/bpftrace
- doman man/man8/*.?
-}
diff --git a/dev-debug/bpftrace/bpftrace-0.20.0.ebuild b/dev-debug/bpftrace/bpftrace-0.20.0.ebuild
deleted file mode 100644
index 92cd7b068b6c..000000000000
--- a/dev-debug/bpftrace/bpftrace-0.20.0.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 2019-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_MAX_SLOT=17
-
-inherit llvm linux-info cmake
-
-DESCRIPTION="High-level tracing language for eBPF"
-HOMEPAGE="https://github.com/iovisor/bpftrace"
-MY_PV="${PV//_/}"
-SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
-S="${WORKDIR}/${PN}-${MY_PV:-${PV}}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# remove keywords until build works:
-# https://github.com/iovisor/bpftrace/issues/2349
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="fuzzing test"
-
-# lots of fixing needed
-RESTRICT="test"
-
-RDEPEND="
- >=dev-libs/libbpf-1.1:=
- >=dev-util/bcc-0.25.0:=
- >=sys-devel/llvm-10[llvm_targets_BPF(+)]
- >=sys-devel/clang-10
- <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
- <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
- sys-libs/binutils-libs:=
- virtual/libelf:=
-"
-DEPEND="
- ${COMMON_DEPEND}
- dev-libs/cereal:=
- test? ( dev-cpp/gtest )
-"
-BDEPEND="
- app-arch/xz-utils
- app-alternatives/lex
- app-alternatives/yacc
- virtual/pkgconfig
-"
-
-QA_DT_NEEDED="
- /usr/lib.*/libbpftraceresources.so
- /usr/lib.*/libcxxdemangler_llvm.so
-"
-
-PATCHES=(
- "${FILESDIR}/bpftrace-0.20.0-install-libs.patch"
- "${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
- "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
-)
-
-pkg_pretend() {
- local CONFIG_CHECK="
- ~BPF
- ~BPF_EVENTS
- ~BPF_JIT
- ~BPF_SYSCALL
- ~FTRACE_SYSCALLS
- ~HAVE_EBPF_JIT
- "
-
- check_extra_config
-}
-
-pkg_setup() {
- llvm_pkg_setup
-}
-
-src_configure() {
- local mycmakeargs=(
- -DSTATIC_LINKING:BOOL=OFF
- # bug 809362, 754648
- -DBUILD_TESTING:BOOL=$(usex test)
- -DBUILD_FUZZ:BOOL=$(usex fuzzing)
- -DENABLE_MAN:BOOL=OFF
- )
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
- # bug 809362
- dostrip -x /usr/bin/bpftrace
- doman man/man8/*.?
-}
diff --git a/dev-debug/bpftrace/bpftrace-0.20.1.ebuild b/dev-debug/bpftrace/bpftrace-0.20.1.ebuild
deleted file mode 100644
index 92cd7b068b6c..000000000000
--- a/dev-debug/bpftrace/bpftrace-0.20.1.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 2019-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_MAX_SLOT=17
-
-inherit llvm linux-info cmake
-
-DESCRIPTION="High-level tracing language for eBPF"
-HOMEPAGE="https://github.com/iovisor/bpftrace"
-MY_PV="${PV//_/}"
-SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
-S="${WORKDIR}/${PN}-${MY_PV:-${PV}}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# remove keywords until build works:
-# https://github.com/iovisor/bpftrace/issues/2349
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="fuzzing test"
-
-# lots of fixing needed
-RESTRICT="test"
-
-RDEPEND="
- >=dev-libs/libbpf-1.1:=
- >=dev-util/bcc-0.25.0:=
- >=sys-devel/llvm-10[llvm_targets_BPF(+)]
- >=sys-devel/clang-10
- <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
- <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
- sys-libs/binutils-libs:=
- virtual/libelf:=
-"
-DEPEND="
- ${COMMON_DEPEND}
- dev-libs/cereal:=
- test? ( dev-cpp/gtest )
-"
-BDEPEND="
- app-arch/xz-utils
- app-alternatives/lex
- app-alternatives/yacc
- virtual/pkgconfig
-"
-
-QA_DT_NEEDED="
- /usr/lib.*/libbpftraceresources.so
- /usr/lib.*/libcxxdemangler_llvm.so
-"
-
-PATCHES=(
- "${FILESDIR}/bpftrace-0.20.0-install-libs.patch"
- "${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
- "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
-)
-
-pkg_pretend() {
- local CONFIG_CHECK="
- ~BPF
- ~BPF_EVENTS
- ~BPF_JIT
- ~BPF_SYSCALL
- ~FTRACE_SYSCALLS
- ~HAVE_EBPF_JIT
- "
-
- check_extra_config
-}
-
-pkg_setup() {
- llvm_pkg_setup
-}
-
-src_configure() {
- local mycmakeargs=(
- -DSTATIC_LINKING:BOOL=OFF
- # bug 809362, 754648
- -DBUILD_TESTING:BOOL=$(usex test)
- -DBUILD_FUZZ:BOOL=$(usex fuzzing)
- -DENABLE_MAN:BOOL=OFF
- )
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
- # bug 809362
- dostrip -x /usr/bin/bpftrace
- doman man/man8/*.?
-}
diff --git a/dev-debug/bpftrace/files/bpftrace-0.19.0-install-libs.patch b/dev-debug/bpftrace/files/bpftrace-0.19.0-install-libs.patch
deleted file mode 100644
index 647b0cd4cae5..000000000000
--- a/dev-debug/bpftrace/files/bpftrace-0.19.0-install-libs.patch
+++ /dev/null
@@ -1,338 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a1360a71..24d85abc 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -138,9 +138,10 @@ endif()
- bison_target(bison_parser src/parser.yy ${CMAKE_BINARY_DIR}/parser.tab.cc COMPILE_FLAGS ${BISON_FLAGS} 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 c12f9567..0bfec98c 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 401ddc0a..05f0f637 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -13,7 +13,7 @@ else()
- endif ()
- endif()
-
--add_library(runtime
-+add_library(bpftraceruntime
- attached_probe.cpp
- bpffeature.cpp
- bpftrace.cpp
-@@ -44,7 +44,7 @@ add_library(runtime
- ${BFD_DISASM_SRC}
- )
- # Ensure flex+bison outputs are built first
--add_dependencies(runtime parser)
-+add_dependencies(bpftraceruntime bpftraceparser)
-
- add_library(libbpftrace
- build_info.cpp
-@@ -61,6 +61,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)
-@@ -89,7 +90,7 @@ endif()
- set(KERNEL_HEADERS_DIR "" CACHE PATH "Hard-code kernel headers directory")
- if (KERNEL_HEADERS_DIR)
- MESSAGE(STATUS "Using KERNEL_HEADERS_DIR=${KERNEL_HEADERS_DIR}")
-- target_compile_definitions(runtime PUBLIC KERNEL_HEADERS_DIR="${KERNEL_HEADERS_DIR}")
-+ target_compile_definitions(bpftraceruntime PUBLIC KERNEL_HEADERS_DIR="${KERNEL_HEADERS_DIR}")
- endif()
-
- execute_process(
-@@ -109,10 +110,11 @@ endif()
-
- add_definitions("-DBPFTRACE_VERSION=\"${BPFTRACE_VERSION}\"")
-
--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})
-+target_include_directories(bpftraceruntime PRIVATE ${CMAKE_BINARY_DIR})
-+target_include_directories(bpftraceruntime PRIVATE ${CMAKE_SOURCE_DIR}/src)
-+target_include_directories(bpftraceruntime PRIVATE ${CMAKE_SOURCE_DIR}/src/ast)
-+target_compile_definitions(bpftraceruntime PRIVATE ${BPFTRACE_FLAGS})
-+install(TARGETS bpftraceruntime LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
- target_compile_definitions(libbpftrace PRIVATE ${BPFTRACE_FLAGS})
-
- # Linking
-@@ -125,8 +127,8 @@ if(STATIC_LINKING)
- endif(STATIC_LINKING)
-
-
--target_link_libraries(runtime ${LIBBPF_LIBRARIES} ${ZLIB_LIBRARIES})
--target_link_libraries(libbpftrace parser resources runtime aot ast arch cxxdemangler_llvm)
-+target_link_libraries(bpftraceruntime ${LIBBPF_LIBRARIES} ${ZLIB_LIBRARIES})
-+target_link_libraries(libbpftrace bpftraceparser bpftraceresources bpftraceruntime aot bpftraceast bpftracearch cxxdemangler_llvm)
-
- if(LIBPCAP_FOUND)
- target_link_libraries(libbpftrace ${LIBPCAP_LIBRARIES})
-@@ -136,49 +138,49 @@ if(HAVE_BFD_DISASM)
- if(STATIC_LINKING OR LIBBFD_STATIC)
- add_library(LIBBFD STATIC IMPORTED)
- set_property(TARGET LIBBFD PROPERTY IMPORTED_LOCATION ${LIBBFD_LIBRARIES})
-- target_link_libraries(runtime LIBBFD)
-+ target_link_libraries(bpftraceruntime LIBBFD)
- add_library(LIBOPCODES STATIC IMPORTED)
- set_property(TARGET LIBOPCODES PROPERTY IMPORTED_LOCATION ${LIBOPCODES_LIBRARIES})
-- target_link_libraries(runtime LIBOPCODES)
-+ target_link_libraries(bpftraceruntime LIBOPCODES)
- add_library(LIBIBERTY STATIC IMPORTED)
- set_property(TARGET LIBIBERTY PROPERTY IMPORTED_LOCATION ${LIBIBERTY_LIBRARIES})
-- target_link_libraries(runtime LIBIBERTY)
-+ target_link_libraries(bpftraceruntime LIBIBERTY)
-
- add_library(LIBZSTD STATIC IMPORTED)
- if (LIBZSTD_FOUND)
- set_property(TARGET LIBZSTD PROPERTY IMPORTED_LOCATION ${LIBZSTD_LIBRARIES})
-- target_link_libraries(runtime LIBZSTD)
-+ target_link_libraries(bpftraceruntime LIBZSTD)
- endif(LIBZSTD_FOUND)
-
- add_library(LIBSFRAME STATIC IMPORTED)
- if (LIBSFRAME_FOUND)
- set_property(TARGET LIBSFRAME PROPERTY IMPORTED_LOCATION ${LIBSFRAME_LIBRARIES})
-- target_link_libraries(runtime LIBSFRAME)
-+ target_link_libraries(bpftraceruntime LIBSFRAME)
- endif()
- else()
-- target_link_libraries(runtime ${LIBBFD_LIBRARIES})
-- target_link_libraries(runtime ${LIBOPCODES_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBBFD_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBOPCODES_LIBRARIES})
- endif(STATIC_LINKING OR LIBBFD_STATIC)
- endif(HAVE_BFD_DISASM)
-
- # Link to bcc libraries (without LLVM) if possible
- if(LIBBCC_BPF_CONTAINS_RUNTIME)
-- target_link_libraries(runtime ${LIBBCC_BPF_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBBCC_BPF_LIBRARIES})
- else()
-- target_link_libraries(runtime ${LIBBCC_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBBCC_LIBRARIES})
- endif()
-
- if(STATIC_BPF_BCC)
- # These are not part of the static libbcc so have to be added separate
-- target_link_libraries(runtime ${LIBBCC_BPF_LIBRARIES})
-- target_link_libraries(runtime ${LIBBPF_LIBRARIES})
-- target_link_libraries(runtime ${LIBBCC_LOADER_LIBRARY_STATIC})
-+ target_link_libraries(bpftraceruntime ${LIBBCC_BPF_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBBPF_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBBCC_LOADER_LIBRARY_STATIC})
-
- add_library(LIBELF STATIC IMPORTED)
- set_property(TARGET LIBELF PROPERTY IMPORTED_LOCATION ${LIBELF_LIBRARIES})
-- target_link_libraries(runtime LIBELF)
-+ target_link_libraries(bpftraceruntime LIBELF)
- else()
-- target_link_libraries(runtime ${LIBELF_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBELF_LIBRARIES})
- endif(STATIC_BPF_BCC)
-
- if (LIBDW_FOUND)
-@@ -207,16 +209,16 @@ if (LIBDW_FOUND)
-
- target_link_libraries(LIBDW INTERFACE ${LIBDW_LIBS})
-
-- target_link_libraries(runtime LIBDW)
-+ target_link_libraries(bpftraceruntime LIBDW)
- else()
-- target_link_libraries(runtime ${LIBDW_LIBRARIES})
-+ target_link_libraries(bpftraceruntime ${LIBDW_LIBRARIES})
- endif()
- endif()
-
- # Support for std::filesystem
- # GCC version <9 and Clang (all versions) require -lstdc++fs
- if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR ${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS "9")
-- target_link_libraries(runtime "stdc++fs")
-+ target_link_libraries(bpftraceruntime "stdc++fs")
- target_link_libraries(libbpftrace "stdc++fs")
- endif()
-
-@@ -238,16 +240,16 @@ endif()
- if (STATIC_LINKING)
- if(ANDROID)
- target_link_libraries(libbpftrace "-Wl,-Bdynamic" "-ldl" "-lm" "-lz")
-- target_link_libraries(runtime "-Wl,-Bdynamic" "-ldl" "-lm" "-lz")
-+ target_link_libraries(bpftraceruntime "-Wl,-Bdynamic" "-ldl" "-lm" "-lz")
- else()
- target_link_libraries(libbpftrace "-Wl,-Bdynamic" "-lrt" "-lpthread" "-ldl" "-lm")
- target_link_libraries(libbpftrace "-Wl,-Bstatic" "-lz")
-- target_link_libraries(runtime "-Wl,-Bdynamic" "-lrt" "-lpthread" "-ldl" "-lm")
-- target_link_libraries(runtime "-Wl,-Bstatic" "-lz")
-+ target_link_libraries(bpftraceruntime "-Wl,-Bdynamic" "-lrt" "-lpthread" "-ldl" "-lm")
-+ target_link_libraries(bpftraceruntime "-Wl,-Bstatic" "-lz")
- endif()
- elseif(STATIC_BPF_BCC)
- # partial static build, libbpf needs zlib, bcc needs liblzma
-- target_link_libraries(runtime "-lz" "-llzma")
-+ target_link_libraries(bpftraceruntime "-lz" "-llzma")
- endif()
-
- unset(MAIN_SRC)
-diff --git a/src/aot/CMakeLists.txt b/src/aot/CMakeLists.txt
-index c776d204..41e84317 100644
---- a/src/aot/CMakeLists.txt
-+++ b/src/aot/CMakeLists.txt
-@@ -1,8 +1,9 @@
- add_library(aot aot.cpp)
--add_dependencies(aot parser)
-+add_dependencies(aot bpftraceparser)
- target_include_directories(aot PUBLIC ${CMAKE_SOURCE_DIR}/src)
- target_include_directories(aot PUBLIC ${CMAKE_BINARY_DIR})
- target_compile_definitions(aot PRIVATE ${BPFTRACE_FLAGS})
-+install(TARGETS aot LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
-
- # Only build aotrt if supported bcc is used
- # (https://github.com/iovisor/bcc/commit/719191867a25ce07dc96f7faf9b8ccedadc7ec44)
-@@ -11,7 +12,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 bpftraceruntime bpftracearch ast_defs cxxdemangler_stdlib)
- install(TARGETS bpftrace-aotrt DESTINATION ${CMAKE_INSTALL_BINDIR})
-
- if(LIBPCAP_FOUND)
-diff --git a/src/arch/CMakeLists.txt b/src/arch/CMakeLists.txt
-index e6a1d0a0..c53daa19 100644
---- a/src/arch/CMakeLists.txt
-+++ b/src/arch/CMakeLists.txt
-@@ -1,19 +1,20 @@
- if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|aarch64)")
-- add_library(arch arm.cpp)
-+ add_library(bpftracearch arm.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)
- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv64")
-- add_library(arch riscv64.cpp)
-+ add_library(bpftracearch riscv64.cpp)
- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "loongarch64")
-- add_library(arch loongarch64.cpp)
-+ add_library(bpftracearch loongarch64.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 c390ea6a..37019bd9 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
- elf_parser.cpp
-@@ -21,11 +21,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 parser)
-+target_link_libraries(bpftraceast ast_defs bpftracearch 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
-@@ -58,20 +60,20 @@ 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})
-
- if(TARGET libclang_static)
-- target_link_libraries(ast libclang_static)
-+ target_link_libraries(bpftraceast libclang_static)
- else()
- # old LLVM versions don't export libclang_static in ClangTargets.cmake; fall back to
- # libclang.a in that case
-- target_link_libraries(ast libclang.a)
-+ target_link_libraries(abpftracest libclang.a)
- endif()
-
-- target_link_libraries(ast ${clang_libs})
-- target_link_libraries(ast ${llvm_libs})
-+ target_link_libraries(abpftracest ${clang_libs})
-+ target_link_libraries(abpftracest ${llvm_libs})
- endif()
-
- if(STATIC_LIBC)
-@@ -81,11 +83,11 @@ 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()
-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})
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-03-26 18:19 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-02 6:33 [gentoo-commits] repo/gentoo:master commit in: dev-debug/bpftrace/, dev-debug/bpftrace/files/ Sam James
-- strict thread matches above, loose matches on Subject: below --
2024-03-26 18:19 Patrick McLean
2024-01-23 20:51 Patrick McLean
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox