mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
dev-util/bpftrace-0.10.0-r1: Bump, patch llvm-10 segfault (bug #724382)
Closes: https://bugs.gentoo.org/724382 Copyright: Sony Interactive Entertainment Inc. Package-Manager: Portage-2.3.100, Repoman-2.3.22 Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
This commit is contained in:
committed by
Patrick McLean
parent
ce8934eff2
commit
0c58230e0f
@@ -27,6 +27,8 @@ COMMON_DEPEND="dev-util/systemtap
|
||||
sys-devel/clang:=
|
||||
dev-libs/libbpf:=
|
||||
>=sys-devel/llvm-3.7.1:=[llvm_targets_BPF(+)]
|
||||
<sys-devel/clang-10:=
|
||||
<sys-devel/llvm-10:=[llvm_targets_BPF(+)]
|
||||
>=dev-util/bcc-0.12.0:=
|
||||
virtual/libelf"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
@@ -42,6 +44,7 @@ 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"
|
||||
"${FILESDIR}/bpftrace-0.10.0-llvm-multi.patch"
|
||||
)
|
||||
|
||||
# lots of fixing needed
|
||||
60
dev-util/bpftrace/files/bpftrace-0.10.0-llvm-multi.patch
Normal file
60
dev-util/bpftrace/files/bpftrace-0.10.0-llvm-multi.patch
Normal file
@@ -0,0 +1,60 @@
|
||||
diff -ru a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt 2020-05-20 21:00:22.789744736 -0500
|
||||
+++ b/CMakeLists.txt 2020-05-20 18:52:38.241091110 -0500
|
||||
@@ -30,6 +30,11 @@
|
||||
elseif(STATIC_LIBC)
|
||||
message(WARNING "static libc is known to cause problems, consider STATIC_LIBC=OFF. Proceed at your own risk") #iovisor/bpftrace/issues/266
|
||||
endif()
|
||||
+else()
|
||||
+ find_package(LLVM 9 REQUIRED CONFIG)
|
||||
+
|
||||
+ message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
|
||||
+ message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}")
|
||||
endif()
|
||||
|
||||
if(EMBED_LIBCLANG_ONLY AND NOT EMBED_CLANG)
|
||||
diff -ru a/src/ast/CMakeLists.txt b/src/ast/CMakeLists.txt
|
||||
--- a/src/ast/CMakeLists.txt 2020-05-20 21:00:22.777744534 -0500
|
||||
+++ b/src/ast/CMakeLists.txt 2020-05-20 20:52:39.657888690 -0500
|
||||
@@ -42,26 +41,29 @@
|
||||
if(EMBED_LIBCLANG_ONLY)
|
||||
unlink_transitive_dependency("${CLANG_EXPORTED_TARGETS}" "LLVM")
|
||||
endif()
|
||||
- target_link_libraries(bpftraceast ${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(bpftraceast ${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(bpftraceast ${clang_libs})
|
||||
- target_link_libraries(bpftraceast ${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(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(bpftraceast ${llvm_libs})
|
||||
+ find_package(LLVM 9 REQUIRED CONFIG)
|
||||
+
|
||||
+ include_directories(${LLVM_INCLUDE_DIRS})
|
||||
+ add_definitions(${LLVM_DEFINITIONS})
|
||||
+
|
||||
+ find_library(found_clang clang HINTS ${LLVM_LIBRARY_DIRS})
|
||||
+ if(found_clang)
|
||||
+ target_link_libraries(bpftraceast ${found_clang})
|
||||
endif()
|
||||
- target_link_libraries(bpftraceast libclang)
|
||||
+ 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(bpftraceast ${llvm_libs})
|
||||
endif()
|
||||
Reference in New Issue
Block a user