summaryrefslogtreecommitdiff
path: root/dev-util/bpftrace
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-01-30 20:59:34 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-01-30 20:59:34 +0000
commit182063dd85a03f2086258946276c8967945ffe95 (patch)
tree94440d3476f11273b5072685640990ec95042468 /dev-util/bpftrace
parent268511f85b0606dd23fda1991345568dd3e1976b (diff)
gentoo auto-resync : 30:01:2023 - 20:59:33
Diffstat (limited to 'dev-util/bpftrace')
-rw-r--r--dev-util/bpftrace/Manifest10
-rw-r--r--dev-util/bpftrace/bpftrace-0.17.0.ebuild (renamed from dev-util/bpftrace/bpftrace-0.15.0-r2.ebuild)38
-rw-r--r--dev-util/bpftrace/files/bpftrace-0.15.0-bcc-025.patch88
-rw-r--r--dev-util/bpftrace/files/bpftrace-0.15.0-binutils-2.39.patch87
-rw-r--r--dev-util/bpftrace/files/bpftrace-0.15.0-dont-compress-man.patch47
-rw-r--r--dev-util/bpftrace/files/bpftrace-0.15.0-install-libs.patch199
-rw-r--r--dev-util/bpftrace/files/bpftrace-0.17.0-install-libs.patch327
7 files changed, 349 insertions, 447 deletions
diff --git a/dev-util/bpftrace/Manifest b/dev-util/bpftrace/Manifest
index 96f77dc68b17..b73d09676df2 100644
--- a/dev-util/bpftrace/Manifest
+++ b/dev-util/bpftrace/Manifest
@@ -1,15 +1,11 @@
AUX bpftrace-0.11.4-old-kernels.patch 563 BLAKE2B 3b2afb997119188e7095b24ec459f4b5ae28626f6905c45f6510f84b7c6f28aa3b5174f1f48a30763990b2a3cc50c6336249fe1dc4cf31656871a8adce43c8d7 SHA512 332e6cc4d1c21e917451c9aa6028b082f53dde8221419ba45ad7ae6321e444b3f67ec8366cbd56638d8f8b68a3be06af892eba765c810744951af1de9b994113
-AUX bpftrace-0.15.0-bcc-025.patch 3192 BLAKE2B a72790e25963342b2eed5c2b9fd41bd22d88b536a064f6e4039bc83242ea4c5a48b27d2d786008df45656234c700ba9fbb738e09ea8e70e75a3f457163c4da90 SHA512 22ef3d05790416b4286ea9931646c3940877da8cf02b9645edbc753a4adb75e90f233b533d0c2c790eb62592c6af6487c02a502ecca8d547ec3d329a2aa71f64
-AUX bpftrace-0.15.0-binutils-2.39.patch 3051 BLAKE2B 689b22485d3cb994db7253581ae0c87ecfbb50133d4481209a5d9bde349456621901a66d52d3633b8e8e00d1900254b2d8e5e69bbb24dc126855ab43f453a681 SHA512 1436d44d6469d590b4b94577151d2272483dbb0c4c5f70d74f0cffa8b84c7c923f9f4ecfd7c245b440228df681c38f7bcb28c78a9220c8a90af68a71dc0c9506
-AUX bpftrace-0.15.0-dont-compress-man.patch 1885 BLAKE2B 89a327cef68fa838d5c04b37e7bf72e6b03b54c244889706ba3c5156e2355d00cf395d14a6e8a7fe622e002acf9bab06dbc1427f6b637f0c59db86af08f05d51 SHA512 b591a73b0bbdd0105e6b87fb264ca4345e200ab58754d09a87dec79e60044eab165f2b34fe5ddc904cd877a460d5f41eef8b4d59eac255ea4f4e0fae37cf3511
-AUX bpftrace-0.15.0-install-libs.patch 8206 BLAKE2B 9d8b193f422b0ee64301b7ea12791afdd5111cde487b904ec35750e6189fdd6faca9af36b8956058c820c2398bcabc7dcee6d26b93c55ff1e591b3259a682a27 SHA512 9721d8f3812855d7a9155d8e5ecac305dedb5c8326ccf8ea679048f920ca58a774576840c1b0bc2864a26c66c89bf0c81ed1a1ab30fb571a6cfaebc5b499c2b7
AUX bpftrace-0.15.0-llvm-15-pointers.patch 1023 BLAKE2B fc66196f11e9384878921309d09e3f205674a88041c93b0b353bf38ff345b4192b83cd1c80a15258b97710624b3341c9ed19b60beff38c163f677d644843ff54 SHA512 8282aa82eb867eed3378adc4ff2b73c6427d4f979cfb5268444bf122126c758229d680985e4ede7e8d011a14d4a122d6742650f57ee0e0759e3b1bfb9ba9458f
AUX bpftrace-0.16.0-install-libs.patch 8507 BLAKE2B 84842c5c400e2921d40f32ccd27ec06174c517e35b3a413907231e128d636e7c4711d131682d3fbc75a861bf3cd0cf83de2ca1c4bfbf2606e69d32f898fbd3a4 SHA512 93341eca7566d1328cbd670685859803cc76869be2eb3d52d38e3956f30d28f63d73ba32ae7f111dfd01ccb95899be6e1834fe7e1f1ee3794a0b796b8f52574e
AUX bpftrace-0.16.0-opaquepointer.patch 20038 BLAKE2B beeda98ded230a8bb22d2a32dd0e839f138ca9c9fec10402d039f4385016b4330ce94756641e4f24a5a1e294ce08d282cbf4f7e01ef0c817dda21d2324f7cf60 SHA512 4b61fe7d21a42493590e5e6bc7507852d6a1f0d685d78958d6aa2c1602211d99bbccced25a2c118ecdedd802ccfdd009b940ccb81573b28b010a476952bd1da7
-DIST bpftrace-0.14.1-llvm14.patch.gz 7377 BLAKE2B 69b3b74bce74a8d4d8d9cc74de352dc33875ae905d8a88c776bbe80862a4f4ac2d450bcb6190da8be880bcc8fb751e3b8172df5454f31dc4bcd3e41edb02e396 SHA512 3269132981a7d2c0263fe9003bbcd2348e186ca0cdc95ada368331fc6e2495ae126c7bd68676438ccb575aafdafa3d17604a28fdc11d8b629eeaee130c1fd614
-DIST bpftrace-0.15.0.tar.gz 1006735 BLAKE2B 3ef4bb5f13aa6dea5140b5362e6fc3de21baa1192e2218307895bf29ddeba8d69543e32c2b769bf3456076095ba661b66e1625f2696631d22628311d7f6ec1a4 SHA512 916e9afeab301e62472e570ef77a3b9b27b43251880b64f1c5f151583c59a6c61e9ede50f3607044b27c5a6ce1a654f290153bf3f9237ebc0a823b5e6356187a
+AUX bpftrace-0.17.0-install-libs.patch 13643 BLAKE2B d5f2f99cb0afaa29bf68315291487cedabcc72aadaa99130e55a7f14646729325db9f8475d785f60683e8a3b2cc5725160a954b6609b82b86b71a4ac6dde9bb9 SHA512 c58dce02750757176d6b5e15fe71ef992e256d420d32dd06059733c8851fe069b6195719804e705d8c245d2811e26eb4140bab5419832083a523074b56cabb5e
DIST bpftrace-0.16.0.gh.tar.gz 1023480 BLAKE2B 20fa877adeaada655462004142a80f107f82a3fa73fd7a7675a477d45ecd3a28115af5d612da2b06e2d760cfa3e574583e4cc4d62f4175c49ecc9d9b3fcceb6e SHA512 52ca4fea4e2f8d2cbf0f9f1bc69af0ee3408201f019006dd2e838b9458cfc01761eba3df24c39e05cf93220d85d0cecc69bb44ec72f9f44cec0eb94479bff734
-EBUILD bpftrace-0.15.0-r2.ebuild 2008 BLAKE2B c947ed7d7ffe63e6d8f67b8de5a62ff5053aa3ffeffde602c32aac7dace1916d9ec288c3f1a3077cf6833b8ff32459f6c4e2879bf6f8e392535d3527029a4660 SHA512 f1ca5e2650bb0caa191f65af578fe52126777080ce852cefc21af513ae77103c9ef555902eda60675234e7632651621ff4c8f68fcb4b83491c411834014d9875
+DIST bpftrace-0.17.0.gh.tar.gz 1033934 BLAKE2B 960582096fcf1652a65c4f8e18dcc5e17792c3b5c048dff59465fc1fc43d39e033c06ebc5c9bc88310b429a81fac5a8cfcdc261e7f0dcdcba4823b518f74fa3e SHA512 b1c8fc81b23f38bc45b4e73edd29c4cd0775e703b368612f00902fbda39dc3758038cd7afa351c1711cec467efd2a199a6b8b933b03aebd591d230d533e190d3
EBUILD bpftrace-0.16.0-r1.ebuild 1740 BLAKE2B b798c92e0e80396c069d83b1f9d55d019382a4f3615c4a064d9b0c196c010c4399d488c41ef403702a5e3ccdff14d1cd4466a8b0d6cdb25902b48498197120b7 SHA512 0b252876bcd309520eb3daa4216cf21e1d8b1eb2ea0e33f5abe3b5d48cf32e8c5e5739f46c395f4678c64e39841e87093b829269563eadd51bdb10acf0b51d3c
EBUILD bpftrace-0.16.0-r2.ebuild 1791 BLAKE2B bd0db18452f6d36ea37658b477219fc10edb329b17aa0fb6f26bce4578c9ddba88915e0a026fd190fcb5eba8bf005d930d6fcda590da623725a8254e8f224f30 SHA512 569974b254bd1ffc50018bc66edac49bb0f2c07a8990caded28fdf24f5728b16df08cc20157f07e248eb960291ecf9c8f5782bc4e1701ce2e8631f0abcbd8164
+EBUILD bpftrace-0.17.0.ebuild 1839 BLAKE2B 19ab0853ea85c72923fa0e82a30604d8f2ba4b8fff112a3e81d95ffefa490f96b1cce62c4c3dd50909d35b6fe894db275871cf051ff0b222ece0d448bb1ec9ba SHA512 6572d0d3f22bb9b629cca8259a9082835634cb88ccee623df63a072830b3ccb9a75d2e9a5e69aeabd728814f752b3ac4b6bc8e71bc022ff6e282bcdc22de0583
MISC metadata.xml 499 BLAKE2B ce7c46f4c5e49f2f779ff6584053f7fc78dffaeee432ac46a8881b3d49dc569e309af95aaf9d6e77a36ebc87be0cd2f86a5db7b733463e4252d3a242d914f293 SHA512 dfb827afd47feb8204ef40c940ebcc7d1b3217cdf0f24425e4ab32195309d727225e942d777871565e47a2c02244d053f46ed25165e9728c94e0683ff61bf4ce
diff --git a/dev-util/bpftrace/bpftrace-0.15.0-r2.ebuild b/dev-util/bpftrace/bpftrace-0.17.0.ebuild
index f0998d9f30ca..e2084dacecf4 100644
--- a/dev-util/bpftrace/bpftrace-0.15.0-r2.ebuild
+++ b/dev-util/bpftrace/bpftrace-0.17.0.ebuild
@@ -1,33 +1,34 @@
# Copyright 2019-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-LLVM_MAX_SLOT=15
+LLVM_MAX_SLOT=16
-inherit llvm linux-info cmake toolchain-funcs
+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}.tar.gz
- https://dev.gentoo.org/~chutzpah/dist/bpftrace/bpftrace-0.14.1-llvm14.patch.gz
-"
+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-0.8:=
- <dev-libs/libbpf-1.0:=
- >=dev-util/bcc-0.13.0:=
- dev-util/systemtap
+ >=dev-libs/libbpf-1.0:=
+ >=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:=
@@ -45,15 +46,15 @@ BDEPEND="
virtual/pkgconfig
"
-QA_DT_NEEDED="/usr/lib.*/libbpftraceresources.so"
+QA_DT_NEEDED="
+ /usr/lib.*/libbpftraceresources.so
+ /usr/lib.*/libcxxdemangler_llvm.so
+"
PATCHES=(
- "${FILESDIR}/bpftrace-0.15.0-install-libs.patch"
+ "${FILESDIR}/bpftrace-0.17.0-install-libs.patch"
"${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
"${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
- "${FILESDIR}/bpftrace-0.15.0-bcc-025.patch"
- "${FILESDIR}/bpftrace-0.15.0-binutils-2.39.patch"
- "${FILESDIR}/bpftrace-0.15.0-llvm-15-pointers.patch"
)
pkg_pretend() {
@@ -77,11 +78,10 @@ src_configure() {
local mycmakeargs=(
-DSTATIC_LINKING:BOOL=OFF
# bug 809362, 754648
- -DBUILD_SHARED_LIBS:=OFF
- -DBUILD_TESTING:BOOL=OFF
+ -DBUILD_TESTING:BOOL=$(usex test)
-DBUILD_FUZZ:BOOL=$(usex fuzzing)
-DENABLE_MAN:BOOL=OFF
- -DLIBBPF_INCLUDE_DIRS="$($(tc-getPKG_CONFIG) --cflags-only-I libbpf | sed 's:-I::g')"
+ -DUSE_SYSTEM_BPF_BCC:BOOL=ON
)
cmake_src_configure
diff --git a/dev-util/bpftrace/files/bpftrace-0.15.0-bcc-025.patch b/dev-util/bpftrace/files/bpftrace-0.15.0-bcc-025.patch
deleted file mode 100644
index ef2ca76e1c50..000000000000
--- a/dev-util/bpftrace/files/bpftrace-0.15.0-bcc-025.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From f86c3bde84d9e75ec2780a51a1ca7dc20a4740e6 Mon Sep 17 00:00:00 2001
-From: Dominique Martinet <asmadeus@codewreck.org>
-Date: Thu, 25 Aug 2022 21:47:30 +0900
-Subject: [PATCH] Fix builds against bcc >= 0.25.0
-
-libbpf 1.0.0 removed bpf_load_program_attr in
-https://github.com/libbpf/libbpf/commit/9476dce6fe905a6bf1d4c483f7b2b8575c4ffb2d
-and bcc 0.25.0 in turn changed bcc_prog_load_xattr to use
-bpf_prog_load_opts instead in
-https://github.com/iovisor/bcc/commit/185143bdec6134255363446f644acd766ffb3825
-
-Add a compile check to use the appropriate version
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index c5c4c39630d2..f23b2ba52740 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -138,7 +138,7 @@ check_symbol_exists(bpf_attach_kfunc "${LIBBCC_INCLUDE_DIRS}/bcc/libbpf.h" HAVE_
- check_symbol_exists(bcc_usdt_addsem_probe "${LIBBCC_INCLUDE_DIRS}/bcc/bcc_usdt.h" HAVE_BCC_USDT_ADDSEM)
- check_symbol_exists(bcc_procutils_which_so "${LIBBCC_INCLUDE_DIRS}/bcc/bcc_proc.h" HAVE_BCC_WHICH_SO)
-
--# bcc_prog_load_xattr needs struct bpf_load_program_attr,
-+# bcc_prog_load_xattr needs struct bpf_prog_load_opts or bpf_load_program_attr,
- # which is defined in libbpf
- if (LIBBPF_FOUND)
- check_symbol_exists(bcc_prog_load_xattr "${LIBBCC_INCLUDE_DIRS}/bcc/libbpf.h" HAVE_BCC_PROG_LOAD_XATTR)
-@@ -236,6 +236,10 @@ if(LIBBCC_ATTACH_UPROBE_SEVEN_ARGS_SIGNATURE)
- set(BPFTRACE_FLAGS "${BPFTRACE_FLAGS}" LIBBCC_ATTACH_UPROBE_SEVEN_ARGS_SIGNATURE)
- endif(LIBBCC_ATTACH_UPROBE_SEVEN_ARGS_SIGNATURE)
-
-+if(LIBBCC_PROG_LOAD_XATTRS_WITH_OPTS)
-+ set(BPFTRACE_FLAGS "${BPFTRACE_FLAGS}" LIBBCC_PROG_LOAD_XATTRS_WITH_OPTS)
-+endif(LIBBCC_PROG_LOAD_XATTRS_WITH_OPTS)
-+
- if (HAVE_BCC_KFUNC)
- set(BPFTRACE_FLAGS "${BPFTRACE_FLAGS}" HAVE_BCC_KFUNC)
- endif(HAVE_BCC_KFUNC)
-diff --git a/cmake/FindLibBcc.cmake b/cmake/FindLibBcc.cmake
-index 7b4f12835786..20d2e68cd75f 100644
---- a/cmake/FindLibBcc.cmake
-+++ b/cmake/FindLibBcc.cmake
-@@ -85,6 +85,16 @@ int main(void) {
- return 0;
- }
- " LIBBCC_ATTACH_UPROBE_SEVEN_ARGS_SIGNATURE)
-+CHECK_CXX_SOURCE_COMPILES("
-+#include <bcc/libbpf.h>
-+
-+int main(void) {
-+ struct bpf_prog_load_opts *opts = (struct bpf_prog_load_opts*) 1;
-+
-+ bcc_prog_load_xattr(BPF_PROG_TYPE_UNSPEC, 0, 0, 0, opts, 0, 0, 0, true);
-+ return 0;
-+}
-+" LIBBCC_PROG_LOAD_XATTRS_WITH_OPTS)
- SET(CMAKE_REQUIRED_INCLUDES)
-
- SET(CMAKE_REQUIRED_LIBRARIES ${LIBBCC_BPF_LIBRARIES})
-diff --git a/src/attached_probe.cpp b/src/attached_probe.cpp
-index 60778e53ce44..dd46f15fd8d2 100644
---- a/src/attached_probe.cpp
-+++ b/src/attached_probe.cpp
-@@ -731,7 +731,24 @@ void AttachedProbe::load_prog()
- continue;
- }
-
--#ifdef HAVE_BCC_PROG_LOAD_XATTR
-+#ifdef LIBBCC_PROG_LOAD_XATTRS_WITH_OPTS
-+ struct bpf_prog_load_opts opts = { };
-+
-+ opts.sz = sizeof(opts);
-+ opts.log_level = log_level;
-+
-+ progfd_ = bcc_prog_load_xattr(
-+ progtype(probe_.type),
-+ name.c_str(),
-+ license,
-+ reinterpret_cast<struct bpf_insn *>(insns),
-+ &opts,
-+ prog_len,
-+ log_buf.get(),
-+ log_buf_size,
-+ true);
-+
-+#elif HAVE_BCC_PROG_LOAD_XATTR
- struct bpf_load_program_attr attr = {};
-
- attr.prog_type = progtype(probe_.type);
diff --git a/dev-util/bpftrace/files/bpftrace-0.15.0-binutils-2.39.patch b/dev-util/bpftrace/files/bpftrace-0.15.0-binutils-2.39.patch
deleted file mode 100644
index cb4b8a9bb2d2..000000000000
--- a/dev-util/bpftrace/files/bpftrace-0.15.0-binutils-2.39.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-
-Patch taken from: https://github.com/iovisor/bpftrace/pull/2328
-Removed hunk #1 (CHANGELOG.md) since it conflicts and is not required.
-Bug: https://bugs.gentoo.org/868120
-
-From 3be6e708d514d3378a4fe985ab907643ecbc77ee Mon Sep 17 00:00:00 2001
-From: Viktor Malik <viktor.malik@gmail.com>
-Date: Mon, 15 Aug 2022 15:13:14 +0200
-Subject: [PATCH] Fix builds against libbfd(binutils) >=2.39
-
-Binutils 2.39 changed signature of the init_disassemble_info function by
-adding an extra parameter for styled printf function. Let CMake detect
-which of the versions is present and call it appropriately.
----
- CHANGELOG.md | 2 ++
- CMakeLists.txt | 3 +++
- cmake/FindLibBfd.cmake | 10 ++++++++++
- src/bfd-disasm.cpp | 14 ++++++++++++++
- 4 files changed, 29 insertions(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 8f7995afd2..2e54eb84f8 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -249,6 +249,9 @@ if(HAVE_BFD_DISASM)
- if(LIBBFD_DISASM_FOUR_ARGS_SIGNATURE)
- set(BPFTRACE_FLAGS "${BPFTRACE_FLAGS}" LIBBFD_DISASM_FOUR_ARGS_SIGNATURE)
- endif(LIBBFD_DISASM_FOUR_ARGS_SIGNATURE)
-+ if(LIBBFD_INIT_DISASM_INFO_FOUR_ARGS_SIGNATURE)
-+ set(BPFTRACE_FLAGS "${BPFTRACE_FLAGS}" LIBBFD_INIT_DISASM_INFO_FOUR_ARGS_SIGNATURE)
-+ endif(LIBBFD_INIT_DISASM_INFO_FOUR_ARGS_SIGNATURE)
- endif(HAVE_BFD_DISASM)
-
- if (LIBBPF_BTF_DUMP_FOUND)
-diff --git a/cmake/FindLibBfd.cmake b/cmake/FindLibBfd.cmake
-index 4f4b8c4e20..5d917b188c 100644
---- a/cmake/FindLibBfd.cmake
-+++ b/cmake/FindLibBfd.cmake
-@@ -75,5 +75,15 @@ int main(void) {
- abfd);
- return 0;
- }" LIBBFD_DISASM_FOUR_ARGS_SIGNATURE)
-+CHECK_CXX_SOURCE_COMPILES("
-+// See comment in bfd-disasm.cpp for why this needs to exist
-+#define PACKAGE \"bpftrace-test\"
-+#include <dis-asm.h>
-+
-+int main(void) {
-+ init_disassemble_info(NULL, NULL, NULL, NULL);
-+ return 0;
-+}
-+" LIBBFD_INIT_DISASM_INFO_FOUR_ARGS_SIGNATURE)
- SET(CMAKE_REQUIRED_LIBRARIES)
- endif()
-diff --git a/src/bfd-disasm.cpp b/src/bfd-disasm.cpp
-index f846468cd8..d4165dfac5 100644
---- a/src/bfd-disasm.cpp
-+++ b/src/bfd-disasm.cpp
-@@ -38,6 +38,16 @@ static int fprintf_nop(void *out __attribute__((unused)), const char *fmt __attr
- return 0;
- }
-
-+#ifdef LIBBFD_INIT_DISASM_INFO_FOUR_ARGS_SIGNATURE
-+static int fprintf_styled_nop(void *out __attribute__((unused)),
-+ enum disassembler_style s __attribute__((unused)),
-+ const char *fmt __attribute__((unused)),
-+ ...)
-+{
-+ return 0;
-+}
-+#endif
-+
- static AlignState is_aligned_buf(void *buf, uint64_t size, uint64_t offset)
- {
- disassembler_ftype disassemble;
-@@ -55,7 +65,11 @@ static AlignState is_aligned_buf(void *buf, uint64_t size, uint64_t offset)
- return AlignState::Fail;
- }
-
-+#ifdef LIBBFD_INIT_DISASM_INFO_FOUR_ARGS_SIGNATURE
-+ init_disassemble_info(&info, stdout, fprintf_nop, fprintf_styled_nop);
-+#else
- init_disassemble_info(&info, stdout, fprintf_nop);
-+#endif
-
- info.arch = bfd_get_arch(bfdf);
- info.mach = bfd_get_mach(bfdf);
diff --git a/dev-util/bpftrace/files/bpftrace-0.15.0-dont-compress-man.patch b/dev-util/bpftrace/files/bpftrace-0.15.0-dont-compress-man.patch
deleted file mode 100644
index 84241e052462..000000000000
--- a/dev-util/bpftrace/files/bpftrace-0.15.0-dont-compress-man.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-diff --git a/man/adoc/CMakeLists.txt b/man/adoc/CMakeLists.txt
-index 1a81dee0..c93ccbd2 100644
---- a/man/adoc/CMakeLists.txt
-+++ b/man/adoc/CMakeLists.txt
-@@ -1,7 +1,5 @@
--find_program(GZIP gzip REQUIRED)
- find_program(ASCIIDOCTOR asciidoctor)
- file(GLOB FILES *.adoc)
--set(GZFILES "")
- if(NOT "${ASCIIDOCTOR}" STREQUAL "ASCIIDOCTOR-NOTFOUND")
- foreach(FIL ${FILES})
- get_filename_component(NAME ${FIL} NAME_WE)
-@@ -12,14 +10,9 @@ if(NOT "${ASCIIDOCTOR}" STREQUAL "ASCIIDOCTOR-NOTFOUND")
- COMMAND ${ASCIIDOCTOR} ${FIL} -b manpage -o - > ${MANPAGE_FILE}
- DEPENDS ${FIL})
-
-- add_custom_command(OUTPUT ${GZ_MANPAGE_FILE}
-- COMMAND ${GZIP} -c ${MANPAGE_FILE} > ${GZ_MANPAGE_FILE}
-- DEPENDS ${MANPAGE_FILE})
--
-- list(APPEND GZFILES ${GZ_MANPAGE_FILE})
- endforeach()
-- add_custom_target(adoc_man DEPENDS ${GZFILES})
-- install(FILES ${GZFILES} DESTINATION ${CMAKE_INSTALL_MANDIR}/man8)
-+ add_custom_target(adoc_man DEPENDS ${FILES})
-+ install(FILES ${FILES} DESTINATION ${CMAKE_INSTALL_MANDIR}/man8)
- else()
- message(WARNING "asciidoctor not found, building without bpftrace manpage")
- add_custom_target(adoc_man)
-diff --git a/man/man8/CMakeLists.txt b/man/man8/CMakeLists.txt
-index 2a316cd9..2207cf80 100644
---- a/man/man8/CMakeLists.txt
-+++ b/man/man8/CMakeLists.txt
-@@ -1,12 +1,3 @@
--find_program(GZIP gzip REQUIRED)
- 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_man DEPENDS ${GZFILES})
--install(FILES ${GZFILES} DESTINATION ${CMAKE_INSTALL_MANDIR}/man8)
-+install(FILES ${FILES} DESTINATION ${CMAKE_INSTALL_MANDIR}/man8)
diff --git a/dev-util/bpftrace/files/bpftrace-0.15.0-install-libs.patch b/dev-util/bpftrace/files/bpftrace-0.15.0-install-libs.patch
deleted file mode 100644
index b20e39e4d268..000000000000
--- a/dev-util/bpftrace/files/bpftrace-0.15.0-install-libs.patch
+++ /dev/null
@@ -1,199 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index c5c4c396..4bc3e499 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 66a7fd66..738d9327 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -41,7 +41,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
-@@ -58,6 +58,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)
-@@ -110,6 +111,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
-@@ -122,7 +124,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..22944ddc 100644
---- a/src/aot/CMakeLists.txt
-+++ b/src/aot/CMakeLists.txt
-@@ -2,6 +2,7 @@ add_library(aot aot.cpp)
- 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)
-@@ -10,7 +11,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
-diff --git a/src/arch/CMakeLists.txt b/src/arch/CMakeLists.txt
-index 127c3528..4e05d40a 100644
---- a/src/arch/CMakeLists.txt
-+++ b/src/arch/CMakeLists.txt
-@@ -1,17 +1,19 @@
- 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)
- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "riscv64")
-- add_library(arch riscv64.cpp)
-+ add_library(bpftracearch riscv64.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})
diff --git a/dev-util/bpftrace/files/bpftrace-0.17.0-install-libs.patch b/dev-util/bpftrace/files/bpftrace-0.17.0-install-libs.patch
new file mode 100644
index 000000000000..a884acc7ef28
--- /dev/null
+++ b/dev-util/bpftrace/files/bpftrace-0.17.0-install-libs.patch
@@ -0,0 +1,327 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0a7914f5..b9d8f47f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -125,9 +125,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 ce16469a..98161980 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
+@@ -43,7 +43,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
+@@ -60,6 +60,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)
+@@ -88,7 +89,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(
+@@ -108,10 +109,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
+@@ -124,8 +126,8 @@ if(STATIC_LINKING)
+ endif(STATIC_LINKING)
+
+
+-target_link_libraries(runtime ${LIBBPF_LIBRARIES})
+-target_link_libraries(libbpftrace parser resources runtime aot ast arch cxxdemangler_llvm)
++target_link_libraries(bpftraceruntime ${LIBBPF_LIBRARIES})
++target_link_libraries(libbpftrace bpftraceparser bpftraceresources bpftraceruntime aot bpftraceast bpftracearch cxxdemangler_llvm)
+
+ if(LIBPCAP_FOUND)
+ target_link_libraries(libbpftrace ${LIBPCAP_LIBRARIES})
+@@ -135,37 +137,38 @@ if(HAVE_BFD_DISASM)
+ if(STATIC_LINKING)
+ 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)
+ 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)
+ 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)
++ set_property(TARGET LIBELF PROPERTY IMPORTED_LOCATION ${LIBBPF_LIBRARIES})
++ 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)
+@@ -182,16 +185,16 @@ if (LIBDW_FOUND)
+ set_property(TARGET LIBDW PROPERTY IMPORTED_LOCATION ${LIBDW_LIBRARIES})
+ target_link_libraries(LIBDW INTERFACE LIBBZ2 LIBELF LIBLZMA)
+
+- 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()
+
+@@ -213,16 +216,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
+- target_link_libraries(runtime "-lz")
++ target_link_libraries(bpftraceruntime "-lz")
+ 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 d01d1ea3..7d96587f 100644
+--- a/src/arch/CMakeLists.txt
++++ b/src/arch/CMakeLists.txt
+@@ -1,21 +1,21 @@
+ if(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
+- add_library(arch aarch64.cpp)
++ add_library(bpftracearch aarch64.cpp)
+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7-a")
+- 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()
+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})