forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-util/bpftrace-0.10.0: Version bump
Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Patrick McLean <[email protected]>
- Loading branch information
1 parent
7be8297
commit 0c4e093
Showing
4 changed files
with
242 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
DIST bpftrace-0.10.0.tar.gz 835854 BLAKE2B 623369bb2a2ad8d5eec364afa98bdae3fbe5e66182d8f1187fe86a8bd70ee357a554eb063fdbe5476eab23912adf2cf027092cac3e6989d8f716e91aa5d01212 SHA512 da400efe78cea505a32deead594b047ec4394d3eefe86e7b6853fe2dc715c5847a3abcbd26c1fac39d0a534f1e57d6c0bc3625e0c3f1054b0d84b7b1d6eb69b9 | ||
DIST bpftrace-0.9.2.tar.gz 715019 BLAKE2B 1f20998bd379b91cb46d7e856a5d892e0de7ad6d9f85cb657fcf6a0c879167c0931d28c78e4be98adab349144fe0bc99871cf70556dd1998e5b8f918fa1702e3 SHA512 5c6ee5fec690a907c370ed0bed85906d304215d7f97b99a2cae90453061f522fa6369627c9524a5a24e97c6cbb595a880a2a1b1d71095fffb693a4cef172a6f0 | ||
DIST bpftrace-0.9.3.tar.gz 743506 BLAKE2B d00708bcebaf7f039788dfc52f4a0bb501bb3c52e8b789060f824652b3917ea3950d77dbc7bee04da013f4b552338251bda9781d19a03ec227208b943fded232 SHA512 49b12735fe2fbf4f72d3d0c0372a7a570c7abc92d1f626624d591a863009c8bfabdf86825f133885800c7ea293773651be66e4c792f9cd397f82d250a7af83be | ||
DIST bpftrace-0.9.4.tar.gz 792253 BLAKE2B d34d390a612825141b86ba14482f06820c88bea76580c53c17d19a6480c0e2a5656531f39b79fbcea4e004ecd3eea36877560f22fac584f36a3dffa1e7fe96c5 SHA512 d2b32235fa81d6f06771df32877388a9105230adfc638b0d0ebf4f11a567246e8514d93c14da9c7008dbacd6b2c4108604fc5a2721ef831efa5c596cbe50b1da |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
# Copyright 2019-2020 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
inherit toolchain-funcs linux-info cmake-utils | ||
|
||
DESCRIPTION="High-level tracing language for eBPF" | ||
HOMEPAGE="https://github.com/iovisor/bpftrace" | ||
|
||
if [[ ${PV} =~ 9{4,} ]]; then | ||
inherit git-r3 | ||
EGIT_REPO_URI="https://github.com/iovisor/${PN}" | ||
BDEPEND="" | ||
else | ||
MY_PV="${PV//_/}" | ||
SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" | ||
KEYWORDS="~amd64 ~arm64 ~x86" | ||
BDEPEND="app-arch/xz-utils " | ||
fi | ||
|
||
LICENSE="Apache-2.0" | ||
SLOT="0" | ||
IUSE="test" | ||
|
||
COMMON_DEPEND="dev-util/systemtap | ||
sys-devel/clang:= | ||
dev-libs/libbpf:= | ||
>=sys-devel/llvm-3.7.1:=[llvm_targets_BPF(+)] | ||
>=dev-util/bcc-0.12.0:= | ||
virtual/libelf" | ||
DEPEND="${COMMON_DEPEND} | ||
test? ( dev-cpp/gtest )" | ||
RDEPEND="${COMMON_DEPEND}" | ||
BDEPEND+="dev-util/cmake | ||
sys-devel/flex | ||
sys-devel/bison" | ||
|
||
S="${WORKDIR}/${PN}-${MY_PV}" | ||
QA_DT_NEEDED="/usr/lib.*/libbpftraceresources.so" | ||
|
||
PATCHES=( | ||
"${FILESDIR}/bpftrace-0.10.0-install-libs.patch" | ||
"${FILESDIR}/bpftrace-0.10.0-dont-compress-man.patch" | ||
) | ||
|
||
# lots of fixing needed | ||
RESTRICT="test" | ||
|
||
pkg_pretend() { | ||
local CONFIG_CHECK=" | ||
~BPF | ||
~BPF_EVENTS | ||
~BPF_JIT | ||
~BPF_SYSCALL | ||
~FTRACE_SYSCALLS | ||
~HAVE_EBPF_JIT | ||
" | ||
|
||
check_extra_config | ||
} | ||
|
||
src_prepare() { | ||
cmake-utils_src_prepare | ||
} | ||
|
||
src_configure() { | ||
local -a mycmakeargs | ||
mycmakeargs=( | ||
"-DSTATIC_LINKING:BOOL=OFF" | ||
"-DBUILD_TESTING:BOOL=OFF" | ||
) | ||
|
||
cmake-utils_src_configure | ||
} |
18 changes: 18 additions & 0 deletions
18
dev-util/bpftrace/files/bpftrace-0.10.0-dont-compress-man.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
diff --git a/man/man8/CMakeLists.txt b/man/man8/CMakeLists.txt | ||
index f1fc334..7ee58ed 100644 | ||
--- a/man/man8/CMakeLists.txt | ||
+++ b/man/man8/CMakeLists.txt | ||
@@ -1,12 +1,3 @@ | ||
-find_program(GZIP gzip) | ||
file(GLOB FILES *.8) | ||
-set(GZFILES "") | ||
-foreach(FIL ${FILES}) | ||
- get_filename_component(NAME ${FIL} NAME) | ||
- add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.gz | ||
- COMMAND ${GZIP} -c ${FIL} > ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.gz | ||
- DEPENDS ${FIL}) | ||
- list(APPEND GZFILES "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.gz") | ||
-endforeach() | ||
add_custom_target(man ALL DEPENDS ${GZFILES}) | ||
-install(FILES ${GZFILES} DESTINATION ${CMAKE_INSTALL_MANDIR}/man8) | ||
+install(FILES ${FILES} DESTINATION ${CMAKE_INSTALL_MANDIR}/man8) |
148 changes: 148 additions & 0 deletions
148
dev-util/bpftrace/files/bpftrace-0.10.0-install-libs.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,148 @@ | ||
diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
index e89a6a9..efa2ff3 100644 | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -90,9 +90,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 a95c60a..f5c4d67 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 4fa0418..4d0c2a9 100644 | ||
--- a/src/CMakeLists.txt | ||
+++ b/src/CMakeLists.txt | ||
@@ -75,7 +75,8 @@ if (ALLOW_UNSAFE_PROBE) | ||
target_compile_definitions(bpftrace PRIVATE HAVE_UNSAFE_PROBE) | ||
endif(ALLOW_UNSAFE_PROBE) | ||
|
||
-target_link_libraries(bpftrace arch ast parser resources) | ||
+target_link_libraries(bpftrace bpftracearch bpftraceast bpftraceparser | ||
+ bpftraceresources) | ||
|
||
target_link_libraries(bpftrace ${LIBBCC_LIBRARIES}) | ||
if(STATIC_LINKING) | ||
diff --git a/src/arch/CMakeLists.txt b/src/arch/CMakeLists.txt | ||
index 7156276..32faeae 100644 | ||
--- a/src/arch/CMakeLists.txt | ||
+++ b/src/arch/CMakeLists.txt | ||
@@ -1,10 +1,12 @@ | ||
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 "x86_64") | ||
- add_library(arch x86_64.cpp) | ||
+ add_library(bpftracearch x86_64.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 0d58cd9..e33d585 100644 | ||
--- a/src/ast/CMakeLists.txt | ||
+++ b/src/ast/CMakeLists.txt | ||
@@ -1,4 +1,4 @@ | ||
-add_library(ast | ||
+add_library(bpftraceast | ||
ast.cpp | ||
attachpoint_parser.cpp | ||
codegen_llvm.cpp | ||
@@ -8,16 +8,17 @@ add_library(ast | ||
semantic_analyser.cpp | ||
) | ||
|
||
-target_include_directories(ast PUBLIC ${CMAKE_SOURCE_DIR}/src) | ||
-target_include_directories(ast PUBLIC ${CMAKE_SOURCE_DIR}/src/ast) | ||
-target_include_directories(ast PUBLIC ${CMAKE_BINARY_DIR}) | ||
-target_link_libraries(ast arch) | ||
+target_include_directories(bpftraceast PUBLIC ${CMAKE_SOURCE_DIR}/src) | ||
+target_include_directories(bpftraceast PUBLIC ${CMAKE_SOURCE_DIR}/src/ast) | ||
+target_include_directories(bpftraceast PUBLIC ${CMAKE_BINARY_DIR}) | ||
+target_link_libraries(bpftraceast bpftracearch) | ||
+install(TARGETS bpftraceast LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) | ||
|
||
if (HAVE_KFUNC) | ||
- target_compile_definitions(ast PRIVATE HAVE_KFUNC) | ||
+ target_compile_definitions(bpftraceast PRIVATE HAVE_KFUNC) | ||
endif(HAVE_KFUNC) | ||
|
||
-add_dependencies(ast parser) | ||
+add_dependencies(bpftraceast bpftraceparser) | ||
|
||
if (STATIC_LINKING) | ||
set(clang_libs | ||
@@ -41,26 +42,26 @@ if (STATIC_LINKING) | ||
if(EMBED_LIBCLANG_ONLY) | ||
unlink_transitive_dependency("${CLANG_EXPORTED_TARGETS}" "LLVM") | ||
endif() | ||
- target_link_libraries(ast ${CLANG_EMBEDDED_CMAKE_TARGETS}) | ||
+ target_link_libraries(bpftraceast ${CLANG_EMBEDDED_CMAKE_TARGETS}) | ||
else() | ||
list(INSERT clang_libs 0 libclang.a) | ||
endif() | ||
|
||
if(EMBED_LLVM) | ||
- target_link_libraries(ast ${LLVM_EMBEDDED_CMAKE_TARGETS}) | ||
+ target_link_libraries(bpftraceast ${LLVM_EMBEDDED_CMAKE_TARGETS}) | ||
else() | ||
llvm_map_components_to_libnames(llvm_libs bpfcodegen ipo irreader mcjit orcjit ${LLVM_TARGETS_TO_BUILD}) | ||
- 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() | ||
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/tests/CMakeLists.txt b/tests/CMakeLists.txt | ||
index 56bcb4a..3f874f8 100644 | ||
--- a/tests/CMakeLists.txt | ||
+++ b/tests/CMakeLists.txt | ||
@@ -93,7 +93,8 @@ if(HAVE_BFD_DISASM) | ||
endif(STATIC_LINKING) | ||
endif(HAVE_BFD_DISASM) | ||
|
||
-target_link_libraries(bpftrace_test arch ast parser resources) | ||
+target_link_libraries(bpftrace_test bpftracearch bpftraceast bpftraceparser | ||
+ bpftraceresources) | ||
|
||
target_link_libraries(bpftrace_test ${LIBBCC_LIBRARIES}) | ||
if (STATIC_LINKING) |