summaryrefslogtreecommitdiffstats
path: root/dynamic-layers
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2023-07-06 09:04:06 -0700
committerKhem Raj <raj.khem@gmail.com>2023-07-10 02:44:33 +0200
commit6c835e5c4a7e6cfaf44d3714e6bd2e7b196a8378 (patch)
tree30e500bd5c39deea460b8d7a1861317e0c847844 /dynamic-layers
parent9dcbac82c8618e5f77d2295f3bc71f8be9fcbad6 (diff)
downloadmeta-clang-6c835e5c4a7e6cfaf44d3714e6bd2e7b196a8378.tar.gz
bpftrace: Fix build with llvm 17
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'dynamic-layers')
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace/0001-Adjust-to-build-with-llvm-17.patch58
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace_0.18.0.bb1
2 files changed, 59 insertions, 0 deletions
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace/0001-Adjust-to-build-with-llvm-17.patch b/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace/0001-Adjust-to-build-with-llvm-17.patch
new file mode 100644
index 0000000..6720ea0
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace/0001-Adjust-to-build-with-llvm-17.patch
@@ -0,0 +1,58 @@
1From 3aa0c5caadb03b1c30d0ac366dbc7b592076dc43 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 6 Jul 2023 08:59:41 -0700
4Subject: [PATCH] Adjust to build with llvm 17
5
6PassManagerBuilder has been removed in llvm 17
7itaniumDemangle() API signature has changed too
8
9Upstream-Status: Submitted [https://github.com/iovisor/bpftrace/pull/2667]
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 src/ast/passes/codegen_llvm.cpp | 4 ++++
13 src/cxxdemangler/cxxdemangler_llvm.cpp | 4 ++++
14 2 files changed, 8 insertions(+)
15
16diff --git a/src/ast/passes/codegen_llvm.cpp b/src/ast/passes/codegen_llvm.cpp
17index 1af2a23e..49ab8c9d 100644
18--- a/src/ast/passes/codegen_llvm.cpp
19+++ b/src/ast/passes/codegen_llvm.cpp
20@@ -7,7 +7,9 @@
21 #include <ctime>
22 #include <fstream>
23
24+#if LLVM_VERSION_MAJOR <= 16
25 #include <llvm-c/Transforms/IPO.h>
26+#endif
27 #include <llvm/IR/Constants.h>
28 #include <llvm/IR/LLVMContext.h>
29 #include <llvm/IR/LegacyPassManager.h>
30@@ -17,7 +19,9 @@
31 #include <llvm/Passes/PassBuilder.h>
32 #endif
33 #include <llvm/Transforms/IPO.h>
34+#if LLVM_VERSION_MAJOR <= 16
35 #include <llvm/Transforms/IPO/PassManagerBuilder.h>
36+#endif
37 #if LLVM_VERSION_MAJOR >= 14
38 #include <llvm/MC/TargetRegistry.h>
39 #else
40diff --git a/src/cxxdemangler/cxxdemangler_llvm.cpp b/src/cxxdemangler/cxxdemangler_llvm.cpp
41index e9a9db24..1b0bf7ea 100644
42--- a/src/cxxdemangler/cxxdemangler_llvm.cpp
43+++ b/src/cxxdemangler/cxxdemangler_llvm.cpp
44@@ -6,7 +6,11 @@ namespace bpftrace {
45
46 char* cxxdemangle(const char* mangled)
47 {
48+#if LLVM_VERSION_MAJOR <= 16
49 return llvm::itaniumDemangle(mangled, nullptr, nullptr, nullptr);
50+#else
51+ return llvm::itaniumDemangle(mangled);
52+#endif
53 }
54
55 } // namespace bpftrace
56--
572.41.0
58
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace_0.18.0.bb b/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace_0.18.0.bb
index 0d7261f..48cd315 100644
--- a/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace_0.18.0.bb
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace_0.18.0.bb
@@ -18,6 +18,7 @@ RDEPENDS:${PN} += "bash python3 xz"
18 18
19SRC_URI = "git://github.com/iovisor/bpftrace;branch=master;protocol=https \ 19SRC_URI = "git://github.com/iovisor/bpftrace;branch=master;protocol=https \
20 file://0001-cmake-Raise-max-llvm-major-version-to-16.patch \ 20 file://0001-cmake-Raise-max-llvm-major-version-to-16.patch \
21 file://0001-Adjust-to-build-with-llvm-17.patch \
21 file://run-ptest \ 22 file://run-ptest \
22" 23"
23SRCREV = "e199c7e73da84bff9fe744d1e3402c2b505aa5a2" 24SRCREV = "e199c7e73da84bff9fe744d1e3402c2b505aa5a2"